
/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* DWARF original prototype: void setup_readers(Sized_incremental_binary<64,_true> * this) */

void __thiscall
gold::Sized_incremental_binary<64,_true>::setup_readers(Sized_incremental_binary<64,_true> *this)

{
  Elf_file<64,_true,_gold::Incremental_binary> *this_00;
  uchar uVar1;
  ushort uVar2;
  Output_file *pOVar3;
  int iVar4;
  uchar *puVar5;
  pointer ppSVar6;
  pointer ppSVar7;
  pointer ppIVar8;
  pointer ppIVar9;
  pointer ppSVar10;
  pointer ppSVar11;
  iterator __position;
  pointer ppSVar12;
  pointer ppSVar13;
  int iVar14;
  bool bVar15;
  size_t sVar16;
  uint uVar17;
  Elf_Word shndx;
  Incremental_inputs_reader<64,_true> *pIVar18;
  uint uVar19;
  uchar *puVar20;
  uint uVar21;
  int iVar22;
  Incremental_binary *in_stack_ffffff14;
  vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
  *this_01;
  uint *in_stack_ffffff20;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  uint inputs_shndx;
  uint symtab_shndx;
  uint relocs_shndx;
  uint got_plt_shndx;
  uint strtab_shndx;
  size_type __dnew_1;
  Location inputs_location;
  uint local_74;
  int local_70;
  uint local_6c;
  undefined4 local_68;
  uint local_64;
  int local_60;
  uint local_5c;
  undefined4 local_58;
  Location got_plt_location;
  uint local_44;
  int local_40;
  uint local_3c;
  size_type __dnew;
  Incremental_inputs_reader<64,_true> *local_30;
  uint local_2c;
  uint local_28;
  uint local_24;
  
  bVar15 = find_incremental_inputs_sections
                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx);
  if (!bVar15) {
    return;
  }
  this_00 = &this->elf_file_;
  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,inputs_shndx);
  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,symtab_shndx);
  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,relocs_shndx);
  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,got_plt_shndx);
  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,strtab_shndx);
  pOVar3 = (this->super_Incremental_binary).output_;
  if (-1 < inputs_location.file_offset._4_4_) {
    uVar17 = (uint)pOVar3->file_size_;
    iVar22 = inputs_location.file_offset._4_4_ +
             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset);
    iVar4 = *(int *)((int)&pOVar3->file_size_ + 4);
    uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset);
    iVar14 = iVar4 - iVar22;
    if ((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0) {
      puVar5 = pOVar3->base_;
      if (((((-1 < local_70) &&
            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),
            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,
            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&
           (-1 < local_60)) &&
          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),
           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,
           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&
           (-1 < got_plt_location.file_offset._4_4_)))) &&
         ((iVar22 = got_plt_location.file_offset._4_4_ +
                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset
                                ),
          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +
                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,
          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&
          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40
           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),
              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,
              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))
         ) {
        puVar20 = puVar5 + local_44;
        if (local_3c == 0) {
          sVar16 = 0;
        }
        else {
          uVar1 = puVar20[local_3c - 1];
          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {
            uVar1 = puVar20[local_3c - 2];
            local_3c = sVar16;
          }
        }
        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);
        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;
        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;
        (this->inputs_reader_).strtab_.usable_size_ = sVar16;
        (this->symtab_reader_).p_ = puVar5 + local_74;
        (this->inputs_reader_).input_file_count_ =
             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;
        *(uint *)&(this->symtab_reader_).len_ = local_6c;
        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;
        (this->relocs_reader_).p_ = puVar5 + local_64;
        *(uint *)&(this->relocs_reader_).len_ = local_5c;
        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;
        uVar17 = *in_stack_ffffff20;
        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;
        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18
        ;
        (this->got_plt_reader_).got_count_ = uVar17;
        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);
        (this->got_plt_reader_).got_desc_p_ = puVar5;
        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;
        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type
                           (this_00,2);
        if (uVar17 == 0) {
                    /* WARNING: Subroutine does not return */
          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");
        }
        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);
        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;
        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;
        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;
        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;
        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);
        if ((shndx == 0) ||
           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),
           (this->elf_file_).shnum_ <= shndx)) {
                    /* WARNING: Subroutine does not return */
          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");
        }
        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);
        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;
        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;
        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;
        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;
        pIVar18 = &this->inputs_reader_;
        uVar17 = (this->inputs_reader_).input_file_count_;
        ppSVar6 = (this->input_objects_).
                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>
                  ._M_impl._M_finish;
        ppSVar7 = (this->input_objects_).
                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>
                  ._M_impl._M_start;
        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;
        if (uVar19 < uVar17) {
          std::
          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>
          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);
        }
        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {
          (this->input_objects_).
          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>
          ._M_impl._M_finish = ppSVar7;
        }
        this_01 = &this->input_entry_readers_;
        std::
        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
        ::reserve(this_01,uVar17);
        ppIVar8 = (this->super_Incremental_binary).library_map_.
                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>
                  ._M_impl._M_finish;
        ppIVar9 = (this->super_Incremental_binary).library_map_.
                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>
                  ._M_impl._M_start;
        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;
        if (uVar19 < uVar17) {
          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::
          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);
        }
        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {
          (this->super_Incremental_binary).library_map_.
          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>
          ._M_impl._M_finish = ppIVar9;
        }
        ppSVar10 = (this->super_Incremental_binary).script_map_.
                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.
                   _M_impl._M_finish;
        ppSVar11 = (this->super_Incremental_binary).script_map_.
                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.
                   _M_impl._M_start;
        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;
        if (uVar19 < uVar17) {
          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append
                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);
        }
        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {
          (this->super_Incremental_binary).script_map_.
          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.
          _M_finish = ppSVar11;
        }
        if (uVar17 != 0) {
          if ((this->inputs_reader_).input_file_count_ == 0) {
                    /* WARNING: Subroutine does not return */
            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");
          }
          puVar5 = (this->inputs_reader_).p_;
          local_28 = 0x10;
          uVar17 = *(uint *)(puVar5 + 0x14);
          uVar2 = *(ushort *)(puVar5 + 0x24);
          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |
                     uVar17 << 0x18;
          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);
          __position._M_current =
               (this->input_entry_readers_).
               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
               ._M_impl._M_finish;
          __dnew = (size_type)&PTR__Sized_input_reader_00383370;
          local_30 = pIVar18;
          if (__position._M_current ==
              (this->input_entry_readers_).
              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
              ._M_impl._M_end_of_storage) {
            std::
            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>
                      (this_01,__position,(Sized_input_reader *)&__dnew);
          }
          else {
            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =
                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;
            ((__position._M_current)->reader_).inputs_ = pIVar18;
            ((__position._M_current)->reader_).flags_ = local_2c;
            ((__position._M_current)->reader_).offset_ = 0x10;
            ((__position._M_current)->reader_).info_offset_ = local_24;
            (this->input_entry_readers_).
            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>
            ._M_impl._M_finish = __position._M_current + 1;
          }
          if (uVar2 >> 8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */
                    /* WARNING: Treating indirect jump as call */
            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +
                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();
            return;
          }
                    /* WARNING: Subroutine does not return */
          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");
        }
        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);
        uVar17 = (uint)(this->symtab_reader_).len_;
        uVar21 = iVar4 >> 0x1f & 3;
        uVar19 = uVar17 + uVar21 >> 2;
        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;
        ppSVar12 = (this->symbol_map_).
                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.
                   _M_finish;
        ppSVar13 = (this->symbol_map_).
                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.
                   _M_start;
        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;
        if (uVar21 < uVar17) {
          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append
                    (&this->symbol_map_,uVar17 - uVar21);
          this->has_incremental_info_ = true;
        }
        else {
          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {
            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.
            _M_impl._M_finish = ppSVar13;
          }
          this->has_incremental_info_ = true;
        }
        return;
      }
    }
  }
                    /* WARNING: Subroutine does not return */
  Incremental_binary::view
            (in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20);
}



/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */

void FUN_0008f830(int param_1)

{
  ushort uVar1;
  undefined4 *puVar2;
  int iVar3;
  char cVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  uint uVar8;
  int iVar9;
  uint uVar10;
  uint *puVar11;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  undefined4 local_9c;
  undefined4 local_98;
  undefined4 local_94;
  undefined4 local_90;
  undefined4 local_8c [2];
  uint local_84;
  int local_80;
  uint local_7c;
  uint local_74;
  int local_70;
  uint local_6c;
  undefined4 local_68;
  uint local_64;
  int local_60;
  uint local_5c;
  undefined4 local_58;
  uint local_54;
  int local_50;
  uint local_4c;
  uint local_44;
  int local_40;
  uint local_3c;
  undefined **local_34;
  int local_30;
  uint local_2c;
  undefined4 local_28;
  uint local_24;
  
  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);
  if (cVar4 == '\0') {
    return;
  }
  iVar7 = param_1 + 0x2c;
  FUN_00088310(&local_84,iVar7,local_9c);
  FUN_00088310(&local_74,iVar7,local_98);
  FUN_00088310(&local_64,iVar7,local_94);
  FUN_00088310(&local_54,iVar7,local_90);
  FUN_00088310(&local_44,iVar7,local_8c[0]);
  iVar6 = *(int *)(param_1 + 0x28);
  if (-1 < local_80) {
    uVar5 = *(uint *)(iVar6 + 8);
    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);
    iVar9 = *(int *)(iVar6 + 0xc);
    uVar8 = (uint)(uVar5 < local_7c + local_84);
    iVar3 = iVar9 - local_80;
    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {
      iVar6 = *(int *)(iVar6 + 0x10);
      if (((((-1 < local_70) &&
            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),
            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,
            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&
           (-1 < local_60)) &&
          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),
           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,
           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&
           (-1 < local_50)))) &&
         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),
          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,
          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&
          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&
           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),
           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,
           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {
        iVar9 = local_44 + iVar6;
        if (local_3c == 0) {
          local_3c = 0;
        }
        else {
          cVar4 = *(char *)(iVar9 + -1 + local_3c);
          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {
            cVar4 = *(char *)(iVar9 + -1 + local_3c);
          }
        }
        uVar5 = *(uint *)(local_84 + iVar6 + 4);
        *(uint *)(param_1 + 0x98) = local_84 + iVar6;
        *(int *)(param_1 + 0x9c) = iVar9;
        *(uint *)(param_1 + 0xa0) = local_3c;
        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;
        *(uint *)(param_1 + 0xa4) =
             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;
        *(uint *)(param_1 + 0xac) = local_6c;
        *(undefined4 *)(param_1 + 0xb0) = local_68;
        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;
        *(uint *)(param_1 + 0xb8) = local_5c;
        *(undefined4 *)(param_1 + 0xbc) = local_58;
        uVar5 = *puVar11;
        *(uint **)(param_1 + 0xc0) = puVar11;
        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;
        *(uint *)(param_1 + 0xc4) = uVar5;
        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;
        *(int *)(param_1 + 200) = iVar6;
        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;
        iVar6 = FUN_00088190(iVar7,2);
        if (iVar6 == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);
        }
        FUN_00088310(&local_ac,iVar7,iVar6);
        *(undefined4 *)(param_1 + 0x74) = local_ac;
        *(undefined4 *)(param_1 + 0x78) = local_a8;
        *(undefined4 *)(param_1 + 0x7c) = local_a4;
        *(undefined4 *)(param_1 + 0x80) = local_a0;
        uVar5 = FUN_00088680(iVar7,iVar6);
        iVar6 = param_1;
        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)
           ) {
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);
        }
        FUN_00088310(&local_ac,iVar7,uVar5);
        *(undefined4 *)(param_1 + 0x84) = local_ac;
        *(undefined4 *)(param_1 + 0x88) = local_a8;
        *(undefined4 *)(param_1 + 0x8c) = local_a4;
        *(undefined4 *)(param_1 + 0x90) = local_a0;
        iVar7 = param_1 + 0x98;
        uVar5 = *(uint *)(param_1 + 0xa4);
        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;
        if (uVar8 < uVar5) {
          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {
          *(int *)(param_1 + 0x48) = iVar6;
        }
        FUN_0007f140(param_1 + 0xd0,uVar5);
        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;
        if (uVar8 < uVar5) {
          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {
          *(int *)(param_1 + 0x14) = iVar6;
        }
        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;
        if (uVar8 < uVar5) {
          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {
          *(int *)(param_1 + 0x20) = iVar6;
        }
        if (uVar5 != 0) {
          if (*(int *)(param_1 + 0xa4) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");
          }
          local_34 = &PTR_FUN_00383370;
          local_28 = 0x10;
          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);
          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);
          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18
          ;
          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);
          puVar2 = *(undefined4 **)(param_1 + 0xd4);
          local_30 = iVar7;
          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {
            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);
          }
          else {
            *puVar2 = &PTR_FUN_00383370;
            puVar2[1] = iVar7;
            puVar2[2] = local_2c;
            puVar2[3] = 0x10;
            puVar2[4] = local_24;
            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;
          }
          if (uVar1 >> 8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */
                    /* WARNING: Treating indirect jump as call */
            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))
                      ();
            return;
          }
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");
        }
        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;
        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;
        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *
                        0x40000000;
        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;
        if (uVar10 < uVar8) {
          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);
          *(undefined1 *)(param_1 + 0x94) = 1;
        }
        else {
          if ((uVar8 < uVar10) &&
             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {
            *(int *)(param_1 + 0x60) = iVar7;
          }
          *(undefined1 *)(param_1 + 0x94) = 1;
        }
        return;
      }
    }
  }
                    /* WARNING: Subroutine does not return */
  FUN_00071170();
}


CALL 0x000559e6
ADD EAX,0x2ff7cb
PUSH EBP
MOV EBP,ESP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0xe4
MOV dword ptr [EBP + 0xffffff4c],EAX
LEA EAX,[EBP + 0xffffff78]
PUSH EAX
LEA EAX,[EBP + 0xffffff74]
PUSH EAX
LEA EAX,[EBP + 0xffffff70]
PUSH EAX
LEA EAX,[EBP + 0xffffff6c]
PUSH EAX
LEA EAX,[EBP + 0xffffff68]
PUSH EAX
PUSH dword ptr [EBP + 0x8]
CALL 0x00088720
ADD ESP,0x20
TEST AL,AL
JNZ 0x0008f890
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0x4
PUSH dword ptr [EBP + 0xffffff68]
LEA ESI,[EAX + 0x2c]
LEA EAX,[EBP + -0x80]
PUSH ESI
PUSH EAX
MOV dword ptr [EBP + 0xffffff50],ESI
CALL 0x00088310
LEA EAX,[EBP + -0x70]
POP EDX
POP ECX
PUSH dword ptr [EBP + 0xffffff6c]
PUSH ESI
PUSH EAX
CALL 0x00088310
MOV EAX,dword ptr [EBP + -0x68]
POP EBX
POP EDI
PUSH dword ptr [EBP + 0xffffff70]
MOV dword ptr [EBP + 0xffffff34],EAX
MOV EAX,dword ptr [EBP + -0x64]
PUSH ESI
MOV dword ptr [EBP + 0xffffff1c],EAX
LEA EAX,[EBP + -0x60]
PUSH EAX
CALL 0x00088310
MOV EAX,dword ptr [EBP + -0x58]
POP EDX
POP ECX
PUSH dword ptr [EBP + 0xffffff74]
MOV dword ptr [EBP + 0xffffff38],EAX
MOV EAX,dword ptr [EBP + -0x54]
PUSH ESI
MOV dword ptr [EBP + 0xffffff20],EAX
LEA EAX,[EBP + -0x50]
PUSH EAX
CALL 0x00088310
LEA EAX,[EBP + -0x40]
POP EBX
POP EDI
PUSH dword ptr [EBP + 0xffffff78]
PUSH ESI
PUSH EAX
CALL 0x00088310
MOV EAX,dword ptr [EBP + -0x38]
MOV EDX,dword ptr [EBP + -0x7c]
MOV ESI,dword ptr [EBP + 0x8]
MOV EBX,dword ptr [EBP + -0x78]
ADD ESP,0xc
MOV dword ptr [EBP + 0xffffff3c],EAX
MOV EAX,dword ptr [EBP + -0x80]
MOV dword ptr [EBP + 0xffffff44],EDX
MOV ECX,dword ptr [ESI + 0x28]
MOV dword ptr [EBP + 0xffffff40],EAX
MOV EAX,dword ptr [EBP + 0xffffff44]
TEST EAX,EAX
JS 0x00090456
MOV ESI,dword ptr [ECX + 0x8]
MOV EAX,EBX
XOR EDX,EDX
ADD EAX,dword ptr [EBP + 0xffffff40]
ADC EDX,dword ptr [EBP + 0xffffff44]
MOV EDI,ESI
MOV dword ptr [EBP + 0xffffff48],ESI
MOV ESI,dword ptr [ECX + 0xc]
CMP EDI,EAX
MOV EBX,ESI
SBB EBX,EDX
JL 0x00090456
MOV EAX,dword ptr [ECX + 0x10]
MOV EBX,dword ptr [EBP + 0xffffff40]
MOV ECX,dword ptr [EBP + -0x70]
ADD EBX,EAX
MOV dword ptr [EBP + 0xffffff40],EAX
MOV dword ptr [EBP + 0xffffff2c],EBX
MOV EBX,dword ptr [EBP + -0x6c]
TEST EBX,EBX
JS 0x00090456
MOV EAX,dword ptr [EBP + 0xffffff34]
XOR EDX,EDX
MOV EDI,ESI
ADD EAX,ECX
ADC EDX,EBX
CMP dword ptr [EBP + 0xffffff48],EAX
SBB EDI,EDX
JL 0x00090456
MOV EBX,dword ptr [EBP + 0xffffff40]
ADD EBX,ECX
MOV ECX,dword ptr [EBP + -0x60]
MOV dword ptr [EBP + 0xffffff30],EBX
MOV EBX,dword ptr [EBP + -0x5c]
TEST EBX,EBX
JS 0x00090456
MOV EAX,dword ptr [EBP + 0xffffff38]
XOR EDX,EDX
MOV EDI,ESI
ADD EAX,ECX
ADC EDX,EBX
CMP dword ptr [EBP + 0xffffff48],EAX
SBB EDI,EDX
JL 0x00090456
MOV EBX,dword ptr [EBP + 0xffffff40]
MOV EDI,dword ptr [EBP + -0x48]
ADD EBX,ECX
MOV ECX,dword ptr [EBP + -0x50]
MOV dword ptr [EBP + 0xffffff28],EBX
MOV EBX,dword ptr [EBP + -0x4c]
TEST EBX,EBX
JS 0x00090456
MOV EAX,EDI
XOR EDX,EDX
MOV EDI,ESI
ADD EAX,ECX
ADC EDX,EBX
CMP dword ptr [EBP + 0xffffff48],EAX
SBB EDI,EDX
JL 0x00090456
MOV EBX,dword ptr [EBP + 0xffffff40]
ADD EBX,ECX
MOV ECX,dword ptr [EBP + -0x40]
MOV dword ptr [EBP + 0xffffff24],EBX
MOV EBX,dword ptr [EBP + -0x3c]
TEST EBX,EBX
JS 0x00090456
MOV EAX,dword ptr [EBP + 0xffffff3c]
XOR EDX,EDX
MOV EDI,ESI
ADD EAX,ECX
ADC EDX,EBX
CMP dword ptr [EBP + 0xffffff48],EAX
SBB EDI,EDX
JL 0x00090456
MOV ESI,dword ptr [EBP + 0xffffff3c]
ADD ECX,dword ptr [EBP + 0xffffff40]
TEST ESI,ESI
JZ 0x00090423
CMP byte ptr [ECX + ESI*0x1 + -0x1],0x0
LEA EAX,[ESI + -0x1]
MOV EDI,dword ptr [EBP + 0xffffff50]
JNZ 0x0008fa9c
JMP 0x0009042a
CMP byte ptr [ECX + EAX*0x1 + -0x1],0x0
LEA EDX,[EAX + -0x1]
JZ 0x0008faa0
MOV EAX,EDX
TEST EAX,EAX
JNZ 0x0008fa90
MOV dword ptr [EBP + 0xffffff50],EDI
MOV EDI,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff2c]
SUB ESP,0x8
MOV EDX,dword ptr [ESI + 0x4]
MOV dword ptr [EDI + 0x98],ESI
MOV ESI,dword ptr [EBP + 0xffffff30]
MOV dword ptr [EDI + 0x9c],ECX
MOV dword ptr [EDI + 0xa0],EAX
BSWAP EDX
MOV dword ptr [EDI + 0xa8],ESI
MOV ESI,dword ptr [EBP + 0xffffff34]
MOV dword ptr [EDI + 0xa4],EDX
MOV dword ptr [EDI + 0xac],ESI
MOV ESI,dword ptr [EBP + 0xffffff1c]
MOV dword ptr [EDI + 0xb0],ESI
MOV ESI,dword ptr [EBP + 0xffffff28]
MOV dword ptr [EDI + 0xb4],ESI
MOV ESI,dword ptr [EBP + 0xffffff38]
MOV dword ptr [EDI + 0xb8],ESI
MOV ESI,dword ptr [EBP + 0xffffff20]
MOV dword ptr [EDI + 0xbc],ESI
MOV ESI,dword ptr [EBP + 0xffffff24]
MOV EAX,dword ptr [ESI]
MOV dword ptr [EDI + 0xc0],ESI
BSWAP EAX
LEA EDX,[EAX + 0x3]
MOV dword ptr [EDI + 0xc4],EAX
AND EDX,0xfffffffc
LEA EDX,[ESI + EDX*0x1 + 0x8]
LEA EAX,[EDX + EAX*0x8]
MOV dword ptr [EDI + 0xc8],EDX
MOV dword ptr [EDI + 0xcc],EAX
PUSH 0x2
PUSH dword ptr [EBP + 0xffffff50]
CALL 0x00088190
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x00090462
SUB ESP,0x4
LEA EBX,[EBP + 0xffffff58]
PUSH EAX
PUSH dword ptr [EBP + 0xffffff50]
PUSH EBX
CALL 0x00088310
MOV EAX,dword ptr [EBP + 0xffffff58]
MOV EDI,dword ptr [EBP + 0x8]
MOV dword ptr [EDI + 0x74],EAX
MOV EAX,dword ptr [EBP + 0xffffff5c]
MOV dword ptr [EDI + 0x78],EAX
MOV EAX,dword ptr [EBP + 0xffffff60]
MOV dword ptr [EDI + 0x7c],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV dword ptr [EDI + 0x80],EAX
MOV dword ptr [ESP],ESI
PUSH dword ptr [EBP + 0xffffff50]
CALL 0x00088680
ADD ESP,0x10
MOV ESI,EAX
TEST EAX,EAX
JZ 0x00090481
MOV EDI,dword ptr [EBP + 0xffffff50]
SUB ESP,0xc
PUSH EDI
CALL 0x00088090
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
CMP ESI,dword ptr [EAX + 0x38]
JNC 0x00090481
SUB ESP,0x4
PUSH ESI
PUSH EDI
PUSH EBX
CALL 0x00088310
MOV ESI,dword ptr [EBP + 0x8]
MOV EAX,dword ptr [EBP + 0xffffff58]
ADD ESP,0xc
MOV dword ptr [ESI + 0x84],EAX
MOV EAX,dword ptr [EBP + 0xffffff5c]
MOV dword ptr [ESI + 0x88],EAX
MOV EAX,dword ptr [EBP + 0xffffff60]
MOV dword ptr [ESI + 0x8c],EAX
MOV EAX,dword ptr [EBP + 0xffffff64]
MOV dword ptr [ESI + 0x90],EAX
MOV EAX,ESI
ADD EAX,0x98
MOV dword ptr [EBP + 0xffffff30],EAX
MOV EAX,ESI
MOV ESI,dword ptr [ESI + 0xa4]
MOV EDX,dword ptr [EAX + 0x48]
MOV ECX,dword ptr [EAX + 0x44]
MOV dword ptr [EBP + 0xffffff34],ESI
MOV EAX,EDX
SUB EAX,ECX
SAR EAX,0x2
CMP ESI,EAX
JA 0x00090384
JNC 0x0008fc5f
MOV EAX,dword ptr [EBP + 0xffffff34]
LEA EAX,[ECX + EAX*0x4]
CMP EDX,EAX
JZ 0x0008fc5f
MOV ESI,dword ptr [EBP + 0x8]
MOV dword ptr [ESI + 0x48],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV ESI,dword ptr [EBP + 0xffffff34]
SUB ESP,0x8
ADD EAX,0xd0
PUSH ESI
PUSH EAX
MOV dword ptr [EBP + 0xffffff20],EAX
CALL 0x0007f140
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV EDX,dword ptr [EAX + 0x14]
MOV ECX,dword ptr [EAX + 0x10]
MOV EAX,EDX
SUB EAX,ECX
SAR EAX,0x2
CMP ESI,EAX
JA 0x000903be
JNC 0x0008fcad
MOV EAX,dword ptr [EBP + 0xffffff34]
LEA EAX,[ECX + EAX*0x4]
CMP EDX,EAX
JZ 0x0008fcad
MOV ESI,dword ptr [EBP + 0x8]
MOV dword ptr [ESI + 0x14],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EAX + 0x20]
MOV ECX,dword ptr [EAX + 0x1c]
MOV EAX,EDX
SUB EAX,ECX
SAR EAX,0x2
CMP dword ptr [EBP + 0xffffff34],EAX
JA 0x0009039e
JC 0x00090368
MOV ESI,dword ptr [EBP + 0xffffff34]
TEST ESI,ESI
JZ 0x000902f0
MOV EAX,dword ptr [EBP + 0x8]
MOV ECX,dword ptr [EAX + 0xa4]
TEST ECX,ECX
JZ 0x0008ff96
MOV dword ptr [EBP + 0xffffff38],0x14
MOV EAX,dword ptr [EBP + 0xffffff4c]
MOV dword ptr [EBP + 0xffffff50],0x0
LEA EAX,[EAX + 0xffff4370]
MOV dword ptr [EBP + 0xffffff2c],EAX
LEA ESI,[ESI]
MOV EAX,dword ptr [EBP + 0x8]
MOV EDI,dword ptr [EBP + 0xffffff38]
MOV EAX,dword ptr [EAX + 0x98]
LEA ESI,[EDI + -0x4]
MOV EDX,dword ptr [EAX + EDI*0x1]
MOVZX EAX,word ptr [EAX + EDI*0x1 + 0x10]
MOV dword ptr [EBP + -0x24],ESI
MOV EDI,dword ptr [EBP + 0xffffff2c]
MOV EBX,EAX
MOV EAX,dword ptr [EBP + 0xffffff30]
MOV ECX,EDX
ROL BX,0x8
BSWAP ECX
MOV dword ptr [EBP + 0xffffff48],ECX
MOV dword ptr [EBP + -0x2c],EAX
MOVZX EAX,BX
MOV dword ptr [EBP + -0x28],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + -0x20],ECX
MOV ECX,dword ptr [EBP + 0x8]
MOV dword ptr [EBP + -0x30],EDI
MOV EAX,dword ptr [EAX + 0xd4]
CMP EAX,dword ptr [ECX + 0xd8]
JZ 0x00090198
MOV EDX,dword ptr [EBP + -0x2c]
MOV dword ptr [EAX],EDI
ADD EAX,0x14
MOV dword ptr [EAX + -0x10],EDX
MOV EDX,dword ptr [EBP + -0x28]
MOV dword ptr [EAX + -0xc],EDX
MOV EDX,dword ptr [EBP + -0x24]
MOV dword ptr [EAX + -0x8],EDX
MOV EDX,dword ptr [EBP + -0x20]
MOV dword ptr [EAX + -0x4],EDX
MOV dword ptr [ECX + 0xd4],EAX
MOVZX EAX,BL
CMP AX,0x5
JA 0x00090402
MOV EBX,dword ptr [EBP + 0xffffff4c]
MOV EDI,dword ptr [EBX + EAX*0x4 + 0xffef9410]
ADD EDI,EBX
JMP EDI
MOV EBX,dword ptr [EBP + 0xffffff4c]
SUB ESP,0x4
LEA EAX,[EBX + 0xffef988c]
PUSH EAX
LEA EAX,[EBX + 0xffef8eda]
PUSH 0x45c
PUSH EAX
CALL 0x00069d00
SUB ESP,0x4
LEA EDX,[EBP + -0x30]
PUSH EDX
PUSH EAX
PUSH dword ptr [EBP + 0xffffff20]
CALL 0x0008f610
ADD ESP,0x10
JMP 0x0008fd9b
MOV EAX,dword ptr [EBP + 0x8]
MOV EDX,dword ptr [EAX + 0xb0]
MOV EAX,dword ptr [EAX + 0xac]
MOV dword ptr [EBP + 0xffffff54],EDX
MOV ECX,dword ptr [EBP + 0xffffff54]
XOR EDX,EDX
MOV dword ptr [EBP + 0xffffff50],EAX
MOV ESI,dword ptr [EBP + 0xffffff50]
SAR ECX,0x1f
MOV EDI,dword ptr [EBP + 0xffffff54]
AND ECX,0x3
ADD ESI,ECX
MOV EAX,ESI
MOV ESI,dword ptr [EBP + 0x8]
ADC EDI,EDX
SHRD EAX,EDI,0x2
MOV ECX,dword ptr [ESI + 0x60]
MOV EBX,dword ptr [ESI + 0x5c]
MOV EDX,ECX
SUB EDX,EBX
SAR EDX,0x2
CMP EAX,EDX
JA 0x000903de
JNC 0x00090356
LEA EAX,[EBX + EAX*0x4]
CMP ECX,EAX
JZ 0x00090356
MOV ESI,dword ptr [EBP + 0x8]
MOV dword ptr [ESI + 0x60],EAX
MOV EAX,dword ptr [EBP + 0x8]
MOV byte ptr [EAX + 0x94],0x1
LEA ESP,[EBP + -0xc]
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EAX,dword ptr [EBP + 0xffffff34]
LEA EAX,[ECX + EAX*0x4]
CMP EDX,EAX
JZ 0x0008fccf
MOV ESI,dword ptr [EBP + 0x8]
MOV dword ptr [ESI + 0x20],EAX
JMP 0x0008fccf
SUB ESI,EAX
MOV EAX,dword ptr [EBP + 0x8]
SUB ESP,0x8
PUSH ESI
ADD EAX,0x44
PUSH EAX
CALL 0x00088960
ADD ESP,0x10
JMP 0x0008fc5f
MOV ESI,dword ptr [EBP + 0xffffff34]
SUB ESP,0x8
SUB ESI,EAX
MOV EAX,dword ptr [EBP + 0x8]
PUSH ESI
ADD EAX,0x1c
PUSH EAX
CALL 0x00083280
ADD ESP,0x10
JMP 0x0008fccf
MOV ESI,dword ptr [EBP + 0xffffff34]
SUB ESP,0x8
SUB ESI,EAX
MOV EAX,dword ptr [EBP + 0x8]
PUSH ESI
ADD EAX,0x10
PUSH EAX
CALL 0x00083150
ADD ESP,0x10
JMP 0x0008fcad
SUB ESP,0x8
SUB EAX,EDX
PUSH EAX
MOV EAX,dword ptr [EBP + 0x8]
ADD EAX,0x5c
PUSH EAX
CALL 0x000833b0
MOV EAX,dword ptr [EBP + 0x8]
ADD ESP,0x10
MOV byte ptr [EAX + 0x94],0x1
JMP 0x00090360
MOV EBX,dword ptr [EBP + 0xffffff4c]
SUB ESP,0x4
LEA EAX,[EBX + 0xffef97f8]
PUSH EAX
LEA EAX,[EBX + 0xffef8ec0]
PUSH 0x163
PUSH EAX
CALL 0x00069d00
XOR EAX,EAX
JMP 0x0008faa6
MOV EAX,dword ptr [EBP + 0xffffff3c]
JMP 0x0008faa6
CALL 0x00071170
MOV EBX,dword ptr [EBP + 0xffffff4c]
PUSH EAX
LEA EAX,[EBX + 0xffef97f8]
PUSH EAX
LEA EAX,[EBX + 0xffef8ec0]
PUSH 0x124
PUSH EAX
CALL 0x00069d00
MOV EBX,dword ptr [EBP + 0xffffff4c]
PUSH EDI
LEA EAX,[EBX + 0xffef97f8]
PUSH EAX
LEA EAX,[EBX + 0xffef8ec0]
PUSH 0x12b
PUSH EAX
CALL 0x00069d00
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n\nvoid FUN_0008f830(int param_1)\n\n{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_00071170();\n}\n\n" comment (function_definition "void FUN_0008f830(int param_1)\n\n{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_00071170();\n}" primitive_type (function_declarator "FUN_0008f830(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_00071170();\n}" { (declaration "ushort uVar1;" type_identifier identifier ;) (declaration "undefined4 *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "undefined4 local_98;" type_identifier identifier ;) (declaration "undefined4 local_94;" type_identifier identifier ;) (declaration "undefined4 local_90;" type_identifier identifier ;) (declaration "undefined4 local_8c [2];" type_identifier (array_declarator "local_8c [2]" identifier [ number_literal ]) ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "int local_80;" primitive_type identifier ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint local_74;" type_identifier identifier ;) (declaration "int local_70;" primitive_type identifier ;) (declaration "uint local_6c;" type_identifier identifier ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "uint local_64;" type_identifier identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "uint local_4c;" type_identifier identifier ;) (declaration "uint local_44;" type_identifier identifier ;) (declaration "int local_40;" primitive_type identifier ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "undefined **local_34;" type_identifier (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)) ;) (declaration "int local_30;" primitive_type identifier ;) (declaration "uint local_2c;" type_identifier identifier ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (expression_statement "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);" (assignment_expression "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" identifier = (call_expression "FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" identifier (argument_list "(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" ( identifier , (pointer_expression "&local_9c" & identifier) , (pointer_expression "&local_98" & identifier) , (pointer_expression "&local_94" & identifier) , (pointer_expression "&local_90" & identifier) , identifier )))) ;) (if_statement "if (cVar4 == '\0') {\n    return;\n  }" if (parenthesized_expression "(cVar4 == '\0')" ( (binary_expression "cVar4 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar7 = param_1 + 0x2c;" (assignment_expression "iVar7 = param_1 + 0x2c" identifier = (binary_expression "param_1 + 0x2c" identifier + number_literal)) ;) (expression_statement "FUN_00088310(&local_84,iVar7,local_9c);" (call_expression "FUN_00088310(&local_84,iVar7,local_9c)" identifier (argument_list "(&local_84,iVar7,local_9c)" ( (pointer_expression "&local_84" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_74,iVar7,local_98);" (call_expression "FUN_00088310(&local_74,iVar7,local_98)" identifier (argument_list "(&local_74,iVar7,local_98)" ( (pointer_expression "&local_74" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_64,iVar7,local_94);" (call_expression "FUN_00088310(&local_64,iVar7,local_94)" identifier (argument_list "(&local_64,iVar7,local_94)" ( (pointer_expression "&local_64" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_54,iVar7,local_90);" (call_expression "FUN_00088310(&local_54,iVar7,local_90)" identifier (argument_list "(&local_54,iVar7,local_90)" ( (pointer_expression "&local_54" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_44,iVar7,local_8c[0]);" (call_expression "FUN_00088310(&local_44,iVar7,local_8c[0])" identifier (argument_list "(&local_44,iVar7,local_8c[0])" ( (pointer_expression "&local_44" & identifier) , identifier , (subscript_expression "local_8c[0]" identifier [ number_literal ]) ))) ;) (expression_statement "iVar6 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x28)" identifier = (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" if (parenthesized_expression "(-1 < local_80)" ( (binary_expression "-1 < local_80" number_literal < identifier) )) (compound_statement "{\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" { (expression_statement "uVar5 = *(uint *)(iVar6 + 8);" (assignment_expression "uVar5 = *(uint *)(iVar6 + 8)" identifier = (pointer_expression "*(uint *)(iVar6 + 8)" * (cast_expression "(uint *)(iVar6 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 8)" ( (binary_expression "iVar6 + 8" identifier + number_literal) ))))) ;) (expression_statement "local_80 = local_80 + (uint)CARRY4(local_7c,local_84);" (assignment_expression "local_80 = local_80 + (uint)CARRY4(local_7c,local_84)" identifier = (binary_expression "local_80 + (uint)CARRY4(local_7c,local_84)" identifier + (cast_expression "(uint)CARRY4(local_7c,local_84)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_7c,local_84)" identifier (argument_list "(local_7c,local_84)" ( identifier , identifier )))))) ;) (expression_statement "iVar9 = *(int *)(iVar6 + 0xc);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0xc)" identifier = (pointer_expression "*(int *)(iVar6 + 0xc)" * (cast_expression "(int *)(iVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xc)" ( (binary_expression "iVar6 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = (uint)(uVar5 < local_7c + local_84);" (assignment_expression "uVar8 = (uint)(uVar5 < local_7c + local_84)" identifier = (call_expression "(uint)(uVar5 < local_7c + local_84)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_7c + local_84)" ( (binary_expression "uVar5 < local_7c + local_84" identifier < (binary_expression "local_7c + local_84" identifier + identifier)) )))) ;) (expression_statement "iVar3 = iVar9 - local_80;" (assignment_expression "iVar3 = iVar9 - local_80" identifier = (binary_expression "iVar9 - local_80" identifier - identifier)) ;) (if_statement "if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" if (parenthesized_expression "((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" ( (binary_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_80)" identifier (argument_list "(iVar9,local_80)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) )) (compound_statement "{\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" { (expression_statement "iVar6 = *(int *)(iVar6 + 0x10);" (assignment_expression "iVar6 = *(int *)(iVar6 + 0x10)" identifier = (pointer_expression "*(int *)(iVar6 + 0x10)" * (cast_expression "(int *)(iVar6 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x10)" ( (binary_expression "iVar6 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" if (parenthesized_expression "(((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))))" ( (binary_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" (parenthesized_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))))" ( (binary_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" (parenthesized_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60))" ( (binary_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)" (parenthesized_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0))" ( (binary_expression "(-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" (parenthesized_expression "(-1 < local_70)" ( (binary_expression "-1 < local_70" number_literal < identifier) )) && (parenthesized_expression "(local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" ( (comma_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74)" identifier = (binary_expression "local_70 + (uint)CARRY4(local_6c,local_74)" identifier + (cast_expression "(uint)CARRY4(local_6c,local_74)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_6c,local_74)" identifier (argument_list "(local_6c,local_74)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "uVar8 = (uint)(uVar5 < local_6c + local_74)" identifier = (call_expression "(uint)(uVar5 < local_6c + local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_6c + local_74)" ( (binary_expression "uVar5 < local_6c + local_74" identifier < (binary_expression "local_6c + local_74" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "iVar3 = iVar9 - local_70" identifier = (binary_expression "iVar9 - local_70" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_70)" identifier (argument_list "(iVar9,local_70)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal))))) ))) )) && (parenthesized_expression "(-1 < local_60)" ( (binary_expression "-1 < local_60" number_literal < identifier) ))) )) && (parenthesized_expression "((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" ( (parenthesized_expression "(local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))" ( (comma_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64)" identifier = (binary_expression "local_60 + (uint)CARRY4(local_5c,local_64)" identifier + (cast_expression "(uint)CARRY4(local_5c,local_64)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_5c,local_64)" identifier (argument_list "(local_5c,local_64)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "uVar8 = (uint)(uVar5 < local_5c + local_64)" identifier = (call_expression "(uint)(uVar5 < local_5c + local_64)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_5c + local_64)" ( (binary_expression "uVar5 < local_5c + local_64" identifier < (binary_expression "local_5c + local_64" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "iVar3 = iVar9 - local_60" identifier = (binary_expression "iVar9 - local_60" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_60)" identifier (argument_list "(iVar9,local_60)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "(-1 < local_50)" ( (binary_expression "-1 < local_50" number_literal < identifier) )))))) )) ))) )) && (parenthesized_expression "((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" ( (parenthesized_expression "(local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))" ( (comma_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54)" identifier = (binary_expression "local_50 + (uint)CARRY4(local_4c,local_54)" identifier + (cast_expression "(uint)CARRY4(local_4c,local_54)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_4c,local_54)" identifier (argument_list "(local_4c,local_54)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "uVar8 = (uint)(uVar5 < local_4c + local_54)" identifier = (call_expression "(uint)(uVar5 < local_4c + local_54)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_4c + local_54)" ( (binary_expression "uVar5 < local_4c + local_54" identifier < (binary_expression "local_4c + local_54" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "iVar3 = iVar9 - local_50" identifier = (binary_expression "iVar9 - local_50" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_50)" identifier (argument_list "(iVar9,local_50)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" ( (parenthesized_expression "(puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))" ( (comma_expression "puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (assignment_expression "puVar11 = (uint *)(iVar6 + local_54)" identifier = (cast_expression "(uint *)(iVar6 + local_54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + local_54)" ( (binary_expression "iVar6 + local_54" identifier + identifier) )))) , (binary_expression "-1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (binary_expression "-1 < local_40" number_literal < identifier) && (parenthesized_expression "(local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" ( (comma_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44)" identifier = (binary_expression "local_40 + (uint)CARRY4(local_3c,local_44)" identifier + (cast_expression "(uint)CARRY4(local_3c,local_44)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_3c,local_44)" identifier (argument_list "(local_3c,local_44)" ( identifier , identifier )))))) , (comma_expression "uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "uVar5 = (uint)(uVar5 < local_3c + local_44)" identifier = (call_expression "(uint)(uVar5 < local_3c + local_44)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_3c + local_44)" ( (binary_expression "uVar5 < local_3c + local_44" identifier < (binary_expression "local_3c + local_44" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "iVar3 = iVar9 - local_40" identifier = (binary_expression "iVar9 - local_40" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5))" ( (binary_expression "SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)" (call_expression "SBORROW4(iVar9,local_40)" identifier (argument_list "(iVar9,local_40)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar5)" identifier (argument_list "(iVar3,uVar5)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar5) < 0" (cast_expression "(int)(iVar3 - uVar5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar5)" ( (binary_expression "iVar3 - uVar5" identifier - identifier) ))) < number_literal))))) )))) )) )))))) )) ))) )) (compound_statement "{\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" { (expression_statement "iVar9 = local_44 + iVar6;" (assignment_expression "iVar9 = local_44 + iVar6" identifier = (binary_expression "local_44 + iVar6" identifier + identifier)) ;) (if_statement "if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" if (parenthesized_expression "(local_3c == 0)" ( (binary_expression "local_3c == 0" identifier == number_literal) )) (compound_statement "{\n          local_3c = 0;\n        }" { (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" identifier = number_literal) ;) }) (else_clause "else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" else (compound_statement "{\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" { (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" identifier = (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" * (cast_expression "(char *)(iVar9 + -1 + local_3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -1 + local_3c)" ( (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" identifier + number_literal) + identifier) ))))) ;) (while_statement "while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" while (parenthesized_expression "((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)))" ( (parenthesized_expression "(cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))" ( (binary_expression "cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)" (binary_expression "cVar4 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(local_3c = local_3c - 1, local_3c != 0)" ( (comma_expression "local_3c = local_3c - 1, local_3c != 0" (assignment_expression "local_3c = local_3c - 1" identifier = (binary_expression "local_3c - 1" identifier - number_literal)) , (binary_expression "local_3c != 0" identifier != number_literal)) ))) )) )) (compound_statement "{\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" { (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" identifier = (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" * (cast_expression "(char *)(iVar9 + -1 + local_3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -1 + local_3c)" ( (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" identifier + number_literal) + identifier) ))))) ;) })) }))) (expression_statement "uVar5 = *(uint *)(local_84 + iVar6 + 4);" (assignment_expression "uVar5 = *(uint *)(local_84 + iVar6 + 4)" identifier = (pointer_expression "*(uint *)(local_84 + iVar6 + 4)" * (cast_expression "(uint *)(local_84 + iVar6 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_84 + iVar6 + 4)" ( (binary_expression "local_84 + iVar6 + 4" (binary_expression "local_84 + iVar6" identifier + identifier) + number_literal) ))))) ;) (expression_statement "*(uint *)(param_1 + 0x98) = local_84 + iVar6;" (assignment_expression "*(uint *)(param_1 + 0x98) = local_84 + iVar6" (pointer_expression "*(uint *)(param_1 + 0x98)" * (cast_expression "(uint *)(param_1 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) = (binary_expression "local_84 + iVar6" identifier + identifier)) ;) (expression_statement "*(int *)(param_1 + 0x9c) = iVar9;" (assignment_expression "*(int *)(param_1 + 0x9c) = iVar9" (pointer_expression "*(int *)(param_1 + 0x9c)" * (cast_expression "(int *)(param_1 + 0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x9c)" ( (binary_expression "param_1 + 0x9c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xa0) = local_3c;" (assignment_expression "*(uint *)(param_1 + 0xa0) = local_3c" (pointer_expression "*(uint *)(param_1 + 0xa0)" * (cast_expression "(uint *)(param_1 + 0xa0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa0)" ( (binary_expression "param_1 + 0xa0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xa8) = iVar6 + local_74;" (assignment_expression "*(uint *)(param_1 + 0xa8) = iVar6 + local_74" (pointer_expression "*(uint *)(param_1 + 0xa8)" * (cast_expression "(uint *)(param_1 + 0xa8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa8)" ( (binary_expression "param_1 + 0xa8" identifier + number_literal) )))) = (binary_expression "iVar6 + local_74" identifier + identifier)) ;) (expression_statement "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (pointer_expression "*(uint *)(param_1 + 0xa4)" * (cast_expression "(uint *)(param_1 + 0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))) = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "*(uint *)(param_1 + 0xac) = local_6c;" (assignment_expression "*(uint *)(param_1 + 0xac) = local_6c" (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0xb0) = local_68;" (assignment_expression "*(undefined4 *)(param_1 + 0xb0) = local_68" (pointer_expression "*(undefined4 *)(param_1 + 0xb0)" * (cast_expression "(undefined4 *)(param_1 + 0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xb4) = iVar6 + local_64;" (assignment_expression "*(uint *)(param_1 + 0xb4) = iVar6 + local_64" (pointer_expression "*(uint *)(param_1 + 0xb4)" * (cast_expression "(uint *)(param_1 + 0xb4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) = (binary_expression "iVar6 + local_64" identifier + identifier)) ;) (expression_statement "*(uint *)(param_1 + 0xb8) = local_5c;" (assignment_expression "*(uint *)(param_1 + 0xb8) = local_5c" (pointer_expression "*(uint *)(param_1 + 0xb8)" * (cast_expression "(uint *)(param_1 + 0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb8)" ( (binary_expression "param_1 + 0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0xbc) = local_58;" (assignment_expression "*(undefined4 *)(param_1 + 0xbc) = local_58" (pointer_expression "*(undefined4 *)(param_1 + 0xbc)" * (cast_expression "(undefined4 *)(param_1 + 0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xbc)" ( (binary_expression "param_1 + 0xbc" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = *puVar11;" (assignment_expression "uVar5 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (expression_statement "*(uint **)(param_1 + 0xc0) = puVar11;" (assignment_expression "*(uint **)(param_1 + 0xc0) = puVar11" (pointer_expression "*(uint **)(param_1 + 0xc0)" * (cast_expression "(uint **)(param_1 + 0xc0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xc0)" ( (binary_expression "param_1 + 0xc0" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" identifier = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "*(uint *)(param_1 + 0xc4) = uVar5;" (assignment_expression "*(uint *)(param_1 + 0xc4) = uVar5" (pointer_expression "*(uint *)(param_1 + 0xc4)" * (cast_expression "(uint *)(param_1 + 0xc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc4)" ( (binary_expression "param_1 + 0xc4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;" (assignment_expression "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" identifier = (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc)" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 + 3 & 0xfffffffc)" ( (binary_expression "uVar5 + 3 & 0xfffffffc" (binary_expression "uVar5 + 3" identifier + number_literal) & number_literal) ))) + number_literal)) ;) (expression_statement "*(int *)(param_1 + 200) = iVar6;" (assignment_expression "*(int *)(param_1 + 200) = iVar6" (pointer_expression "*(int *)(param_1 + 200)" * (cast_expression "(int *)(param_1 + 200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 200)" ( (binary_expression "param_1 + 200" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;" (assignment_expression "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8" (pointer_expression "*(uint *)(param_1 + 0xcc)" * (cast_expression "(uint *)(param_1 + 0xcc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcc)" ( (binary_expression "param_1 + 0xcc" identifier + number_literal) )))) = (binary_expression "iVar6 + uVar5 * 8" identifier + (binary_expression "uVar5 * 8" identifier * number_literal))) ;) (expression_statement "iVar6 = FUN_00088190(iVar7,2);" (assignment_expression "iVar6 = FUN_00088190(iVar7,2)" identifier = (call_expression "FUN_00088190(iVar7,2)" identifier (argument_list "(iVar7,2)" ( identifier , number_literal )))) ;) (if_statement "if (iVar6 == 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" { comment (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0)" identifier (argument_list "("../../gold/incremental.cc",0x124,"setup_readers",0)" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") , number_literal ))) ;) })) (expression_statement "FUN_00088310(&local_ac,iVar7,iVar6);" (call_expression "FUN_00088310(&local_ac,iVar7,iVar6)" identifier (argument_list "(&local_ac,iVar7,iVar6)" ( (pointer_expression "&local_ac" & identifier) , identifier , identifier ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x74) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x74) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x74)" * (cast_expression "(undefined4 *)(param_1 + 0x74)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x74)" ( (binary_expression "param_1 + 0x74" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x78) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x78) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x78)" * (cast_expression "(undefined4 *)(param_1 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x78)" ( (binary_expression "param_1 + 0x78" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x7c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x7c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" * (cast_expression "(undefined4 *)(param_1 + 0x7c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7c)" ( (binary_expression "param_1 + 0x7c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x80) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x80) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x80)" * (cast_expression "(undefined4 *)(param_1 + 0x80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = FUN_00088680(iVar7,iVar6);" (assignment_expression "uVar5 = FUN_00088680(iVar7,iVar6)" identifier = (call_expression "FUN_00088680(iVar7,iVar6)" identifier (argument_list "(iVar7,iVar6)" ( identifier , identifier )))) ;) (expression_statement "iVar6 = param_1;" (assignment_expression "iVar6 = param_1" identifier = identifier) ;) (if_statement "if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" if (parenthesized_expression "((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           )" ( (binary_expression "(uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) || (parenthesized_expression "(FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" ( (comma_expression "FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (call_expression "FUN_00088090(iVar7)" identifier (argument_list "(iVar7)" ( identifier ))) , (comma_expression "iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (assignment_expression "iVar6 = iVar7" identifier = identifier) , (binary_expression "*(uint *)(param_1 + 0x38) <= uVar5" (pointer_expression "*(uint *)(param_1 + 0x38)" * (cast_expression "(uint *)(param_1 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) <= identifier))) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" { comment (expression_statement "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);" (call_expression "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6)" identifier (argument_list "("../../gold/incremental.cc",299,"setup_readers",iVar6)" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") , identifier ))) ;) })) (expression_statement "FUN_00088310(&local_ac,iVar7,uVar5);" (call_expression "FUN_00088310(&local_ac,iVar7,uVar5)" identifier (argument_list "(&local_ac,iVar7,uVar5)" ( (pointer_expression "&local_ac" & identifier) , identifier , identifier ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x84) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x84) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x84)" * (cast_expression "(undefined4 *)(param_1 + 0x84)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x84)" ( (binary_expression "param_1 + 0x84" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x88) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x88) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x88)" * (cast_expression "(undefined4 *)(param_1 + 0x88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x8c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x8c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x8c)" * (cast_expression "(undefined4 *)(param_1 + 0x8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x8c)" ( (binary_expression "param_1 + 0x8c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x90) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x90) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x90)" * (cast_expression "(undefined4 *)(param_1 + 0x90)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = param_1 + 0x98;" (assignment_expression "iVar7 = param_1 + 0x98" identifier = (binary_expression "param_1 + 0x98" identifier + number_literal)) ;) (expression_statement "uVar5 = *(uint *)(param_1 + 0xa4);" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xa4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xa4)" * (cast_expression "(uint *)(param_1 + 0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44)" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x44)" * (cast_expression "(int *)(param_1 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00088960(param_1 + 0x44,uVar5 - uVar8);" (call_expression "FUN_00088960(param_1 + 0x44,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x44,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x44) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x44)" * (cast_expression "(int *)(param_1 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x48) != iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x48) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x48) = iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) })))) (expression_statement "FUN_0007f140(param_1 + 0xd0,uVar5);" (call_expression "FUN_0007f140(param_1 + 0xd0,uVar5)" identifier (argument_list "(param_1 + 0xd0,uVar5)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) , identifier ))) ;) (expression_statement "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10)" (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) )))) - (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00083150(param_1 + 0x10,uVar5 - uVar8);" (call_expression "FUN_00083150(param_1 + 0x10,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x10,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x10) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x14) != iVar6" (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) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x14) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x14) = iVar6" (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) )))) = identifier) ;) })))) (expression_statement "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);" (call_expression "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x1c,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x1c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x20) != iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x20) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x20) = iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) })))) (if_statement "if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" { (if_statement "if (*(int *)(param_1 + 0xa4) == 0) {\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" if (parenthesized_expression "(*(int *)(param_1 + 0xa4) == 0)" ( (binary_expression "*(int *)(param_1 + 0xa4) == 0" (pointer_expression "*(int *)(param_1 + 0xa4)" * (cast_expression "(int *)(param_1 + 0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" { comment (expression_statement "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");" (call_expression "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset")" identifier (argument_list "("../../gold/incremental.h",0x45c,"input_file_offset")" ( (string_literal ""../../gold/incremental.h"" " string_content ") , number_literal , (string_literal ""input_file_offset"" " string_content ") ))) ;) })) (expression_statement "local_34 = &PTR_FUN_00383370;" (assignment_expression "local_34 = &PTR_FUN_00383370" identifier = (pointer_expression "&PTR_FUN_00383370" & identifier)) ;) (expression_statement "local_28 = 0x10;" (assignment_expression "local_28 = 0x10" identifier = number_literal) ;) (expression_statement "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);" (assignment_expression "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14)" identifier = (pointer_expression "*(uint *)(*(int *)(param_1 + 0x98) + 0x14)" * (cast_expression "(uint *)(*(int *)(param_1 + 0x98) + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x14)" ( (binary_expression "*(int *)(param_1 + 0x98) + 0x14" (pointer_expression "*(int *)(param_1 + 0x98)" * (cast_expression "(int *)(param_1 + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);" (assignment_expression "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" identifier = (pointer_expression "*(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" * (cast_expression "(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x24)" ( (binary_expression "*(int *)(param_1 + 0x98) + 0x24" (pointer_expression "*(int *)(param_1 + 0x98)" * (cast_expression "(int *)(param_1 + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;" (assignment_expression "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" identifier = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);" (assignment_expression "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" identifier = (call_expression "(uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "(uVar1 << 8 | uVar1 >> 8)" ( (binary_expression "uVar1 << 8 | uVar1 >> 8" (binary_expression "uVar1 << 8" identifier << number_literal) | (binary_expression "uVar1 >> 8" identifier >> number_literal)) )))) ;) (expression_statement "puVar2 = *(undefined4 **)(param_1 + 0xd4);" (assignment_expression "puVar2 = *(undefined4 **)(param_1 + 0xd4)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" * (cast_expression "(undefined4 **)(param_1 + 0xd4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd4)" ( (binary_expression "param_1 + 0xd4" identifier + number_literal) ))))) ;) (expression_statement "local_30 = iVar7;" (assignment_expression "local_30 = iVar7" identifier = identifier) ;) (if_statement "if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" if (parenthesized_expression "(puVar2 == *(undefined4 **)(param_1 + 0xd8))" ( (binary_expression "puVar2 == *(undefined4 **)(param_1 + 0xd8)" identifier == (pointer_expression "*(undefined4 **)(param_1 + 0xd8)" * (cast_expression "(undefined4 **)(param_1 + 0xd8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) ))))) )) (compound_statement "{\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }" { (expression_statement "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);" (call_expression "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34)" identifier (argument_list "(param_1 + 0xd0,puVar2,&local_34)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) , identifier , (pointer_expression "&local_34" & identifier) ))) ;) }) (else_clause "else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" else (compound_statement "{\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" { (expression_statement "*puVar2 = &PTR_FUN_00383370;" (assignment_expression "*puVar2 = &PTR_FUN_00383370" (pointer_expression "*puVar2" * identifier) = (pointer_expression "&PTR_FUN_00383370" & identifier)) ;) (expression_statement "puVar2[1] = iVar7;" (assignment_expression "puVar2[1] = iVar7" (subscript_expression "puVar2[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar2[2] = local_2c;" (assignment_expression "puVar2[2] = local_2c" (subscript_expression "puVar2[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar2[3] = 0x10;" (assignment_expression "puVar2[3] = 0x10" (subscript_expression "puVar2[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar2[4] = local_24;" (assignment_expression "puVar2[4] = local_24" (subscript_expression "puVar2[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;" (assignment_expression "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5" (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" * (cast_expression "(undefined4 **)(param_1 + 0xd4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd4)" ( (binary_expression "param_1 + 0xd4" identifier + number_literal) )))) = (binary_expression "puVar2 + 5" identifier + number_literal)) ;) }))) (if_statement "if (uVar1 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" if (parenthesized_expression "(uVar1 >> 8 < 6)" ( (binary_expression "uVar1 >> 8 < 6" (binary_expression "uVar1 >> 8" identifier >> number_literal) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" { comment comment (expression_statement "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();" (call_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ()" (parenthesized_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))" ( (pointer_expression "*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" * (cast_expression "(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" ( (binary_expression "(int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (cast_expression "(int)&__DT_PLTGOT" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&__DT_PLTGOT" & identifier)) + (pointer_expression "*(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" * (cast_expression "(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" ( (binary_expression "&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4" (pointer_expression "&DAT_00288410" & identifier) + (binary_expression "(uint)(byte)(uVar1 >> 8) * 4" (call_expression "(uint)(byte)(uVar1 >> 8)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar1 >> 8)" ( (binary_expression "uVar1 >> 8" identifier >> number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) comment (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers")" identifier (argument_list "("../../gold/incremental.cc",0x163,"setup_readers")" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") ))) ;) })) (expression_statement "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;" (assignment_expression "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3" identifier = (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f & 3" (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f" (pointer_expression "*(int *)(param_1 + 0xb0)" * (cast_expression "(int *)(param_1 + 0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) >> number_literal) & number_literal)) ;) (expression_statement "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2" identifier = (binary_expression "*(uint *)(param_1 + 0xac) + uVar8 >> 2" (binary_expression "*(uint *)(param_1 + 0xac) + uVar8" (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) + identifier) >> number_literal)) ;) (expression_statement "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;" (assignment_expression "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" identifier = (binary_expression "uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" identifier | (binary_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" (parenthesized_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8))" ( (binary_expression "*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" (pointer_expression "*(int *)(param_1 + 0xb0)" * (cast_expression "(int *)(param_1 + 0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) + (cast_expression "(uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(*(uint *)(param_1 + 0xac),uVar8)" identifier (argument_list "(*(uint *)(param_1 + 0xac),uVar8)" ( (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) , identifier ))))) )) * number_literal))) ;) (expression_statement "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;" (assignment_expression "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c)" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x5c)" * (cast_expression "(int *)(param_1 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" if (parenthesized_expression "(uVar10 < uVar8)" ( (binary_expression "uVar10 < uVar8" identifier < identifier) )) (compound_statement "{\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" { (expression_statement "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);" (call_expression "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10)" identifier (argument_list "(param_1 + 0x5c,uVar8 - uVar10)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) , (binary_expression "uVar8 - uVar10" identifier - identifier) ))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" * (cast_expression "(undefined1 *)(param_1 + 0x94)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x94)" ( (binary_expression "param_1 + 0x94" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" else (compound_statement "{\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" { (if_statement "if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" if (parenthesized_expression "((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7))" ( (binary_expression "(uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" (parenthesized_expression "(uVar8 < uVar10)" ( (binary_expression "uVar8 < uVar10" identifier < identifier) )) && (parenthesized_expression "(iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" ( (comma_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7" (assignment_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x5c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x5c)" * (cast_expression "(int *)(param_1 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x60) != iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" { (expression_statement "*(int *)(param_1 + 0x60) = iVar7;" (assignment_expression "*(int *)(param_1 + 0x60) = iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" * (cast_expression "(undefined1 *)(param_1 + 0x94)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x94)" ( (binary_expression "param_1 + 0x94" identifier + number_literal) )))) = number_literal) ;) }))) (return_statement "return;" return ;) })) })) })) comment (expression_statement "FUN_00071170();" (call_expression "FUN_00071170()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */\n/* DWARF original prototype: void setup_readers(Sized_incremental_binary<64,_true> * this) */\n\nvoid __thiscall\ngold::Sized_incremental_binary<64,_true>::setup_readers(Sized_incremental_binary<64,_true> *this)\n\n{\n  Elf_file<64,_true,_gold::Incremental_binary> *this_00;\n  uchar uVar1;\n  ushort uVar2;\n  Output_file *pOVar3;\n  int iVar4;\n  uchar *puVar5;\n  pointer ppSVar6;\n  pointer ppSVar7;\n  pointer ppIVar8;\n  pointer ppIVar9;\n  pointer ppSVar10;\n  pointer ppSVar11;\n  iterator __position;\n  pointer ppSVar12;\n  pointer ppSVar13;\n  int iVar14;\n  bool bVar15;\n  size_t sVar16;\n  uint uVar17;\n  Elf_Word shndx;\n  Incremental_inputs_reader<64,_true> *pIVar18;\n  uint uVar19;\n  uchar *puVar20;\n  uint uVar21;\n  int iVar22;\n  Incremental_binary *in_stack_ffffff14;\n  vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n  *this_01;\n  uint *in_stack_ffffff20;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  uint inputs_shndx;\n  uint symtab_shndx;\n  uint relocs_shndx;\n  uint got_plt_shndx;\n  uint strtab_shndx;\n  size_type __dnew_1;\n  Location inputs_location;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  Location got_plt_location;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  size_type __dnew;\n  Incremental_inputs_reader<64,_true> *local_30;\n  uint local_2c;\n  uint local_28;\n  uint local_24;\n  \n  bVar15 = find_incremental_inputs_sections\n                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx);\n  if (!bVar15) {\n    return;\n  }\n  this_00 = &this->elf_file_;\n  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,inputs_shndx);\n  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,symtab_shndx);\n  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,relocs_shndx);\n  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,got_plt_shndx);\n  elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,strtab_shndx);\n  pOVar3 = (this->super_Incremental_binary).output_;\n  if (-1 < inputs_location.file_offset._4_4_) {\n    uVar17 = (uint)pOVar3->file_size_;\n    iVar22 = inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset);\n    iVar4 = *(int *)((int)&pOVar3->file_size_ + 4);\n    uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset);\n    iVar14 = iVar4 - iVar22;\n    if ((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0) {\n      puVar5 = pOVar3->base_;\n      if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }\n    }\n  }\n                    /* WARNING: Subroutine does not return */\n  Incremental_binary::view\n            (in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20);\n}\n\n" comment comment (declaration "void __thiscall\ngold::Sized_incremental_binary<64,_true>::setup_readers(Sized_incremental_binary<64,_true> *this)\n\n{\n  Elf_file<64,_true,_gold::Incremental_binary> *this_00;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<64" < number_literal) , (ERROR "_true>::setup_readers(Sized_incremental_binary<64,_true> *this)\n\n{" identifier > : : (function_declarator "setup_readers(Sized_incremental_binary<64,_true> *this)" identifier (parameter_list "(Sized_incremental_binary<64,_true> *this)" ( (parameter_declaration "Sized_incremental_binary" type_identifier) (ERROR "<64" < number_literal) , (parameter_declaration "_true> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) ))) {) identifier (ERROR "<64" < number_literal) , identifier , (ERROR "_gold::Incremental_binary>" identifier : : identifier >) (pointer_declarator "*this_00" * identifier) ;) (declaration "uchar uVar1;" type_identifier identifier ;) (declaration "ushort uVar2;" type_identifier identifier ;) (declaration "Output_file *pOVar3;" type_identifier (pointer_declarator "*pOVar3" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uchar *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "pointer ppSVar6;" type_identifier identifier ;) (declaration "pointer ppSVar7;" type_identifier identifier ;) (declaration "pointer ppIVar8;" type_identifier identifier ;) (declaration "pointer ppIVar9;" type_identifier identifier ;) (declaration "pointer ppSVar10;" type_identifier identifier ;) (declaration "pointer ppSVar11;" type_identifier identifier ;) (declaration "iterator __position;" type_identifier identifier ;) (declaration "pointer ppSVar12;" type_identifier identifier ;) (declaration "pointer ppSVar13;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "bool bVar15;" primitive_type identifier ;) (declaration "size_t sVar16;" primitive_type identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "Elf_Word shndx;" type_identifier identifier ;) (expression_statement "Incremental_inputs_reader<64,_true> *pIVar18;" (update_expression "Incremental_inputs_reader<64,_true> *pIVar18" (binary_expression "Incremental_inputs_reader<64,_true> *pIVar18" (binary_expression "Incremental_inputs_reader<64" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*pIVar18" * identifier)) --) ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "uchar *puVar20;" type_identifier (pointer_declarator "*puVar20" * identifier) ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "int iVar22;" primitive_type identifier ;) (declaration "Incremental_binary *in_stack_ffffff14;" type_identifier (pointer_declarator "*in_stack_ffffff14" * identifier) ;) (ERROR "vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader," (binary_expression "vector<gold" identifier < identifier) : : (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) ,) (labeled_statement "_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n  *this_01;" statement_identifier (ERROR "::allocator<gold:" : : (binary_expression "allocator<gold" identifier < identifier) :) : (expression_statement "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n  *this_01;" (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n  *this_01" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (binary_expression "_true>::Sized_input_reader>_>\n  *this_01" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) > (pointer_expression "*this_01" * identifier))) ;)) (declaration "uint *in_stack_ffffff20;" type_identifier (pointer_declarator "*in_stack_ffffff20" * identifier) ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "uint inputs_shndx;" type_identifier identifier ;) (declaration "uint symtab_shndx;" type_identifier identifier ;) (declaration "uint relocs_shndx;" type_identifier identifier ;) (declaration "uint got_plt_shndx;" type_identifier identifier ;) (declaration "uint strtab_shndx;" type_identifier identifier ;) (declaration "size_type __dnew_1;" type_identifier identifier ;) (declaration "Location inputs_location;" type_identifier identifier ;) (declaration "uint local_74;" type_identifier identifier ;) (declaration "int local_70;" primitive_type identifier ;) (declaration "uint local_6c;" type_identifier identifier ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "uint local_64;" type_identifier identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "Location got_plt_location;" type_identifier identifier ;) (declaration "uint local_44;" type_identifier identifier ;) (declaration "int local_40;" primitive_type identifier ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "size_type __dnew;" type_identifier identifier ;) (expression_statement "Incremental_inputs_reader<64,_true> *local_30;" (update_expression "Incremental_inputs_reader<64,_true> *local_30" (binary_expression "Incremental_inputs_reader<64,_true> *local_30" (binary_expression "Incremental_inputs_reader<64" identifier < number_literal) (ERROR ",_true" , identifier) > (pointer_expression "*local_30" * identifier)) --) ;) (declaration "uint local_2c;" type_identifier identifier ;) (declaration "uint local_28;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (expression_statement "bVar15 = find_incremental_inputs_sections\n                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx);" (assignment_expression "bVar15 = find_incremental_inputs_sections\n                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx)" identifier = (call_expression "find_incremental_inputs_sections\n                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx)" identifier (argument_list "(this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx)" ( identifier , (pointer_expression "&inputs_shndx" & identifier) , (pointer_expression "&symtab_shndx" & identifier) , (pointer_expression "&relocs_shndx" & identifier) , (pointer_expression "&got_plt_shndx" & identifier) , (pointer_expression "&strtab_shndx" & identifier) )))) ;) (if_statement "if (!bVar15) {\n    return;\n  }" if (parenthesized_expression "(!bVar15)" ( (unary_expression "!bVar15" ! identifier) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "this_00 = &this->elf_file_;" (assignment_expression "this_00 = &this->elf_file_" identifier = (pointer_expression "&this->elf_file_" & (field_expression "this->elf_file_" identifier -> field_identifier))) ;) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,inputs_shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,inputs_shndx);" (call_expression "section_contents(this_00,inputs_shndx)" identifier (argument_list "(this_00,inputs_shndx)" ( identifier , identifier ))) ;)) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,symtab_shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,symtab_shndx);" (call_expression "section_contents(this_00,symtab_shndx)" identifier (argument_list "(this_00,symtab_shndx)" ( identifier , identifier ))) ;)) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,relocs_shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,relocs_shndx);" (call_expression "section_contents(this_00,relocs_shndx)" identifier (argument_list "(this_00,relocs_shndx)" ( identifier , identifier ))) ;)) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,got_plt_shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,got_plt_shndx);" (call_expression "section_contents(this_00,got_plt_shndx)" identifier (argument_list "(this_00,got_plt_shndx)" ( identifier , identifier ))) ;)) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,strtab_shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,strtab_shndx);" (call_expression "section_contents(this_00,strtab_shndx)" identifier (argument_list "(this_00,strtab_shndx)" ( identifier , identifier ))) ;)) (expression_statement "pOVar3 = (this->super_Incremental_binary).output_;" (assignment_expression "pOVar3 = (this->super_Incremental_binary).output_" identifier = (field_expression "(this->super_Incremental_binary).output_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (-1 < inputs_location.file_offset._4_4_) {\n    uVar17 = (uint)pOVar3->file_size_;\n    iVar22 = inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset);\n    iVar4 = *(int *)((int)&pOVar3->file_size_ + 4);\n    uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset);\n    iVar14 = iVar4 - iVar22;\n    if ((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0) {\n      puVar5 = pOVar3->base_;\n      if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }\n    }\n  }" if (parenthesized_expression "(-1 < inputs_location.file_offset._4_4_)" ( (binary_expression "-1 < inputs_location.file_offset._4_4_" number_literal < (field_expression "inputs_location.file_offset._4_4_" (field_expression "inputs_location.file_offset" identifier . field_identifier) . field_identifier)) )) (compound_statement "{\n    uVar17 = (uint)pOVar3->file_size_;\n    iVar22 = inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset);\n    iVar4 = *(int *)((int)&pOVar3->file_size_ + 4);\n    uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset);\n    iVar14 = iVar4 - iVar22;\n    if ((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0) {\n      puVar5 = pOVar3->base_;\n      if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }\n    }\n  }" { (expression_statement "uVar17 = (uint)pOVar3->file_size_;" (assignment_expression "uVar17 = (uint)pOVar3->file_size_" identifier = (cast_expression "(uint)pOVar3->file_size_" ( (type_descriptor "uint" type_identifier) ) (field_expression "pOVar3->file_size_" identifier -> field_identifier))) ;) (expression_statement "iVar22 = inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset);" (assignment_expression "iVar22 = inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset)" identifier = (binary_expression "inputs_location.file_offset._4_4_ +\n             (uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset)" (field_expression "inputs_location.file_offset._4_4_" (field_expression "inputs_location.file_offset" identifier . field_identifier) . field_identifier) + (cast_expression "(uint)CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)inputs_location.data_size,(uint)inputs_location.file_offset)" identifier (argument_list "((uint)inputs_location.data_size,(uint)inputs_location.file_offset)" ( (cast_expression "(uint)inputs_location.data_size" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.data_size" identifier . field_identifier)) , (cast_expression "(uint)inputs_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.file_offset" identifier . field_identifier)) )))))) ;) (expression_statement "iVar4 = *(int *)((int)&pOVar3->file_size_ + 4);" (assignment_expression "iVar4 = *(int *)((int)&pOVar3->file_size_ + 4)" identifier = (pointer_expression "*(int *)((int)&pOVar3->file_size_ + 4)" * (cast_expression "(int *)((int)&pOVar3->file_size_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pOVar3->file_size_ + 4)" ( (binary_expression "(int)&pOVar3->file_size_ + 4" (cast_expression "(int)&pOVar3->file_size_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pOVar3->file_size_" & (field_expression "pOVar3->file_size_" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset);" (assignment_expression "uVar19 = (uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset)" identifier = (call_expression "(uint)(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset)" ( (binary_expression "uVar17 < (uint)inputs_location.data_size + (uint)inputs_location.file_offset" identifier < (binary_expression "(uint)inputs_location.data_size + (uint)inputs_location.file_offset" (cast_expression "(uint)inputs_location.data_size" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.data_size" identifier . field_identifier)) + (cast_expression "(uint)inputs_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.file_offset" identifier . field_identifier)))) )))) ;) (expression_statement "iVar14 = iVar4 - iVar22;" (assignment_expression "iVar14 = iVar4 - iVar22" identifier = (binary_expression "iVar4 - iVar22" identifier - identifier)) ;) (if_statement "if ((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0) {\n      puVar5 = pOVar3->base_;\n      if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }\n    }" if (parenthesized_expression "((SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)" ( (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (parenthesized_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19))" ( (binary_expression "SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)" (call_expression "SBORROW4(iVar4,iVar22)" identifier (argument_list "(iVar4,iVar22)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar14,uVar19)" identifier (argument_list "(iVar14,uVar19)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar14 - uVar19) < 0" (cast_expression "(int)(iVar14 - uVar19)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar14 - uVar19)" ( (binary_expression "iVar14 - uVar19" identifier - identifier) ))) < number_literal)) )) (compound_statement "{\n      puVar5 = pOVar3->base_;\n      if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }\n    }" { (expression_statement "puVar5 = pOVar3->base_;" (assignment_expression "puVar5 = pOVar3->base_" identifier = (field_expression "pOVar3->base_" identifier -> field_identifier)) ;) (if_statement "if (((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         ) {\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }" if (parenthesized_expression "(((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))\n         )" ( (binary_expression "((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))) &&\n         ((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))" (parenthesized_expression "((((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_))))" ( (binary_expression "(((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)) &&\n          ((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))" (parenthesized_expression "(((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60))" ( (binary_expression "((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)) &&\n           (-1 < local_60)" (parenthesized_expression "((-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0))" ( (binary_expression "(-1 < local_70) &&\n            (iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)" (parenthesized_expression "(-1 < local_70)" ( (binary_expression "-1 < local_70" number_literal < identifier) )) && (parenthesized_expression "(iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0)" ( (comma_expression "iVar22 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (assignment_expression "iVar22 = local_70 + (uint)CARRY4(local_6c,local_74)" identifier = (binary_expression "local_70 + (uint)CARRY4(local_6c,local_74)" identifier + (cast_expression "(uint)CARRY4(local_6c,local_74)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_6c,local_74)" identifier (argument_list "(local_6c,local_74)" ( identifier , identifier )))))) , (comma_expression "uVar19 = (uint)(uVar17 < local_6c + local_74), iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (assignment_expression "uVar19 = (uint)(uVar17 < local_6c + local_74)" identifier = (call_expression "(uint)(uVar17 < local_6c + local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar17 < local_6c + local_74)" ( (binary_expression "uVar17 < local_6c + local_74" identifier < (binary_expression "local_6c + local_74" identifier + identifier)) )))) , (comma_expression "iVar14 = iVar4 - iVar22,\n            (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (assignment_expression "iVar14 = iVar4 - iVar22" identifier = (binary_expression "iVar4 - iVar22" identifier - identifier)) , (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (parenthesized_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19))" ( (binary_expression "SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)" (call_expression "SBORROW4(iVar4,iVar22)" identifier (argument_list "(iVar4,iVar22)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar14,uVar19)" identifier (argument_list "(iVar14,uVar19)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar14 - uVar19) < 0" (cast_expression "(int)(iVar14 - uVar19)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar14 - uVar19)" ( (binary_expression "iVar14 - uVar19" identifier - identifier) ))) < number_literal))))) ))) )) && (parenthesized_expression "(-1 < local_60)" ( (binary_expression "-1 < local_60" number_literal < identifier) ))) )) && (parenthesized_expression "((iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)))" ( (parenthesized_expression "(iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_))" ( (comma_expression "iVar22 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)" (assignment_expression "iVar22 = local_60 + (uint)CARRY4(local_5c,local_64)" identifier = (binary_expression "local_60 + (uint)CARRY4(local_5c,local_64)" identifier + (cast_expression "(uint)CARRY4(local_5c,local_64)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_5c,local_64)" identifier (argument_list "(local_5c,local_64)" ( identifier , identifier )))))) , (comma_expression "uVar19 = (uint)(uVar17 < local_5c + local_64), iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)" (assignment_expression "uVar19 = (uint)(uVar17 < local_5c + local_64)" identifier = (call_expression "(uint)(uVar17 < local_5c + local_64)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar17 < local_5c + local_64)" ( (binary_expression "uVar17 < local_5c + local_64" identifier < (binary_expression "local_5c + local_64" identifier + identifier)) )))) , (comma_expression "iVar14 = iVar4 - iVar22,\n           (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)" (assignment_expression "iVar14 = iVar4 - iVar22" identifier = (binary_expression "iVar4 - iVar22" identifier - identifier)) , (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n           (-1 < got_plt_location.file_offset._4_4_)" (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (parenthesized_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19))" ( (binary_expression "SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)" (call_expression "SBORROW4(iVar4,iVar22)" identifier (argument_list "(iVar4,iVar22)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar14,uVar19)" identifier (argument_list "(iVar14,uVar19)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar14 - uVar19) < 0" (cast_expression "(int)(iVar14 - uVar19)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar14 - uVar19)" ( (binary_expression "iVar14 - uVar19" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "(-1 < got_plt_location.file_offset._4_4_)" ( (binary_expression "-1 < got_plt_location.file_offset._4_4_" number_literal < (field_expression "got_plt_location.file_offset._4_4_" (field_expression "got_plt_location.file_offset" identifier . field_identifier) . field_identifier)) )))))) )) ))) )) && (parenthesized_expression "((iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))))" ( (parenthesized_expression "(iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0))))" ( (comma_expression "iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                ),\n          uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))" (assignment_expression "iVar22 = got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                )" identifier = (binary_expression "got_plt_location.file_offset._4_4_ +\n                    (uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                )" (field_expression "got_plt_location.file_offset._4_4_" (field_expression "got_plt_location.file_offset" identifier . field_identifier) . field_identifier) + (cast_expression "(uint)CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                )" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                )" identifier (argument_list "((uint)got_plt_location.data_size,(uint)got_plt_location.file_offset\n                                )" ( (cast_expression "(uint)got_plt_location.data_size" ( (type_descriptor "uint" type_identifier) ) (field_expression "got_plt_location.data_size" identifier . field_identifier)) , (cast_expression "(uint)got_plt_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "got_plt_location.file_offset" identifier . field_identifier)) )))))) , (comma_expression "uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset), iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))" (assignment_expression "uVar19 = (uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset)" identifier = (call_expression "(uint)(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset)" ( (binary_expression "uVar17 < (uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset" identifier < (binary_expression "(uint)got_plt_location.data_size +\n                                   (uint)got_plt_location.file_offset" (cast_expression "(uint)got_plt_location.data_size" ( (type_descriptor "uint" type_identifier) ) (field_expression "got_plt_location.data_size" identifier . field_identifier)) + (cast_expression "(uint)got_plt_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "got_plt_location.file_offset" identifier . field_identifier)))) )))) , (comma_expression "iVar14 = iVar4 - iVar22,\n          (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))" (assignment_expression "iVar14 = iVar4 - iVar22" identifier = (binary_expression "iVar4 - iVar22" identifier - identifier)) , (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0 &&\n          ((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))" (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)) == (int)(iVar14 - uVar19) < 0" (parenthesized_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19))" ( (binary_expression "SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar19)" (call_expression "SBORROW4(iVar4,iVar22)" identifier (argument_list "(iVar4,iVar22)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar14,uVar19)" identifier (argument_list "(iVar14,uVar19)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar14 - uVar19) < 0" (cast_expression "(int)(iVar14 - uVar19)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar14 - uVar19)" ( (binary_expression "iVar14 - uVar19" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "((in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)))" ( (parenthesized_expression "(in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0))" ( (comma_expression "in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset), -1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)" (assignment_expression "in_stack_ffffff20 = (uint *)(puVar5 + (uint)got_plt_location.file_offset)" identifier = (cast_expression "(uint *)(puVar5 + (uint)got_plt_location.file_offset)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + (uint)got_plt_location.file_offset)" ( (binary_expression "puVar5 + (uint)got_plt_location.file_offset" identifier + (cast_expression "(uint)got_plt_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "got_plt_location.file_offset" identifier . field_identifier))) )))) , (binary_expression "-1 < local_40\n           && (iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)" (binary_expression "-1 < local_40" number_literal < identifier) && (parenthesized_expression "(iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0)" ( (comma_expression "iVar22 = local_40 + (uint)CARRY4(local_3c,local_44),\n              uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0" (assignment_expression "iVar22 = local_40 + (uint)CARRY4(local_3c,local_44)" identifier = (binary_expression "local_40 + (uint)CARRY4(local_3c,local_44)" identifier + (cast_expression "(uint)CARRY4(local_3c,local_44)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_3c,local_44)" identifier (argument_list "(local_3c,local_44)" ( identifier , identifier )))))) , (comma_expression "uVar17 = (uint)(uVar17 < local_3c + local_44), iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0" (assignment_expression "uVar17 = (uint)(uVar17 < local_3c + local_44)" identifier = (call_expression "(uint)(uVar17 < local_3c + local_44)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar17 < local_3c + local_44)" ( (binary_expression "uVar17 < local_3c + local_44" identifier < (binary_expression "local_3c + local_44" identifier + identifier)) )))) , (comma_expression "iVar14 = iVar4 - iVar22,\n              (SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0" (assignment_expression "iVar14 = iVar4 - iVar22" identifier = (binary_expression "iVar4 - iVar22" identifier - identifier)) , (binary_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)) == (int)(iVar14 - uVar17) < 0" (parenthesized_expression "(SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17))" ( (binary_expression "SBORROW4(iVar4,iVar22) != SBORROW4(iVar14,uVar17)" (call_expression "SBORROW4(iVar4,iVar22)" identifier (argument_list "(iVar4,iVar22)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar14,uVar17)" identifier (argument_list "(iVar14,uVar17)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar14 - uVar17) < 0" (cast_expression "(int)(iVar14 - uVar17)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar14 - uVar17)" ( (binary_expression "iVar14 - uVar17" identifier - identifier) ))) < number_literal))))) )))) )) )))))) )) ))) )) (compound_statement "{\n        puVar20 = puVar5 + local_44;\n        if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }\n        uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);\n        (this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;\n        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;\n        (this->inputs_reader_).strtab_.usable_size_ = sVar16;\n        (this->symtab_reader_).p_ = puVar5 + local_74;\n        (this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;\n        *(uint *)&(this->symtab_reader_).len_ = local_6c;\n        *(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;\n        (this->relocs_reader_).p_ = puVar5 + local_64;\n        *(uint *)&(this->relocs_reader_).len_ = local_5c;\n        *(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;\n        uVar17 = *in_stack_ffffff20;\n        (this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;\n        uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;\n        (this->got_plt_reader_).got_count_ = uVar17;\n        puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);\n        (this->got_plt_reader_).got_desc_p_ = puVar5;\n        (this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;\n        uVar17 = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::find_section_by_type\n                           (this_00,2);\n        if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);\n        *(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;\n        shndx = elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_link(this_00,uVar17);\n        if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }\n        elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);\n        *(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;\n        *(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;\n        *(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;\n        pIVar18 = &this->inputs_reader_;\n        uVar17 = (this->inputs_reader_).input_file_count_;\n        ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;\n        ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;\n        if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }\n        this_01 = &this->input_entry_readers_;\n        std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);\n        ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;\n        ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;\n        uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }\n        ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;\n        ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;\n        uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;\n        if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }\n        if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);\n        uVar17 = (uint)(this->symtab_reader_).len_;\n        uVar21 = iVar4 >> 0x1f & 3;\n        uVar19 = uVar17 + uVar21 >> 2;\n        uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;\n        ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;\n        ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;\n        uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;\n        if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }\n        return;\n      }" { (expression_statement "puVar20 = puVar5 + local_44;" (assignment_expression "puVar20 = puVar5 + local_44" identifier = (binary_expression "puVar5 + local_44" identifier + identifier)) ;) (if_statement "if (local_3c == 0) {\n          sVar16 = 0;\n        }\n        else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }" if (parenthesized_expression "(local_3c == 0)" ( (binary_expression "local_3c == 0" identifier == number_literal) )) (compound_statement "{\n          sVar16 = 0;\n        }" { (expression_statement "sVar16 = 0;" (assignment_expression "sVar16 = 0" identifier = number_literal) ;) }) (else_clause "else {\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }" else (compound_statement "{\n          uVar1 = puVar20[local_3c - 1];\n          while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }\n        }" { (expression_statement "uVar1 = puVar20[local_3c - 1];" (assignment_expression "uVar1 = puVar20[local_3c - 1]" identifier = (subscript_expression "puVar20[local_3c - 1]" identifier [ (binary_expression "local_3c - 1" identifier - number_literal) ])) ;) (while_statement "while ((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))) {\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }" while (parenthesized_expression "((sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0)))" ( (parenthesized_expression "(sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0))" ( (comma_expression "sVar16 = local_3c, uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0)" (assignment_expression "sVar16 = local_3c" identifier = identifier) , (binary_expression "uVar1 != '\0' && (sVar16 = local_3c - 1, sVar16 != 0)" (binary_expression "uVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(sVar16 = local_3c - 1, sVar16 != 0)" ( (comma_expression "sVar16 = local_3c - 1, sVar16 != 0" (assignment_expression "sVar16 = local_3c - 1" identifier = (binary_expression "local_3c - 1" identifier - number_literal)) , (binary_expression "sVar16 != 0" identifier != number_literal)) )))) )) )) (compound_statement "{\n            uVar1 = puVar20[local_3c - 2];\n            local_3c = sVar16;\n          }" { (expression_statement "uVar1 = puVar20[local_3c - 2];" (assignment_expression "uVar1 = puVar20[local_3c - 2]" identifier = (subscript_expression "puVar20[local_3c - 2]" identifier [ (binary_expression "local_3c - 2" identifier - number_literal) ])) ;) (expression_statement "local_3c = sVar16;" (assignment_expression "local_3c = sVar16" identifier = identifier) ;) })) }))) (expression_statement "uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4);" (assignment_expression "uVar17 = *(uint *)(puVar5 + (uint)inputs_location.file_offset + 4)" identifier = (pointer_expression "*(uint *)(puVar5 + (uint)inputs_location.file_offset + 4)" * (cast_expression "(uint *)(puVar5 + (uint)inputs_location.file_offset + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + (uint)inputs_location.file_offset + 4)" ( (binary_expression "puVar5 + (uint)inputs_location.file_offset + 4" (binary_expression "puVar5 + (uint)inputs_location.file_offset" identifier + (cast_expression "(uint)inputs_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.file_offset" identifier . field_identifier))) + number_literal) ))))) ;) (expression_statement "(this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset;" (assignment_expression "(this->inputs_reader_).p_ = puVar5 + (uint)inputs_location.file_offset" (field_expression "(this->inputs_reader_).p_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier) = (binary_expression "puVar5 + (uint)inputs_location.file_offset" identifier + (cast_expression "(uint)inputs_location.file_offset" ( (type_descriptor "uint" type_identifier) ) (field_expression "inputs_location.file_offset" identifier . field_identifier)))) ;) (expression_statement "(this->inputs_reader_).strtab_.base_ = (char *)puVar20;" (assignment_expression "(this->inputs_reader_).strtab_.base_ = (char *)puVar20" (field_expression "(this->inputs_reader_).strtab_.base_" (field_expression "(this->inputs_reader_).strtab_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (cast_expression "(char *)puVar20" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "(this->inputs_reader_).strtab_.usable_size_ = sVar16;" (assignment_expression "(this->inputs_reader_).strtab_.usable_size_ = sVar16" (field_expression "(this->inputs_reader_).strtab_.usable_size_" (field_expression "(this->inputs_reader_).strtab_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;) (expression_statement "(this->symtab_reader_).p_ = puVar5 + local_74;" (assignment_expression "(this->symtab_reader_).p_ = puVar5 + local_74" (field_expression "(this->symtab_reader_).p_" (parenthesized_expression "(this->symtab_reader_)" ( (field_expression "this->symtab_reader_" identifier -> field_identifier) )) . field_identifier) = (binary_expression "puVar5 + local_74" identifier + identifier)) ;) (expression_statement "(this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18;" (assignment_expression "(this->inputs_reader_).input_file_count_ =\n             uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (field_expression "(this->inputs_reader_).input_file_count_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier) = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "*(uint *)&(this->symtab_reader_).len_ = local_6c;" (assignment_expression "*(uint *)&(this->symtab_reader_).len_ = local_6c" (pointer_expression "*(uint *)&(this->symtab_reader_).len_" * (cast_expression "(uint *)&(this->symtab_reader_).len_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->symtab_reader_).len_" & (field_expression "(this->symtab_reader_).len_" (parenthesized_expression "(this->symtab_reader_)" ( (field_expression "this->symtab_reader_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;" (assignment_expression "*(undefined4 *)((int)&(this->symtab_reader_).len_ + 4) = local_68" (pointer_expression "*(undefined4 *)((int)&(this->symtab_reader_).len_ + 4)" * (cast_expression "(undefined4 *)((int)&(this->symtab_reader_).len_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->symtab_reader_).len_ + 4)" ( (binary_expression "(int)&(this->symtab_reader_).len_ + 4" (cast_expression "(int)&(this->symtab_reader_).len_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->symtab_reader_).len_" & (field_expression "(this->symtab_reader_).len_" (parenthesized_expression "(this->symtab_reader_)" ( (field_expression "this->symtab_reader_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "(this->relocs_reader_).p_ = puVar5 + local_64;" (assignment_expression "(this->relocs_reader_).p_ = puVar5 + local_64" (field_expression "(this->relocs_reader_).p_" (parenthesized_expression "(this->relocs_reader_)" ( (field_expression "this->relocs_reader_" identifier -> field_identifier) )) . field_identifier) = (binary_expression "puVar5 + local_64" identifier + identifier)) ;) (expression_statement "*(uint *)&(this->relocs_reader_).len_ = local_5c;" (assignment_expression "*(uint *)&(this->relocs_reader_).len_ = local_5c" (pointer_expression "*(uint *)&(this->relocs_reader_).len_" * (cast_expression "(uint *)&(this->relocs_reader_).len_" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->relocs_reader_).len_" & (field_expression "(this->relocs_reader_).len_" (parenthesized_expression "(this->relocs_reader_)" ( (field_expression "this->relocs_reader_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;" (assignment_expression "*(undefined4 *)((int)&(this->relocs_reader_).len_ + 4) = local_58" (pointer_expression "*(undefined4 *)((int)&(this->relocs_reader_).len_ + 4)" * (cast_expression "(undefined4 *)((int)&(this->relocs_reader_).len_ + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->relocs_reader_).len_ + 4)" ( (binary_expression "(int)&(this->relocs_reader_).len_ + 4" (cast_expression "(int)&(this->relocs_reader_).len_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->relocs_reader_).len_" & (field_expression "(this->relocs_reader_).len_" (parenthesized_expression "(this->relocs_reader_)" ( (field_expression "this->relocs_reader_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "uVar17 = *in_stack_ffffff20;" (assignment_expression "uVar17 = *in_stack_ffffff20" identifier = (pointer_expression "*in_stack_ffffff20" * identifier)) ;) (expression_statement "(this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20;" (assignment_expression "(this->got_plt_reader_).p_ = (uchar *)in_stack_ffffff20" (field_expression "(this->got_plt_reader_).p_" (parenthesized_expression "(this->got_plt_reader_)" ( (field_expression "this->got_plt_reader_" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(uchar *)in_stack_ffffff20" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18\n        ;" (assignment_expression "uVar17 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 | uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "(this->got_plt_reader_).got_count_ = uVar17;" (assignment_expression "(this->got_plt_reader_).got_count_ = uVar17" (field_expression "(this->got_plt_reader_).got_count_" (parenthesized_expression "(this->got_plt_reader_)" ( (field_expression "this->got_plt_reader_" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8);" (assignment_expression "puVar5 = (uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8)" identifier = (cast_expression "(uchar *)((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8)" ( (binary_expression "(int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc) + 8" (binary_expression "(int)in_stack_ffffff20 + (uVar17 + 3 & 0xfffffffc)" (cast_expression "(int)in_stack_ffffff20" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar17 + 3 & 0xfffffffc)" ( (binary_expression "uVar17 + 3 & 0xfffffffc" (binary_expression "uVar17 + 3" identifier + number_literal) & number_literal) ))) + number_literal) )))) ;) (expression_statement "(this->got_plt_reader_).got_desc_p_ = puVar5;" (assignment_expression "(this->got_plt_reader_).got_desc_p_ = puVar5" (field_expression "(this->got_plt_reader_).got_desc_p_" (parenthesized_expression "(this->got_plt_reader_)" ( (field_expression "this->got_plt_reader_" identifier -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "(this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8;" (assignment_expression "(this->got_plt_reader_).plt_desc_p_ = puVar5 + uVar17 * 8" (field_expression "(this->got_plt_reader_).plt_desc_p_" (parenthesized_expression "(this->got_plt_reader_)" ( (field_expression "this->got_plt_reader_" identifier -> field_identifier) )) . field_identifier) = (binary_expression "puVar5 + uVar17 * 8" identifier + (binary_expression "uVar17 * 8" identifier * number_literal))) ;) (ERROR "uVar17 = elfcpp::Elf_file<64,_true,_gold::" (comma_expression "uVar17 = elfcpp::Elf_file<64,_true,_gold" (binary_expression "uVar17 = elfcpp::Elf_file<64" (assignment_expression "uVar17 = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : :) (expression_statement "Incremental_binary>::find_section_by_type\n                           (this_00,2);" (binary_expression "Incremental_binary>::find_section_by_type\n                           (this_00,2)" identifier > (ERROR "::" : :) (call_expression "find_section_by_type\n                           (this_00,2)" identifier (argument_list "(this_00,2)" ( identifier , number_literal )))) ;) (if_statement "if (uVar17 == 0) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }" if (parenthesized_expression "(uVar17 == 0)" ( (binary_expression "uVar17 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");\n        }" { comment (expression_statement "do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers");" (call_expression "do_gold_unreachable("../../gold/incremental.cc",0x124,"setup_readers")" identifier (argument_list "("../../gold/incremental.cc",0x124,"setup_readers")" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") ))) ;) })) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,uVar17);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,uVar17);" (call_expression "section_contents(this_00,uVar17)" identifier (argument_list "(this_00,uVar17)" ( identifier , identifier ))) ;)) (expression_statement "*(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac;" (assignment_expression "*(undefined4 *)&(this->main_symtab_loc_).file_offset = local_ac" (pointer_expression "*(undefined4 *)&(this->main_symtab_loc_).file_offset" * (cast_expression "(undefined4 *)&(this->main_symtab_loc_).file_offset" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->main_symtab_loc_).file_offset" & (field_expression "(this->main_symtab_loc_).file_offset" (parenthesized_expression "(this->main_symtab_loc_)" ( (field_expression "this->main_symtab_loc_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;" (assignment_expression "*(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8" (pointer_expression "*(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4)" * (cast_expression "(undefined4 *)((int)&(this->main_symtab_loc_).file_offset + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->main_symtab_loc_).file_offset + 4)" ( (binary_expression "(int)&(this->main_symtab_loc_).file_offset + 4" (cast_expression "(int)&(this->main_symtab_loc_).file_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->main_symtab_loc_).file_offset" & (field_expression "(this->main_symtab_loc_).file_offset" (parenthesized_expression "(this->main_symtab_loc_)" ( (field_expression "this->main_symtab_loc_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4;" (assignment_expression "*(undefined4 *)&(this->main_symtab_loc_).data_size = local_a4" (pointer_expression "*(undefined4 *)&(this->main_symtab_loc_).data_size" * (cast_expression "(undefined4 *)&(this->main_symtab_loc_).data_size" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->main_symtab_loc_).data_size" & (field_expression "(this->main_symtab_loc_).data_size" (parenthesized_expression "(this->main_symtab_loc_)" ( (field_expression "this->main_symtab_loc_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;" (assignment_expression "*(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0" (pointer_expression "*(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4)" * (cast_expression "(undefined4 *)((int)&(this->main_symtab_loc_).data_size + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->main_symtab_loc_).data_size + 4)" ( (binary_expression "(int)&(this->main_symtab_loc_).data_size + 4" (cast_expression "(int)&(this->main_symtab_loc_).data_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->main_symtab_loc_).data_size" & (field_expression "(this->main_symtab_loc_).data_size" (parenthesized_expression "(this->main_symtab_loc_)" ( (field_expression "this->main_symtab_loc_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (ERROR "shndx = elfcpp::Elf_file<64,_true,_gold::" (comma_expression "shndx = elfcpp::Elf_file<64,_true,_gold" (binary_expression "shndx = elfcpp::Elf_file<64" (assignment_expression "shndx = elfcpp" identifier = identifier) (ERROR "::Elf_file" : : identifier) < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : :) (expression_statement "Incremental_binary>::section_link(this_00,uVar17);" (binary_expression "Incremental_binary>::section_link(this_00,uVar17)" identifier > (ERROR "::" : :) (call_expression "section_link(this_00,uVar17)" identifier (argument_list "(this_00,uVar17)" ( identifier , identifier )))) ;) (if_statement "if ((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)) {\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }" if (parenthesized_expression "((shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx))" ( (binary_expression "(shndx == 0) ||\n           (elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)" (parenthesized_expression "(shndx == 0)" ( (binary_expression "shndx == 0" identifier == number_literal) )) || (parenthesized_expression "(elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx)" ( (ERROR "elfcpp::Elf_file<64,_true,_gold::" identifier : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : :) (comma_expression "Incremental_binary>::initialize_shnum(this_00),\n           (this->elf_file_).shnum_ <= shndx" (binary_expression "Incremental_binary>::initialize_shnum(this_00)" identifier > (ERROR "::" : :) (call_expression "initialize_shnum(this_00)" identifier (argument_list "(this_00)" ( identifier )))) , (binary_expression "(this->elf_file_).shnum_ <= shndx" (field_expression "(this->elf_file_).shnum_" (parenthesized_expression "(this->elf_file_)" ( (field_expression "this->elf_file_" identifier -> field_identifier) )) . field_identifier) <= identifier)) ))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");\n        }" { comment (expression_statement "do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers");" (call_expression "do_gold_unreachable("../../gold/incremental.cc",299,"setup_readers")" identifier (argument_list "("../../gold/incremental.cc",299,"setup_readers")" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") ))) ;) })) (labeled_statement "elfcpp::Elf_file<64,_true,_gold::Incremental_binary>::section_contents(this_00,shndx);" statement_identifier (ERROR "::Elf_file<64,_true,_gold::Incremental_binary>:" : : (comma_expression "Elf_file<64,_true,_gold" (binary_expression "Elf_file<64" identifier < number_literal) , (comma_expression "_true,_gold" identifier , identifier)) : : identifier > :) : (expression_statement "section_contents(this_00,shndx);" (call_expression "section_contents(this_00,shndx)" identifier (argument_list "(this_00,shndx)" ( identifier , identifier ))) ;)) (expression_statement "*(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac;" (assignment_expression "*(undefined4 *)&(this->main_strtab_loc_).file_offset = local_ac" (pointer_expression "*(undefined4 *)&(this->main_strtab_loc_).file_offset" * (cast_expression "(undefined4 *)&(this->main_strtab_loc_).file_offset" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->main_strtab_loc_).file_offset" & (field_expression "(this->main_strtab_loc_).file_offset" (parenthesized_expression "(this->main_strtab_loc_)" ( (field_expression "this->main_strtab_loc_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;" (assignment_expression "*(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8" (pointer_expression "*(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4)" * (cast_expression "(undefined4 *)((int)&(this->main_strtab_loc_).file_offset + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->main_strtab_loc_).file_offset + 4)" ( (binary_expression "(int)&(this->main_strtab_loc_).file_offset + 4" (cast_expression "(int)&(this->main_strtab_loc_).file_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->main_strtab_loc_).file_offset" & (field_expression "(this->main_strtab_loc_).file_offset" (parenthesized_expression "(this->main_strtab_loc_)" ( (field_expression "this->main_strtab_loc_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4;" (assignment_expression "*(undefined4 *)&(this->main_strtab_loc_).data_size = local_a4" (pointer_expression "*(undefined4 *)&(this->main_strtab_loc_).data_size" * (cast_expression "(undefined4 *)&(this->main_strtab_loc_).data_size" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&(this->main_strtab_loc_).data_size" & (field_expression "(this->main_strtab_loc_).data_size" (parenthesized_expression "(this->main_strtab_loc_)" ( (field_expression "this->main_strtab_loc_" identifier -> field_identifier) )) . field_identifier)))) = identifier) ;) (expression_statement "*(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;" (assignment_expression "*(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0" (pointer_expression "*(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4)" * (cast_expression "(undefined4 *)((int)&(this->main_strtab_loc_).data_size + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->main_strtab_loc_).data_size + 4)" ( (binary_expression "(int)&(this->main_strtab_loc_).data_size + 4" (cast_expression "(int)&(this->main_strtab_loc_).data_size" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->main_strtab_loc_).data_size" & (field_expression "(this->main_strtab_loc_).data_size" (parenthesized_expression "(this->main_strtab_loc_)" ( (field_expression "this->main_strtab_loc_" identifier -> field_identifier) )) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "pIVar18 = &this->inputs_reader_;" (assignment_expression "pIVar18 = &this->inputs_reader_" identifier = (pointer_expression "&this->inputs_reader_" & (field_expression "this->inputs_reader_" identifier -> field_identifier))) ;) (expression_statement "uVar17 = (this->inputs_reader_).input_file_count_;" (assignment_expression "uVar17 = (this->inputs_reader_).input_file_count_" identifier = (field_expression "(this->inputs_reader_).input_file_count_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier)) ;) (ERROR "ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::" (comma_expression "ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std" (binary_expression "ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64" (assignment_expression "ppSVar6 = (this->input_objects_).\n                  super__Vector_base<gold" identifier = (binary_expression "(this->input_objects_).\n                  super__Vector_base<gold" (field_expression "(this->input_objects_).\n                  super__Vector_base" (parenthesized_expression "(this->input_objects_)" ( (field_expression "this->input_objects_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_incr" : : identifier) < number_literal) , (binary_expression "_true>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish;" (comma_expression "Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_finish" (binary_expression "Sized_relobj_incr<64" identifier < number_literal) , (field_expression "_true>*>_>\n                  ._M_impl._M_finish" (field_expression "_true>*>_>\n                  ._M_impl" (binary_expression "_true>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (ERROR "ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::" (comma_expression "ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std" (binary_expression "ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold::Sized_relobj_incr<64" (assignment_expression "ppSVar7 = (this->input_objects_).\n                  super__Vector_base<gold" identifier = (binary_expression "(this->input_objects_).\n                  super__Vector_base<gold" (field_expression "(this->input_objects_).\n                  super__Vector_base" (parenthesized_expression "(this->input_objects_)" ( (field_expression "this->input_objects_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_relobj_incr" : : identifier) < number_literal) , (binary_expression "_true>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start;" (comma_expression "Sized_relobj_incr<64,_true>*>_>\n                  ._M_impl._M_start" (binary_expression "Sized_relobj_incr<64" identifier < number_literal) , (field_expression "_true>*>_>\n                  ._M_impl._M_start" (field_expression "_true>*>_>\n                  ._M_impl" (binary_expression "_true>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (expression_statement "uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2;" (assignment_expression "uVar19 = (int)ppSVar6 - (int)ppSVar7 >> 2" identifier = (binary_expression "(int)ppSVar6 - (int)ppSVar7 >> 2" (binary_expression "(int)ppSVar6 - (int)ppSVar7" (cast_expression "(int)ppSVar6" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppSVar7" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar19 < uVar17) {\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }" if (parenthesized_expression "(uVar19 < uVar17)" ( (binary_expression "uVar19 < uVar17" identifier < identifier) )) (compound_statement "{\n          std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);\n        }" { (labeled_statement "std::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);" statement_identifier (ERROR "::\n          vector<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_relobj_incr<64,_true>*,_std" (binary_expression "Sized_relobj_incr<64" identifier < number_literal) , (binary_expression "_true>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<gold" identifier < identifier) :) : (expression_statement "Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19);" (comma_expression "Sized_relobj_incr<64,_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19)" (binary_expression "Sized_relobj_incr<64" identifier < number_literal) , (binary_expression "_true>*>_>\n          ::_M_default_append(&this->input_objects_,uVar17 - uVar19)" (binary_expression "_true>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) > (ERROR "::" : :) (call_expression "_M_default_append(&this->input_objects_,uVar17 - uVar19)" identifier (argument_list "(&this->input_objects_,uVar17 - uVar19)" ( (pointer_expression "&this->input_objects_" & (field_expression "this->input_objects_" identifier -> field_identifier)) , (binary_expression "uVar17 - uVar19" identifier - identifier) ))))) ;)) }) (else_clause "else if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }" else (if_statement "if ((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)) {\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }" if (parenthesized_expression "((uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7))" ( (binary_expression "(uVar17 < uVar19) && (ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)" (parenthesized_expression "(uVar17 < uVar19)" ( (binary_expression "uVar17 < uVar19" identifier < identifier) )) && (parenthesized_expression "(ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7)" ( (comma_expression "ppSVar7 = ppSVar7 + uVar17, ppSVar6 != ppSVar7" (assignment_expression "ppSVar7 = ppSVar7 + uVar17" identifier = (binary_expression "ppSVar7 + uVar17" identifier + identifier)) , (binary_expression "ppSVar6 != ppSVar7" identifier != identifier)) ))) )) (compound_statement "{\n          (this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;\n        }" { (ERROR "(this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std::allocator<gold::" (comma_expression "(this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64,_true>*,_std" (binary_expression "(this->input_objects_).\n          super__Vector_base<gold::Sized_relobj_incr<64" (binary_expression "(this->input_objects_).\n          super__Vector_base<gold" (field_expression "(this->input_objects_).\n          super__Vector_base" (parenthesized_expression "(this->input_objects_)" ( (field_expression "this->input_objects_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Sized_relobj_incr" : : identifier) < number_literal) , (binary_expression "_true>*,_std" identifier > (pointer_expression "*,_std" * (ERROR "," ,) identifier))) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7;" (comma_expression "Sized_relobj_incr<64,_true>*>_>\n          ._M_impl._M_finish = ppSVar7" (binary_expression "Sized_relobj_incr<64" identifier < number_literal) , (assignment_expression "_true>*>_>\n          ._M_impl._M_finish = ppSVar7" (field_expression "_true>*>_>\n          ._M_impl._M_finish" (field_expression "_true>*>_>\n          ._M_impl" (binary_expression "_true>*>_" identifier > (pointer_expression "*>_" * (ERROR ">" >) identifier)) (ERROR ">" >) . field_identifier) . field_identifier) = identifier)) ;) })))) (expression_statement "this_01 = &this->input_entry_readers_;" (assignment_expression "this_01 = &this->input_entry_readers_" identifier = (pointer_expression "&this->input_entry_readers_" & (field_expression "this->input_entry_readers_" identifier -> field_identifier))) ;) (labeled_statement "std::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);" statement_identifier (ERROR "::\n        vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader,_std" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (comma_expression "_true>::Sized_input_reader,_std" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) :) : (expression_statement "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17);" (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17)" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (binary_expression "_true>::Sized_input_reader>_>\n        ::reserve(this_01,uVar17)" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) > (ERROR "::" : :) (call_expression "reserve(this_01,uVar17)" identifier (argument_list "(this_01,uVar17)" ( identifier , identifier ))))) ;)) (expression_statement "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish;" (field_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_finish" (field_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl" (binary_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_" (binary_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold" (binary_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std" (assignment_expression "ppIVar8 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold" identifier = (binary_expression "(this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).library_map_.\n                  super__Vector_base" (field_expression "(this->super_Incremental_binary).library_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Incremental_library" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Incremental_library" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start;" (field_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl._M_start" (field_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n                  ._M_impl" (binary_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_" (binary_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std::allocator<gold" (binary_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold::Incremental_library*,_std" (assignment_expression "ppIVar9 = (this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold" identifier = (binary_expression "(this->super_Incremental_binary).library_map_.\n                  super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).library_map_.\n                  super__Vector_base" (field_expression "(this->super_Incremental_binary).library_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Incremental_library" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Incremental_library" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2;" (assignment_expression "uVar19 = (int)ppIVar8 - (int)ppIVar9 >> 2" identifier = (binary_expression "(int)ppIVar8 - (int)ppIVar9 >> 2" (binary_expression "(int)ppIVar8 - (int)ppIVar9" (cast_expression "(int)ppIVar8" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppIVar9" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar19 < uVar17) {\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }" if (parenthesized_expression "(uVar19 < uVar17)" ( (binary_expression "uVar19 < uVar17" identifier < identifier) )) (compound_statement "{\n          std::vector<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);\n        }" { (ERROR "std::vector<gold::Incremental_library*,_std::allocator<gold::" (comma_expression "std::vector<gold::Incremental_library*,_std" identifier (ERROR "::vector<gold::Incremental_library*" : : (binary_expression "vector<gold" identifier < identifier) : : identifier *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19);" (binary_expression "Incremental_library*>_>::\n          _M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19)" (binary_expression "Incremental_library*>_" identifier * (ERROR ">" >) identifier) > (ERROR "::" : :) (call_expression "_M_default_append(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19)" identifier (argument_list "(&(this->super_Incremental_binary).library_map_,uVar17 - uVar19)" ( (pointer_expression "&(this->super_Incremental_binary).library_map_" & (field_expression "(this->super_Incremental_binary).library_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "uVar17 - uVar19" identifier - identifier) )))) ;) }) (else_clause "else if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }" else (if_statement "if ((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)) {\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }" if (parenthesized_expression "((uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9))" ( (binary_expression "(uVar17 < uVar19) && (ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)" (parenthesized_expression "(uVar17 < uVar19)" ( (binary_expression "uVar17 < uVar19" identifier < identifier) )) && (parenthesized_expression "(ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9)" ( (comma_expression "ppIVar9 = ppIVar9 + uVar17, ppIVar8 != ppIVar9" (assignment_expression "ppIVar9 = ppIVar9 + uVar17" identifier = (binary_expression "ppIVar9 + uVar17" identifier + identifier)) , (binary_expression "ppIVar8 != ppIVar9" identifier != identifier)) ))) )) (compound_statement "{\n          (this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;\n        }" { (expression_statement "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9;" (assignment_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish = ppIVar9" (field_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl._M_finish" (field_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_>\n          ._M_impl" (binary_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold::Incremental_library*>_" (binary_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std::allocator<gold" (binary_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold::Incremental_library*,_std" (binary_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).library_map_.\n          super__Vector_base" (field_expression "(this->super_Incremental_binary).library_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier) (ERROR "::Incremental_library" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Incremental_library" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) })))) (expression_statement "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish;" (field_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_finish" (field_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl" (binary_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_" (binary_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold" (binary_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std" (assignment_expression "ppSVar10 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold" identifier = (binary_expression "(this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).script_map_.\n                   super__Vector_base" (field_expression "(this->super_Incremental_binary).script_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Script_info" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Script_info" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start;" (field_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl._M_start" (field_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>.\n                   _M_impl" (binary_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_" (binary_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std::allocator<gold" (binary_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold::Script_info*,_std" (assignment_expression "ppSVar11 = (this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold" identifier = (binary_expression "(this->super_Incremental_binary).script_map_.\n                   super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).script_map_.\n                   super__Vector_base" (field_expression "(this->super_Incremental_binary).script_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier)) (ERROR "::Script_info" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Script_info" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2;" (assignment_expression "uVar19 = (int)ppSVar10 - (int)ppSVar11 >> 2" identifier = (binary_expression "(int)ppSVar10 - (int)ppSVar11 >> 2" (binary_expression "(int)ppSVar10 - (int)ppSVar11" (cast_expression "(int)ppSVar10" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppSVar11" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar19 < uVar17) {\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }\n        else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }" if (parenthesized_expression "(uVar19 < uVar17)" ( (binary_expression "uVar19 < uVar17" identifier < identifier) )) (compound_statement "{\n          std::vector<gold::Script_info*,_std::allocator<gold::Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);\n        }" { (ERROR "std::vector<gold::Script_info*,_std::allocator<gold::" (comma_expression "std::vector<gold::Script_info*,_std" identifier (ERROR "::vector<gold::Script_info*" : : (binary_expression "vector<gold" identifier < identifier) : : identifier *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19);" (binary_expression "Script_info*>_>::_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19)" (binary_expression "Script_info*>_" identifier * (ERROR ">" >) identifier) > (ERROR "::" : :) (call_expression "_M_default_append\n                    (&(this->super_Incremental_binary).script_map_,uVar17 - uVar19)" identifier (argument_list "(&(this->super_Incremental_binary).script_map_,uVar17 - uVar19)" ( (pointer_expression "&(this->super_Incremental_binary).script_map_" & (field_expression "(this->super_Incremental_binary).script_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "uVar17 - uVar19" identifier - identifier) )))) ;) }) (else_clause "else if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }" else (if_statement "if ((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)) {\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }" if (parenthesized_expression "((uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11))" ( (binary_expression "(uVar17 < uVar19) && (ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)" (parenthesized_expression "(uVar17 < uVar19)" ( (binary_expression "uVar17 < uVar19" identifier < identifier) )) && (parenthesized_expression "(ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11)" ( (comma_expression "ppSVar11 = ppSVar11 + uVar17, ppSVar10 != ppSVar11" (assignment_expression "ppSVar11 = ppSVar11 + uVar17" identifier = (binary_expression "ppSVar11 + uVar17" identifier + identifier)) , (binary_expression "ppSVar10 != ppSVar11" identifier != identifier)) ))) )) (compound_statement "{\n          (this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;\n        }" { (expression_statement "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11;" (assignment_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish = ppSVar11" (field_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl.\n          _M_finish" (field_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_>._M_impl" (binary_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold::Script_info*>_" (binary_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std::allocator<gold" (binary_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold::Script_info*,_std" (binary_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base<gold" (field_expression "(this->super_Incremental_binary).script_map_.\n          super__Vector_base" (field_expression "(this->super_Incremental_binary).script_map_" (parenthesized_expression "(this->super_Incremental_binary)" ( (field_expression "this->super_Incremental_binary" identifier -> field_identifier) )) . field_identifier) . field_identifier) < identifier) (ERROR "::Script_info" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Script_info" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) })))) (if_statement "if (uVar17 != 0) {\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }" if (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n          if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          puVar5 = (this->inputs_reader_).p_;\n          local_28 = 0x10;\n          uVar17 = *(uint *)(puVar5 + 0x14);\n          uVar2 = *(ushort *)(puVar5 + 0x24);\n          local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;\n          local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);\n          __position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;\n          __dnew = (size_type)&PTR__Sized_input_reader_00383370;\n          local_30 = pIVar18;\n          if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }\n          if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }\n                    /* WARNING: Subroutine does not return */\n          do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");\n        }" { (if_statement "if ((this->inputs_reader_).input_file_count_ == 0) {\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" if (parenthesized_expression "((this->inputs_reader_).input_file_count_ == 0)" ( (binary_expression "(this->inputs_reader_).input_file_count_ == 0" (field_expression "(this->inputs_reader_).input_file_count_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" { comment (expression_statement "do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset");" (call_expression "do_gold_unreachable("../../gold/incremental.h",0x45c,"input_file_offset")" identifier (argument_list "("../../gold/incremental.h",0x45c,"input_file_offset")" ( (string_literal ""../../gold/incremental.h"" " string_content ") , number_literal , (string_literal ""input_file_offset"" " string_content ") ))) ;) })) (expression_statement "puVar5 = (this->inputs_reader_).p_;" (assignment_expression "puVar5 = (this->inputs_reader_).p_" identifier = (field_expression "(this->inputs_reader_).p_" (parenthesized_expression "(this->inputs_reader_)" ( (field_expression "this->inputs_reader_" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "local_28 = 0x10;" (assignment_expression "local_28 = 0x10" identifier = number_literal) ;) (expression_statement "uVar17 = *(uint *)(puVar5 + 0x14);" (assignment_expression "uVar17 = *(uint *)(puVar5 + 0x14)" identifier = (pointer_expression "*(uint *)(puVar5 + 0x14)" * (cast_expression "(uint *)(puVar5 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x14)" ( (binary_expression "puVar5 + 0x14" identifier + number_literal) ))))) ;) (expression_statement "uVar2 = *(ushort *)(puVar5 + 0x24);" (assignment_expression "uVar2 = *(ushort *)(puVar5 + 0x24)" identifier = (pointer_expression "*(ushort *)(puVar5 + 0x24)" * (cast_expression "(ushort *)(puVar5 + 0x24)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x24)" ( (binary_expression "puVar5 + 0x24" identifier + number_literal) ))))) ;) (expression_statement "local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18;" (assignment_expression "local_24 = uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" identifier = (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8 |\n                     uVar17 << 0x18" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8 | (uVar17 & 0xff00) << 8" (binary_expression "uVar17 >> 0x18 | (uVar17 & 0xff0000) >> 8" (binary_expression "uVar17 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar17 & 0xff0000) >> 8" (parenthesized_expression "(uVar17 & 0xff0000)" ( (binary_expression "uVar17 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar17 & 0xff00) << 8" (parenthesized_expression "(uVar17 & 0xff00)" ( (binary_expression "uVar17 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar17 << 0x18" identifier << number_literal))) ;) (expression_statement "local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8);" (assignment_expression "local_2c = (uint)(ushort)(uVar2 << 8 | uVar2 >> 8)" identifier = (call_expression "(uint)(ushort)(uVar2 << 8 | uVar2 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "(uVar2 << 8 | uVar2 >> 8)" ( (binary_expression "uVar2 << 8 | uVar2 >> 8" (binary_expression "uVar2 << 8" identifier << number_literal) | (binary_expression "uVar2 >> 8" identifier >> number_literal)) )))) ;) (ERROR "__position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::" (comma_expression "__position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std" (binary_expression "__position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold::Sized_incremental_binary<64" (assignment_expression "__position._M_current =\n               (this->input_entry_readers_).\n               super__Vector_base<gold" (field_expression "__position._M_current" identifier . field_identifier) = (binary_expression "(this->input_entry_readers_).\n               super__Vector_base<gold" (field_expression "(this->input_entry_readers_).\n               super__Vector_base" (parenthesized_expression "(this->input_entry_readers_)" ( (field_expression "this->input_entry_readers_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_incremental_binary" : : identifier) < number_literal) , (comma_expression "_true>::Sized_input_reader,_std" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) , identifier)) : : identifier < identifier : :) (expression_statement "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish;" (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n               ._M_impl._M_finish" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (field_expression "_true>::Sized_input_reader>_>\n               ._M_impl._M_finish" (field_expression "_true>::Sized_input_reader>_>\n               ._M_impl" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) ;) (expression_statement "__dnew = (size_type)&PTR__Sized_input_reader_00383370;" (assignment_expression "__dnew = (size_type)&PTR__Sized_input_reader_00383370" identifier = (binary_expression "(size_type)&PTR__Sized_input_reader_00383370" (parenthesized_expression "(size_type)" ( identifier )) & identifier)) ;) (expression_statement "local_30 = pIVar18;" (assignment_expression "local_30 = pIVar18" identifier = identifier) ;) (if_statement "if (__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage) {\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }\n          else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }" if (parenthesized_expression "(__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage)" ( (ERROR "__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::" (comma_expression "__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std" (binary_expression "__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold::Sized_incremental_binary<64" (binary_expression "__position._M_current ==\n              (this->input_entry_readers_).\n              super__Vector_base<gold" (field_expression "__position._M_current" identifier . field_identifier) == (binary_expression "(this->input_entry_readers_).\n              super__Vector_base<gold" (field_expression "(this->input_entry_readers_).\n              super__Vector_base" (parenthesized_expression "(this->input_entry_readers_)" ( (field_expression "this->input_entry_readers_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Sized_incremental_binary" : : identifier) < number_literal) , (comma_expression "_true>::Sized_input_reader,_std" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) , identifier)) : : identifier < identifier : :) (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (field_expression "_true>::Sized_input_reader>_>\n              ._M_impl._M_end_of_storage" (field_expression "_true>::Sized_input_reader>_>\n              ._M_impl" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier)) )) (compound_statement "{\n            std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);\n          }" { (labeled_statement "std::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);" statement_identifier (ERROR "::\n            vector<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold:" : : (binary_expression "vector<gold" identifier < identifier) : : (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader,_std" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (comma_expression "_true>::Sized_input_reader,_std" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : : (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (binary_expression "_true>::Sized_input_reader>_>\n            ::_M_realloc_insert<gold" (binary_expression "_true>::Sized_input_reader>_>\n            ::_M_realloc_insert" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) > (ERROR "::" : :) identifier) < identifier)) :) : (expression_statement "Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew);" (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew)" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (binary_expression "_true>::Sized_input_reader>\n                      (this_01,__position,(Sized_input_reader *)&__dnew)" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > (parenthesized_expression "(this_01,__position,(Sized_input_reader *)&__dnew)" ( (comma_expression "this_01,__position,(Sized_input_reader *)&__dnew" identifier , (comma_expression "__position,(Sized_input_reader *)&__dnew" identifier , (cast_expression "(Sized_input_reader *)&__dnew" ( (type_descriptor "Sized_input_reader *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&__dnew" & identifier)))) )))) ;)) }) (else_clause "else {\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }" else (compound_statement "{\n            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;\n            ((__position._M_current)->reader_).inputs_ = pIVar18;\n            ((__position._M_current)->reader_).flags_ = local_2c;\n            ((__position._M_current)->reader_).offset_ = 0x10;\n            ((__position._M_current)->reader_).info_offset_ = local_24;\n            (this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;\n          }" { (expression_statement "((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370;" (assignment_expression "((__position._M_current)->super_Input_reader)._vptr_Input_reader =\n                 (_func_int_varargs **)&PTR__Sized_input_reader_00383370" (field_expression "((__position._M_current)->super_Input_reader)._vptr_Input_reader" (parenthesized_expression "((__position._M_current)->super_Input_reader)" ( (field_expression "(__position._M_current)->super_Input_reader" (parenthesized_expression "(__position._M_current)" ( (field_expression "__position._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) = (cast_expression "(_func_int_varargs **)&PTR__Sized_input_reader_00383370" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&PTR__Sized_input_reader_00383370" & identifier))) ;) (expression_statement "((__position._M_current)->reader_).inputs_ = pIVar18;" (assignment_expression "((__position._M_current)->reader_).inputs_ = pIVar18" (field_expression "((__position._M_current)->reader_).inputs_" (parenthesized_expression "((__position._M_current)->reader_)" ( (field_expression "(__position._M_current)->reader_" (parenthesized_expression "(__position._M_current)" ( (field_expression "__position._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "((__position._M_current)->reader_).flags_ = local_2c;" (assignment_expression "((__position._M_current)->reader_).flags_ = local_2c" (field_expression "((__position._M_current)->reader_).flags_" (parenthesized_expression "((__position._M_current)->reader_)" ( (field_expression "(__position._M_current)->reader_" (parenthesized_expression "(__position._M_current)" ( (field_expression "__position._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) = identifier) ;) (expression_statement "((__position._M_current)->reader_).offset_ = 0x10;" (assignment_expression "((__position._M_current)->reader_).offset_ = 0x10" (field_expression "((__position._M_current)->reader_).offset_" (parenthesized_expression "((__position._M_current)->reader_)" ( (field_expression "(__position._M_current)->reader_" (parenthesized_expression "(__position._M_current)" ( (field_expression "__position._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "((__position._M_current)->reader_).info_offset_ = local_24;" (assignment_expression "((__position._M_current)->reader_).info_offset_ = local_24" (field_expression "((__position._M_current)->reader_).info_offset_" (parenthesized_expression "((__position._M_current)->reader_)" ( (field_expression "(__position._M_current)->reader_" (parenthesized_expression "(__position._M_current)" ( (field_expression "__position._M_current" identifier . field_identifier) )) -> field_identifier) )) . field_identifier) = identifier) ;) (ERROR "(this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std::allocator<gold::" (comma_expression "(this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64,_true>::Sized_input_reader,_std" (binary_expression "(this->input_entry_readers_).\n            super__Vector_base<gold::Sized_incremental_binary<64" (binary_expression "(this->input_entry_readers_).\n            super__Vector_base<gold" (field_expression "(this->input_entry_readers_).\n            super__Vector_base" (parenthesized_expression "(this->input_entry_readers_)" ( (field_expression "this->input_entry_readers_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Sized_incremental_binary" : : identifier) < number_literal) , (comma_expression "_true>::Sized_input_reader,_std" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) , identifier)) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1;" (comma_expression "Sized_incremental_binary<64,_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1" (binary_expression "Sized_incremental_binary<64" identifier < number_literal) , (assignment_expression "_true>::Sized_input_reader>_>\n            ._M_impl._M_finish = __position._M_current + 1" (field_expression "_true>::Sized_input_reader>_>\n            ._M_impl._M_finish" (field_expression "_true>::Sized_input_reader>_>\n            ._M_impl" (binary_expression "_true>::Sized_input_reader>_" (binary_expression "_true>::Sized_input_reader" identifier > (ERROR "::" : :) identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) = (binary_expression "__position._M_current + 1" (field_expression "__position._M_current" identifier . field_identifier) + number_literal))) ;) }))) (if_statement "if (uVar2 >> 8 < 6) {\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }" if (parenthesized_expression "(uVar2 >> 8 < 6)" ( (binary_expression "uVar2 >> 8 < 6" (binary_expression "uVar2 >> 8" identifier >> number_literal) < number_literal) )) (compound_statement "{\n                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */\n                    /* WARNING: Treating indirect jump as call */\n            (*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();\n            return;\n          }" { comment comment (expression_statement "(*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))();" (call_expression "(*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))()" (parenthesized_expression "(*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)))" ( (pointer_expression "*(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4))" * (cast_expression "(code *)((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4))" ( (binary_expression "(int)&_GLOBAL_OFFSET_TABLE_ +\n                      *(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)" (cast_expression "(int)&_GLOBAL_OFFSET_TABLE_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&_GLOBAL_OFFSET_TABLE_" & identifier)) + (pointer_expression "*(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)" * (cast_expression "(int *)(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4)" ( (binary_expression "&DAT_00288410 + (uint)(byte)(uVar2 >> 8) * 4" (pointer_expression "&DAT_00288410" & identifier) + (binary_expression "(uint)(byte)(uVar2 >> 8) * 4" (call_expression "(uint)(byte)(uVar2 >> 8)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar2 >> 8)" ( (binary_expression "uVar2 >> 8" identifier >> number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) comment (expression_statement "do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers");" (call_expression "do_gold_unreachable("../../gold/incremental.cc",0x163,"setup_readers")" identifier (argument_list "("../../gold/incremental.cc",0x163,"setup_readers")" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") ))) ;) })) (expression_statement "iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4);" (assignment_expression "iVar4 = *(int *)((int)&(this->symtab_reader_).len_ + 4)" identifier = (pointer_expression "*(int *)((int)&(this->symtab_reader_).len_ + 4)" * (cast_expression "(int *)((int)&(this->symtab_reader_).len_ + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&(this->symtab_reader_).len_ + 4)" ( (binary_expression "(int)&(this->symtab_reader_).len_ + 4" (cast_expression "(int)&(this->symtab_reader_).len_" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&(this->symtab_reader_).len_" & (field_expression "(this->symtab_reader_).len_" (parenthesized_expression "(this->symtab_reader_)" ( (field_expression "this->symtab_reader_" identifier -> field_identifier) )) . field_identifier))) + number_literal) ))))) ;) (expression_statement "uVar17 = (uint)(this->symtab_reader_).len_;" (assignment_expression "uVar17 = (uint)(this->symtab_reader_).len_" identifier = (field_expression "(uint)(this->symtab_reader_).len_" (call_expression "(uint)(this->symtab_reader_)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(this->symtab_reader_)" ( (field_expression "this->symtab_reader_" identifier -> field_identifier) ))) . field_identifier)) ;) (expression_statement "uVar21 = iVar4 >> 0x1f & 3;" (assignment_expression "uVar21 = iVar4 >> 0x1f & 3" identifier = (binary_expression "iVar4 >> 0x1f & 3" (binary_expression "iVar4 >> 0x1f" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar19 = uVar17 + uVar21 >> 2;" (assignment_expression "uVar19 = uVar17 + uVar21 >> 2" identifier = (binary_expression "uVar17 + uVar21 >> 2" (binary_expression "uVar17 + uVar21" identifier + identifier) >> number_literal)) ;) (expression_statement "uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000;" (assignment_expression "uVar17 = uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000" identifier = (binary_expression "uVar19 | (iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000" identifier | (binary_expression "(iVar4 + (uint)CARRY4(uVar17,uVar21)) * 0x40000000" (parenthesized_expression "(iVar4 + (uint)CARRY4(uVar17,uVar21))" ( (binary_expression "iVar4 + (uint)CARRY4(uVar17,uVar21)" identifier + (cast_expression "(uint)CARRY4(uVar17,uVar21)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar17,uVar21)" identifier (argument_list "(uVar17,uVar21)" ( identifier , identifier ))))) )) * number_literal))) ;) (expression_statement "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish;" (field_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_finish" (field_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl" (binary_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std" (assignment_expression "ppSVar12 = (this->symbol_map_).\n                   super__Vector_base<gold" identifier = (binary_expression "(this->symbol_map_).\n                   super__Vector_base<gold" (field_expression "(this->symbol_map_).\n                   super__Vector_base" (parenthesized_expression "(this->symbol_map_)" ( (field_expression "this->symbol_map_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start;" (field_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl.\n                   _M_start" (field_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>._M_impl" (binary_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold::Symbol*,_std" (assignment_expression "ppSVar13 = (this->symbol_map_).\n                   super__Vector_base<gold" identifier = (binary_expression "(this->symbol_map_).\n                   super__Vector_base<gold" (field_expression "(this->symbol_map_).\n                   super__Vector_base" (parenthesized_expression "(this->symbol_map_)" ( (field_expression "this->symbol_map_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2;" (assignment_expression "uVar21 = (int)ppSVar12 - (int)ppSVar13 >> 2" identifier = (binary_expression "(int)ppSVar12 - (int)ppSVar13 >> 2" (binary_expression "(int)ppSVar12 - (int)ppSVar13" (cast_expression "(int)ppSVar12" ( (type_descriptor "int" primitive_type) ) identifier) - (cast_expression "(int)ppSVar13" ( (type_descriptor "int" primitive_type) ) identifier)) >> number_literal)) ;) (if_statement "if (uVar21 < uVar17) {\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }\n        else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }" if (parenthesized_expression "(uVar21 < uVar17)" ( (binary_expression "uVar21 < uVar17" identifier < identifier) )) (compound_statement "{\n          std::vector<gold::Symbol*,_std::allocator<gold::Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);\n          this->has_incremental_info_ = true;\n        }" { (ERROR "std::vector<gold::Symbol*,_std::allocator<gold::" (comma_expression "std::vector<gold::Symbol*,_std" identifier (ERROR "::vector<gold::Symbol*" : : (binary_expression "vector<gold" identifier < identifier) : : identifier *) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21);" (binary_expression "Symbol*>_>::_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21)" (binary_expression "Symbol*>_" identifier * (ERROR ">" >) identifier) > (ERROR "::" : :) (call_expression "_M_default_append\n                    (&this->symbol_map_,uVar17 - uVar21)" identifier (argument_list "(&this->symbol_map_,uVar17 - uVar21)" ( (pointer_expression "&this->symbol_map_" & (field_expression "this->symbol_map_" identifier -> field_identifier)) , (binary_expression "uVar17 - uVar21" identifier - identifier) )))) ;) (expression_statement "this->has_incremental_info_ = true;" (assignment_expression "this->has_incremental_info_ = true" (field_expression "this->has_incremental_info_" identifier -> field_identifier) = true) ;) }) (else_clause "else {\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }" else (compound_statement "{\n          if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }\n          this->has_incremental_info_ = true;\n        }" { (if_statement "if ((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)) {\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }" if (parenthesized_expression "((uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13))" ( (binary_expression "(uVar17 < uVar21) && (ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)" (parenthesized_expression "(uVar17 < uVar21)" ( (binary_expression "uVar17 < uVar21" identifier < identifier) )) && (parenthesized_expression "(ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13)" ( (comma_expression "ppSVar13 = ppSVar13 + uVar19, ppSVar12 != ppSVar13" (assignment_expression "ppSVar13 = ppSVar13 + uVar19" identifier = (binary_expression "ppSVar13 + uVar19" identifier + identifier)) , (binary_expression "ppSVar12 != ppSVar13" identifier != identifier)) ))) )) (compound_statement "{\n            (this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;\n          }" { (expression_statement "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13;" (assignment_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish = ppSVar13" (field_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl._M_finish" (field_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_>.\n            _M_impl" (binary_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold::Symbol*>_" (binary_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std::allocator<gold" (binary_expression "(this->symbol_map_).super__Vector_base<gold::Symbol*,_std" (binary_expression "(this->symbol_map_).super__Vector_base<gold" (field_expression "(this->symbol_map_).super__Vector_base" (parenthesized_expression "(this->symbol_map_)" ( (field_expression "this->symbol_map_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR "," ,) identifier) (ERROR "::allocator" : : identifier) < identifier) (ERROR "::Symbol" : : identifier) * (ERROR ">" >) identifier) (ERROR ">" >) . field_identifier) . field_identifier) = identifier) ;) })) (expression_statement "this->has_incremental_info_ = true;" (assignment_expression "this->has_incremental_info_ = true" (field_expression "this->has_incremental_info_" identifier -> field_identifier) = true) ;) }))) (return_statement "return;" return ;) })) })) })) comment (labeled_statement "Incremental_binary::view\n            (in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20);" statement_identifier : (ERROR ":" :) (expression_statement "view\n            (in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20);" (call_expression "view\n            (in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20)" identifier (argument_list "(in_stack_ffffff14,CONCAT44(local_58,local_68),(section_size_type)in_stack_ffffff20)" ( identifier , (call_expression "CONCAT44(local_58,local_68)" identifier (argument_list "(local_58,local_68)" ( identifier , identifier ))) , (cast_expression "(section_size_type)in_stack_ffffff20" ( (type_descriptor "section_size_type" type_identifier) ) identifier) ))) ;)) (ERROR "}" }))
(translation_unit "void FUN_0008f830(int param_1)\n\n{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    \n  FUN_00071170();\n}\n\n" (function_definition "void FUN_0008f830(int param_1)\n\n{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    \n  FUN_00071170();\n}" primitive_type (function_declarator "FUN_0008f830(int param_1)" identifier (parameter_list "(int param_1)" ( (parameter_declaration "int param_1" primitive_type identifier) ))) (compound_statement "{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    \n  FUN_00071170();\n}" { (declaration "ushort uVar1;" type_identifier identifier ;) (declaration "undefined4 *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "char cVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined4 local_ac;" type_identifier identifier ;) (declaration "undefined4 local_a8;" type_identifier identifier ;) (declaration "undefined4 local_a4;" type_identifier identifier ;) (declaration "undefined4 local_a0;" type_identifier identifier ;) (declaration "undefined4 local_9c;" type_identifier identifier ;) (declaration "undefined4 local_98;" type_identifier identifier ;) (declaration "undefined4 local_94;" type_identifier identifier ;) (declaration "undefined4 local_90;" type_identifier identifier ;) (declaration "undefined4 local_8c [2];" type_identifier (array_declarator "local_8c [2]" identifier [ number_literal ]) ;) (declaration "uint local_84;" type_identifier identifier ;) (declaration "int local_80;" primitive_type identifier ;) (declaration "uint local_7c;" type_identifier identifier ;) (declaration "uint local_74;" type_identifier identifier ;) (declaration "int local_70;" primitive_type identifier ;) (declaration "uint local_6c;" type_identifier identifier ;) (declaration "undefined4 local_68;" type_identifier identifier ;) (declaration "uint local_64;" type_identifier identifier ;) (declaration "int local_60;" primitive_type identifier ;) (declaration "uint local_5c;" type_identifier identifier ;) (declaration "undefined4 local_58;" type_identifier identifier ;) (declaration "uint local_54;" type_identifier identifier ;) (declaration "int local_50;" primitive_type identifier ;) (declaration "uint local_4c;" type_identifier identifier ;) (declaration "uint local_44;" type_identifier identifier ;) (declaration "int local_40;" primitive_type identifier ;) (declaration "uint local_3c;" type_identifier identifier ;) (declaration "undefined **local_34;" type_identifier (pointer_declarator "**local_34" * (pointer_declarator "*local_34" * identifier)) ;) (declaration "int local_30;" primitive_type identifier ;) (declaration "uint local_2c;" type_identifier identifier ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (expression_statement "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);" (assignment_expression "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" identifier = (call_expression "FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" identifier (argument_list "(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" ( identifier , (pointer_expression "&local_9c" & identifier) , (pointer_expression "&local_98" & identifier) , (pointer_expression "&local_94" & identifier) , (pointer_expression "&local_90" & identifier) , identifier )))) ;) (if_statement "if (cVar4 == '\0') {\n    return;\n  }" if (parenthesized_expression "(cVar4 == '\0')" ( (binary_expression "cVar4 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) })) (expression_statement "iVar7 = param_1 + 0x2c;" (assignment_expression "iVar7 = param_1 + 0x2c" identifier = (binary_expression "param_1 + 0x2c" identifier + number_literal)) ;) (expression_statement "FUN_00088310(&local_84,iVar7,local_9c);" (call_expression "FUN_00088310(&local_84,iVar7,local_9c)" identifier (argument_list "(&local_84,iVar7,local_9c)" ( (pointer_expression "&local_84" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_74,iVar7,local_98);" (call_expression "FUN_00088310(&local_74,iVar7,local_98)" identifier (argument_list "(&local_74,iVar7,local_98)" ( (pointer_expression "&local_74" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_64,iVar7,local_94);" (call_expression "FUN_00088310(&local_64,iVar7,local_94)" identifier (argument_list "(&local_64,iVar7,local_94)" ( (pointer_expression "&local_64" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_54,iVar7,local_90);" (call_expression "FUN_00088310(&local_54,iVar7,local_90)" identifier (argument_list "(&local_54,iVar7,local_90)" ( (pointer_expression "&local_54" & identifier) , identifier , identifier ))) ;) (expression_statement "FUN_00088310(&local_44,iVar7,local_8c[0]);" (call_expression "FUN_00088310(&local_44,iVar7,local_8c[0])" identifier (argument_list "(&local_44,iVar7,local_8c[0])" ( (pointer_expression "&local_44" & identifier) , identifier , (subscript_expression "local_8c[0]" identifier [ number_literal ]) ))) ;) (expression_statement "iVar6 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x28)" identifier = (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" if (parenthesized_expression "(-1 < local_80)" ( (binary_expression "-1 < local_80" number_literal < identifier) )) (compound_statement "{\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" { (expression_statement "uVar5 = *(uint *)(iVar6 + 8);" (assignment_expression "uVar5 = *(uint *)(iVar6 + 8)" identifier = (pointer_expression "*(uint *)(iVar6 + 8)" * (cast_expression "(uint *)(iVar6 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 8)" ( (binary_expression "iVar6 + 8" identifier + number_literal) ))))) ;) (expression_statement "local_80 = local_80 + (uint)CARRY4(local_7c,local_84);" (assignment_expression "local_80 = local_80 + (uint)CARRY4(local_7c,local_84)" identifier = (binary_expression "local_80 + (uint)CARRY4(local_7c,local_84)" identifier + (cast_expression "(uint)CARRY4(local_7c,local_84)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_7c,local_84)" identifier (argument_list "(local_7c,local_84)" ( identifier , identifier )))))) ;) (expression_statement "iVar9 = *(int *)(iVar6 + 0xc);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0xc)" identifier = (pointer_expression "*(int *)(iVar6 + 0xc)" * (cast_expression "(int *)(iVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0xc)" ( (binary_expression "iVar6 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = (uint)(uVar5 < local_7c + local_84);" (assignment_expression "uVar8 = (uint)(uVar5 < local_7c + local_84)" identifier = (call_expression "(uint)(uVar5 < local_7c + local_84)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_7c + local_84)" ( (binary_expression "uVar5 < local_7c + local_84" identifier < (binary_expression "local_7c + local_84" identifier + identifier)) )))) ;) (expression_statement "iVar3 = iVar9 - local_80;" (assignment_expression "iVar3 = iVar9 - local_80" identifier = (binary_expression "iVar9 - local_80" identifier - identifier)) ;) (if_statement "if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" if (parenthesized_expression "((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" ( (binary_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_80)" identifier (argument_list "(iVar9,local_80)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) )) (compound_statement "{\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" { (expression_statement "iVar6 = *(int *)(iVar6 + 0x10);" (assignment_expression "iVar6 = *(int *)(iVar6 + 0x10)" identifier = (pointer_expression "*(int *)(iVar6 + 0x10)" * (cast_expression "(int *)(iVar6 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x10)" ( (binary_expression "iVar6 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" if (parenthesized_expression "(((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))))" ( (binary_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" (parenthesized_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))))" ( (binary_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" (parenthesized_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60))" ( (binary_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)" (parenthesized_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0))" ( (binary_expression "(-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" (parenthesized_expression "(-1 < local_70)" ( (binary_expression "-1 < local_70" number_literal < identifier) )) && (parenthesized_expression "(local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" ( (comma_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74)" identifier = (binary_expression "local_70 + (uint)CARRY4(local_6c,local_74)" identifier + (cast_expression "(uint)CARRY4(local_6c,local_74)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_6c,local_74)" identifier (argument_list "(local_6c,local_74)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "uVar8 = (uint)(uVar5 < local_6c + local_74)" identifier = (call_expression "(uint)(uVar5 < local_6c + local_74)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_6c + local_74)" ( (binary_expression "uVar5 < local_6c + local_74" identifier < (binary_expression "local_6c + local_74" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "iVar3 = iVar9 - local_70" identifier = (binary_expression "iVar9 - local_70" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_70)" identifier (argument_list "(iVar9,local_70)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal))))) ))) )) && (parenthesized_expression "(-1 < local_60)" ( (binary_expression "-1 < local_60" number_literal < identifier) ))) )) && (parenthesized_expression "((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" ( (parenthesized_expression "(local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))" ( (comma_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64)" identifier = (binary_expression "local_60 + (uint)CARRY4(local_5c,local_64)" identifier + (cast_expression "(uint)CARRY4(local_5c,local_64)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_5c,local_64)" identifier (argument_list "(local_5c,local_64)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "uVar8 = (uint)(uVar5 < local_5c + local_64)" identifier = (call_expression "(uint)(uVar5 < local_5c + local_64)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_5c + local_64)" ( (binary_expression "uVar5 < local_5c + local_64" identifier < (binary_expression "local_5c + local_64" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "iVar3 = iVar9 - local_60" identifier = (binary_expression "iVar9 - local_60" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_60)" identifier (argument_list "(iVar9,local_60)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "(-1 < local_50)" ( (binary_expression "-1 < local_50" number_literal < identifier) )))))) )) ))) )) && (parenthesized_expression "((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" ( (parenthesized_expression "(local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))" ( (comma_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54)" identifier = (binary_expression "local_50 + (uint)CARRY4(local_4c,local_54)" identifier + (cast_expression "(uint)CARRY4(local_4c,local_54)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_4c,local_54)" identifier (argument_list "(local_4c,local_54)" ( identifier , identifier )))))) , (comma_expression "uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "uVar8 = (uint)(uVar5 < local_4c + local_54)" identifier = (call_expression "(uint)(uVar5 < local_4c + local_54)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_4c + local_54)" ( (binary_expression "uVar5 < local_4c + local_54" identifier < (binary_expression "local_4c + local_54" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "iVar3 = iVar9 - local_50" identifier = (binary_expression "iVar9 - local_50" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8))" ( (binary_expression "SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_50)" identifier (argument_list "(iVar9,local_50)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar8)" identifier (argument_list "(iVar3,uVar8)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar8)" ( (binary_expression "iVar3 - uVar8" identifier - identifier) ))) < number_literal)) && (parenthesized_expression "((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" ( (parenthesized_expression "(puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))" ( (comma_expression "puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (assignment_expression "puVar11 = (uint *)(iVar6 + local_54)" identifier = (cast_expression "(uint *)(iVar6 + local_54)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + local_54)" ( (binary_expression "iVar6 + local_54" identifier + identifier) )))) , (binary_expression "-1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (binary_expression "-1 < local_40" number_literal < identifier) && (parenthesized_expression "(local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" ( (comma_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44)" identifier = (binary_expression "local_40 + (uint)CARRY4(local_3c,local_44)" identifier + (cast_expression "(uint)CARRY4(local_3c,local_44)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(local_3c,local_44)" identifier (argument_list "(local_3c,local_44)" ( identifier , identifier )))))) , (comma_expression "uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "uVar5 = (uint)(uVar5 < local_3c + local_44)" identifier = (call_expression "(uint)(uVar5 < local_3c + local_44)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar5 < local_3c + local_44)" ( (binary_expression "uVar5 < local_3c + local_44" identifier < (binary_expression "local_3c + local_44" identifier + identifier)) )))) , (comma_expression "iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "iVar3 = iVar9 - local_40" identifier = (binary_expression "iVar9 - local_40" identifier - identifier)) , (binary_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5))" ( (binary_expression "SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)" (call_expression "SBORROW4(iVar9,local_40)" identifier (argument_list "(iVar9,local_40)" ( identifier , identifier ))) != (call_expression "SBORROW4(iVar3,uVar5)" identifier (argument_list "(iVar3,uVar5)" ( identifier , identifier )))) )) == (binary_expression "(int)(iVar3 - uVar5) < 0" (cast_expression "(int)(iVar3 - uVar5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(iVar3 - uVar5)" ( (binary_expression "iVar3 - uVar5" identifier - identifier) ))) < number_literal))))) )))) )) )))))) )) ))) )) (compound_statement "{\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" { (expression_statement "iVar9 = local_44 + iVar6;" (assignment_expression "iVar9 = local_44 + iVar6" identifier = (binary_expression "local_44 + iVar6" identifier + identifier)) ;) (if_statement "if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" if (parenthesized_expression "(local_3c == 0)" ( (binary_expression "local_3c == 0" identifier == number_literal) )) (compound_statement "{\n          local_3c = 0;\n        }" { (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" identifier = number_literal) ;) }) (else_clause "else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" else (compound_statement "{\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" { (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" identifier = (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" * (cast_expression "(char *)(iVar9 + -1 + local_3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -1 + local_3c)" ( (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" identifier + number_literal) + identifier) ))))) ;) (while_statement "while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" while (parenthesized_expression "((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)))" ( (parenthesized_expression "(cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))" ( (binary_expression "cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)" (binary_expression "cVar4 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) && (parenthesized_expression "(local_3c = local_3c - 1, local_3c != 0)" ( (comma_expression "local_3c = local_3c - 1, local_3c != 0" (assignment_expression "local_3c = local_3c - 1" identifier = (binary_expression "local_3c - 1" identifier - number_literal)) , (binary_expression "local_3c != 0" identifier != number_literal)) ))) )) )) (compound_statement "{\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" { (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" identifier = (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" * (cast_expression "(char *)(iVar9 + -1 + local_3c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + -1 + local_3c)" ( (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" identifier + number_literal) + identifier) ))))) ;) })) }))) (expression_statement "uVar5 = *(uint *)(local_84 + iVar6 + 4);" (assignment_expression "uVar5 = *(uint *)(local_84 + iVar6 + 4)" identifier = (pointer_expression "*(uint *)(local_84 + iVar6 + 4)" * (cast_expression "(uint *)(local_84 + iVar6 + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_84 + iVar6 + 4)" ( (binary_expression "local_84 + iVar6 + 4" (binary_expression "local_84 + iVar6" identifier + identifier) + number_literal) ))))) ;) (expression_statement "*(uint *)(param_1 + 0x98) = local_84 + iVar6;" (assignment_expression "*(uint *)(param_1 + 0x98) = local_84 + iVar6" (pointer_expression "*(uint *)(param_1 + 0x98)" * (cast_expression "(uint *)(param_1 + 0x98)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) = (binary_expression "local_84 + iVar6" identifier + identifier)) ;) (expression_statement "*(int *)(param_1 + 0x9c) = iVar9;" (assignment_expression "*(int *)(param_1 + 0x9c) = iVar9" (pointer_expression "*(int *)(param_1 + 0x9c)" * (cast_expression "(int *)(param_1 + 0x9c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x9c)" ( (binary_expression "param_1 + 0x9c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xa0) = local_3c;" (assignment_expression "*(uint *)(param_1 + 0xa0) = local_3c" (pointer_expression "*(uint *)(param_1 + 0xa0)" * (cast_expression "(uint *)(param_1 + 0xa0)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa0)" ( (binary_expression "param_1 + 0xa0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xa8) = iVar6 + local_74;" (assignment_expression "*(uint *)(param_1 + 0xa8) = iVar6 + local_74" (pointer_expression "*(uint *)(param_1 + 0xa8)" * (cast_expression "(uint *)(param_1 + 0xa8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa8)" ( (binary_expression "param_1 + 0xa8" identifier + number_literal) )))) = (binary_expression "iVar6 + local_74" identifier + identifier)) ;) (expression_statement "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (pointer_expression "*(uint *)(param_1 + 0xa4)" * (cast_expression "(uint *)(param_1 + 0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))) = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "*(uint *)(param_1 + 0xac) = local_6c;" (assignment_expression "*(uint *)(param_1 + 0xac) = local_6c" (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0xb0) = local_68;" (assignment_expression "*(undefined4 *)(param_1 + 0xb0) = local_68" (pointer_expression "*(undefined4 *)(param_1 + 0xb0)" * (cast_expression "(undefined4 *)(param_1 + 0xb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xb4) = iVar6 + local_64;" (assignment_expression "*(uint *)(param_1 + 0xb4) = iVar6 + local_64" (pointer_expression "*(uint *)(param_1 + 0xb4)" * (cast_expression "(uint *)(param_1 + 0xb4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb4)" ( (binary_expression "param_1 + 0xb4" identifier + number_literal) )))) = (binary_expression "iVar6 + local_64" identifier + identifier)) ;) (expression_statement "*(uint *)(param_1 + 0xb8) = local_5c;" (assignment_expression "*(uint *)(param_1 + 0xb8) = local_5c" (pointer_expression "*(uint *)(param_1 + 0xb8)" * (cast_expression "(uint *)(param_1 + 0xb8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb8)" ( (binary_expression "param_1 + 0xb8" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0xbc) = local_58;" (assignment_expression "*(undefined4 *)(param_1 + 0xbc) = local_58" (pointer_expression "*(undefined4 *)(param_1 + 0xbc)" * (cast_expression "(undefined4 *)(param_1 + 0xbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xbc)" ( (binary_expression "param_1 + 0xbc" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = *puVar11;" (assignment_expression "uVar5 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (expression_statement "*(uint **)(param_1 + 0xc0) = puVar11;" (assignment_expression "*(uint **)(param_1 + 0xc0) = puVar11" (pointer_expression "*(uint **)(param_1 + 0xc0)" * (cast_expression "(uint **)(param_1 + 0xc0)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xc0)" ( (binary_expression "param_1 + 0xc0" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" identifier = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "*(uint *)(param_1 + 0xc4) = uVar5;" (assignment_expression "*(uint *)(param_1 + 0xc4) = uVar5" (pointer_expression "*(uint *)(param_1 + 0xc4)" * (cast_expression "(uint *)(param_1 + 0xc4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc4)" ( (binary_expression "param_1 + 0xc4" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;" (assignment_expression "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" identifier = (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc)" (cast_expression "(int)puVar11" ( (type_descriptor "int" primitive_type) ) identifier) + (parenthesized_expression "(uVar5 + 3 & 0xfffffffc)" ( (binary_expression "uVar5 + 3 & 0xfffffffc" (binary_expression "uVar5 + 3" identifier + number_literal) & number_literal) ))) + number_literal)) ;) (expression_statement "*(int *)(param_1 + 200) = iVar6;" (assignment_expression "*(int *)(param_1 + 200) = iVar6" (pointer_expression "*(int *)(param_1 + 200)" * (cast_expression "(int *)(param_1 + 200)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 200)" ( (binary_expression "param_1 + 200" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;" (assignment_expression "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8" (pointer_expression "*(uint *)(param_1 + 0xcc)" * (cast_expression "(uint *)(param_1 + 0xcc)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcc)" ( (binary_expression "param_1 + 0xcc" identifier + number_literal) )))) = (binary_expression "iVar6 + uVar5 * 8" identifier + (binary_expression "uVar5 * 8" identifier * number_literal))) ;) (expression_statement "iVar6 = FUN_00088190(iVar7,2);" (assignment_expression "iVar6 = FUN_00088190(iVar7,2)" identifier = (call_expression "FUN_00088190(iVar7,2)" identifier (argument_list "(iVar7,2)" ( identifier , number_literal )))) ;) (if_statement "if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" if (parenthesized_expression "(iVar6 == 0)" ( (binary_expression "iVar6 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" { (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0)" identifier (argument_list "("../../gold/incremental.cc",0x124,"setup_readers",0)" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") , number_literal ))) ;) })) (expression_statement "FUN_00088310(&local_ac,iVar7,iVar6);" (call_expression "FUN_00088310(&local_ac,iVar7,iVar6)" identifier (argument_list "(&local_ac,iVar7,iVar6)" ( (pointer_expression "&local_ac" & identifier) , identifier , identifier ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x74) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x74) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x74)" * (cast_expression "(undefined4 *)(param_1 + 0x74)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x74)" ( (binary_expression "param_1 + 0x74" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x78) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x78) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x78)" * (cast_expression "(undefined4 *)(param_1 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x78)" ( (binary_expression "param_1 + 0x78" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x7c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x7c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" * (cast_expression "(undefined4 *)(param_1 + 0x7c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x7c)" ( (binary_expression "param_1 + 0x7c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x80) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x80) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x80)" * (cast_expression "(undefined4 *)(param_1 + 0x80)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar5 = FUN_00088680(iVar7,iVar6);" (assignment_expression "uVar5 = FUN_00088680(iVar7,iVar6)" identifier = (call_expression "FUN_00088680(iVar7,iVar6)" identifier (argument_list "(iVar7,iVar6)" ( identifier , identifier )))) ;) (expression_statement "iVar6 = param_1;" (assignment_expression "iVar6 = param_1" identifier = identifier) ;) (if_statement "if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" if (parenthesized_expression "((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           )" ( (binary_expression "(uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" (parenthesized_expression "(uVar5 == 0)" ( (binary_expression "uVar5 == 0" identifier == number_literal) )) || (parenthesized_expression "(FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" ( (comma_expression "FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (call_expression "FUN_00088090(iVar7)" identifier (argument_list "(iVar7)" ( identifier ))) , (comma_expression "iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (assignment_expression "iVar6 = iVar7" identifier = identifier) , (binary_expression "*(uint *)(param_1 + 0x38) <= uVar5" (pointer_expression "*(uint *)(param_1 + 0x38)" * (cast_expression "(uint *)(param_1 + 0x38)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) )))) <= identifier))) ))) )) (compound_statement "{\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" { (expression_statement "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);" (call_expression "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6)" identifier (argument_list "("../../gold/incremental.cc",299,"setup_readers",iVar6)" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") , identifier ))) ;) })) (expression_statement "FUN_00088310(&local_ac,iVar7,uVar5);" (call_expression "FUN_00088310(&local_ac,iVar7,uVar5)" identifier (argument_list "(&local_ac,iVar7,uVar5)" ( (pointer_expression "&local_ac" & identifier) , identifier , identifier ))) ;) (expression_statement "*(undefined4 *)(param_1 + 0x84) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x84) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x84)" * (cast_expression "(undefined4 *)(param_1 + 0x84)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x84)" ( (binary_expression "param_1 + 0x84" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x88) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x88) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x88)" * (cast_expression "(undefined4 *)(param_1 + 0x88)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x8c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x8c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x8c)" * (cast_expression "(undefined4 *)(param_1 + 0x8c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x8c)" ( (binary_expression "param_1 + 0x8c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_1 + 0x90) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x90) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x90)" * (cast_expression "(undefined4 *)(param_1 + 0x90)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x90)" ( (binary_expression "param_1 + 0x90" identifier + number_literal) )))) = identifier) ;) (expression_statement "iVar7 = param_1 + 0x98;" (assignment_expression "iVar7 = param_1 + 0x98" identifier = (binary_expression "param_1 + 0x98" identifier + number_literal)) ;) (expression_statement "uVar5 = *(uint *)(param_1 + 0xa4);" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xa4)" identifier = (pointer_expression "*(uint *)(param_1 + 0xa4)" * (cast_expression "(uint *)(param_1 + 0xa4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) ))))) ;) (expression_statement "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44)" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x44)" * (cast_expression "(int *)(param_1 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00088960(param_1 + 0x44,uVar5 - uVar8);" (call_expression "FUN_00088960(param_1 + 0x44,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x44,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x44) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x44)" * (cast_expression "(int *)(param_1 + 0x44)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x44)" ( (binary_expression "param_1 + 0x44" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x48) != iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x48) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x48) = iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" * (cast_expression "(int *)(param_1 + 0x48)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) )))) = identifier) ;) })))) (expression_statement "FUN_0007f140(param_1 + 0xd0,uVar5);" (call_expression "FUN_0007f140(param_1 + 0xd0,uVar5)" identifier (argument_list "(param_1 + 0xd0,uVar5)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) , identifier ))) ;) (expression_statement "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10)" (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) )))) - (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00083150(param_1 + 0x10,uVar5 - uVar8);" (call_expression "FUN_00083150(param_1 + 0x10,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x10,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x10) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x10)" * (cast_expression "(int *)(param_1 + 0x10)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x10)" ( (binary_expression "param_1 + 0x10" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x14) != iVar6" (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) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x14) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x14) = iVar6" (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) )))) = identifier) ;) })))) (expression_statement "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" if (parenthesized_expression "(uVar8 < uVar5)" ( (binary_expression "uVar8 < uVar5" identifier < identifier) )) (compound_statement "{\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }" { (expression_statement "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);" (call_expression "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8)" identifier (argument_list "(param_1 + 0x1c,uVar5 - uVar8)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) , (binary_expression "uVar5 - uVar8" identifier - identifier) ))) ;) }) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" else (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" if (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6))" ( (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" ( (binary_expression "uVar5 < uVar8" identifier < identifier) )) && (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" ( (comma_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x1c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x1c)" * (cast_expression "(int *)(param_1 + 0x1c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x1c)" ( (binary_expression "param_1 + 0x1c" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x20) != iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" { (expression_statement "*(int *)(param_1 + 0x20) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x20) = iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" * (cast_expression "(int *)(param_1 + 0x20)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x20)" ( (binary_expression "param_1 + 0x20" identifier + number_literal) )))) = identifier) ;) })))) (if_statement "if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" if (parenthesized_expression "(uVar5 != 0)" ( (binary_expression "uVar5 != 0" identifier != number_literal) )) (compound_statement "{\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" { (if_statement "if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" if (parenthesized_expression "(*(int *)(param_1 + 0xa4) == 0)" ( (binary_expression "*(int *)(param_1 + 0xa4) == 0" (pointer_expression "*(int *)(param_1 + 0xa4)" * (cast_expression "(int *)(param_1 + 0xa4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xa4)" ( (binary_expression "param_1 + 0xa4" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" { (expression_statement "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");" (call_expression "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset")" identifier (argument_list "("../../gold/incremental.h",0x45c,"input_file_offset")" ( (string_literal ""../../gold/incremental.h"" " string_content ") , number_literal , (string_literal ""input_file_offset"" " string_content ") ))) ;) })) (expression_statement "local_34 = &PTR_FUN_00383370;" (assignment_expression "local_34 = &PTR_FUN_00383370" identifier = (pointer_expression "&PTR_FUN_00383370" & identifier)) ;) (expression_statement "local_28 = 0x10;" (assignment_expression "local_28 = 0x10" identifier = number_literal) ;) (expression_statement "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);" (assignment_expression "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14)" identifier = (pointer_expression "*(uint *)(*(int *)(param_1 + 0x98) + 0x14)" * (cast_expression "(uint *)(*(int *)(param_1 + 0x98) + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x14)" ( (binary_expression "*(int *)(param_1 + 0x98) + 0x14" (pointer_expression "*(int *)(param_1 + 0x98)" * (cast_expression "(int *)(param_1 + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);" (assignment_expression "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" identifier = (pointer_expression "*(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" * (cast_expression "(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" ( (type_descriptor "ushort *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x24)" ( (binary_expression "*(int *)(param_1 + 0x98) + 0x24" (pointer_expression "*(int *)(param_1 + 0x98)" * (cast_expression "(int *)(param_1 + 0x98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x98)" ( (binary_expression "param_1 + 0x98" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;" (assignment_expression "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" identifier = (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" identifier >> number_literal) | (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" ( (binary_expression "uVar5 & 0xff0000" identifier & number_literal) )) >> number_literal)) | (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" ( (binary_expression "uVar5 & 0xff00" identifier & number_literal) )) << number_literal)) | (binary_expression "uVar5 << 0x18" identifier << number_literal))) ;) (expression_statement "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);" (assignment_expression "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" identifier = (call_expression "(uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(ushort)" ( identifier ))) (argument_list "(uVar1 << 8 | uVar1 >> 8)" ( (binary_expression "uVar1 << 8 | uVar1 >> 8" (binary_expression "uVar1 << 8" identifier << number_literal) | (binary_expression "uVar1 >> 8" identifier >> number_literal)) )))) ;) (expression_statement "puVar2 = *(undefined4 **)(param_1 + 0xd4);" (assignment_expression "puVar2 = *(undefined4 **)(param_1 + 0xd4)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" * (cast_expression "(undefined4 **)(param_1 + 0xd4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd4)" ( (binary_expression "param_1 + 0xd4" identifier + number_literal) ))))) ;) (expression_statement "local_30 = iVar7;" (assignment_expression "local_30 = iVar7" identifier = identifier) ;) (if_statement "if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" if (parenthesized_expression "(puVar2 == *(undefined4 **)(param_1 + 0xd8))" ( (binary_expression "puVar2 == *(undefined4 **)(param_1 + 0xd8)" identifier == (pointer_expression "*(undefined4 **)(param_1 + 0xd8)" * (cast_expression "(undefined4 **)(param_1 + 0xd8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd8)" ( (binary_expression "param_1 + 0xd8" identifier + number_literal) ))))) )) (compound_statement "{\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }" { (expression_statement "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);" (call_expression "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34)" identifier (argument_list "(param_1 + 0xd0,puVar2,&local_34)" ( (binary_expression "param_1 + 0xd0" identifier + number_literal) , identifier , (pointer_expression "&local_34" & identifier) ))) ;) }) (else_clause "else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" else (compound_statement "{\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" { (expression_statement "*puVar2 = &PTR_FUN_00383370;" (assignment_expression "*puVar2 = &PTR_FUN_00383370" (pointer_expression "*puVar2" * identifier) = (pointer_expression "&PTR_FUN_00383370" & identifier)) ;) (expression_statement "puVar2[1] = iVar7;" (assignment_expression "puVar2[1] = iVar7" (subscript_expression "puVar2[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar2[2] = local_2c;" (assignment_expression "puVar2[2] = local_2c" (subscript_expression "puVar2[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar2[3] = 0x10;" (assignment_expression "puVar2[3] = 0x10" (subscript_expression "puVar2[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar2[4] = local_24;" (assignment_expression "puVar2[4] = local_24" (subscript_expression "puVar2[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;" (assignment_expression "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5" (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" * (cast_expression "(undefined4 **)(param_1 + 0xd4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0xd4)" ( (binary_expression "param_1 + 0xd4" identifier + number_literal) )))) = (binary_expression "puVar2 + 5" identifier + number_literal)) ;) }))) (if_statement "if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" if (parenthesized_expression "(uVar1 >> 8 < 6)" ( (binary_expression "uVar1 >> 8 < 6" (binary_expression "uVar1 >> 8" identifier >> number_literal) < number_literal) )) (compound_statement "{\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" { (expression_statement "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();" (call_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ()" (parenthesized_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))" ( (pointer_expression "*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" * (cast_expression "(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" ( (binary_expression "(int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (cast_expression "(int)&__DT_PLTGOT" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&__DT_PLTGOT" & identifier)) + (pointer_expression "*(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" * (cast_expression "(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" ( (binary_expression "&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4" (pointer_expression "&DAT_00288410" & identifier) + (binary_expression "(uint)(byte)(uVar1 >> 8) * 4" (call_expression "(uint)(byte)(uVar1 >> 8)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) (argument_list "(uVar1 >> 8)" ( (binary_expression "uVar1 >> 8" identifier >> number_literal) ))) * number_literal)) ))))) )))) )) (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })) (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers")" identifier (argument_list "("../../gold/incremental.cc",0x163,"setup_readers")" ( (string_literal ""../../gold/incremental.cc"" " string_content ") , number_literal , (string_literal ""setup_readers"" " string_content ") ))) ;) })) (expression_statement "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;" (assignment_expression "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3" identifier = (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f & 3" (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f" (pointer_expression "*(int *)(param_1 + 0xb0)" * (cast_expression "(int *)(param_1 + 0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) >> number_literal) & number_literal)) ;) (expression_statement "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2" identifier = (binary_expression "*(uint *)(param_1 + 0xac) + uVar8 >> 2" (binary_expression "*(uint *)(param_1 + 0xac) + uVar8" (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) + identifier) >> number_literal)) ;) (expression_statement "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;" (assignment_expression "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" identifier = (binary_expression "uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" identifier | (binary_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" (parenthesized_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8))" ( (binary_expression "*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" (pointer_expression "*(int *)(param_1 + 0xb0)" * (cast_expression "(int *)(param_1 + 0xb0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xb0)" ( (binary_expression "param_1 + 0xb0" identifier + number_literal) )))) + (cast_expression "(uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(*(uint *)(param_1 + 0xac),uVar8)" identifier (argument_list "(*(uint *)(param_1 + 0xac),uVar8)" ( (pointer_expression "*(uint *)(param_1 + 0xac)" * (cast_expression "(uint *)(param_1 + 0xac)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xac)" ( (binary_expression "param_1 + 0xac" identifier + number_literal) )))) , identifier ))))) )) * number_literal))) ;) (expression_statement "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;" (assignment_expression "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" identifier = (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c)" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) - (pointer_expression "*(int *)(param_1 + 0x5c)" * (cast_expression "(int *)(param_1 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) ))))) >> number_literal)) ;) (if_statement "if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" if (parenthesized_expression "(uVar10 < uVar8)" ( (binary_expression "uVar10 < uVar8" identifier < identifier) )) (compound_statement "{\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" { (expression_statement "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);" (call_expression "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10)" identifier (argument_list "(param_1 + 0x5c,uVar8 - uVar10)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) , (binary_expression "uVar8 - uVar10" identifier - identifier) ))) ;) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" * (cast_expression "(undefined1 *)(param_1 + 0x94)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x94)" ( (binary_expression "param_1 + 0x94" identifier + number_literal) )))) = number_literal) ;) }) (else_clause "else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" else (compound_statement "{\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" { (if_statement "if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" if (parenthesized_expression "((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7))" ( (binary_expression "(uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" (parenthesized_expression "(uVar8 < uVar10)" ( (binary_expression "uVar8 < uVar10" identifier < identifier) )) && (parenthesized_expression "(iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" ( (comma_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7" (assignment_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4" identifier = (binary_expression "*(int *)(param_1 + 0x5c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x5c)" * (cast_expression "(int *)(param_1 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x5c)" ( (binary_expression "param_1 + 0x5c" identifier + number_literal) )))) + (binary_expression "uVar5 * 4" identifier * number_literal))) , (binary_expression "*(int *)(param_1 + 0x60) != iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) != identifier)) ))) )) (compound_statement "{\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" { (expression_statement "*(int *)(param_1 + 0x60) = iVar7;" (assignment_expression "*(int *)(param_1 + 0x60) = iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" * (cast_expression "(int *)(param_1 + 0x60)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) )))) = identifier) ;) })) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" * (cast_expression "(undefined1 *)(param_1 + 0x94)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x94)" ( (binary_expression "param_1 + 0x94" identifier + number_literal) )))) = number_literal) ;) }))) (return_statement "return;" return ;) })) })) })) (expression_statement "FUN_00071170();" (call_expression "FUN_00071170()" identifier (argument_list "()" ( ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression 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) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (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 IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - 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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression LIT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) , (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) , (comma_expression (assignment_expression IDENT = (binary_expression IDENT - IDENT)) , (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) < LIT))))) ))) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) , (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) , (comma_expression (assignment_expression IDENT = (binary_expression IDENT - IDENT)) , (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) < LIT)) && (parenthesized_expression ( (binary_expression LIT < IDENT) )))))) )) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) , (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) , (comma_expression (assignment_expression IDENT = (binary_expression IDENT - IDENT)) , (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) < LIT)) && (parenthesized_expression ( (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) , (binary_expression (binary_expression LIT < IDENT) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT )))))) , (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < (binary_expression IDENT + IDENT)) )))) , (comma_expression (assignment_expression IDENT = (binary_expression IDENT - IDENT)) , (binary_expression (parenthesized_expression ( (binary_expression (call_expression IDENT (argument_list ( IDENT , IDENT ))) != (call_expression IDENT (argument_list ( IDENT , IDENT )))) )) == (binary_expression (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT - IDENT) ))) < LIT))))) )))) )) )))))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) + IDENT) ))))) ;) (while_statement while (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != (char_literal ' escape_sequence ')) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT - LIT)) , (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 (binary_expression IDENT + LIT) + IDENT) ))))) ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression IDENT + 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 + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) & LIT) ))) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , LIT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (comma_expression (call_expression IDENT (argument_list ( IDENT ))) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) <= IDENT))) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT - IDENT) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })))) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT - IDENT) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })))) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) >> LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT - IDENT) ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression (binary_expression IDENT >> LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) >> LIT)) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) | (binary_expression IDENT << LIT))) ;) (expression_statement (assignment_expression IDENT = (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression (binary_expression IDENT << LIT) | (binary_expression IDENT >> LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , IDENT , (pointer_expression & IDENT) ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT >> LIT) < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (pointer_expression & IDENT)) + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression & IDENT) + (binary_expression (call_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( IDENT ))) (argument_list ( (binary_expression IDENT >> LIT) ))) * LIT)) ))))) )))) )) (argument_list ( ))) ;) (return_statement return ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (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 = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT) >> LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT | (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))))) )) * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - (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 < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT - IDENT) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT < IDENT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (binary_expression IDENT * LIT))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != IDENT)) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) }))) (return_statement return ;) })) })) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })))
(function_definition "void FUN_0008f830(int param_1)\n\n{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    \n  FUN_00071170();\n}" (primitive_type "void") (function_declarator "FUN_0008f830(int param_1)" (identifier "FUN_0008f830") (parameter_list "(int param_1)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) () ")"))) (compound_statement "{\n  ushort uVar1;\n  undefined4 *puVar2;\n  int iVar3;\n  char cVar4;\n  uint uVar5;\n  int iVar6;\n  int iVar7;\n  uint uVar8;\n  int iVar9;\n  uint uVar10;\n  uint *puVar11;\n  undefined4 local_ac;\n  undefined4 local_a8;\n  undefined4 local_a4;\n  undefined4 local_a0;\n  undefined4 local_9c;\n  undefined4 local_98;\n  undefined4 local_94;\n  undefined4 local_90;\n  undefined4 local_8c [2];\n  uint local_84;\n  int local_80;\n  uint local_7c;\n  uint local_74;\n  int local_70;\n  uint local_6c;\n  undefined4 local_68;\n  uint local_64;\n  int local_60;\n  uint local_5c;\n  undefined4 local_58;\n  uint local_54;\n  int local_50;\n  uint local_4c;\n  uint local_44;\n  int local_40;\n  uint local_3c;\n  undefined **local_34;\n  int local_30;\n  uint local_2c;\n  undefined4 local_28;\n  uint local_24;\n  \n  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);\n  if (cVar4 == '\0') {\n    return;\n  }\n  iVar7 = param_1 + 0x2c;\n  FUN_00088310(&local_84,iVar7,local_9c);\n  FUN_00088310(&local_74,iVar7,local_98);\n  FUN_00088310(&local_64,iVar7,local_94);\n  FUN_00088310(&local_54,iVar7,local_90);\n  FUN_00088310(&local_44,iVar7,local_8c[0]);\n  iVar6 = *(int *)(param_1 + 0x28);\n  if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }\n                    \n  FUN_00071170();\n}" ({ "{") (declaration "ushort uVar1;" (type_identifier "ushort") (identifier "uVar1") (; ";")) (declaration "undefined4 *puVar2;" (type_identifier "undefined4") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "char cVar4;" (primitive_type "char") (identifier "cVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "uint *puVar11;" (type_identifier "uint") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined4 local_ac;" (type_identifier "undefined4") (identifier "local_ac") (; ";")) (declaration "undefined4 local_a8;" (type_identifier "undefined4") (identifier "local_a8") (; ";")) (declaration "undefined4 local_a4;" (type_identifier "undefined4") (identifier "local_a4") (; ";")) (declaration "undefined4 local_a0;" (type_identifier "undefined4") (identifier "local_a0") (; ";")) (declaration "undefined4 local_9c;" (type_identifier "undefined4") (identifier "local_9c") (; ";")) (declaration "undefined4 local_98;" (type_identifier "undefined4") (identifier "local_98") (; ";")) (declaration "undefined4 local_94;" (type_identifier "undefined4") (identifier "local_94") (; ";")) (declaration "undefined4 local_90;" (type_identifier "undefined4") (identifier "local_90") (; ";")) (declaration "undefined4 local_8c [2];" (type_identifier "undefined4") (array_declarator "local_8c [2]" (identifier "local_8c") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "uint local_84;" (type_identifier "uint") (identifier "local_84") (; ";")) (declaration "int local_80;" (primitive_type "int") (identifier "local_80") (; ";")) (declaration "uint local_7c;" (type_identifier "uint") (identifier "local_7c") (; ";")) (declaration "uint local_74;" (type_identifier "uint") (identifier "local_74") (; ";")) (declaration "int local_70;" (primitive_type "int") (identifier "local_70") (; ";")) (declaration "uint local_6c;" (type_identifier "uint") (identifier "local_6c") (; ";")) (declaration "undefined4 local_68;" (type_identifier "undefined4") (identifier "local_68") (; ";")) (declaration "uint local_64;" (type_identifier "uint") (identifier "local_64") (; ";")) (declaration "int local_60;" (primitive_type "int") (identifier "local_60") (; ";")) (declaration "uint local_5c;" (type_identifier "uint") (identifier "local_5c") (; ";")) (declaration "undefined4 local_58;" (type_identifier "undefined4") (identifier "local_58") (; ";")) (declaration "uint local_54;" (type_identifier "uint") (identifier "local_54") (; ";")) (declaration "int local_50;" (primitive_type "int") (identifier "local_50") (; ";")) (declaration "uint local_4c;" (type_identifier "uint") (identifier "local_4c") (; ";")) (declaration "uint local_44;" (type_identifier "uint") (identifier "local_44") (; ";")) (declaration "int local_40;" (primitive_type "int") (identifier "local_40") (; ";")) (declaration "uint local_3c;" (type_identifier "uint") (identifier "local_3c") (; ";")) (declaration "undefined **local_34;" (type_identifier "undefined") (pointer_declarator "**local_34" (* "*") (pointer_declarator "*local_34" (* "*") (identifier "local_34"))) (; ";")) (declaration "int local_30;" (primitive_type "int") (identifier "local_30") (; ";")) (declaration "uint local_2c;" (type_identifier "uint") (identifier "local_2c") (; ";")) (declaration "undefined4 local_28;" (type_identifier "undefined4") (identifier "local_28") (; ";")) (declaration "uint local_24;" (type_identifier "uint") (identifier "local_24") (; ";")) (expression_statement "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);" (assignment_expression "cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" (identifier "cVar4") (= "=") (call_expression "FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" (identifier "FUN_00088720") (argument_list "(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c)" (( "(") (identifier "param_1") (, ",") (pointer_expression "&local_9c" (& "&") (identifier "local_9c")) (, ",") (pointer_expression "&local_98" (& "&") (identifier "local_98")) (, ",") (pointer_expression "&local_94" (& "&") (identifier "local_94")) (, ",") (pointer_expression "&local_90" (& "&") (identifier "local_90")) (, ",") (identifier "local_8c") () ")")))) (; ";")) (if_statement "if (cVar4 == '\0') {\n    return;\n  }" (if "if") (parenthesized_expression "(cVar4 == '\0')" (( "(") (binary_expression "cVar4 == '\0'" (identifier "cVar4") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "iVar7 = param_1 + 0x2c;" (assignment_expression "iVar7 = param_1 + 0x2c" (identifier "iVar7") (= "=") (binary_expression "param_1 + 0x2c" (identifier "param_1") (+ "+") (number_literal "0x2c"))) (; ";")) (expression_statement "FUN_00088310(&local_84,iVar7,local_9c);" (call_expression "FUN_00088310(&local_84,iVar7,local_9c)" (identifier "FUN_00088310") (argument_list "(&local_84,iVar7,local_9c)" (( "(") (pointer_expression "&local_84" (& "&") (identifier "local_84")) (, ",") (identifier "iVar7") (, ",") (identifier "local_9c") () ")"))) (; ";")) (expression_statement "FUN_00088310(&local_74,iVar7,local_98);" (call_expression "FUN_00088310(&local_74,iVar7,local_98)" (identifier "FUN_00088310") (argument_list "(&local_74,iVar7,local_98)" (( "(") (pointer_expression "&local_74" (& "&") (identifier "local_74")) (, ",") (identifier "iVar7") (, ",") (identifier "local_98") () ")"))) (; ";")) (expression_statement "FUN_00088310(&local_64,iVar7,local_94);" (call_expression "FUN_00088310(&local_64,iVar7,local_94)" (identifier "FUN_00088310") (argument_list "(&local_64,iVar7,local_94)" (( "(") (pointer_expression "&local_64" (& "&") (identifier "local_64")) (, ",") (identifier "iVar7") (, ",") (identifier "local_94") () ")"))) (; ";")) (expression_statement "FUN_00088310(&local_54,iVar7,local_90);" (call_expression "FUN_00088310(&local_54,iVar7,local_90)" (identifier "FUN_00088310") (argument_list "(&local_54,iVar7,local_90)" (( "(") (pointer_expression "&local_54" (& "&") (identifier "local_54")) (, ",") (identifier "iVar7") (, ",") (identifier "local_90") () ")"))) (; ";")) (expression_statement "FUN_00088310(&local_44,iVar7,local_8c[0]);" (call_expression "FUN_00088310(&local_44,iVar7,local_8c[0])" (identifier "FUN_00088310") (argument_list "(&local_44,iVar7,local_8c[0])" (( "(") (pointer_expression "&local_44" (& "&") (identifier "local_44")) (, ",") (identifier "iVar7") (, ",") (subscript_expression "local_8c[0]" (identifier "local_8c") ([ "[") (number_literal "0") (] "]")) () ")"))) (; ";")) (expression_statement "iVar6 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar6 = *(int *)(param_1 + 0x28)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(param_1 + 0x28)" (* "*") (cast_expression "(int *)(param_1 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (-1 < local_80) {\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(-1 < local_80)" (( "(") (binary_expression "-1 < local_80" (number_literal "-1") (< "<") (identifier "local_80")) () ")")) (compound_statement "{\n    uVar5 = *(uint *)(iVar6 + 8);\n    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);\n    iVar9 = *(int *)(iVar6 + 0xc);\n    uVar8 = (uint)(uVar5 < local_7c + local_84);\n    iVar3 = iVar9 - local_80;\n    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }\n  }" ({ "{") (expression_statement "uVar5 = *(uint *)(iVar6 + 8);" (assignment_expression "uVar5 = *(uint *)(iVar6 + 8)" (identifier "uVar5") (= "=") (pointer_expression "*(uint *)(iVar6 + 8)" (* "*") (cast_expression "(uint *)(iVar6 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 8)" (( "(") (binary_expression "iVar6 + 8" (identifier "iVar6") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "local_80 = local_80 + (uint)CARRY4(local_7c,local_84);" (assignment_expression "local_80 = local_80 + (uint)CARRY4(local_7c,local_84)" (identifier "local_80") (= "=") (binary_expression "local_80 + (uint)CARRY4(local_7c,local_84)" (identifier "local_80") (+ "+") (cast_expression "(uint)CARRY4(local_7c,local_84)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_7c,local_84)" (identifier "CARRY4") (argument_list "(local_7c,local_84)" (( "(") (identifier "local_7c") (, ",") (identifier "local_84") () ")")))))) (; ";")) (expression_statement "iVar9 = *(int *)(iVar6 + 0xc);" (assignment_expression "iVar9 = *(int *)(iVar6 + 0xc)" (identifier "iVar9") (= "=") (pointer_expression "*(int *)(iVar6 + 0xc)" (* "*") (cast_expression "(int *)(iVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0xc)" (( "(") (binary_expression "iVar6 + 0xc" (identifier "iVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "uVar8 = (uint)(uVar5 < local_7c + local_84);" (assignment_expression "uVar8 = (uint)(uVar5 < local_7c + local_84)" (identifier "uVar8") (= "=") (call_expression "(uint)(uVar5 < local_7c + local_84)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < local_7c + local_84)" (( "(") (binary_expression "uVar5 < local_7c + local_84" (identifier "uVar5") (< "<") (binary_expression "local_7c + local_84" (identifier "local_7c") (+ "+") (identifier "local_84"))) () ")")))) (; ";")) (expression_statement "iVar3 = iVar9 - local_80;" (assignment_expression "iVar3 = iVar9 - local_80" (identifier "iVar3") (= "=") (binary_expression "iVar9 - local_80" (identifier "iVar9") (- "-") (identifier "local_80"))) (; ";")) (if_statement "if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" (if "if") (parenthesized_expression "((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" (( "(") (binary_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8))" (( "(") (binary_expression "SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_80)" (identifier "SBORROW4") (argument_list "(iVar9,local_80)" (( "(") (identifier "iVar9") (, ",") (identifier "local_80") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar3,uVar8)" (identifier "SBORROW4") (argument_list "(iVar3,uVar8)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar8") () ")")))) () ")")) (== "==") (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar3 - uVar8)" (( "(") (binary_expression "iVar3 - uVar8" (identifier "iVar3") (- "-") (identifier "uVar8")) () ")"))) (< "<") (number_literal "0"))) () ")")) (compound_statement "{\n      iVar6 = *(int *)(iVar6 + 0x10);\n      if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }\n    }" ({ "{") (expression_statement "iVar6 = *(int *)(iVar6 + 0x10);" (assignment_expression "iVar6 = *(int *)(iVar6 + 0x10)" (identifier "iVar6") (= "=") (pointer_expression "*(int *)(iVar6 + 0x10)" (* "*") (cast_expression "(int *)(iVar6 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x10)" (( "(") (binary_expression "iVar6 + 0x10" (identifier "iVar6") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if (((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" (if "if") (parenthesized_expression "(((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))))" (( "(") (binary_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))) &&\n         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" (parenthesized_expression "((((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))))" (( "(") (binary_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)) &&\n          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" (parenthesized_expression "(((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60))" (( "(") (binary_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&\n           (-1 < local_60)" (parenthesized_expression "((-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0))" (( "(") (binary_expression "(-1 < local_70) &&\n            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" (parenthesized_expression "(-1 < local_70)" (( "(") (binary_expression "-1 < local_70" (number_literal "-1") (< "<") (identifier "local_70")) () ")")) (&& "&&") (parenthesized_expression "(local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)" (( "(") (comma_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74),\n            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "local_70 = local_70 + (uint)CARRY4(local_6c,local_74)" (identifier "local_70") (= "=") (binary_expression "local_70 + (uint)CARRY4(local_6c,local_74)" (identifier "local_70") (+ "+") (cast_expression "(uint)CARRY4(local_6c,local_74)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_6c,local_74)" (identifier "CARRY4") (argument_list "(local_6c,local_74)" (( "(") (identifier "local_6c") (, ",") (identifier "local_74") () ")")))))) (, ",") (comma_expression "uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "uVar8 = (uint)(uVar5 < local_6c + local_74)" (identifier "uVar8") (= "=") (call_expression "(uint)(uVar5 < local_6c + local_74)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < local_6c + local_74)" (( "(") (binary_expression "uVar5 < local_6c + local_74" (identifier "uVar5") (< "<") (binary_expression "local_6c + local_74" (identifier "local_6c") (+ "+") (identifier "local_74"))) () ")")))) (, ",") (comma_expression "iVar3 = iVar9 - local_70,\n            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (assignment_expression "iVar3 = iVar9 - local_70" (identifier "iVar3") (= "=") (binary_expression "iVar9 - local_70" (identifier "iVar9") (- "-") (identifier "local_70"))) (, ",") (binary_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8))" (( "(") (binary_expression "SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_70)" (identifier "SBORROW4") (argument_list "(iVar9,local_70)" (( "(") (identifier "iVar9") (, ",") (identifier "local_70") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar3,uVar8)" (identifier "SBORROW4") (argument_list "(iVar3,uVar8)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar8") () ")")))) () ")")) (== "==") (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar3 - uVar8)" (( "(") (binary_expression "iVar3 - uVar8" (identifier "iVar3") (- "-") (identifier "uVar8")) () ")"))) (< "<") (number_literal "0")))))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(-1 < local_60)" (( "(") (binary_expression "-1 < local_60" (number_literal "-1") (< "<") (identifier "local_60")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)))" (( "(") (parenthesized_expression "(local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50))" (( "(") (comma_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64),\n           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "local_60 = local_60 + (uint)CARRY4(local_5c,local_64)" (identifier "local_60") (= "=") (binary_expression "local_60 + (uint)CARRY4(local_5c,local_64)" (identifier "local_60") (+ "+") (cast_expression "(uint)CARRY4(local_5c,local_64)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_5c,local_64)" (identifier "CARRY4") (argument_list "(local_5c,local_64)" (( "(") (identifier "local_5c") (, ",") (identifier "local_64") () ")")))))) (, ",") (comma_expression "uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "uVar8 = (uint)(uVar5 < local_5c + local_64)" (identifier "uVar8") (= "=") (call_expression "(uint)(uVar5 < local_5c + local_64)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < local_5c + local_64)" (( "(") (binary_expression "uVar5 < local_5c + local_64" (identifier "uVar5") (< "<") (binary_expression "local_5c + local_64" (identifier "local_5c") (+ "+") (identifier "local_64"))) () ")")))) (, ",") (comma_expression "iVar3 = iVar9 - local_60,\n           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (assignment_expression "iVar3 = iVar9 - local_60" (identifier "iVar3") (= "=") (binary_expression "iVar9 - local_60" (identifier "iVar9") (- "-") (identifier "local_60"))) (, ",") (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n           (-1 < local_50)" (binary_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8))" (( "(") (binary_expression "SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_60)" (identifier "SBORROW4") (argument_list "(iVar9,local_60)" (( "(") (identifier "iVar9") (, ",") (identifier "local_60") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar3,uVar8)" (identifier "SBORROW4") (argument_list "(iVar3,uVar8)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar8") () ")")))) () ")")) (== "==") (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar3 - uVar8)" (( "(") (binary_expression "iVar3 - uVar8" (identifier "iVar3") (- "-") (identifier "uVar8")) () ")"))) (< "<") (number_literal "0"))) (&& "&&") (parenthesized_expression "(-1 < local_50)" (( "(") (binary_expression "-1 < local_50" (number_literal "-1") (< "<") (identifier "local_50")) () ")")))))) () ")")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))" (( "(") (parenthesized_expression "(local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))))" (( "(") (comma_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54),\n          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "local_50 = local_50 + (uint)CARRY4(local_4c,local_54)" (identifier "local_50") (= "=") (binary_expression "local_50 + (uint)CARRY4(local_4c,local_54)" (identifier "local_50") (+ "+") (cast_expression "(uint)CARRY4(local_4c,local_54)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_4c,local_54)" (identifier "CARRY4") (argument_list "(local_4c,local_54)" (( "(") (identifier "local_4c") (, ",") (identifier "local_54") () ")")))))) (, ",") (comma_expression "uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "uVar8 = (uint)(uVar5 < local_4c + local_54)" (identifier "uVar8") (= "=") (call_expression "(uint)(uVar5 < local_4c + local_54)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < local_4c + local_54)" (( "(") (binary_expression "uVar5 < local_4c + local_54" (identifier "uVar5") (< "<") (binary_expression "local_4c + local_54" (identifier "local_4c") (+ "+") (identifier "local_54"))) () ")")))) (, ",") (comma_expression "iVar3 = iVar9 - local_50,\n          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (assignment_expression "iVar3 = iVar9 - local_50" (identifier "iVar3") (= "=") (binary_expression "iVar9 - local_50" (identifier "iVar9") (- "-") (identifier "local_50"))) (, ",") (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&\n          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (binary_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8))" (( "(") (binary_expression "SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)" (call_expression "SBORROW4(iVar9,local_50)" (identifier "SBORROW4") (argument_list "(iVar9,local_50)" (( "(") (identifier "iVar9") (, ",") (identifier "local_50") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar3,uVar8)" (identifier "SBORROW4") (argument_list "(iVar3,uVar8)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar8") () ")")))) () ")")) (== "==") (binary_expression "(int)(iVar3 - uVar8) < 0" (cast_expression "(int)(iVar3 - uVar8)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar3 - uVar8)" (( "(") (binary_expression "iVar3 - uVar8" (identifier "iVar3") (- "-") (identifier "uVar8")) () ")"))) (< "<") (number_literal "0"))) (&& "&&") (parenthesized_expression "((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))" (( "(") (parenthesized_expression "(puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0))" (( "(") (comma_expression "puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (assignment_expression "puVar11 = (uint *)(iVar6 + local_54)" (identifier "puVar11") (= "=") (cast_expression "(uint *)(iVar6 + local_54)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + local_54)" (( "(") (binary_expression "iVar6 + local_54" (identifier "iVar6") (+ "+") (identifier "local_54")) () ")")))) (, ",") (binary_expression "-1 < local_40 &&\n           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (binary_expression "-1 < local_40" (number_literal "-1") (< "<") (identifier "local_40")) (&& "&&") (parenthesized_expression "(local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)" (( "(") (comma_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44),\n           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "local_40 = local_40 + (uint)CARRY4(local_3c,local_44)" (identifier "local_40") (= "=") (binary_expression "local_40 + (uint)CARRY4(local_3c,local_44)" (identifier "local_40") (+ "+") (cast_expression "(uint)CARRY4(local_3c,local_44)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(local_3c,local_44)" (identifier "CARRY4") (argument_list "(local_3c,local_44)" (( "(") (identifier "local_3c") (, ",") (identifier "local_44") () ")")))))) (, ",") (comma_expression "uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "uVar5 = (uint)(uVar5 < local_3c + local_44)" (identifier "uVar5") (= "=") (call_expression "(uint)(uVar5 < local_3c + local_44)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar5 < local_3c + local_44)" (( "(") (binary_expression "uVar5 < local_3c + local_44" (identifier "uVar5") (< "<") (binary_expression "local_3c + local_44" (identifier "local_3c") (+ "+") (identifier "local_44"))) () ")")))) (, ",") (comma_expression "iVar3 = iVar9 - local_40,\n           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (assignment_expression "iVar3 = iVar9 - local_40" (identifier "iVar3") (= "=") (binary_expression "iVar9 - local_40" (identifier "iVar9") (- "-") (identifier "local_40"))) (, ",") (binary_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0" (parenthesized_expression "(SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5))" (( "(") (binary_expression "SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)" (call_expression "SBORROW4(iVar9,local_40)" (identifier "SBORROW4") (argument_list "(iVar9,local_40)" (( "(") (identifier "iVar9") (, ",") (identifier "local_40") () ")"))) (!= "!=") (call_expression "SBORROW4(iVar3,uVar5)" (identifier "SBORROW4") (argument_list "(iVar3,uVar5)" (( "(") (identifier "iVar3") (, ",") (identifier "uVar5") () ")")))) () ")")) (== "==") (binary_expression "(int)(iVar3 - uVar5) < 0" (cast_expression "(int)(iVar3 - uVar5)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(iVar3 - uVar5)" (( "(") (binary_expression "iVar3 - uVar5" (identifier "iVar3") (- "-") (identifier "uVar5")) () ")"))) (< "<") (number_literal "0")))))) () ")")))) () ")")) () ")")))))) () ")")) () ")"))) () ")")) (compound_statement "{\n        iVar9 = local_44 + iVar6;\n        if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }\n        uVar5 = *(uint *)(local_84 + iVar6 + 4);\n        *(uint *)(param_1 + 0x98) = local_84 + iVar6;\n        *(int *)(param_1 + 0x9c) = iVar9;\n        *(uint *)(param_1 + 0xa0) = local_3c;\n        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;\n        *(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xac) = local_6c;\n        *(undefined4 *)(param_1 + 0xb0) = local_68;\n        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;\n        *(uint *)(param_1 + 0xb8) = local_5c;\n        *(undefined4 *)(param_1 + 0xbc) = local_58;\n        uVar5 = *puVar11;\n        *(uint **)(param_1 + 0xc0) = puVar11;\n        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;\n        *(uint *)(param_1 + 0xc4) = uVar5;\n        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;\n        *(int *)(param_1 + 200) = iVar6;\n        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;\n        iVar6 = FUN_00088190(iVar7,2);\n        if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }\n        FUN_00088310(&local_ac,iVar7,iVar6);\n        *(undefined4 *)(param_1 + 0x74) = local_ac;\n        *(undefined4 *)(param_1 + 0x78) = local_a8;\n        *(undefined4 *)(param_1 + 0x7c) = local_a4;\n        *(undefined4 *)(param_1 + 0x80) = local_a0;\n        uVar5 = FUN_00088680(iVar7,iVar6);\n        iVar6 = param_1;\n        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }\n        FUN_00088310(&local_ac,iVar7,uVar5);\n        *(undefined4 *)(param_1 + 0x84) = local_ac;\n        *(undefined4 *)(param_1 + 0x88) = local_a8;\n        *(undefined4 *)(param_1 + 0x8c) = local_a4;\n        *(undefined4 *)(param_1 + 0x90) = local_a0;\n        iVar7 = param_1 + 0x98;\n        uVar5 = *(uint *)(param_1 + 0xa4);\n        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }\n        FUN_0007f140(param_1 + 0xd0,uVar5);\n        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }\n        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;\n        if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }\n        if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }\n        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;\n        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;\n        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;\n        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;\n        if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        return;\n      }" ({ "{") (expression_statement "iVar9 = local_44 + iVar6;" (assignment_expression "iVar9 = local_44 + iVar6" (identifier "iVar9") (= "=") (binary_expression "local_44 + iVar6" (identifier "local_44") (+ "+") (identifier "iVar6"))) (; ";")) (if_statement "if (local_3c == 0) {\n          local_3c = 0;\n        }\n        else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" (if "if") (parenthesized_expression "(local_3c == 0)" (( "(") (binary_expression "local_3c == 0" (identifier "local_3c") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          local_3c = 0;\n        }" ({ "{") (expression_statement "local_3c = 0;" (assignment_expression "local_3c = 0" (identifier "local_3c") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" (else "else") (compound_statement "{\n          cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }\n        }" ({ "{") (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" (identifier "cVar4") (= "=") (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" (* "*") (cast_expression "(char *)(iVar9 + -1 + local_3c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -1 + local_3c)" (( "(") (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" (identifier "iVar9") (+ "+") (number_literal "-1")) (+ "+") (identifier "local_3c")) () ")"))))) (; ";")) (while_statement "while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" (while "while") (parenthesized_expression "((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)))" (( "(") (parenthesized_expression "(cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))" (( "(") (binary_expression "cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0)" (binary_expression "cVar4 != '\0'" (identifier "cVar4") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (&& "&&") (parenthesized_expression "(local_3c = local_3c - 1, local_3c != 0)" (( "(") (comma_expression "local_3c = local_3c - 1, local_3c != 0" (assignment_expression "local_3c = local_3c - 1" (identifier "local_3c") (= "=") (binary_expression "local_3c - 1" (identifier "local_3c") (- "-") (number_literal "1"))) (, ",") (binary_expression "local_3c != 0" (identifier "local_3c") (!= "!=") (number_literal "0"))) () ")"))) () ")")) () ")")) (compound_statement "{\n            cVar4 = *(char *)(iVar9 + -1 + local_3c);\n          }" ({ "{") (expression_statement "cVar4 = *(char *)(iVar9 + -1 + local_3c);" (assignment_expression "cVar4 = *(char *)(iVar9 + -1 + local_3c)" (identifier "cVar4") (= "=") (pointer_expression "*(char *)(iVar9 + -1 + local_3c)" (* "*") (cast_expression "(char *)(iVar9 + -1 + local_3c)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + -1 + local_3c)" (( "(") (binary_expression "iVar9 + -1 + local_3c" (binary_expression "iVar9 + -1" (identifier "iVar9") (+ "+") (number_literal "-1")) (+ "+") (identifier "local_3c")) () ")"))))) (; ";")) (} "}"))) (} "}")))) (expression_statement "uVar5 = *(uint *)(local_84 + iVar6 + 4);" (assignment_expression "uVar5 = *(uint *)(local_84 + iVar6 + 4)" (identifier "uVar5") (= "=") (pointer_expression "*(uint *)(local_84 + iVar6 + 4)" (* "*") (cast_expression "(uint *)(local_84 + iVar6 + 4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_84 + iVar6 + 4)" (( "(") (binary_expression "local_84 + iVar6 + 4" (binary_expression "local_84 + iVar6" (identifier "local_84") (+ "+") (identifier "iVar6")) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "*(uint *)(param_1 + 0x98) = local_84 + iVar6;" (assignment_expression "*(uint *)(param_1 + 0x98) = local_84 + iVar6" (pointer_expression "*(uint *)(param_1 + 0x98)" (* "*") (cast_expression "(uint *)(param_1 + 0x98)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x98)" (( "(") (binary_expression "param_1 + 0x98" (identifier "param_1") (+ "+") (number_literal "0x98")) () ")")))) (= "=") (binary_expression "local_84 + iVar6" (identifier "local_84") (+ "+") (identifier "iVar6"))) (; ";")) (expression_statement "*(int *)(param_1 + 0x9c) = iVar9;" (assignment_expression "*(int *)(param_1 + 0x9c) = iVar9" (pointer_expression "*(int *)(param_1 + 0x9c)" (* "*") (cast_expression "(int *)(param_1 + 0x9c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x9c)" (( "(") (binary_expression "param_1 + 0x9c" (identifier "param_1") (+ "+") (number_literal "0x9c")) () ")")))) (= "=") (identifier "iVar9")) (; ";")) (expression_statement "*(uint *)(param_1 + 0xa0) = local_3c;" (assignment_expression "*(uint *)(param_1 + 0xa0) = local_3c" (pointer_expression "*(uint *)(param_1 + 0xa0)" (* "*") (cast_expression "(uint *)(param_1 + 0xa0)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa0)" (( "(") (binary_expression "param_1 + 0xa0" (identifier "param_1") (+ "+") (number_literal "0xa0")) () ")")))) (= "=") (identifier "local_3c")) (; ";")) (expression_statement "*(uint *)(param_1 + 0xa8) = iVar6 + local_74;" (assignment_expression "*(uint *)(param_1 + 0xa8) = iVar6 + local_74" (pointer_expression "*(uint *)(param_1 + 0xa8)" (* "*") (cast_expression "(uint *)(param_1 + 0xa8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa8)" (( "(") (binary_expression "param_1 + 0xa8" (identifier "param_1") (+ "+") (number_literal "0xa8")) () ")")))) (= "=") (binary_expression "iVar6 + local_74" (identifier "iVar6") (+ "+") (identifier "local_74"))) (; ";")) (expression_statement "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "*(uint *)(param_1 + 0xa4) =\n             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (pointer_expression "*(uint *)(param_1 + 0xa4)" (* "*") (cast_expression "(uint *)(param_1 + 0xa4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa4)" (( "(") (binary_expression "param_1 + 0xa4" (identifier "param_1") (+ "+") (number_literal "0xa4")) () ")")))) (= "=") (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" (( "(") (binary_expression "uVar5 & 0xff0000" (identifier "uVar5") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" (( "(") (binary_expression "uVar5 & 0xff00" (identifier "uVar5") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar5 << 0x18" (identifier "uVar5") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "*(uint *)(param_1 + 0xac) = local_6c;" (assignment_expression "*(uint *)(param_1 + 0xac) = local_6c" (pointer_expression "*(uint *)(param_1 + 0xac)" (* "*") (cast_expression "(uint *)(param_1 + 0xac)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xac)" (( "(") (binary_expression "param_1 + 0xac" (identifier "param_1") (+ "+") (number_literal "0xac")) () ")")))) (= "=") (identifier "local_6c")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0xb0) = local_68;" (assignment_expression "*(undefined4 *)(param_1 + 0xb0) = local_68" (pointer_expression "*(undefined4 *)(param_1 + 0xb0)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0xb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb0)" (( "(") (binary_expression "param_1 + 0xb0" (identifier "param_1") (+ "+") (number_literal "0xb0")) () ")")))) (= "=") (identifier "local_68")) (; ";")) (expression_statement "*(uint *)(param_1 + 0xb4) = iVar6 + local_64;" (assignment_expression "*(uint *)(param_1 + 0xb4) = iVar6 + local_64" (pointer_expression "*(uint *)(param_1 + 0xb4)" (* "*") (cast_expression "(uint *)(param_1 + 0xb4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb4)" (( "(") (binary_expression "param_1 + 0xb4" (identifier "param_1") (+ "+") (number_literal "0xb4")) () ")")))) (= "=") (binary_expression "iVar6 + local_64" (identifier "iVar6") (+ "+") (identifier "local_64"))) (; ";")) (expression_statement "*(uint *)(param_1 + 0xb8) = local_5c;" (assignment_expression "*(uint *)(param_1 + 0xb8) = local_5c" (pointer_expression "*(uint *)(param_1 + 0xb8)" (* "*") (cast_expression "(uint *)(param_1 + 0xb8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb8)" (( "(") (binary_expression "param_1 + 0xb8" (identifier "param_1") (+ "+") (number_literal "0xb8")) () ")")))) (= "=") (identifier "local_5c")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0xbc) = local_58;" (assignment_expression "*(undefined4 *)(param_1 + 0xbc) = local_58" (pointer_expression "*(undefined4 *)(param_1 + 0xbc)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0xbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xbc)" (( "(") (binary_expression "param_1 + 0xbc" (identifier "param_1") (+ "+") (number_literal "0xbc")) () ")")))) (= "=") (identifier "local_58")) (; ";")) (expression_statement "uVar5 = *puVar11;" (assignment_expression "uVar5 = *puVar11" (identifier "uVar5") (= "=") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))) (; ";")) (expression_statement "*(uint **)(param_1 + 0xc0) = puVar11;" (assignment_expression "*(uint **)(param_1 + 0xc0) = puVar11" (pointer_expression "*(uint **)(param_1 + 0xc0)" (* "*") (cast_expression "(uint **)(param_1 + 0xc0)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xc0)" (( "(") (binary_expression "param_1 + 0xc0" (identifier "param_1") (+ "+") (number_literal "0xc0")) () ")")))) (= "=") (identifier "puVar11")) (; ";")) (expression_statement "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;" (assignment_expression "uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (identifier "uVar5") (= "=") (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" (( "(") (binary_expression "uVar5 & 0xff0000" (identifier "uVar5") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" (( "(") (binary_expression "uVar5 & 0xff00" (identifier "uVar5") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar5 << 0x18" (identifier "uVar5") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "*(uint *)(param_1 + 0xc4) = uVar5;" (assignment_expression "*(uint *)(param_1 + 0xc4) = uVar5" (pointer_expression "*(uint *)(param_1 + 0xc4)" (* "*") (cast_expression "(uint *)(param_1 + 0xc4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc4)" (( "(") (binary_expression "param_1 + 0xc4" (identifier "param_1") (+ "+") (number_literal "0xc4")) () ")")))) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;" (assignment_expression "iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" (identifier "iVar6") (= "=") (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8" (binary_expression "(int)puVar11 + (uVar5 + 3 & 0xfffffffc)" (cast_expression "(int)puVar11" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar11")) (+ "+") (parenthesized_expression "(uVar5 + 3 & 0xfffffffc)" (( "(") (binary_expression "uVar5 + 3 & 0xfffffffc" (binary_expression "uVar5 + 3" (identifier "uVar5") (+ "+") (number_literal "3")) (& "&") (number_literal "0xfffffffc")) () ")"))) (+ "+") (number_literal "8"))) (; ";")) (expression_statement "*(int *)(param_1 + 200) = iVar6;" (assignment_expression "*(int *)(param_1 + 200) = iVar6" (pointer_expression "*(int *)(param_1 + 200)" (* "*") (cast_expression "(int *)(param_1 + 200)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 200)" (( "(") (binary_expression "param_1 + 200" (identifier "param_1") (+ "+") (number_literal "200")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (expression_statement "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;" (assignment_expression "*(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8" (pointer_expression "*(uint *)(param_1 + 0xcc)" (* "*") (cast_expression "(uint *)(param_1 + 0xcc)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xcc)" (( "(") (binary_expression "param_1 + 0xcc" (identifier "param_1") (+ "+") (number_literal "0xcc")) () ")")))) (= "=") (binary_expression "iVar6 + uVar5 * 8" (identifier "iVar6") (+ "+") (binary_expression "uVar5 * 8" (identifier "uVar5") (* "*") (number_literal "8")))) (; ";")) (expression_statement "iVar6 = FUN_00088190(iVar7,2);" (assignment_expression "iVar6 = FUN_00088190(iVar7,2)" (identifier "iVar6") (= "=") (call_expression "FUN_00088190(iVar7,2)" (identifier "FUN_00088190") (argument_list "(iVar7,2)" (( "(") (identifier "iVar7") (, ",") (number_literal "2") () ")")))) (; ";")) (if_statement "if (iVar6 == 0) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" (if "if") (parenthesized_expression "(iVar6 == 0)" (( "(") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);\n        }" ({ "{") (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0)" (identifier "FUN_00069d00") (argument_list "("../../gold/incremental.cc",0x124,"setup_readers",0)" (( "(") (string_literal ""../../gold/incremental.cc"" (" """) (string_content "../../gold/incremental.cc") (" """)) (, ",") (number_literal "0x124") (, ",") (string_literal ""setup_readers"" (" """) (string_content "setup_readers") (" """)) (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_00088310(&local_ac,iVar7,iVar6);" (call_expression "FUN_00088310(&local_ac,iVar7,iVar6)" (identifier "FUN_00088310") (argument_list "(&local_ac,iVar7,iVar6)" (( "(") (pointer_expression "&local_ac" (& "&") (identifier "local_ac")) (, ",") (identifier "iVar7") (, ",") (identifier "iVar6") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x74) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x74) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x74)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x74)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x74)" (( "(") (binary_expression "param_1 + 0x74" (identifier "param_1") (+ "+") (number_literal "0x74")) () ")")))) (= "=") (identifier "local_ac")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x78) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x78) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x78)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x78)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x78)" (( "(") (binary_expression "param_1 + 0x78" (identifier "param_1") (+ "+") (number_literal "0x78")) () ")")))) (= "=") (identifier "local_a8")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x7c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x7c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x7c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x7c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x7c)" (( "(") (binary_expression "param_1 + 0x7c" (identifier "param_1") (+ "+") (number_literal "0x7c")) () ")")))) (= "=") (identifier "local_a4")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x80) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x80) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x80)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x80)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")")))) (= "=") (identifier "local_a0")) (; ";")) (expression_statement "uVar5 = FUN_00088680(iVar7,iVar6);" (assignment_expression "uVar5 = FUN_00088680(iVar7,iVar6)" (identifier "uVar5") (= "=") (call_expression "FUN_00088680(iVar7,iVar6)" (identifier "FUN_00088680") (argument_list "(iVar7,iVar6)" (( "(") (identifier "iVar7") (, ",") (identifier "iVar6") () ")")))) (; ";")) (expression_statement "iVar6 = param_1;" (assignment_expression "iVar6 = param_1" (identifier "iVar6") (= "=") (identifier "param_1")) (; ";")) (if_statement "if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           ) {\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" (if "if") (parenthesized_expression "((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)\n           )" (( "(") (binary_expression "(uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" (parenthesized_expression "(uVar5 == 0)" (( "(") (binary_expression "uVar5 == 0" (identifier "uVar5") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)" (( "(") (comma_expression "FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (call_expression "FUN_00088090(iVar7)" (identifier "FUN_00088090") (argument_list "(iVar7)" (( "(") (identifier "iVar7") () ")"))) (, ",") (comma_expression "iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5" (assignment_expression "iVar6 = iVar7" (identifier "iVar6") (= "=") (identifier "iVar7")) (, ",") (binary_expression "*(uint *)(param_1 + 0x38) <= uVar5" (pointer_expression "*(uint *)(param_1 + 0x38)" (* "*") (cast_expression "(uint *)(param_1 + 0x38)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")")))) (<= "<=") (identifier "uVar5")))) () ")"))) () ")")) (compound_statement "{\n                    \n          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);\n        }" ({ "{") (expression_statement "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);" (call_expression "FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6)" (identifier "FUN_00069d00") (argument_list "("../../gold/incremental.cc",299,"setup_readers",iVar6)" (( "(") (string_literal ""../../gold/incremental.cc"" (" """) (string_content "../../gold/incremental.cc") (" """)) (, ",") (number_literal "299") (, ",") (string_literal ""setup_readers"" (" """) (string_content "setup_readers") (" """)) (, ",") (identifier "iVar6") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_00088310(&local_ac,iVar7,uVar5);" (call_expression "FUN_00088310(&local_ac,iVar7,uVar5)" (identifier "FUN_00088310") (argument_list "(&local_ac,iVar7,uVar5)" (( "(") (pointer_expression "&local_ac" (& "&") (identifier "local_ac")) (, ",") (identifier "iVar7") (, ",") (identifier "uVar5") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x84) = local_ac;" (assignment_expression "*(undefined4 *)(param_1 + 0x84) = local_ac" (pointer_expression "*(undefined4 *)(param_1 + 0x84)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x84)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x84)" (( "(") (binary_expression "param_1 + 0x84" (identifier "param_1") (+ "+") (number_literal "0x84")) () ")")))) (= "=") (identifier "local_ac")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x88) = local_a8;" (assignment_expression "*(undefined4 *)(param_1 + 0x88) = local_a8" (pointer_expression "*(undefined4 *)(param_1 + 0x88)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x88)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")")))) (= "=") (identifier "local_a8")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x8c) = local_a4;" (assignment_expression "*(undefined4 *)(param_1 + 0x8c) = local_a4" (pointer_expression "*(undefined4 *)(param_1 + 0x8c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x8c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x8c)" (( "(") (binary_expression "param_1 + 0x8c" (identifier "param_1") (+ "+") (number_literal "0x8c")) () ")")))) (= "=") (identifier "local_a4")) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0x90) = local_a0;" (assignment_expression "*(undefined4 *)(param_1 + 0x90) = local_a0" (pointer_expression "*(undefined4 *)(param_1 + 0x90)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x90)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x90)" (( "(") (binary_expression "param_1 + 0x90" (identifier "param_1") (+ "+") (number_literal "0x90")) () ")")))) (= "=") (identifier "local_a0")) (; ";")) (expression_statement "iVar7 = param_1 + 0x98;" (assignment_expression "iVar7 = param_1 + 0x98" (identifier "iVar7") (= "=") (binary_expression "param_1 + 0x98" (identifier "param_1") (+ "+") (number_literal "0x98"))) (; ";")) (expression_statement "uVar5 = *(uint *)(param_1 + 0xa4);" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xa4)" (identifier "uVar5") (= "=") (pointer_expression "*(uint *)(param_1 + 0xa4)" (* "*") (cast_expression "(uint *)(param_1 + 0xa4)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa4)" (( "(") (binary_expression "param_1 + 0xa4" (identifier "param_1") (+ "+") (number_literal "0xa4")) () ")"))))) (; ";")) (expression_statement "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" (identifier "uVar8") (= "=") (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2" (binary_expression "*(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44)" (pointer_expression "*(int *)(param_1 + 0x48)" (* "*") (cast_expression "(int *)(param_1 + 0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (- "-") (pointer_expression "*(int *)(param_1 + 0x44)" (* "*") (cast_expression "(int *)(param_1 + 0x44)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")"))))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (uVar8 < uVar5) {\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" (if "if") (parenthesized_expression "(uVar8 < uVar5)" (( "(") (binary_expression "uVar8 < uVar5" (identifier "uVar8") (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);\n        }" ({ "{") (expression_statement "FUN_00088960(param_1 + 0x44,uVar5 - uVar8);" (call_expression "FUN_00088960(param_1 + 0x44,uVar5 - uVar8)" (identifier "FUN_00088960") (argument_list "(param_1 + 0x44,uVar5 - uVar8)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) (, ",") (binary_expression "uVar5 - uVar8" (identifier "uVar5") (- "-") (identifier "uVar8")) () ")"))) (; ";")) (} "}")) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" (else "else") (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" (if "if") (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6))" (( "(") (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" (( "(") (binary_expression "uVar5 < uVar8" (identifier "uVar5") (< "<") (identifier "uVar8")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)" (( "(") (comma_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4" (identifier "iVar6") (= "=") (binary_expression "*(int *)(param_1 + 0x44) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x44)" (* "*") (cast_expression "(int *)(param_1 + 0x44)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x44)" (( "(") (binary_expression "param_1 + 0x44" (identifier "param_1") (+ "+") (number_literal "0x44")) () ")")))) (+ "+") (binary_expression "uVar5 * 4" (identifier "uVar5") (* "*") (number_literal "4")))) (, ",") (binary_expression "*(int *)(param_1 + 0x48) != iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" (* "*") (cast_expression "(int *)(param_1 + 0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (!= "!=") (identifier "iVar6"))) () ")"))) () ")")) (compound_statement "{\n          *(int *)(param_1 + 0x48) = iVar6;\n        }" ({ "{") (expression_statement "*(int *)(param_1 + 0x48) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x48) = iVar6" (pointer_expression "*(int *)(param_1 + 0x48)" (* "*") (cast_expression "(int *)(param_1 + 0x48)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (} "}"))))) (expression_statement "FUN_0007f140(param_1 + 0xd0,uVar5);" (call_expression "FUN_0007f140(param_1 + 0xd0,uVar5)" (identifier "FUN_0007f140") (argument_list "(param_1 + 0xd0,uVar5)" (( "(") (binary_expression "param_1 + 0xd0" (identifier "param_1") (+ "+") (number_literal "0xd0")) (, ",") (identifier "uVar5") () ")"))) (; ";")) (expression_statement "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" (identifier "uVar8") (= "=") (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2" (binary_expression "*(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10)" (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")) () ")")))) (- "-") (pointer_expression "*(int *)(param_1 + 0x10)" (* "*") (cast_expression "(int *)(param_1 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")"))))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" (if "if") (parenthesized_expression "(uVar8 < uVar5)" (( "(") (binary_expression "uVar8 < uVar5" (identifier "uVar8") (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);\n        }" ({ "{") (expression_statement "FUN_00083150(param_1 + 0x10,uVar5 - uVar8);" (call_expression "FUN_00083150(param_1 + 0x10,uVar5 - uVar8)" (identifier "FUN_00083150") (argument_list "(param_1 + 0x10,uVar5 - uVar8)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) (, ",") (binary_expression "uVar5 - uVar8" (identifier "uVar5") (- "-") (identifier "uVar8")) () ")"))) (; ";")) (} "}")) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" (else "else") (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" (if "if") (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6))" (( "(") (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" (( "(") (binary_expression "uVar5 < uVar8" (identifier "uVar5") (< "<") (identifier "uVar8")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)" (( "(") (comma_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4" (identifier "iVar6") (= "=") (binary_expression "*(int *)(param_1 + 0x10) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x10)" (* "*") (cast_expression "(int *)(param_1 + 0x10)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x10)" (( "(") (binary_expression "param_1 + 0x10" (identifier "param_1") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (binary_expression "uVar5 * 4" (identifier "uVar5") (* "*") (number_literal "4")))) (, ",") (binary_expression "*(int *)(param_1 + 0x14) != iVar6" (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")) () ")")))) (!= "!=") (identifier "iVar6"))) () ")"))) () ")")) (compound_statement "{\n          *(int *)(param_1 + 0x14) = iVar6;\n        }" ({ "{") (expression_statement "*(int *)(param_1 + 0x14) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x14) = iVar6" (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")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (} "}"))))) (expression_statement "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;" (assignment_expression "uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" (identifier "uVar8") (= "=") (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2" (binary_expression "*(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c)" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (- "-") (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")"))))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (uVar8 < uVar5) {\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }\n        else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" (if "if") (parenthesized_expression "(uVar8 < uVar5)" (( "(") (binary_expression "uVar8 < uVar5" (identifier "uVar8") (< "<") (identifier "uVar5")) () ")")) (compound_statement "{\n          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);\n        }" ({ "{") (expression_statement "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);" (call_expression "FUN_00083280(param_1 + 0x1c,uVar5 - uVar8)" (identifier "FUN_00083280") (argument_list "(param_1 + 0x1c,uVar5 - uVar8)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) (, ",") (binary_expression "uVar5 - uVar8" (identifier "uVar5") (- "-") (identifier "uVar8")) () ")"))) (; ";")) (} "}")) (else_clause "else if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" (else "else") (if_statement "if ((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" (if "if") (parenthesized_expression "((uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6))" (( "(") (binary_expression "(uVar5 < uVar8) &&\n                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" (parenthesized_expression "(uVar5 < uVar8)" (( "(") (binary_expression "uVar5 < uVar8" (identifier "uVar5") (< "<") (identifier "uVar8")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)" (( "(") (comma_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6" (assignment_expression "iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4" (identifier "iVar6") (= "=") (binary_expression "*(int *)(param_1 + 0x1c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x1c)" (* "*") (cast_expression "(int *)(param_1 + 0x1c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x1c)" (( "(") (binary_expression "param_1 + 0x1c" (identifier "param_1") (+ "+") (number_literal "0x1c")) () ")")))) (+ "+") (binary_expression "uVar5 * 4" (identifier "uVar5") (* "*") (number_literal "4")))) (, ",") (binary_expression "*(int *)(param_1 + 0x20) != iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (!= "!=") (identifier "iVar6"))) () ")"))) () ")")) (compound_statement "{\n          *(int *)(param_1 + 0x20) = iVar6;\n        }" ({ "{") (expression_statement "*(int *)(param_1 + 0x20) = iVar6;" (assignment_expression "*(int *)(param_1 + 0x20) = iVar6" (pointer_expression "*(int *)(param_1 + 0x20)" (* "*") (cast_expression "(int *)(param_1 + 0x20)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x20)" (( "(") (binary_expression "param_1 + 0x20" (identifier "param_1") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "iVar6")) (; ";")) (} "}"))))) (if_statement "if (uVar5 != 0) {\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" (if "if") (parenthesized_expression "(uVar5 != 0)" (( "(") (binary_expression "uVar5 != 0" (identifier "uVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }\n          local_34 = &PTR_FUN_00383370;\n          local_28 = 0x10;\n          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);\n          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);\n          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;\n          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);\n          puVar2 = *(undefined4 **)(param_1 + 0xd4);\n          local_30 = iVar7;\n          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }\n          if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }\n                    \n          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");\n        }" ({ "{") (if_statement "if (*(int *)(param_1 + 0xa4) == 0) {\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xa4) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xa4) == 0" (pointer_expression "*(int *)(param_1 + 0xa4)" (* "*") (cast_expression "(int *)(param_1 + 0xa4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xa4)" (( "(") (binary_expression "param_1 + 0xa4" (identifier "param_1") (+ "+") (number_literal "0xa4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");\n          }" ({ "{") (expression_statement "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");" (call_expression "FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset")" (identifier "FUN_00069d00") (argument_list "("../../gold/incremental.h",0x45c,"input_file_offset")" (( "(") (string_literal ""../../gold/incremental.h"" (" """) (string_content "../../gold/incremental.h") (" """)) (, ",") (number_literal "0x45c") (, ",") (string_literal ""input_file_offset"" (" """) (string_content "input_file_offset") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "local_34 = &PTR_FUN_00383370;" (assignment_expression "local_34 = &PTR_FUN_00383370" (identifier "local_34") (= "=") (pointer_expression "&PTR_FUN_00383370" (& "&") (identifier "PTR_FUN_00383370"))) (; ";")) (expression_statement "local_28 = 0x10;" (assignment_expression "local_28 = 0x10" (identifier "local_28") (= "=") (number_literal "0x10")) (; ";")) (expression_statement "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);" (assignment_expression "uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14)" (identifier "uVar5") (= "=") (pointer_expression "*(uint *)(*(int *)(param_1 + 0x98) + 0x14)" (* "*") (cast_expression "(uint *)(*(int *)(param_1 + 0x98) + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x14)" (( "(") (binary_expression "*(int *)(param_1 + 0x98) + 0x14" (pointer_expression "*(int *)(param_1 + 0x98)" (* "*") (cast_expression "(int *)(param_1 + 0x98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x98)" (( "(") (binary_expression "param_1 + 0x98" (identifier "param_1") (+ "+") (number_literal "0x98")) () ")")))) (+ "+") (number_literal "0x14")) () ")"))))) (; ";")) (expression_statement "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);" (assignment_expression "uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" (identifier "uVar1") (= "=") (pointer_expression "*(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" (* "*") (cast_expression "(ushort *)(*(int *)(param_1 + 0x98) + 0x24)" (( "(") (type_descriptor "ushort *" (type_identifier "ushort") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0x98) + 0x24)" (( "(") (binary_expression "*(int *)(param_1 + 0x98) + 0x24" (pointer_expression "*(int *)(param_1 + 0x98)" (* "*") (cast_expression "(int *)(param_1 + 0x98)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x98)" (( "(") (binary_expression "param_1 + 0x98" (identifier "param_1") (+ "+") (number_literal "0x98")) () ")")))) (+ "+") (number_literal "0x24")) () ")"))))) (; ";")) (expression_statement "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18\n          ;" (assignment_expression "local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (identifier "local_24") (= "=") (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8" (binary_expression "uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8" (binary_expression "uVar5 >> 0x18" (identifier "uVar5") (>> ">>") (number_literal "0x18")) (| "|") (binary_expression "(uVar5 & 0xff0000) >> 8" (parenthesized_expression "(uVar5 & 0xff0000)" (( "(") (binary_expression "uVar5 & 0xff0000" (identifier "uVar5") (& "&") (number_literal "0xff0000")) () ")")) (>> ">>") (number_literal "8"))) (| "|") (binary_expression "(uVar5 & 0xff00) << 8" (parenthesized_expression "(uVar5 & 0xff00)" (( "(") (binary_expression "uVar5 & 0xff00" (identifier "uVar5") (& "&") (number_literal "0xff00")) () ")")) (<< "<<") (number_literal "8"))) (| "|") (binary_expression "uVar5 << 0x18" (identifier "uVar5") (<< "<<") (number_literal "0x18")))) (; ";")) (expression_statement "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);" (assignment_expression "local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" (identifier "local_2c") (= "=") (call_expression "(uint)(ushort)(uVar1 << 8 | uVar1 >> 8)" (call_expression "(uint)(ushort)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(ushort)" (( "(") (identifier "ushort") () ")"))) (argument_list "(uVar1 << 8 | uVar1 >> 8)" (( "(") (binary_expression "uVar1 << 8 | uVar1 >> 8" (binary_expression "uVar1 << 8" (identifier "uVar1") (<< "<<") (number_literal "8")) (| "|") (binary_expression "uVar1 >> 8" (identifier "uVar1") (>> ">>") (number_literal "8"))) () ")")))) (; ";")) (expression_statement "puVar2 = *(undefined4 **)(param_1 + 0xd4);" (assignment_expression "puVar2 = *(undefined4 **)(param_1 + 0xd4)" (identifier "puVar2") (= "=") (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" (* "*") (cast_expression "(undefined4 **)(param_1 + 0xd4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xd4)" (( "(") (binary_expression "param_1 + 0xd4" (identifier "param_1") (+ "+") (number_literal "0xd4")) () ")"))))) (; ";")) (expression_statement "local_30 = iVar7;" (assignment_expression "local_30 = iVar7" (identifier "local_30") (= "=") (identifier "iVar7")) (; ";")) (if_statement "if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }\n          else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" (if "if") (parenthesized_expression "(puVar2 == *(undefined4 **)(param_1 + 0xd8))" (( "(") (binary_expression "puVar2 == *(undefined4 **)(param_1 + 0xd8)" (identifier "puVar2") (== "==") (pointer_expression "*(undefined4 **)(param_1 + 0xd8)" (* "*") (cast_expression "(undefined4 **)(param_1 + 0xd8)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xd8)" (( "(") (binary_expression "param_1 + 0xd8" (identifier "param_1") (+ "+") (number_literal "0xd8")) () ")"))))) () ")")) (compound_statement "{\n            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);\n          }" ({ "{") (expression_statement "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);" (call_expression "FUN_0008f610(param_1 + 0xd0,puVar2,&local_34)" (identifier "FUN_0008f610") (argument_list "(param_1 + 0xd0,puVar2,&local_34)" (( "(") (binary_expression "param_1 + 0xd0" (identifier "param_1") (+ "+") (number_literal "0xd0")) (, ",") (identifier "puVar2") (, ",") (pointer_expression "&local_34" (& "&") (identifier "local_34")) () ")"))) (; ";")) (} "}")) (else_clause "else {\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" (else "else") (compound_statement "{\n            *puVar2 = &PTR_FUN_00383370;\n            puVar2[1] = iVar7;\n            puVar2[2] = local_2c;\n            puVar2[3] = 0x10;\n            puVar2[4] = local_24;\n            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;\n          }" ({ "{") (expression_statement "*puVar2 = &PTR_FUN_00383370;" (assignment_expression "*puVar2 = &PTR_FUN_00383370" (pointer_expression "*puVar2" (* "*") (identifier "puVar2")) (= "=") (pointer_expression "&PTR_FUN_00383370" (& "&") (identifier "PTR_FUN_00383370"))) (; ";")) (expression_statement "puVar2[1] = iVar7;" (assignment_expression "puVar2[1] = iVar7" (subscript_expression "puVar2[1]" (identifier "puVar2") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "iVar7")) (; ";")) (expression_statement "puVar2[2] = local_2c;" (assignment_expression "puVar2[2] = local_2c" (subscript_expression "puVar2[2]" (identifier "puVar2") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar2[3] = 0x10;" (assignment_expression "puVar2[3] = 0x10" (subscript_expression "puVar2[3]" (identifier "puVar2") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0x10")) (; ";")) (expression_statement "puVar2[4] = local_24;" (assignment_expression "puVar2[4] = local_24" (subscript_expression "puVar2[4]" (identifier "puVar2") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "local_24")) (; ";")) (expression_statement "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;" (assignment_expression "*(undefined4 **)(param_1 + 0xd4) = puVar2 + 5" (pointer_expression "*(undefined4 **)(param_1 + 0xd4)" (* "*") (cast_expression "(undefined4 **)(param_1 + 0xd4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0xd4)" (( "(") (binary_expression "param_1 + 0xd4" (identifier "param_1") (+ "+") (number_literal "0xd4")) () ")")))) (= "=") (binary_expression "puVar2 + 5" (identifier "puVar2") (+ "+") (number_literal "5"))) (; ";")) (} "}")))) (if_statement "if (uVar1 >> 8 < 6) {\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" (if "if") (parenthesized_expression "(uVar1 >> 8 < 6)" (( "(") (binary_expression "uVar1 >> 8 < 6" (binary_expression "uVar1 >> 8" (identifier "uVar1") (>> ">>") (number_literal "8")) (< "<") (number_literal "6")) () ")")) (compound_statement "{\n                    \n                    \n            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();\n            return;\n          }" ({ "{") (expression_statement "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ();" (call_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))\n                      ()" (parenthesized_expression "(*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))" (( "(") (pointer_expression "*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" (* "*") (cast_expression "(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4))" (( "(") (binary_expression "(int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (cast_expression "(int)&__DT_PLTGOT" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (pointer_expression "&__DT_PLTGOT" (& "&") (identifier "__DT_PLTGOT"))) (+ "+") (pointer_expression "*(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (* "*") (cast_expression "(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)" (( "(") (binary_expression "&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4" (pointer_expression "&DAT_00288410" (& "&") (identifier "DAT_00288410")) (+ "+") (binary_expression "(uint)(byte)(uVar1 >> 8) * 4" (call_expression "(uint)(byte)(uVar1 >> 8)" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(byte)" (( "(") (identifier "byte") () ")"))) (argument_list "(uVar1 >> 8)" (( "(") (binary_expression "uVar1 >> 8" (identifier "uVar1") (>> ">>") (number_literal "8")) () ")"))) (* "*") (number_literal "4"))) () ")"))))) () ")")))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");" (call_expression "FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers")" (identifier "FUN_00069d00") (argument_list "("../../gold/incremental.cc",0x163,"setup_readers")" (( "(") (string_literal ""../../gold/incremental.cc"" (" """) (string_content "../../gold/incremental.cc") (" """)) (, ",") (number_literal "0x163") (, ",") (string_literal ""setup_readers"" (" """) (string_content "setup_readers") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;" (assignment_expression "uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3" (identifier "uVar8") (= "=") (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f & 3" (binary_expression "*(int *)(param_1 + 0xb0) >> 0x1f" (pointer_expression "*(int *)(param_1 + 0xb0)" (* "*") (cast_expression "(int *)(param_1 + 0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb0)" (( "(") (binary_expression "param_1 + 0xb0" (identifier "param_1") (+ "+") (number_literal "0xb0")) () ")")))) (>> ">>") (number_literal "0x1f")) (& "&") (number_literal "3"))) (; ";")) (expression_statement "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;" (assignment_expression "uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2" (identifier "uVar5") (= "=") (binary_expression "*(uint *)(param_1 + 0xac) + uVar8 >> 2" (binary_expression "*(uint *)(param_1 + 0xac) + uVar8" (pointer_expression "*(uint *)(param_1 + 0xac)" (* "*") (cast_expression "(uint *)(param_1 + 0xac)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xac)" (( "(") (binary_expression "param_1 + 0xac" (identifier "param_1") (+ "+") (number_literal "0xac")) () ")")))) (+ "+") (identifier "uVar8")) (>> ">>") (number_literal "2"))) (; ";")) (expression_statement "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000;" (assignment_expression "uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" (identifier "uVar8") (= "=") (binary_expression "uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" (identifier "uVar5") (| "|") (binary_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *\n                        0x40000000" (parenthesized_expression "(*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8))" (( "(") (binary_expression "*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" (pointer_expression "*(int *)(param_1 + 0xb0)" (* "*") (cast_expression "(int *)(param_1 + 0xb0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xb0)" (( "(") (binary_expression "param_1 + 0xb0" (identifier "param_1") (+ "+") (number_literal "0xb0")) () ")")))) (+ "+") (cast_expression "(uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(*(uint *)(param_1 + 0xac),uVar8)" (identifier "CARRY4") (argument_list "(*(uint *)(param_1 + 0xac),uVar8)" (( "(") (pointer_expression "*(uint *)(param_1 + 0xac)" (* "*") (cast_expression "(uint *)(param_1 + 0xac)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xac)" (( "(") (binary_expression "param_1 + 0xac" (identifier "param_1") (+ "+") (number_literal "0xac")) () ")")))) (, ",") (identifier "uVar8") () ")"))))) () ")")) (* "*") (number_literal "0x40000000")))) (; ";")) (expression_statement "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;" (assignment_expression "uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" (identifier "uVar10") (= "=") (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2" (binary_expression "*(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c)" (pointer_expression "*(int *)(param_1 + 0x60)" (* "*") (cast_expression "(int *)(param_1 + 0x60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x60)" (( "(") (binary_expression "param_1 + 0x60" (identifier "param_1") (+ "+") (number_literal "0x60")) () ")")))) (- "-") (pointer_expression "*(int *)(param_1 + 0x5c)" (* "*") (cast_expression "(int *)(param_1 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5c)" (( "(") (binary_expression "param_1 + 0x5c" (identifier "param_1") (+ "+") (number_literal "0x5c")) () ")"))))) (>> ">>") (number_literal "2"))) (; ";")) (if_statement "if (uVar10 < uVar8) {\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }\n        else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" (if "if") (parenthesized_expression "(uVar10 < uVar8)" (( "(") (binary_expression "uVar10 < uVar8" (identifier "uVar10") (< "<") (identifier "uVar8")) () ")")) (compound_statement "{\n          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" ({ "{") (expression_statement "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);" (call_expression "FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10)" (identifier "FUN_000833b0") (argument_list "(param_1 + 0x5c,uVar8 - uVar10)" (( "(") (binary_expression "param_1 + 0x5c" (identifier "param_1") (+ "+") (number_literal "0x5c")) (, ",") (binary_expression "uVar8 - uVar10" (identifier "uVar8") (- "-") (identifier "uVar10")) () ")"))) (; ";")) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x94)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x94)" (( "(") (binary_expression "param_1 + 0x94" (identifier "param_1") (+ "+") (number_literal "0x94")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" (else "else") (compound_statement "{\n          if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }\n          *(undefined1 *)(param_1 + 0x94) = 1;\n        }" ({ "{") (if_statement "if ((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" (if "if") (parenthesized_expression "((uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7))" (( "(") (binary_expression "(uVar8 < uVar10) &&\n             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" (parenthesized_expression "(uVar8 < uVar10)" (( "(") (binary_expression "uVar8 < uVar10" (identifier "uVar8") (< "<") (identifier "uVar10")) () ")")) (&& "&&") (parenthesized_expression "(iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)" (( "(") (comma_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7" (assignment_expression "iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4" (identifier "iVar7") (= "=") (binary_expression "*(int *)(param_1 + 0x5c) + uVar5 * 4" (pointer_expression "*(int *)(param_1 + 0x5c)" (* "*") (cast_expression "(int *)(param_1 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x5c)" (( "(") (binary_expression "param_1 + 0x5c" (identifier "param_1") (+ "+") (number_literal "0x5c")) () ")")))) (+ "+") (binary_expression "uVar5 * 4" (identifier "uVar5") (* "*") (number_literal "4")))) (, ",") (binary_expression "*(int *)(param_1 + 0x60) != iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" (* "*") (cast_expression "(int *)(param_1 + 0x60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x60)" (( "(") (binary_expression "param_1 + 0x60" (identifier "param_1") (+ "+") (number_literal "0x60")) () ")")))) (!= "!=") (identifier "iVar7"))) () ")"))) () ")")) (compound_statement "{\n            *(int *)(param_1 + 0x60) = iVar7;\n          }" ({ "{") (expression_statement "*(int *)(param_1 + 0x60) = iVar7;" (assignment_expression "*(int *)(param_1 + 0x60) = iVar7" (pointer_expression "*(int *)(param_1 + 0x60)" (* "*") (cast_expression "(int *)(param_1 + 0x60)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x60)" (( "(") (binary_expression "param_1 + 0x60" (identifier "param_1") (+ "+") (number_literal "0x60")) () ")")))) (= "=") (identifier "iVar7")) (; ";")) (} "}"))) (expression_statement "*(undefined1 *)(param_1 + 0x94) = 1;" (assignment_expression "*(undefined1 *)(param_1 + 0x94) = 1" (pointer_expression "*(undefined1 *)(param_1 + 0x94)" (* "*") (cast_expression "(undefined1 *)(param_1 + 0x94)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x94)" (( "(") (binary_expression "param_1 + 0x94" (identifier "param_1") (+ "+") (number_literal "0x94")) () ")")))) (= "=") (number_literal "1")) (; ";")) (} "}")))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}"))) (} "}"))) (expression_statement "FUN_00071170();" (call_expression "FUN_00071170()" (identifier "FUN_00071170") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */
/* DWARF original prototype: void setup_readers(Sized_incremental_binary<64,_true> * this) */

void __thiscall
var_37::var_2<64,var_3>::setup_readers(var_2<64,var_3> *this)

{
  Elf_file<64,var_3,_gold::type_8> *this_00;
  type_1 var_25;
  type_2 var_45;
  type_3 *pOVar3;
  int var_10;
  type_1 *var_21;
  type_4 var_35;
  type_4 var_34;
  type_4 var_41;
  type_4 var_40;
  type_4 var_44;
  type_4 var_43;
  type_5 __position;
  type_4 var_50;
  type_4 var_49;
  int var_13;
  bool bVar15;
  size_t var_26;
  type_6 var_9;
  type_7 var_30;
  var_1<64,var_3> *pIVar18;
  type_6 var_14;
  type_1 *puVar20;
  type_6 var_47;
  int var_11;
  type_8 *in_stack_ffffff14;
  vector<var_37::var_2<64,var_3>::var_4,_std::allocator<var_37::var_2<64,var_3>::var_4>var_5>
  *this_01;
  type_6 *in_stack_ffffff20;
  type_9 local_ac;
  type_9 local_a8;
  type_9 local_a4;
  type_9 local_a0;
  type_6 inputs_shndx;
  type_6 symtab_shndx;
  type_6 relocs_shndx;
  type_6 got_plt_shndx;
  type_6 strtab_shndx;
  type_10 __dnew_1;
  type_11 inputs_location;
  type_6 var_17;
  int var_15;
  type_6 var_16;
  type_9 local_68;
  type_6 var_20;
  int var_18;
  type_6 var_19;
  type_9 local_58;
  type_11 got_plt_location;
  type_6 var_24;
  int var_22;
  type_6 var_23;
  type_10 __dnew;
  var_1<64,var_3> *local_30;
  type_6 local_2c;
  type_6 local_28;
  type_6 local_24;
  
  bVar15 = var_6
                     (this,&inputs_shndx,&symtab_shndx,&relocs_shndx,&got_plt_shndx,&strtab_shndx);
  if (!bVar15) {
    return;
  }
  this_00 = &this->elf_file_;
  elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,inputs_shndx);
  elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,symtab_shndx);
  elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,relocs_shndx);
  elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,got_plt_shndx);
  elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,strtab_shndx);
  pOVar3 = (this->super_Incremental_binary).output_;
  if (-1 < inputs_location.file_offset._4_4_) {
    var_9 = (type_6)pOVar3->file_size_;
    var_11 = inputs_location.file_offset._4_4_ +
             (type_6)var_8((type_6)inputs_location.data_size,(type_6)inputs_location.file_offset);
    var_10 = *(int *)((int)&pOVar3->file_size_ + 4);
    var_14 = (type_6)(var_9 < (type_6)inputs_location.data_size + (type_6)inputs_location.file_offset);
    var_13 = var_10 - var_11;
    if ((var_12(var_10,var_11) != var_12(var_13,var_14)) == (int)(var_13 - var_14) < 0) {
      var_21 = pOVar3->base_;
      if (((((-1 < var_15) &&
            (var_11 = var_15 + (type_6)var_8(var_16,var_17),
            var_14 = (type_6)(var_9 < var_16 + var_17), var_13 = var_10 - var_11,
            (var_12(var_10,var_11) != var_12(var_13,var_14)) == (int)(var_13 - var_14) < 0)) &&
           (-1 < var_18)) &&
          ((var_11 = var_18 + (type_6)var_8(var_19,var_20),
           var_14 = (type_6)(var_9 < var_19 + var_20), var_13 = var_10 - var_11,
           (var_12(var_10,var_11) != var_12(var_13,var_14)) == (int)(var_13 - var_14) < 0 &&
           (-1 < got_plt_location.file_offset._4_4_)))) &&
         ((var_11 = got_plt_location.file_offset._4_4_ +
                    (type_6)var_8((type_6)got_plt_location.data_size,(type_6)got_plt_location.file_offset
                                ),
          var_14 = (type_6)(var_9 < (type_6)got_plt_location.data_size +
                                   (type_6)got_plt_location.file_offset), var_13 = var_10 - var_11,
          (var_12(var_10,var_11) != var_12(var_13,var_14)) == (int)(var_13 - var_14) < 0 &&
          ((in_stack_ffffff20 = (type_6 *)(var_21 + (type_6)got_plt_location.file_offset), -1 < var_22
           && (var_11 = var_22 + (type_6)var_8(var_23,var_24),
              var_9 = (type_6)(var_9 < var_23 + var_24), var_13 = var_10 - var_11,
              (var_12(var_10,var_11) != var_12(var_13,var_9)) == (int)(var_13 - var_9) < 0)))))
         ) {
        puVar20 = var_21 + var_24;
        if (var_23 == 0) {
          var_26 = 0;
        }
        else {
          var_25 = puVar20[var_23 - 1];
          while ((var_26 = var_23, var_25 != '\0' && (var_26 = var_23 - 1, var_26 != 0))) {
            var_25 = puVar20[var_23 - 2];
            var_23 = var_26;
          }
        }
        var_9 = *(type_6 *)(var_21 + (type_6)inputs_location.file_offset + 4);
        (this->inputs_reader_).p_ = var_21 + (type_6)inputs_location.file_offset;
        (this->inputs_reader_).strtab_.base_ = (char *)puVar20;
        (this->inputs_reader_).strtab_.usable_size_ = var_26;
        (this->symtab_reader_).p_ = var_21 + var_17;
        (this->inputs_reader_).input_file_count_ =
             var_9 >> 0x18 | (var_9 & 0xff0000) >> 8 | (var_9 & 0xff00) << 8 | var_9 << 0x18;
        *(type_6 *)&(this->symtab_reader_).len_ = var_16;
        *(type_9 *)((int)&(this->symtab_reader_).len_ + 4) = local_68;
        (this->relocs_reader_).p_ = var_21 + var_20;
        *(type_6 *)&(this->relocs_reader_).len_ = var_19;
        *(type_9 *)((int)&(this->relocs_reader_).len_ + 4) = local_58;
        var_9 = *in_stack_ffffff20;
        (this->got_plt_reader_).p_ = (type_1 *)in_stack_ffffff20;
        var_9 = var_9 >> 0x18 | (var_9 & 0xff0000) >> 8 | (var_9 & 0xff00) << 8 | var_9 << 0x18
        ;
        (this->got_plt_reader_).got_count_ = var_9;
        var_21 = (type_1 *)((int)in_stack_ffffff20 + (var_9 + 3 & 0xfffffffc) + 8);
        (this->got_plt_reader_).got_desc_p_ = var_21;
        (this->got_plt_reader_).plt_desc_p_ = var_21 + var_9 * 8;
        var_9 = elfcpp::Elf_file<64,var_3,_gold::type_8>::var_27
                           (this_00,2);
        if (var_9 == 0) {
                    /* WARNING: Subroutine does not return */
          var_28("../../gold/incremental.cc",0x124,"setup_readers");
        }
        elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,var_9);
        *(type_9 *)&(this->main_symtab_loc_).file_offset = local_ac;
        *(type_9 *)((int)&(this->main_symtab_loc_).file_offset + 4) = local_a8;
        *(type_9 *)&(this->main_symtab_loc_).data_size = local_a4;
        *(type_9 *)((int)&(this->main_symtab_loc_).data_size + 4) = local_a0;
        var_30 = elfcpp::Elf_file<64,var_3,_gold::type_8>::var_29(this_00,var_9);
        if ((var_30 == 0) ||
           (elfcpp::Elf_file<64,var_3,_gold::type_8>::var_31(this_00),
           (this->elf_file_).shnum_ <= var_30)) {
                    /* WARNING: Subroutine does not return */
          var_28("../../gold/incremental.cc",299,"setup_readers");
        }
        elfcpp::Elf_file<64,var_3,_gold::type_8>::var_7(this_00,var_30);
        *(type_9 *)&(this->main_strtab_loc_).file_offset = local_ac;
        *(type_9 *)((int)&(this->main_strtab_loc_).file_offset + 4) = local_a8;
        *(type_9 *)&(this->main_strtab_loc_).data_size = local_a4;
        *(type_9 *)((int)&(this->main_strtab_loc_).data_size + 4) = local_a0;
        pIVar18 = &this->inputs_reader_;
        var_9 = (this->inputs_reader_).input_file_count_;
        var_35 = (this->input_objects_).
                  super__Vector_base<var_37::var_32<64,var_3>*,var_38::allocator<var_37::var_32<64,var_3>*>var_5>
                  ._M_impl._M_finish;
        var_34 = (this->input_objects_).
                  super__Vector_base<var_37::var_32<64,var_3>*,var_38::allocator<var_37::var_32<64,var_3>*>var_5>
                  ._M_impl._M_start;
        var_14 = (int)var_35 - (int)var_34 >> 2;
        if (var_14 < var_9) {
          std::
          vector<var_37::var_32<64,var_3>*,var_38::allocator<var_37::var_32<64,var_3>*>var_5>
          ::var_33(&this->input_objects_,var_9 - var_14);
        }
        else if ((var_9 < var_14) && (var_34 = var_34 + var_9, var_35 != var_34)) {
          (this->input_objects_).
          super__Vector_base<var_37::var_32<64,var_3>*,var_38::allocator<var_37::var_32<64,var_3>*>var_5>
          ._M_impl._M_finish = var_34;
        }
        this_01 = &this->input_entry_readers_;
        std::
        vector<var_37::var_2<64,var_3>::var_4,var_38::allocator<var_37::var_2<64,var_3>::var_4>var_5>
        ::var_36(this_01,var_9);
        var_41 = (this->super_Incremental_binary).library_map_.
                  super__Vector_base<var_37::var_39*,var_38::allocator<var_37::var_39*>var_5>
                  ._M_impl._M_finish;
        var_40 = (this->super_Incremental_binary).library_map_.
                  super__Vector_base<var_37::var_39*,var_38::allocator<var_37::var_39*>var_5>
                  ._M_impl._M_start;
        var_14 = (int)var_41 - (int)var_40 >> 2;
        if (var_14 < var_9) {
          std::vector<var_37::var_39*,var_38::allocator<var_37::var_39*>var_5>::
          var_33(&(this->super_Incremental_binary).library_map_,var_9 - var_14);
        }
        else if ((var_9 < var_14) && (var_40 = var_40 + var_9, var_41 != var_40)) {
          (this->super_Incremental_binary).library_map_.
          super__Vector_base<var_37::var_39*,var_38::allocator<var_37::var_39*>var_5>
          ._M_impl._M_finish = var_40;
        }
        var_44 = (this->super_Incremental_binary).script_map_.
                   super__Vector_base<var_37::var_42*,var_38::allocator<var_37::var_42*>var_5>.
                   _M_impl._M_finish;
        var_43 = (this->super_Incremental_binary).script_map_.
                   super__Vector_base<var_37::var_42*,var_38::allocator<var_37::var_42*>var_5>.
                   _M_impl._M_start;
        var_14 = (int)var_44 - (int)var_43 >> 2;
        if (var_14 < var_9) {
          std::vector<var_37::var_42*,var_38::allocator<var_37::var_42*>var_5>::var_33
                    (&(this->super_Incremental_binary).script_map_,var_9 - var_14);
        }
        else if ((var_9 < var_14) && (var_43 = var_43 + var_9, var_44 != var_43)) {
          (this->super_Incremental_binary).script_map_.
          super__Vector_base<var_37::var_42*,var_38::allocator<var_37::var_42*>var_5>._M_impl.
          _M_finish = var_43;
        }
        if (var_9 != 0) {
          if ((this->inputs_reader_).input_file_count_ == 0) {
                    /* WARNING: Subroutine does not return */
            var_28("../../gold/incremental.h",0x45c,"input_file_offset");
          }
          var_21 = (this->inputs_reader_).p_;
          local_28 = 0x10;
          var_9 = *(type_6 *)(var_21 + 0x14);
          var_45 = *(type_2 *)(var_21 + 0x24);
          local_24 = var_9 >> 0x18 | (var_9 & 0xff0000) >> 8 | (var_9 & 0xff00) << 8 |
                     var_9 << 0x18;
          local_2c = (type_6)(type_2)(var_45 << 8 | var_45 >> 8);
          __position._M_current =
               (this->input_entry_readers_).
               super__Vector_base<var_37::var_2<64,var_3>::var_4,var_38::allocator<var_37::var_2<64,var_3>::var_4>var_5>
               ._M_impl._M_finish;
          __dnew = (type_10)&var_46;
          local_30 = pIVar18;
          if (__position._M_current ==
              (this->input_entry_readers_).
              super__Vector_base<var_37::var_2<64,var_3>::var_4,var_38::allocator<var_37::var_2<64,var_3>::var_4>var_5>
              ._M_impl._M_end_of_storage) {
            std::
            vector<var_37::var_2<64,var_3>::var_4,var_38::allocator<var_37::var_2<64,var_3>::var_4>var_5>
            ::_M_realloc_insert<var_37::var_2<64,var_3>::var_4>
                      (this_01,__position,(var_4 *)&__dnew);
          }
          else {
            ((__position._M_current)->super_Input_reader)._vptr_Input_reader =
                 (type_12 **)&var_46;
            ((__position._M_current)->reader_).inputs_ = pIVar18;
            ((__position._M_current)->reader_).flags_ = local_2c;
            ((__position._M_current)->reader_).offset_ = 0x10;
            ((__position._M_current)->reader_).info_offset_ = local_24;
            (this->input_entry_readers_).
            super__Vector_base<var_37::var_2<64,var_3>::var_4,var_38::allocator<var_37::var_2<64,var_3>::var_4>var_5>
            ._M_impl._M_finish = __position._M_current + 1;
          }
          if (var_45 >> 8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */
                    /* WARNING: Treating indirect jump as call */
            (*(type_13 *)((int)&_GLOBAL_OFFSET_TABLE_ +
                      *(int *)(&DAT_00288410 + (type_6)(byte)(var_45 >> 8) * 4)))();
            return;
          }
                    /* WARNING: Subroutine does not return */
          var_28("../../gold/incremental.cc",0x163,"setup_readers");
        }
        var_10 = *(int *)((int)&(this->symtab_reader_).len_ + 4);
        var_9 = (type_6)(this->symtab_reader_).len_;
        var_47 = var_10 >> 0x1f & 3;
        var_14 = var_9 + var_47 >> 2;
        var_9 = var_14 | (var_10 + (type_6)var_8(var_9,var_47)) * 0x40000000;
        var_50 = (this->symbol_map_).
                   super__Vector_base<var_37::var_48*,var_38::allocator<var_37::var_48*>var_5>._M_impl.
                   _M_finish;
        var_49 = (this->symbol_map_).
                   super__Vector_base<var_37::var_48*,var_38::allocator<var_37::var_48*>var_5>._M_impl.
                   _M_start;
        var_47 = (int)var_50 - (int)var_49 >> 2;
        if (var_47 < var_9) {
          std::vector<var_37::var_48*,var_38::allocator<var_37::var_48*>var_5>::var_33
                    (&this->symbol_map_,var_9 - var_47);
          this->has_incremental_info_ = true;
        }
        else {
          if ((var_9 < var_47) && (var_49 = var_49 + var_14, var_50 != var_49)) {
            (this->symbol_map_).super__Vector_base<var_37::var_48*,var_38::allocator<var_37::var_48*>var_5>.
            _M_impl._M_finish = var_49;
          }
          this->has_incremental_info_ = true;
        }
        return;
      }
    }
  }
                    /* WARNING: Subroutine does not return */
  Incremental_binary::var_51
            (in_stack_ffffff14,var_52(local_58,local_68),(type_14)in_stack_ffffff20);
}


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

/* WARNING: Function: __i686.get_pc_thunk.ax replaced with injection: get_pc_thunk_ax */

void MASKED(int param_1)

{
  ushort uVar1;
  undefined4 *puVar2;
  int iVar3;
  char cVar4;
  uint uVar5;
  int iVar6;
  int iVar7;
  uint uVar8;
  int iVar9;
  uint uVar10;
  uint *puVar11;
  undefined4 local_ac;
  undefined4 local_a8;
  undefined4 local_a4;
  undefined4 local_a0;
  undefined4 local_9c;
  undefined4 local_98;
  undefined4 local_94;
  undefined4 local_90;
  undefined4 local_8c [2];
  uint local_84;
  int local_80;
  uint local_7c;
  uint local_74;
  int local_70;
  uint local_6c;
  undefined4 local_68;
  uint local_64;
  int local_60;
  uint local_5c;
  undefined4 local_58;
  uint local_54;
  int local_50;
  uint local_4c;
  uint local_44;
  int local_40;
  uint local_3c;
  undefined **local_34;
  int local_30;
  uint local_2c;
  undefined4 local_28;
  uint local_24;
  
  cVar4 = FUN_00088720(param_1,&local_9c,&local_98,&local_94,&local_90,local_8c);
  if (cVar4 == '\0') {
    return;
  }
  iVar7 = param_1 + 0x2c;
  FUN_00088310(&local_84,iVar7,local_9c);
  FUN_00088310(&local_74,iVar7,local_98);
  FUN_00088310(&local_64,iVar7,local_94);
  FUN_00088310(&local_54,iVar7,local_90);
  FUN_00088310(&local_44,iVar7,local_8c[0]);
  iVar6 = *(int *)(param_1 + 0x28);
  if (-1 < local_80) {
    uVar5 = *(uint *)(iVar6 + 8);
    local_80 = local_80 + (uint)CARRY4(local_7c,local_84);
    iVar9 = *(int *)(iVar6 + 0xc);
    uVar8 = (uint)(uVar5 < local_7c + local_84);
    iVar3 = iVar9 - local_80;
    if ((SBORROW4(iVar9,local_80) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0) {
      iVar6 = *(int *)(iVar6 + 0x10);
      if (((((-1 < local_70) &&
            (local_70 = local_70 + (uint)CARRY4(local_6c,local_74),
            uVar8 = (uint)(uVar5 < local_6c + local_74), iVar3 = iVar9 - local_70,
            (SBORROW4(iVar9,local_70) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0)) &&
           (-1 < local_60)) &&
          ((local_60 = local_60 + (uint)CARRY4(local_5c,local_64),
           uVar8 = (uint)(uVar5 < local_5c + local_64), iVar3 = iVar9 - local_60,
           (SBORROW4(iVar9,local_60) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&
           (-1 < local_50)))) &&
         ((local_50 = local_50 + (uint)CARRY4(local_4c,local_54),
          uVar8 = (uint)(uVar5 < local_4c + local_54), iVar3 = iVar9 - local_50,
          (SBORROW4(iVar9,local_50) != SBORROW4(iVar3,uVar8)) == (int)(iVar3 - uVar8) < 0 &&
          ((puVar11 = (uint *)(iVar6 + local_54), -1 < local_40 &&
           (local_40 = local_40 + (uint)CARRY4(local_3c,local_44),
           uVar5 = (uint)(uVar5 < local_3c + local_44), iVar3 = iVar9 - local_40,
           (SBORROW4(iVar9,local_40) != SBORROW4(iVar3,uVar5)) == (int)(iVar3 - uVar5) < 0)))))) {
        iVar9 = local_44 + iVar6;
        if (local_3c == 0) {
          local_3c = 0;
        }
        else {
          cVar4 = *(char *)(iVar9 + -1 + local_3c);
          while ((cVar4 != '\0' && (local_3c = local_3c - 1, local_3c != 0))) {
            cVar4 = *(char *)(iVar9 + -1 + local_3c);
          }
        }
        uVar5 = *(uint *)(local_84 + iVar6 + 4);
        *(uint *)(param_1 + 0x98) = local_84 + iVar6;
        *(int *)(param_1 + 0x9c) = iVar9;
        *(uint *)(param_1 + 0xa0) = local_3c;
        *(uint *)(param_1 + 0xa8) = iVar6 + local_74;
        *(uint *)(param_1 + 0xa4) =
             uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;
        *(uint *)(param_1 + 0xac) = local_6c;
        *(undefined4 *)(param_1 + 0xb0) = local_68;
        *(uint *)(param_1 + 0xb4) = iVar6 + local_64;
        *(uint *)(param_1 + 0xb8) = local_5c;
        *(undefined4 *)(param_1 + 0xbc) = local_58;
        uVar5 = *puVar11;
        *(uint **)(param_1 + 0xc0) = puVar11;
        uVar5 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18;
        *(uint *)(param_1 + 0xc4) = uVar5;
        iVar6 = (int)puVar11 + (uVar5 + 3 & 0xfffffffc) + 8;
        *(int *)(param_1 + 200) = iVar6;
        *(uint *)(param_1 + 0xcc) = iVar6 + uVar5 * 8;
        iVar6 = FUN_00088190(iVar7,2);
        if (iVar6 == 0) {
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",0x124,"setup_readers",0);
        }
        FUN_00088310(&local_ac,iVar7,iVar6);
        *(undefined4 *)(param_1 + 0x74) = local_ac;
        *(undefined4 *)(param_1 + 0x78) = local_a8;
        *(undefined4 *)(param_1 + 0x7c) = local_a4;
        *(undefined4 *)(param_1 + 0x80) = local_a0;
        uVar5 = FUN_00088680(iVar7,iVar6);
        iVar6 = param_1;
        if ((uVar5 == 0) || (FUN_00088090(iVar7), iVar6 = iVar7, *(uint *)(param_1 + 0x38) <= uVar5)
           ) {
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",299,"setup_readers",iVar6);
        }
        FUN_00088310(&local_ac,iVar7,uVar5);
        *(undefined4 *)(param_1 + 0x84) = local_ac;
        *(undefined4 *)(param_1 + 0x88) = local_a8;
        *(undefined4 *)(param_1 + 0x8c) = local_a4;
        *(undefined4 *)(param_1 + 0x90) = local_a0;
        iVar7 = param_1 + 0x98;
        uVar5 = *(uint *)(param_1 + 0xa4);
        uVar8 = *(int *)(param_1 + 0x48) - *(int *)(param_1 + 0x44) >> 2;
        if (uVar8 < uVar5) {
          FUN_00088960(param_1 + 0x44,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x44) + uVar5 * 4, *(int *)(param_1 + 0x48) != iVar6)) {
          *(int *)(param_1 + 0x48) = iVar6;
        }
        FUN_0007f140(param_1 + 0xd0,uVar5);
        uVar8 = *(int *)(param_1 + 0x14) - *(int *)(param_1 + 0x10) >> 2;
        if (uVar8 < uVar5) {
          FUN_00083150(param_1 + 0x10,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x10) + uVar5 * 4, *(int *)(param_1 + 0x14) != iVar6)) {
          *(int *)(param_1 + 0x14) = iVar6;
        }
        uVar8 = *(int *)(param_1 + 0x20) - *(int *)(param_1 + 0x1c) >> 2;
        if (uVar8 < uVar5) {
          FUN_00083280(param_1 + 0x1c,uVar5 - uVar8);
        }
        else if ((uVar5 < uVar8) &&
                (iVar6 = *(int *)(param_1 + 0x1c) + uVar5 * 4, *(int *)(param_1 + 0x20) != iVar6)) {
          *(int *)(param_1 + 0x20) = iVar6;
        }
        if (uVar5 != 0) {
          if (*(int *)(param_1 + 0xa4) == 0) {
                    /* WARNING: Subroutine does not return */
            FUN_00069d00("../../gold/incremental.h",0x45c,"input_file_offset");
          }
          local_34 = &PTR_FUN_00383370;
          local_28 = 0x10;
          uVar5 = *(uint *)(*(int *)(param_1 + 0x98) + 0x14);
          uVar1 = *(ushort *)(*(int *)(param_1 + 0x98) + 0x24);
          local_24 = uVar5 >> 0x18 | (uVar5 & 0xff0000) >> 8 | (uVar5 & 0xff00) << 8 | uVar5 << 0x18
          ;
          local_2c = (uint)(ushort)(uVar1 << 8 | uVar1 >> 8);
          puVar2 = *(undefined4 **)(param_1 + 0xd4);
          local_30 = iVar7;
          if (puVar2 == *(undefined4 **)(param_1 + 0xd8)) {
            FUN_0008f610(param_1 + 0xd0,puVar2,&local_34);
          }
          else {
            *puVar2 = &PTR_FUN_00383370;
            puVar2[1] = iVar7;
            puVar2[2] = local_2c;
            puVar2[3] = 0x10;
            puVar2[4] = local_24;
            *(undefined4 **)(param_1 + 0xd4) = puVar2 + 5;
          }
          if (uVar1 >> 8 < 6) {
                    /* WARNING: Could not recover jumptable at 0x0008fdb7. Too many branches */
                    /* WARNING: Treating indirect jump as call */
            (*(code *)((int)&__DT_PLTGOT + *(int *)(&DAT_00288410 + (uint)(byte)(uVar1 >> 8) * 4)))
                      ();
            return;
          }
                    /* WARNING: Subroutine does not return */
          FUN_00069d00("../../gold/incremental.cc",0x163,"setup_readers");
        }
        uVar8 = *(int *)(param_1 + 0xb0) >> 0x1f & 3;
        uVar5 = *(uint *)(param_1 + 0xac) + uVar8 >> 2;
        uVar8 = uVar5 | (*(int *)(param_1 + 0xb0) + (uint)CARRY4(*(uint *)(param_1 + 0xac),uVar8)) *
                        0x40000000;
        uVar10 = *(int *)(param_1 + 0x60) - *(int *)(param_1 + 0x5c) >> 2;
        if (uVar10 < uVar8) {
          FUN_000833b0(param_1 + 0x5c,uVar8 - uVar10);
          *(undefined1 *)(param_1 + 0x94) = 1;
        }
        else {
          if ((uVar8 < uVar10) &&
             (iVar7 = *(int *)(param_1 + 0x5c) + uVar5 * 4, *(int *)(param_1 + 0x60) != iVar7)) {
            *(int *)(param_1 + 0x60) = iVar7;
          }
          *(undefined1 *)(param_1 + 0x94) = 1;
        }
        return;
      }
    }
  }
                    /* WARNING: Subroutine does not return */
  FUN_00071170();
}

