
/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: bool do_lib_group(Read_symbols * this, Workqueue * workqueue) */

bool __thiscall gold::Read_symbols::do_lib_group(Read_symbols *this,Workqueue *workqueue)

{
  Input_file_lib *lib;
  Input_objects *pIVar1;
  Layout *pLVar2;
  Symbol_table *pSVar3;
  Task_token *pTVar4;
  Dirsearch *pDVar5;
  Mapfile *pMVar6;
  bool bVar7;
  int iVar8;
  Lib_group *this_00;
  Task *t;
  char *pcVar9;
  Task *t_00;
  pointer pIVar10;
  Task *pTVar11;
  long lVar12;
  
  if (this->input_argument_->is_file_ != false) {
                    /* WARNING: Subroutine does not return */
    do_gold_unreachable("../../gold/options.h",0x83f,"lib");
  }
  lib = this->input_argument_->lib_;
  if (lib == (Input_file_lib *)0x0) {
                    /* WARNING: Subroutine does not return */
    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);
  }
  if ((lib->options_).whole_archive_ != false) {
    bVar7 = do_whole_lib_group(this,workqueue);
    return bVar7;
  }
  this_00 = (Lib_group *)operator_new(0x30);
                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */
  Lib_group::Lib_group(this_00,lib,&this->super_Task);
  t = (Task *)operator_new(0x70);
  pIVar1 = this->input_objects_;
  pLVar2 = this->layout_;
  pSVar3 = this->symtab_;
  pTVar4 = this->next_blocker_;
  t->list_next_ = (Task *)0x0;
  (t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2;
  t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8;
  (t->name_)._M_string_length = 0;
  (t->name_).field_2._M_local_buf[0] = '\0';
  t->should_run_soon_ = false;
  t[1]._vptr_Task = (_func_int_varargs **)pSVar3;
  t[1].list_next_ = (Task *)pLVar2;
  t[1].name_._M_dataplus._M_p = (pointer)pIVar1;
  t[1].name_._M_string_length = (size_type)this_00;
  t[1].name_.field_2._M_allocated_capacity = 0;
  *(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0;
  *(Task_token **)&t[1].should_run_soon_ = pTVar4;
  pcVar9 = (char *)operator_new(0x20);
  pIVar10 = (lib->files_).
            super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.
            _M_start;
  *pcVar9 = '\x01';
  pcVar9[4] = '\0';
  pcVar9[5] = '\0';
  pcVar9[6] = '\0';
  pcVar9[7] = '\0';
  pcVar9[8] = '\0';
  pcVar9[9] = '\0';
  pcVar9[10] = '\0';
  pcVar9[0xb] = '\0';
  pcVar9[0xc] = '\0';
  pcVar9[0xd] = '\0';
  pcVar9[0xe] = '\0';
  pcVar9[0xf] = '\0';
  pcVar9[0x10] = '\0';
  pcVar9[0x11] = '\0';
  pcVar9[0x12] = '\0';
  pcVar9[0x13] = '\0';
  pcVar9[0x14] = '\0';
  pcVar9[0x15] = '\0';
  pcVar9[0x16] = '\0';
  pcVar9[0x17] = '\0';
  pcVar9[0x18] = '\0';
  pcVar9[0x19] = '\0';
  pcVar9[0x1a] = '\0';
  pcVar9[0x1b] = '\0';
  pcVar9[0x1c] = '\0';
  pcVar9[0x1d] = '\0';
  pcVar9[0x1e] = '\0';
  pcVar9[0x1f] = '\0';
  if (pIVar10 !=
      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.
      _M_impl._M_finish) {
    lVar12 = 0x18;
    pTVar11 = (Task *)(this_00->members_).
                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>
                      ._M_impl._M_start;
    iVar8 = 0;
    while( true ) {
      pcVar9[8] = '\0';
      pcVar9[9] = '\0';
      pcVar9[10] = '\0';
      pcVar9[0xb] = '\0';
      pcVar9[0xc] = '\0';
      pcVar9[0xd] = '\0';
      pcVar9[0xe] = '\0';
      pcVar9[0xf] = '\0';
      *(int *)(pcVar9 + 4) = iVar8 + 1;
      t_00 = (Task *)operator_new(0x90);
      iVar8 = this->dirindex_;
      pDVar5 = this->dirpath_;
      pLVar2 = this->layout_;
      pSVar3 = this->symtab_;
      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;
      pIVar1 = this->input_objects_;
      *(int *)&t_00[1].name_.field_2 = iVar8;
      pIVar10 = pIVar10 + 1;
      pMVar6 = this->mapfile_;
      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;
      t_00[1].name_._M_string_length = (size_type)pDVar5;
      t_00->list_next_ = (Task *)0x0;
      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;
      (t_00->name_)._M_string_length = 0;
      (t_00->name_).field_2._M_local_buf[0] = '\0';
      t_00->should_run_soon_ = false;
      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;
      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;
      t_00[1].list_next_ = (Task *)pSVar3;
      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;
      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;
      t_00[2].list_next_ = pTVar11;
      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;
      t_00[2].name_._M_string_length = (size_type)pcVar9;
      Workqueue::queue_soon(workqueue,t_00);
      if ((lib->files_).
          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.
          _M_finish == pIVar10) break;
      pTVar11 = (Task *)((long)&((this_00->members_).
                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>
                                 ._M_impl._M_start)->obj_ + lVar12);
      lVar12 = lVar12 + 0x18;
      if (*pcVar9 == '\0') {
                    /* WARNING: Subroutine does not return */
        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");
      }
      iVar8 = *(int *)(pcVar9 + 4);
    }
  }
  pTVar4 = this->this_blocker_;
  if ((t[1].name_.field_2._M_allocated_capacity == 0) &&
     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {
    *(char **)&t[1].name_.field_2 = pcVar9;
    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;
    Workqueue::queue_soon(workqueue,t);
    return true;
  }
                    /* WARNING: Subroutine does not return */
  do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker");
}



undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)

{
  undefined4 uVar1;
  long *plVar2;
  undefined8 uVar3;
  undefined8 uVar4;
  undefined8 uVar5;
  undefined8 uVar6;
  int iVar7;
  long lVar8;
  undefined8 *puVar9;
  char *pcVar10;
  undefined8 *puVar11;
  undefined8 uVar12;
  long lVar13;
  long lVar14;
  long lVar15;
  
  if (**(char **)(param_1 + 0x68) == '\0') {
    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);
    if (plVar2 != (long *)0x0) {
      if ((char)plVar2[4] != '\0') {
        uVar12 = FUN_0023fa60(param_1,param_2);
        return uVar12;
      }
      lVar8 = FUN_002d94a0(0x30);
                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */
      FUN_0028dcf0(lVar8,plVar2,param_1);
      puVar9 = (undefined8 *)FUN_002d94a0(0x70);
      uVar12 = *(undefined8 *)(param_1 + 0x38);
      uVar3 = *(undefined8 *)(param_1 + 0x48);
      uVar4 = *(undefined8 *)(param_1 + 0x40);
      uVar5 = *(undefined8 *)(param_1 + 0x88);
      puVar9[1] = 0;
      puVar9[2] = puVar9 + 4;
      *puVar9 = &PTR_FUN_0042c0a8;
      puVar9[3] = 0;
      *(undefined1 *)(puVar9 + 4) = 0;
      *(undefined1 *)(puVar9 + 6) = 0;
      puVar9[7] = uVar4;
      puVar9[8] = uVar3;
      puVar9[9] = uVar12;
      puVar9[10] = lVar8;
      puVar9[0xb] = 0;
      puVar9[0xc] = 0;
      puVar9[0xd] = uVar5;
      pcVar10 = (char *)FUN_002d94a0(0x20);
      lVar13 = *plVar2;
      *pcVar10 = '\x01';
      pcVar10[4] = '\0';
      pcVar10[5] = '\0';
      pcVar10[6] = '\0';
      pcVar10[7] = '\0';
      pcVar10[8] = '\0';
      pcVar10[9] = '\0';
      pcVar10[10] = '\0';
      pcVar10[0xb] = '\0';
      pcVar10[0xc] = '\0';
      pcVar10[0xd] = '\0';
      pcVar10[0xe] = '\0';
      pcVar10[0xf] = '\0';
      pcVar10[0x10] = '\0';
      pcVar10[0x11] = '\0';
      pcVar10[0x12] = '\0';
      pcVar10[0x13] = '\0';
      pcVar10[0x14] = '\0';
      pcVar10[0x15] = '\0';
      pcVar10[0x16] = '\0';
      pcVar10[0x17] = '\0';
      pcVar10[0x18] = '\0';
      pcVar10[0x19] = '\0';
      pcVar10[0x1a] = '\0';
      pcVar10[0x1b] = '\0';
      pcVar10[0x1c] = '\0';
      pcVar10[0x1d] = '\0';
      pcVar10[0x1e] = '\0';
      pcVar10[0x1f] = '\0';
      if (lVar13 != plVar2[1]) {
        lVar15 = 0x18;
        lVar14 = *(long *)(lVar8 + 0x18);
        iVar7 = 0;
        while( true ) {
          pcVar10[8] = '\0';
          pcVar10[9] = '\0';
          pcVar10[10] = '\0';
          pcVar10[0xb] = '\0';
          pcVar10[0xc] = '\0';
          pcVar10[0xd] = '\0';
          pcVar10[0xe] = '\0';
          pcVar10[0xf] = '\0';
          *(int *)(pcVar10 + 4) = iVar7 + 1;
          puVar11 = (undefined8 *)FUN_002d94a0(0x90);
          uVar1 = *(undefined4 *)(param_1 + 0x58);
          uVar12 = *(undefined8 *)(param_1 + 0x50);
          uVar3 = *(undefined8 *)(param_1 + 0x48);
          uVar4 = *(undefined8 *)(param_1 + 0x40);
          puVar11[0xd] = lVar13;
          uVar5 = *(undefined8 *)(param_1 + 0x38);
          *(undefined4 *)(puVar11 + 0xb) = uVar1;
          lVar13 = lVar13 + 0x80;
          uVar6 = *(undefined8 *)(param_1 + 0x60);
          puVar11[9] = uVar3;
          puVar11[10] = uVar12;
          puVar11[1] = 0;
          puVar11[2] = puVar11 + 4;
          puVar11[3] = 0;
          *(undefined1 *)(puVar11 + 4) = 0;
          *(undefined1 *)(puVar11 + 6) = 0;
          *puVar11 = &PTR_FUN_0042aac0;
          puVar11[7] = uVar5;
          puVar11[8] = uVar4;
          puVar11[0xc] = uVar6;
          puVar11[0xe] = 0;
          puVar11[0xf] = lVar14;
          puVar11[0x10] = 0;
          puVar11[0x11] = pcVar10;
          FUN_002897a0(param_2,puVar11);
          if (plVar2[1] == lVar13) break;
          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;
          lVar15 = lVar15 + 0x18;
          if (*pcVar10 == '\0') {
                    /* WARNING: Subroutine does not return */
            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");
          }
          iVar7 = *(int *)(pcVar10 + 4);
        }
      }
      uVar12 = *(undefined8 *)(param_1 + 0x80);
      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {
        puVar9[0xb] = pcVar10;
        puVar9[0xc] = uVar12;
        FUN_002897a0(param_2,puVar9);
        return 1;
      }
                    /* WARNING: Subroutine does not return */
      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");
    }
    FUN_0023ec40();
  }
                    /* WARNING: Subroutine does not return */
  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x28
MOV RAX,qword ptr [RDI + 0x68]
MOV qword ptr [RSP + 0x8],RSI
CMP byte ptr [RAX],0x0
JNZ 0x0023fe85
MOV R12,qword ptr [RAX + 0x70]
TEST R12,R12
JZ 0x0023fe80
CMP byte ptr [R12 + 0x20],0x0
MOV RBX,RDI
JNZ 0x0023fe38
MOV EDI,0x30
CALL 0x002d94a0
MOV RDX,RBX
MOV RSI,R12
MOV RDI,RAX
MOV R14,RAX
MOV qword ptr [RSP + 0x10],RAX
CALL 0x0028dcf0
MOV EDI,0x70
CALL 0x002d94a0
MOV RDX,qword ptr [RBX + 0x38]
MOV RCX,qword ptr [RBX + 0x48]
MOV R9,RAX
MOV qword ptr [RSP + 0x18],RAX
MOV RSI,qword ptr [RBX + 0x40]
LEA RDI,[R9 + 0x20]
MOV RAX,qword ptr [RBX + 0x88]
MOV qword ptr [R9 + 0x8],0x0
MOV qword ptr [R9 + 0x10],RDI
LEA RDI,[0x42c0a8]
MOV qword ptr [R9],RDI
MOV EDI,0x20
MOV qword ptr [R9 + 0x18],0x0
MOV byte ptr [R9 + 0x20],0x0
MOV byte ptr [R9 + 0x30],0x0
MOV qword ptr [R9 + 0x38],RSI
MOV qword ptr [R9 + 0x40],RCX
MOV qword ptr [R9 + 0x48],RDX
MOV qword ptr [R9 + 0x50],R14
MOV qword ptr [R9 + 0x58],0x0
MOV qword ptr [R9 + 0x60],0x0
MOV qword ptr [R9 + 0x68],RAX
CALL 0x002d94a0
MOV RBP,qword ptr [R12]
MOV R15,RAX
MOV byte ptr [RAX],0x1
MOV dword ptr [RAX + 0x4],0x0
MOV qword ptr [RAX + 0x8],0x0
MOV qword ptr [RAX + 0x10],0x0
MOV qword ptr [RAX + 0x18],0x0
CMP RBP,qword ptr [R12 + 0x8]
JZ 0x0023fde5
MOV RAX,qword ptr [RSP + 0x10]
MOV R14D,0x18
MOV R13,qword ptr [RAX + 0x18]
XOR EAX,EAX
JMP 0x0023fd36
MOV RAX,qword ptr [RSP + 0x10]
MOV R13,qword ptr [RAX + 0x18]
ADD R13,R14
ADD R14,0x18
CMP byte ptr [R15],0x0
JZ 0x0023fe50
MOV EAX,dword ptr [R15 + 0x4]
ADD EAX,0x1
MOV EDI,0x90
MOV qword ptr [R15 + 0x8],0x0
MOV dword ptr [R15 + 0x4],EAX
CALL 0x002d94a0
MOV ECX,dword ptr [RBX + 0x58]
MOV RSI,qword ptr [RBX + 0x50]
LEA RDX,[0x42aac0]
MOV RDI,qword ptr [RBX + 0x48]
MOV R8,qword ptr [RBX + 0x40]
LEA R11,[RAX + 0x20]
MOV qword ptr [RAX + 0x68],RBP
MOV R10,qword ptr [RBX + 0x38]
MOV dword ptr [RAX + 0x58],ECX
SUB RBP,-0x80
MOV RCX,qword ptr [RBX + 0x60]
MOV qword ptr [RAX + 0x48],RDI
MOV qword ptr [RAX + 0x50],RSI
MOV RDI,qword ptr [RSP + 0x8]
MOV RSI,RAX
MOV qword ptr [RAX + 0x8],0x0
MOV qword ptr [RAX + 0x10],R11
MOV qword ptr [RAX + 0x18],0x0
MOV byte ptr [RAX + 0x20],0x0
MOV byte ptr [RAX + 0x30],0x0
MOV qword ptr [RAX],RDX
MOV qword ptr [RAX + 0x38],R10
MOV qword ptr [RAX + 0x40],R8
MOV qword ptr [RAX + 0x60],RCX
MOV qword ptr [RAX + 0x70],0x0
MOV qword ptr [RAX + 0x78],R13
MOV qword ptr [RAX + 0x80],0x0
MOV qword ptr [RAX + 0x88],R15
CALL 0x002897a0
CMP qword ptr [R12 + 0x8],RBP
JNZ 0x0023fd18
MOV RSI,qword ptr [RSP + 0x18]
MOV RAX,qword ptr [RBX + 0x80]
CMP qword ptr [RSI + 0x58],0x0
JNZ 0x0023fe68
MOV RSI,qword ptr [RSP + 0x18]
CMP qword ptr [RSI + 0x60],0x0
JNZ 0x0023fe68
MOV RDX,qword ptr [RSP + 0x18]
MOV RDI,qword ptr [RSP + 0x8]
MOV qword ptr [RDX + 0x58],R15
MOV RSI,RDX
MOV qword ptr [RDX + 0x60],RAX
CALL 0x002897a0
ADD RSP,0x28
MOV EAX,0x1
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV RSI,qword ptr [RSP + 0x8]
ADD RSP,0x28
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
JMP 0x0023fa60
LEA RDX,[0x382d10]
MOV ESI,0x8e
LEA RDI,[0x36b5e5]
CALL 0x0017c650
LEA RDX,[0x382d00]
MOV ESI,0x228
LEA RDI,[0x382b94]
CALL 0x0017c650
CALL 0x0023ec40
LEA RDX,[0x382d1c]
MOV ESI,0x83f
LEA RDI,[0x37369d]
CALL 0x0017c650
(translation_unit "undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}\n\n" (function_definition "undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" type_identifier (function_declarator "FUN_0023fbf0(long param_1,undefined8 param_2)" identifier (parameter_list "(long param_1,undefined8 param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    /* WARNING: Subroutine does not return */\n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "undefined8 uVar3;" type_identifier identifier ;) (declaration "undefined8 uVar4;" type_identifier identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "undefined8 uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined8 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar15;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" if (parenthesized_expression "(**(char **)(param_1 + 0x68) == '\0')" ( (binary_expression "**(char **)(param_1 + 0x68) == '\0'" (pointer_expression "**(char **)(param_1 + 0x68)" * (pointer_expression "*(char **)(param_1 + 0x68)" * (cast_expression "(char **)(param_1 + 0x68)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) ))))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" { (expression_statement "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);" (assignment_expression "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70)" identifier = (pointer_expression "*(long **)(*(char **)(param_1 + 0x68) + 0x70)" * (cast_expression "(long **)(*(char **)(param_1 + 0x68) + 0x70)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(char **)(param_1 + 0x68) + 0x70)" ( (binary_expression "*(char **)(param_1 + 0x68) + 0x70" (pointer_expression "*(char **)(param_1 + 0x68)" * (cast_expression "(char **)(param_1 + 0x68)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" if (parenthesized_expression "(plVar2 != (long *)0x0)" ( (binary_expression "plVar2 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    /* WARNING: Subroutine does not return */\n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" { (if_statement "if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" if (parenthesized_expression "((char)plVar2[4] != '\0')" ( (binary_expression "(char)plVar2[4] != '\0'" (cast_expression "(char)plVar2[4]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar2[4]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" { (expression_statement "uVar12 = FUN_0023fa60(param_1,param_2);" (assignment_expression "uVar12 = FUN_0023fa60(param_1,param_2)" identifier = (call_expression "FUN_0023fa60(param_1,param_2)" identifier (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (return_statement "return uVar12;" return identifier ;) })) (expression_statement "lVar8 = FUN_002d94a0(0x30);" (assignment_expression "lVar8 = FUN_002d94a0(0x30)" identifier = (call_expression "FUN_002d94a0(0x30)" identifier (argument_list "(0x30)" ( number_literal )))) ;) comment (expression_statement "FUN_0028dcf0(lVar8,plVar2,param_1);" (call_expression "FUN_0028dcf0(lVar8,plVar2,param_1)" identifier (argument_list "(lVar8,plVar2,param_1)" ( identifier , identifier , identifier ))) ;) (expression_statement "puVar9 = (undefined8 *)FUN_002d94a0(0x70);" (assignment_expression "puVar9 = (undefined8 *)FUN_002d94a0(0x70)" identifier = (cast_expression "(undefined8 *)FUN_002d94a0(0x70)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x70)" identifier (argument_list "(0x70)" ( number_literal ))))) ;) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x48)" * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x40)" * (cast_expression "(undefined8 *)(param_1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x88);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x88)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x88)" * (cast_expression "(undefined8 *)(param_1 + 0x88)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[2] = puVar9 + 4;" (assignment_expression "puVar9[2] = puVar9 + 4" (subscript_expression "puVar9[2]" identifier [ number_literal ]) = (binary_expression "puVar9 + 4" identifier + number_literal)) ;) (expression_statement "*puVar9 = &PTR_FUN_0042c0a8;" (assignment_expression "*puVar9 = &PTR_FUN_0042c0a8" (pointer_expression "*puVar9" * identifier) = (pointer_expression "&PTR_FUN_0042c0a8" & identifier)) ;) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar9 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 4)" * (cast_expression "(undefined1 *)(puVar9 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 4)" ( (binary_expression "puVar9 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar9 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 6)" * (cast_expression "(undefined1 *)(puVar9 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 6)" ( (binary_expression "puVar9 + 6" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar9[7] = uVar4;" (assignment_expression "puVar9[7] = uVar4" (subscript_expression "puVar9[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[8] = uVar3;" (assignment_expression "puVar9[8] = uVar3" (subscript_expression "puVar9[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[9] = uVar12;" (assignment_expression "puVar9[9] = uVar12" (subscript_expression "puVar9[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[10] = lVar8;" (assignment_expression "puVar9[10] = lVar8" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[0xb] = 0;" (assignment_expression "puVar9[0xb] = 0" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[0xc] = 0;" (assignment_expression "puVar9[0xc] = 0" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[0xd] = uVar5;" (assignment_expression "puVar9[0xd] = uVar5" (subscript_expression "puVar9[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pcVar10 = (char *)FUN_002d94a0(0x20);" (assignment_expression "pcVar10 = (char *)FUN_002d94a0(0x20)" identifier = (cast_expression "(char *)FUN_002d94a0(0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "lVar13 = *plVar2;" (assignment_expression "lVar13 = *plVar2" identifier = (pointer_expression "*plVar2" * identifier)) ;) (expression_statement "*pcVar10 = '\x01';" (assignment_expression "*pcVar10 = '\x01'" (pointer_expression "*pcVar10" * identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcVar10[4] = '\0';" (assignment_expression "pcVar10[4] = '\0'" (subscript_expression "pcVar10[4]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[5] = '\0';" (assignment_expression "pcVar10[5] = '\0'" (subscript_expression "pcVar10[5]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[6] = '\0';" (assignment_expression "pcVar10[6] = '\0'" (subscript_expression "pcVar10[6]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[7] = '\0';" (assignment_expression "pcVar10[7] = '\0'" (subscript_expression "pcVar10[7]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x10] = '\0';" (assignment_expression "pcVar10[0x10] = '\0'" (subscript_expression "pcVar10[0x10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x11] = '\0';" (assignment_expression "pcVar10[0x11] = '\0'" (subscript_expression "pcVar10[0x11]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x12] = '\0';" (assignment_expression "pcVar10[0x12] = '\0'" (subscript_expression "pcVar10[0x12]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x13] = '\0';" (assignment_expression "pcVar10[0x13] = '\0'" (subscript_expression "pcVar10[0x13]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x14] = '\0';" (assignment_expression "pcVar10[0x14] = '\0'" (subscript_expression "pcVar10[0x14]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x15] = '\0';" (assignment_expression "pcVar10[0x15] = '\0'" (subscript_expression "pcVar10[0x15]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x16] = '\0';" (assignment_expression "pcVar10[0x16] = '\0'" (subscript_expression "pcVar10[0x16]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x17] = '\0';" (assignment_expression "pcVar10[0x17] = '\0'" (subscript_expression "pcVar10[0x17]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x18] = '\0';" (assignment_expression "pcVar10[0x18] = '\0'" (subscript_expression "pcVar10[0x18]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x19] = '\0';" (assignment_expression "pcVar10[0x19] = '\0'" (subscript_expression "pcVar10[0x19]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1a] = '\0';" (assignment_expression "pcVar10[0x1a] = '\0'" (subscript_expression "pcVar10[0x1a]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1b] = '\0';" (assignment_expression "pcVar10[0x1b] = '\0'" (subscript_expression "pcVar10[0x1b]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1c] = '\0';" (assignment_expression "pcVar10[0x1c] = '\0'" (subscript_expression "pcVar10[0x1c]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1d] = '\0';" (assignment_expression "pcVar10[0x1d] = '\0'" (subscript_expression "pcVar10[0x1d]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1e] = '\0';" (assignment_expression "pcVar10[0x1e] = '\0'" (subscript_expression "pcVar10[0x1e]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1f] = '\0';" (assignment_expression "pcVar10[0x1f] = '\0'" (subscript_expression "pcVar10[0x1f]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" if (parenthesized_expression "(lVar13 != plVar2[1])" ( (binary_expression "lVar13 != plVar2[1]" identifier != (subscript_expression "plVar2[1]" identifier [ number_literal ])) )) (compound_statement "{\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" { (expression_statement "lVar15 = 0x18;" (assignment_expression "lVar15 = 0x18" identifier = number_literal) ;) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18);" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18)" identifier = (pointer_expression "*(long *)(lVar8 + 0x18)" * (cast_expression "(long *)(lVar8 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x18)" ( (binary_expression "lVar8 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" { (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(int *)(pcVar10 + 4) = iVar7 + 1;" (assignment_expression "*(int *)(pcVar10 + 4) = iVar7 + 1" (pointer_expression "*(int *)(pcVar10 + 4)" * (cast_expression "(int *)(pcVar10 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 4)" ( (binary_expression "pcVar10 + 4" identifier + number_literal) )))) = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) (expression_statement "puVar11 = (undefined8 *)FUN_002d94a0(0x90);" (assignment_expression "puVar11 = (undefined8 *)FUN_002d94a0(0x90)" identifier = (cast_expression "(undefined8 *)FUN_002d94a0(0x90)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x90)" identifier (argument_list "(0x90)" ( number_literal ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x58);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x58)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x50);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x50)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x50)" * (cast_expression "(undefined8 *)(param_1 + 0x50)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x48)" * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x40)" * (cast_expression "(undefined8 *)(param_1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "puVar11[0xd] = lVar13;" (assignment_expression "puVar11[0xd] = lVar13" (subscript_expression "puVar11[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + 0xb) = uVar1;" (assignment_expression "*(undefined4 *)(puVar11 + 0xb) = uVar1" (pointer_expression "*(undefined4 *)(puVar11 + 0xb)" * (cast_expression "(undefined4 *)(puVar11 + 0xb)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0xb)" ( (binary_expression "puVar11 + 0xb" identifier + number_literal) )))) = identifier) ;) (expression_statement "lVar13 = lVar13 + 0x80;" (assignment_expression "lVar13 = lVar13 + 0x80" identifier = (binary_expression "lVar13 + 0x80" identifier + number_literal)) ;) (expression_statement "uVar6 = *(undefined8 *)(param_1 + 0x60);" (assignment_expression "uVar6 = *(undefined8 *)(param_1 + 0x60)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x60)" * (cast_expression "(undefined8 *)(param_1 + 0x60)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "puVar11[9] = uVar3;" (assignment_expression "puVar11[9] = uVar3" (subscript_expression "puVar11[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[10] = uVar12;" (assignment_expression "puVar11[10] = uVar12" (subscript_expression "puVar11[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[1] = 0;" (assignment_expression "puVar11[1] = 0" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[2] = puVar11 + 4;" (assignment_expression "puVar11[2] = puVar11 + 4" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = (binary_expression "puVar11 + 4" identifier + number_literal)) ;) (expression_statement "puVar11[3] = 0;" (assignment_expression "puVar11[3] = 0" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar11 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 4)" * (cast_expression "(undefined1 *)(puVar11 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 4)" ( (binary_expression "puVar11 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar11 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 6)" * (cast_expression "(undefined1 *)(puVar11 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 6)" ( (binary_expression "puVar11 + 6" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*puVar11 = &PTR_FUN_0042aac0;" (assignment_expression "*puVar11 = &PTR_FUN_0042aac0" (pointer_expression "*puVar11" * identifier) = (pointer_expression "&PTR_FUN_0042aac0" & identifier)) ;) (expression_statement "puVar11[7] = uVar5;" (assignment_expression "puVar11[7] = uVar5" (subscript_expression "puVar11[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[8] = uVar4;" (assignment_expression "puVar11[8] = uVar4" (subscript_expression "puVar11[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0xc] = uVar6;" (assignment_expression "puVar11[0xc] = uVar6" (subscript_expression "puVar11[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0xe] = 0;" (assignment_expression "puVar11[0xe] = 0" (subscript_expression "puVar11[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[0xf] = lVar14;" (assignment_expression "puVar11[0xf] = lVar14" (subscript_expression "puVar11[0xf]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0x10] = 0;" (assignment_expression "puVar11[0x10] = 0" (subscript_expression "puVar11[0x10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[0x11] = pcVar10;" (assignment_expression "puVar11[0x11] = pcVar10" (subscript_expression "puVar11[0x11]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_002897a0(param_2,puVar11);" (call_expression "FUN_002897a0(param_2,puVar11)" identifier (argument_list "(param_2,puVar11)" ( identifier , identifier ))) ;) (if_statement "if (plVar2[1] == lVar13) break;" if (parenthesized_expression "(plVar2[1] == lVar13)" ( (binary_expression "plVar2[1] == lVar13" (subscript_expression "plVar2[1]" identifier [ number_literal ]) == identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18) + lVar15;" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18) + lVar15" identifier = (binary_expression "*(long *)(lVar8 + 0x18) + lVar15" (pointer_expression "*(long *)(lVar8 + 0x18)" * (cast_expression "(long *)(lVar8 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x18)" ( (binary_expression "lVar8 + 0x18" identifier + number_literal) )))) + identifier)) ;) (expression_statement "lVar15 = lVar15 + 0x18;" (assignment_expression "lVar15 = lVar15 + 0x18" identifier = (binary_expression "lVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (*pcVar10 == '\0') {\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" if (parenthesized_expression "(*pcVar10 == '\0')" ( (binary_expression "*pcVar10 == '\0'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" { comment (expression_statement "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");" (call_expression "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker")" identifier (argument_list "("../../gold/token.h",0x8e,"add_blocker")" ( (string_literal ""../../gold/token.h"" " string_content ") , number_literal , (string_literal ""add_blocker"" " string_content ") ))) ;) })) (expression_statement "iVar7 = *(int *)(pcVar10 + 4);" (assignment_expression "iVar7 = *(int *)(pcVar10 + 4)" identifier = (pointer_expression "*(int *)(pcVar10 + 4)" * (cast_expression "(int *)(pcVar10 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 4)" ( (binary_expression "pcVar10 + 4" identifier + number_literal) ))))) ;) })) })) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x80);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x80)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x80)" * (cast_expression "(undefined8 *)(param_1 + 0x80)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" if (parenthesized_expression "((puVar9[0xb] == 0) && (puVar9[0xc] == 0))" ( (binary_expression "(puVar9[0xb] == 0) && (puVar9[0xc] == 0)" (parenthesized_expression "(puVar9[0xb] == 0)" ( (binary_expression "puVar9[0xb] == 0" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(puVar9[0xc] == 0)" ( (binary_expression "puVar9[0xc] == 0" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) == number_literal) ))) )) (compound_statement "{\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" { (expression_statement "puVar9[0xb] = pcVar10;" (assignment_expression "puVar9[0xb] = pcVar10" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[0xc] = uVar12;" (assignment_expression "puVar9[0xc] = uVar12" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_002897a0(param_2,puVar9);" (call_expression "FUN_002897a0(param_2,puVar9)" identifier (argument_list "(param_2,puVar9)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) comment (expression_statement "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");" (call_expression "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker")" identifier (argument_list "("../../gold/archive.h",0x228,"set_blocker")" ( (string_literal ""../../gold/archive.h"" " string_content ") , number_literal , (string_literal ""set_blocker"" " string_content ") ))) ;) })) (expression_statement "FUN_0023ec40();" (call_expression "FUN_0023ec40()" identifier (argument_list "()" ( ))) ;) })) comment (expression_statement "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);" (call_expression "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c)" identifier (argument_list "("../../gold/options.h",0x83f,&DAT_00382d1c)" ( (string_literal ""../../gold/options.h"" " string_content ") , number_literal , (pointer_expression "&DAT_00382d1c" & identifier) ))) ;) })))
(translation_unit "/* WARNING: Enum "DT": Some values do not have unique names */\n/* DWARF original prototype: bool do_lib_group(Read_symbols * this, Workqueue * workqueue) */\n\nbool __thiscall gold::Read_symbols::do_lib_group(Read_symbols *this,Workqueue *workqueue)\n\n{\n  Input_file_lib *lib;\n  Input_objects *pIVar1;\n  Layout *pLVar2;\n  Symbol_table *pSVar3;\n  Task_token *pTVar4;\n  Dirsearch *pDVar5;\n  Mapfile *pMVar6;\n  bool bVar7;\n  int iVar8;\n  Lib_group *this_00;\n  Task *t;\n  char *pcVar9;\n  Task *t_00;\n  pointer pIVar10;\n  Task *pTVar11;\n  long lVar12;\n  \n  if (this->input_argument_->is_file_ != false) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/options.h",0x83f,"lib");\n  }\n  lib = this->input_argument_->lib_;\n  if (lib == (Input_file_lib *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);\n  }\n  if ((lib->options_).whole_archive_ != false) {\n    bVar7 = do_whole_lib_group(this,workqueue);\n    return bVar7;\n  }\n  this_00 = (Lib_group *)operator_new(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n  Lib_group::Lib_group(this_00,lib,&this->super_Task);\n  t = (Task *)operator_new(0x70);\n  pIVar1 = this->input_objects_;\n  pLVar2 = this->layout_;\n  pSVar3 = this->symtab_;\n  pTVar4 = this->next_blocker_;\n  t->list_next_ = (Task *)0x0;\n  (t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2;\n  t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8;\n  (t->name_)._M_string_length = 0;\n  (t->name_).field_2._M_local_buf[0] = '\0';\n  t->should_run_soon_ = false;\n  t[1]._vptr_Task = (_func_int_varargs **)pSVar3;\n  t[1].list_next_ = (Task *)pLVar2;\n  t[1].name_._M_dataplus._M_p = (pointer)pIVar1;\n  t[1].name_._M_string_length = (size_type)this_00;\n  t[1].name_.field_2._M_allocated_capacity = 0;\n  *(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0;\n  *(Task_token **)&t[1].should_run_soon_ = pTVar4;\n  pcVar9 = (char *)operator_new(0x20);\n  pIVar10 = (lib->files_).\n            super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n            _M_start;\n  *pcVar9 = '\x01';\n  pcVar9[4] = '\0';\n  pcVar9[5] = '\0';\n  pcVar9[6] = '\0';\n  pcVar9[7] = '\0';\n  pcVar9[8] = '\0';\n  pcVar9[9] = '\0';\n  pcVar9[10] = '\0';\n  pcVar9[0xb] = '\0';\n  pcVar9[0xc] = '\0';\n  pcVar9[0xd] = '\0';\n  pcVar9[0xe] = '\0';\n  pcVar9[0xf] = '\0';\n  pcVar9[0x10] = '\0';\n  pcVar9[0x11] = '\0';\n  pcVar9[0x12] = '\0';\n  pcVar9[0x13] = '\0';\n  pcVar9[0x14] = '\0';\n  pcVar9[0x15] = '\0';\n  pcVar9[0x16] = '\0';\n  pcVar9[0x17] = '\0';\n  pcVar9[0x18] = '\0';\n  pcVar9[0x19] = '\0';\n  pcVar9[0x1a] = '\0';\n  pcVar9[0x1b] = '\0';\n  pcVar9[0x1c] = '\0';\n  pcVar9[0x1d] = '\0';\n  pcVar9[0x1e] = '\0';\n  pcVar9[0x1f] = '\0';\n  if (pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.\n      _M_impl._M_finish) {\n    lVar12 = 0x18;\n    pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                      ._M_impl._M_start;\n    iVar8 = 0;\n    while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }\n  }\n  pTVar4 = this->this_blocker_;\n  if ((t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {\n    *(char **)&t[1].name_.field_2 = pcVar9;\n    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;\n    Workqueue::queue_soon(workqueue,t);\n    return true;\n  }\n                    /* WARNING: Subroutine does not return */\n  do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker");\n}\n\n" comment comment (function_definition "bool __thiscall gold::Read_symbols::do_lib_group(Read_symbols *this,Workqueue *workqueue)\n\n{\n  Input_file_lib *lib;\n  Input_objects *pIVar1;\n  Layout *pLVar2;\n  Symbol_table *pSVar3;\n  Task_token *pTVar4;\n  Dirsearch *pDVar5;\n  Mapfile *pMVar6;\n  bool bVar7;\n  int iVar8;\n  Lib_group *this_00;\n  Task *t;\n  char *pcVar9;\n  Task *t_00;\n  pointer pIVar10;\n  Task *pTVar11;\n  long lVar12;\n  \n  if (this->input_argument_->is_file_ != false) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/options.h",0x83f,"lib");\n  }\n  lib = this->input_argument_->lib_;\n  if (lib == (Input_file_lib *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);\n  }\n  if ((lib->options_).whole_archive_ != false) {\n    bVar7 = do_whole_lib_group(this,workqueue);\n    return bVar7;\n  }\n  this_00 = (Lib_group *)operator_new(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n  Lib_group::Lib_group(this_00,lib,&this->super_Task);\n  t = (Task *)operator_new(0x70);\n  pIVar1 = this->input_objects_;\n  pLVar2 = this->layout_;\n  pSVar3 = this->symtab_;\n  pTVar4 = this->next_blocker_;\n  t->list_next_ = (Task *)0x0;\n  (t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2;\n  t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8;\n  (t->name_)._M_string_length = 0;\n  (t->name_).field_2._M_local_buf[0] = '\0';\n  t->should_run_soon_ = false;\n  t[1]._vptr_Task = (_func_int_varargs **)pSVar3;\n  t[1].list_next_ = (Task *)pLVar2;\n  t[1].name_._M_dataplus._M_p = (pointer)pIVar1;\n  t[1].name_._M_string_length = (size_type)this_00;\n  t[1].name_.field_2._M_allocated_capacity = 0;\n  *(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0;\n  *(Task_token **)&t[1].should_run_soon_ = pTVar4;\n  pcVar9 = (char *)operator_new(0x20);\n  pIVar10 = (lib->files_).\n            super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n            _M_start;\n  *pcVar9 = '\x01';\n  pcVar9[4] = '\0';\n  pcVar9[5] = '\0';\n  pcVar9[6] = '\0';\n  pcVar9[7] = '\0';\n  pcVar9[8] = '\0';\n  pcVar9[9] = '\0';\n  pcVar9[10] = '\0';\n  pcVar9[0xb] = '\0';\n  pcVar9[0xc] = '\0';\n  pcVar9[0xd] = '\0';\n  pcVar9[0xe] = '\0';\n  pcVar9[0xf] = '\0';\n  pcVar9[0x10] = '\0';\n  pcVar9[0x11] = '\0';\n  pcVar9[0x12] = '\0';\n  pcVar9[0x13] = '\0';\n  pcVar9[0x14] = '\0';\n  pcVar9[0x15] = '\0';\n  pcVar9[0x16] = '\0';\n  pcVar9[0x17] = '\0';\n  pcVar9[0x18] = '\0';\n  pcVar9[0x19] = '\0';\n  pcVar9[0x1a] = '\0';\n  pcVar9[0x1b] = '\0';\n  pcVar9[0x1c] = '\0';\n  pcVar9[0x1d] = '\0';\n  pcVar9[0x1e] = '\0';\n  pcVar9[0x1f] = '\0';\n  if (pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.\n      _M_impl._M_finish) {\n    lVar12 = 0x18;\n    pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                      ._M_impl._M_start;\n    iVar8 = 0;\n    while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }\n  }\n  pTVar4 = this->this_blocker_;\n  if ((t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {\n    *(char **)&t[1].name_.field_2 = pcVar9;\n    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;\n    Workqueue::queue_soon(workqueue,t);\n    return true;\n  }\n                    /* WARNING: Subroutine does not return */\n  do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker");\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Read_symbols::" identifier : : identifier : :) (function_declarator "do_lib_group(Read_symbols *this,Workqueue *workqueue)" identifier (parameter_list "(Read_symbols *this,Workqueue *workqueue)" ( (parameter_declaration "Read_symbols *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Workqueue *workqueue" type_identifier (pointer_declarator "*workqueue" * identifier)) ))) (compound_statement "{\n  Input_file_lib *lib;\n  Input_objects *pIVar1;\n  Layout *pLVar2;\n  Symbol_table *pSVar3;\n  Task_token *pTVar4;\n  Dirsearch *pDVar5;\n  Mapfile *pMVar6;\n  bool bVar7;\n  int iVar8;\n  Lib_group *this_00;\n  Task *t;\n  char *pcVar9;\n  Task *t_00;\n  pointer pIVar10;\n  Task *pTVar11;\n  long lVar12;\n  \n  if (this->input_argument_->is_file_ != false) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/options.h",0x83f,"lib");\n  }\n  lib = this->input_argument_->lib_;\n  if (lib == (Input_file_lib *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);\n  }\n  if ((lib->options_).whole_archive_ != false) {\n    bVar7 = do_whole_lib_group(this,workqueue);\n    return bVar7;\n  }\n  this_00 = (Lib_group *)operator_new(0x30);\n                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */\n  Lib_group::Lib_group(this_00,lib,&this->super_Task);\n  t = (Task *)operator_new(0x70);\n  pIVar1 = this->input_objects_;\n  pLVar2 = this->layout_;\n  pSVar3 = this->symtab_;\n  pTVar4 = this->next_blocker_;\n  t->list_next_ = (Task *)0x0;\n  (t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2;\n  t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8;\n  (t->name_)._M_string_length = 0;\n  (t->name_).field_2._M_local_buf[0] = '\0';\n  t->should_run_soon_ = false;\n  t[1]._vptr_Task = (_func_int_varargs **)pSVar3;\n  t[1].list_next_ = (Task *)pLVar2;\n  t[1].name_._M_dataplus._M_p = (pointer)pIVar1;\n  t[1].name_._M_string_length = (size_type)this_00;\n  t[1].name_.field_2._M_allocated_capacity = 0;\n  *(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0;\n  *(Task_token **)&t[1].should_run_soon_ = pTVar4;\n  pcVar9 = (char *)operator_new(0x20);\n  pIVar10 = (lib->files_).\n            super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n            _M_start;\n  *pcVar9 = '\x01';\n  pcVar9[4] = '\0';\n  pcVar9[5] = '\0';\n  pcVar9[6] = '\0';\n  pcVar9[7] = '\0';\n  pcVar9[8] = '\0';\n  pcVar9[9] = '\0';\n  pcVar9[10] = '\0';\n  pcVar9[0xb] = '\0';\n  pcVar9[0xc] = '\0';\n  pcVar9[0xd] = '\0';\n  pcVar9[0xe] = '\0';\n  pcVar9[0xf] = '\0';\n  pcVar9[0x10] = '\0';\n  pcVar9[0x11] = '\0';\n  pcVar9[0x12] = '\0';\n  pcVar9[0x13] = '\0';\n  pcVar9[0x14] = '\0';\n  pcVar9[0x15] = '\0';\n  pcVar9[0x16] = '\0';\n  pcVar9[0x17] = '\0';\n  pcVar9[0x18] = '\0';\n  pcVar9[0x19] = '\0';\n  pcVar9[0x1a] = '\0';\n  pcVar9[0x1b] = '\0';\n  pcVar9[0x1c] = '\0';\n  pcVar9[0x1d] = '\0';\n  pcVar9[0x1e] = '\0';\n  pcVar9[0x1f] = '\0';\n  if (pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.\n      _M_impl._M_finish) {\n    lVar12 = 0x18;\n    pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                      ._M_impl._M_start;\n    iVar8 = 0;\n    while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }\n  }\n  pTVar4 = this->this_blocker_;\n  if ((t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {\n    *(char **)&t[1].name_.field_2 = pcVar9;\n    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;\n    Workqueue::queue_soon(workqueue,t);\n    return true;\n  }\n                    /* WARNING: Subroutine does not return */\n  do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker");\n}" { (declaration "Input_file_lib *lib;" type_identifier (pointer_declarator "*lib" * identifier) ;) (declaration "Input_objects *pIVar1;" type_identifier (pointer_declarator "*pIVar1" * identifier) ;) (declaration "Layout *pLVar2;" type_identifier (pointer_declarator "*pLVar2" * identifier) ;) (declaration "Symbol_table *pSVar3;" type_identifier (pointer_declarator "*pSVar3" * identifier) ;) (declaration "Task_token *pTVar4;" type_identifier (pointer_declarator "*pTVar4" * identifier) ;) (declaration "Dirsearch *pDVar5;" type_identifier (pointer_declarator "*pDVar5" * identifier) ;) (declaration "Mapfile *pMVar6;" type_identifier (pointer_declarator "*pMVar6" * identifier) ;) (declaration "bool bVar7;" primitive_type identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "Lib_group *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (declaration "Task *t;" type_identifier (pointer_declarator "*t" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "Task *t_00;" type_identifier (pointer_declarator "*t_00" * identifier) ;) (declaration "pointer pIVar10;" type_identifier identifier ;) (declaration "Task *pTVar11;" type_identifier (pointer_declarator "*pTVar11" * identifier) ;) (declaration "long lVar12;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (this->input_argument_->is_file_ != false) {\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/options.h",0x83f,"lib");\n  }" if (parenthesized_expression "(this->input_argument_->is_file_ != false)" ( (binary_expression "this->input_argument_->is_file_ != false" (field_expression "this->input_argument_->is_file_" (field_expression "this->input_argument_" identifier -> field_identifier) -> field_identifier) != false) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    do_gold_unreachable("../../gold/options.h",0x83f,"lib");\n  }" { comment (expression_statement "do_gold_unreachable("../../gold/options.h",0x83f,"lib");" (call_expression "do_gold_unreachable("../../gold/options.h",0x83f,"lib")" identifier (argument_list "("../../gold/options.h",0x83f,"lib")" ( (string_literal ""../../gold/options.h"" " string_content ") , number_literal , (string_literal ""lib"" " string_content ") ))) ;) })) (expression_statement "lib = this->input_argument_->lib_;" (assignment_expression "lib = this->input_argument_->lib_" identifier = (field_expression "this->input_argument_->lib_" (field_expression "this->input_argument_" identifier -> field_identifier) -> field_identifier)) ;) (if_statement "if (lib == (Input_file_lib *)0x0) {\n                    /* WARNING: Subroutine does not return */\n    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);\n  }" if (parenthesized_expression "(lib == (Input_file_lib *)0x0)" ( (binary_expression "lib == (Input_file_lib *)0x0" identifier == (cast_expression "(Input_file_lib *)0x0" ( (type_descriptor "Input_file_lib *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);\n  }" { comment (labeled_statement "Input_argument::lib((Input_argument *)this,(Input_argument *)workqueue);" statement_identifier : (ERROR ":" :) (expression_statement "lib((Input_argument *)this,(Input_argument *)workqueue);" (call_expression "lib((Input_argument *)this,(Input_argument *)workqueue)" identifier (argument_list "((Input_argument *)this,(Input_argument *)workqueue)" ( (cast_expression "(Input_argument *)this" ( (type_descriptor "Input_argument *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(Input_argument *)workqueue" ( (type_descriptor "Input_argument *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) })) (if_statement "if ((lib->options_).whole_archive_ != false) {\n    bVar7 = do_whole_lib_group(this,workqueue);\n    return bVar7;\n  }" if (parenthesized_expression "((lib->options_).whole_archive_ != false)" ( (binary_expression "(lib->options_).whole_archive_ != false" (field_expression "(lib->options_).whole_archive_" (parenthesized_expression "(lib->options_)" ( (field_expression "lib->options_" identifier -> field_identifier) )) . field_identifier) != false) )) (compound_statement "{\n    bVar7 = do_whole_lib_group(this,workqueue);\n    return bVar7;\n  }" { (expression_statement "bVar7 = do_whole_lib_group(this,workqueue);" (assignment_expression "bVar7 = do_whole_lib_group(this,workqueue)" identifier = (call_expression "do_whole_lib_group(this,workqueue)" identifier (argument_list "(this,workqueue)" ( identifier , identifier )))) ;) (return_statement "return bVar7;" return identifier ;) })) (expression_statement "this_00 = (Lib_group *)operator_new(0x30);" (assignment_expression "this_00 = (Lib_group *)operator_new(0x30)" identifier = (cast_expression "(Lib_group *)operator_new(0x30)" ( (type_descriptor "Lib_group *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x30)" identifier (argument_list "(0x30)" ( number_literal ))))) ;) comment (labeled_statement "Lib_group::Lib_group(this_00,lib,&this->super_Task);" statement_identifier : (ERROR ":" :) (expression_statement "Lib_group(this_00,lib,&this->super_Task);" (call_expression "Lib_group(this_00,lib,&this->super_Task)" identifier (argument_list "(this_00,lib,&this->super_Task)" ( identifier , identifier , (pointer_expression "&this->super_Task" & (field_expression "this->super_Task" identifier -> field_identifier)) ))) ;)) (expression_statement "t = (Task *)operator_new(0x70);" (assignment_expression "t = (Task *)operator_new(0x70)" identifier = (cast_expression "(Task *)operator_new(0x70)" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x70)" identifier (argument_list "(0x70)" ( number_literal ))))) ;) (expression_statement "pIVar1 = this->input_objects_;" (assignment_expression "pIVar1 = this->input_objects_" identifier = (field_expression "this->input_objects_" identifier -> field_identifier)) ;) (expression_statement "pLVar2 = this->layout_;" (assignment_expression "pLVar2 = this->layout_" identifier = (field_expression "this->layout_" identifier -> field_identifier)) ;) (expression_statement "pSVar3 = this->symtab_;" (assignment_expression "pSVar3 = this->symtab_" identifier = (field_expression "this->symtab_" identifier -> field_identifier)) ;) (expression_statement "pTVar4 = this->next_blocker_;" (assignment_expression "pTVar4 = this->next_blocker_" identifier = (field_expression "this->next_blocker_" identifier -> field_identifier)) ;) (expression_statement "t->list_next_ = (Task *)0x0;" (assignment_expression "t->list_next_ = (Task *)0x0" (field_expression "t->list_next_" identifier -> field_identifier) = (cast_expression "(Task *)0x0" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2;" (assignment_expression "(t->name_)._M_dataplus._M_p = (pointer)&(t->name_).field_2" (field_expression "(t->name_)._M_dataplus._M_p" (field_expression "(t->name_)._M_dataplus" (parenthesized_expression "(t->name_)" ( (field_expression "t->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&(t->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "(t->name_).field_2" (parenthesized_expression "(t->name_)" ( (field_expression "t->name_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8;" (assignment_expression "t->_vptr_Task = (_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8" (field_expression "t->_vptr_Task" identifier -> field_identifier) = (cast_expression "(_func_int_varargs **)&PTR__Add_lib_group_symbols_0042c0a8" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&PTR__Add_lib_group_symbols_0042c0a8" & identifier))) ;) (expression_statement "(t->name_)._M_string_length = 0;" (assignment_expression "(t->name_)._M_string_length = 0" (field_expression "(t->name_)._M_string_length" (parenthesized_expression "(t->name_)" ( (field_expression "t->name_" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(t->name_).field_2._M_local_buf[0] = '\0';" (assignment_expression "(t->name_).field_2._M_local_buf[0] = '\0'" (subscript_expression "(t->name_).field_2._M_local_buf[0]" (field_expression "(t->name_).field_2._M_local_buf" (field_expression "(t->name_).field_2" (parenthesized_expression "(t->name_)" ( (field_expression "t->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "t->should_run_soon_ = false;" (assignment_expression "t->should_run_soon_ = false" (field_expression "t->should_run_soon_" identifier -> field_identifier) = false) ;) (expression_statement "t[1]._vptr_Task = (_func_int_varargs **)pSVar3;" (assignment_expression "t[1]._vptr_Task = (_func_int_varargs **)pSVar3" (field_expression "t[1]._vptr_Task" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_func_int_varargs **)pSVar3" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "t[1].list_next_ = (Task *)pLVar2;" (assignment_expression "t[1].list_next_ = (Task *)pLVar2" (field_expression "t[1].list_next_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(Task *)pLVar2" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "t[1].name_._M_dataplus._M_p = (pointer)pIVar1;" (assignment_expression "t[1].name_._M_dataplus._M_p = (pointer)pIVar1" (field_expression "t[1].name_._M_dataplus._M_p" (field_expression "t[1].name_._M_dataplus" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)pIVar1" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "t[1].name_._M_string_length = (size_type)this_00;" (assignment_expression "t[1].name_._M_string_length = (size_type)this_00" (field_expression "t[1].name_._M_string_length" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = (cast_expression "(size_type)this_00" ( (type_descriptor "size_type" type_identifier) ) identifier)) ;) (expression_statement "t[1].name_.field_2._M_allocated_capacity = 0;" (assignment_expression "t[1].name_.field_2._M_allocated_capacity = 0" (field_expression "t[1].name_.field_2._M_allocated_capacity" (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "*(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0;" (assignment_expression "*(undefined8 *)((long)&t[1].name_.field_2 + 8) = 0" (pointer_expression "*(undefined8 *)((long)&t[1].name_.field_2 + 8)" * (cast_expression "(undefined8 *)((long)&t[1].name_.field_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&t[1].name_.field_2 + 8)" ( (binary_expression "(long)&t[1].name_.field_2 + 8" (cast_expression "(long)&t[1].name_.field_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&t[1].name_.field_2" & (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(Task_token **)&t[1].should_run_soon_ = pTVar4;" (assignment_expression "*(Task_token **)&t[1].should_run_soon_ = pTVar4" (pointer_expression "*(Task_token **)&t[1].should_run_soon_" * (cast_expression "(Task_token **)&t[1].should_run_soon_" ( (type_descriptor "Task_token **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&t[1].should_run_soon_" & (field_expression "t[1].should_run_soon_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "pcVar9 = (char *)operator_new(0x20);" (assignment_expression "pcVar9 = (char *)operator_new(0x20)" identifier = (cast_expression "(char *)operator_new(0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (ERROR "pIVar10 = (lib->files_).\n            super__Vector_base<gold::Input_argument,_std::allocator<gold::" (comma_expression "pIVar10 = (lib->files_).\n            super__Vector_base<gold::Input_argument,_std" (assignment_expression "pIVar10 = (lib->files_).\n            super__Vector_base<gold" identifier = (binary_expression "(lib->files_).\n            super__Vector_base<gold" (field_expression "(lib->files_).\n            super__Vector_base" (parenthesized_expression "(lib->files_)" ( (field_expression "lib->files_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Input_argument" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Input_argument>_>._M_impl.\n            _M_start;" (field_expression "Input_argument>_>._M_impl.\n            _M_start" (field_expression "Input_argument>_>._M_impl" (binary_expression "Input_argument>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "*pcVar9 = '\x01';" (assignment_expression "*pcVar9 = '\x01'" (pointer_expression "*pcVar9" * identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcVar9[4] = '\0';" (assignment_expression "pcVar9[4] = '\0'" (subscript_expression "pcVar9[4]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[5] = '\0';" (assignment_expression "pcVar9[5] = '\0'" (subscript_expression "pcVar9[5]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[6] = '\0';" (assignment_expression "pcVar9[6] = '\0'" (subscript_expression "pcVar9[6]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[7] = '\0';" (assignment_expression "pcVar9[7] = '\0'" (subscript_expression "pcVar9[7]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[8] = '\0';" (assignment_expression "pcVar9[8] = '\0'" (subscript_expression "pcVar9[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[9] = '\0';" (assignment_expression "pcVar9[9] = '\0'" (subscript_expression "pcVar9[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[10] = '\0';" (assignment_expression "pcVar9[10] = '\0'" (subscript_expression "pcVar9[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xb] = '\0';" (assignment_expression "pcVar9[0xb] = '\0'" (subscript_expression "pcVar9[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xc] = '\0';" (assignment_expression "pcVar9[0xc] = '\0'" (subscript_expression "pcVar9[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xd] = '\0';" (assignment_expression "pcVar9[0xd] = '\0'" (subscript_expression "pcVar9[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xe] = '\0';" (assignment_expression "pcVar9[0xe] = '\0'" (subscript_expression "pcVar9[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xf] = '\0';" (assignment_expression "pcVar9[0xf] = '\0'" (subscript_expression "pcVar9[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x10] = '\0';" (assignment_expression "pcVar9[0x10] = '\0'" (subscript_expression "pcVar9[0x10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x11] = '\0';" (assignment_expression "pcVar9[0x11] = '\0'" (subscript_expression "pcVar9[0x11]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x12] = '\0';" (assignment_expression "pcVar9[0x12] = '\0'" (subscript_expression "pcVar9[0x12]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x13] = '\0';" (assignment_expression "pcVar9[0x13] = '\0'" (subscript_expression "pcVar9[0x13]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x14] = '\0';" (assignment_expression "pcVar9[0x14] = '\0'" (subscript_expression "pcVar9[0x14]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x15] = '\0';" (assignment_expression "pcVar9[0x15] = '\0'" (subscript_expression "pcVar9[0x15]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x16] = '\0';" (assignment_expression "pcVar9[0x16] = '\0'" (subscript_expression "pcVar9[0x16]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x17] = '\0';" (assignment_expression "pcVar9[0x17] = '\0'" (subscript_expression "pcVar9[0x17]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x18] = '\0';" (assignment_expression "pcVar9[0x18] = '\0'" (subscript_expression "pcVar9[0x18]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x19] = '\0';" (assignment_expression "pcVar9[0x19] = '\0'" (subscript_expression "pcVar9[0x19]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1a] = '\0';" (assignment_expression "pcVar9[0x1a] = '\0'" (subscript_expression "pcVar9[0x1a]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1b] = '\0';" (assignment_expression "pcVar9[0x1b] = '\0'" (subscript_expression "pcVar9[0x1b]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1c] = '\0';" (assignment_expression "pcVar9[0x1c] = '\0'" (subscript_expression "pcVar9[0x1c]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1d] = '\0';" (assignment_expression "pcVar9[0x1d] = '\0'" (subscript_expression "pcVar9[0x1d]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1e] = '\0';" (assignment_expression "pcVar9[0x1e] = '\0'" (subscript_expression "pcVar9[0x1e]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0x1f] = '\0';" (assignment_expression "pcVar9[0x1f] = '\0'" (subscript_expression "pcVar9[0x1f]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.\n      _M_impl._M_finish) {\n    lVar12 = 0x18;\n    pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                      ._M_impl._M_start;\n    iVar8 = 0;\n    while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }\n  }" if (parenthesized_expression "(pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>.\n      _M_impl._M_finish)" ( (ERROR "pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std::allocator<gold::" (comma_expression "pIVar10 !=\n      (lib->files_).super__Vector_base<gold::Input_argument,_std" (binary_expression "pIVar10 !=\n      (lib->files_).super__Vector_base<gold" identifier != (binary_expression "(lib->files_).super__Vector_base<gold" (field_expression "(lib->files_).super__Vector_base" (parenthesized_expression "(lib->files_)" ( (field_expression "lib->files_" identifier -> field_identifier) )) . field_identifier) < identifier)) (ERROR "::Input_argument" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Input_argument>_>.\n      _M_impl._M_finish" (field_expression "Input_argument>_>.\n      _M_impl" (binary_expression "Input_argument>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) (compound_statement "{\n    lVar12 = 0x18;\n    pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                      ._M_impl._M_start;\n    iVar8 = 0;\n    while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }\n  }" { (expression_statement "lVar12 = 0x18;" (assignment_expression "lVar12 = 0x18" identifier = number_literal) ;) (ERROR "pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std::allocator<gold::" (comma_expression "pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold::Archive_member,_std" (assignment_expression "pTVar11 = (Task *)(this_00->members_).\n                      super__Vector_base<gold" identifier = (binary_expression "(Task *)(this_00->members_).\n                      super__Vector_base<gold" (cast_expression "(Task *)(this_00->members_).\n                      super__Vector_base" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(this_00->members_).\n                      super__Vector_base" (parenthesized_expression "(this_00->members_)" ( (field_expression "this_00->members_" identifier -> field_identifier) )) . field_identifier)) < identifier)) (ERROR "::Archive_member" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (expression_statement "Archive_member>_>\n                      ._M_impl._M_start;" (field_expression "Archive_member>_>\n                      ._M_impl._M_start" (field_expression "Archive_member>_>\n                      ._M_impl" (binary_expression "Archive_member>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "iVar8 = 0;" (assignment_expression "iVar8 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      pcVar9[8] = '\0';\n      pcVar9[9] = '\0';\n      pcVar9[10] = '\0';\n      pcVar9[0xb] = '\0';\n      pcVar9[0xc] = '\0';\n      pcVar9[0xd] = '\0';\n      pcVar9[0xe] = '\0';\n      pcVar9[0xf] = '\0';\n      *(int *)(pcVar9 + 4) = iVar8 + 1;\n      t_00 = (Task *)operator_new(0x90);\n      iVar8 = this->dirindex_;\n      pDVar5 = this->dirpath_;\n      pLVar2 = this->layout_;\n      pSVar3 = this->symtab_;\n      *(pointer *)&t_00[1].should_run_soon_ = pIVar10;\n      pIVar1 = this->input_objects_;\n      *(int *)&t_00[1].name_.field_2 = iVar8;\n      pIVar10 = pIVar10 + 1;\n      pMVar6 = this->mapfile_;\n      t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;\n      t_00[1].name_._M_string_length = (size_type)pDVar5;\n      t_00->list_next_ = (Task *)0x0;\n      (t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;\n      (t_00->name_)._M_string_length = 0;\n      (t_00->name_).field_2._M_local_buf[0] = '\0';\n      t_00->should_run_soon_ = false;\n      t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;\n      t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;\n      t_00[1].list_next_ = (Task *)pSVar3;\n      *(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;\n      t_00[2]._vptr_Task = (_func_int_varargs **)0x0;\n      t_00[2].list_next_ = pTVar11;\n      t_00[2].name_._M_dataplus._M_p = (pointer)0x0;\n      t_00[2].name_._M_string_length = (size_type)pcVar9;\n      Workqueue::queue_soon(workqueue,t_00);\n      if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;\n      pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);\n      lVar12 = lVar12 + 0x18;\n      if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }\n      iVar8 = *(int *)(pcVar9 + 4);\n    }" { (expression_statement "pcVar9[8] = '\0';" (assignment_expression "pcVar9[8] = '\0'" (subscript_expression "pcVar9[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[9] = '\0';" (assignment_expression "pcVar9[9] = '\0'" (subscript_expression "pcVar9[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[10] = '\0';" (assignment_expression "pcVar9[10] = '\0'" (subscript_expression "pcVar9[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xb] = '\0';" (assignment_expression "pcVar9[0xb] = '\0'" (subscript_expression "pcVar9[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xc] = '\0';" (assignment_expression "pcVar9[0xc] = '\0'" (subscript_expression "pcVar9[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xd] = '\0';" (assignment_expression "pcVar9[0xd] = '\0'" (subscript_expression "pcVar9[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xe] = '\0';" (assignment_expression "pcVar9[0xe] = '\0'" (subscript_expression "pcVar9[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar9[0xf] = '\0';" (assignment_expression "pcVar9[0xf] = '\0'" (subscript_expression "pcVar9[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(int *)(pcVar9 + 4) = iVar8 + 1;" (assignment_expression "*(int *)(pcVar9 + 4) = iVar8 + 1" (pointer_expression "*(int *)(pcVar9 + 4)" * (cast_expression "(int *)(pcVar9 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 4)" ( (binary_expression "pcVar9 + 4" identifier + number_literal) )))) = (binary_expression "iVar8 + 1" identifier + number_literal)) ;) (expression_statement "t_00 = (Task *)operator_new(0x90);" (assignment_expression "t_00 = (Task *)operator_new(0x90)" identifier = (cast_expression "(Task *)operator_new(0x90)" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new(0x90)" identifier (argument_list "(0x90)" ( number_literal ))))) ;) (expression_statement "iVar8 = this->dirindex_;" (assignment_expression "iVar8 = this->dirindex_" identifier = (field_expression "this->dirindex_" identifier -> field_identifier)) ;) (expression_statement "pDVar5 = this->dirpath_;" (assignment_expression "pDVar5 = this->dirpath_" identifier = (field_expression "this->dirpath_" identifier -> field_identifier)) ;) (expression_statement "pLVar2 = this->layout_;" (assignment_expression "pLVar2 = this->layout_" identifier = (field_expression "this->layout_" identifier -> field_identifier)) ;) (expression_statement "pSVar3 = this->symtab_;" (assignment_expression "pSVar3 = this->symtab_" identifier = (field_expression "this->symtab_" identifier -> field_identifier)) ;) (expression_statement "*(pointer *)&t_00[1].should_run_soon_ = pIVar10;" (assignment_expression "*(pointer *)&t_00[1].should_run_soon_ = pIVar10" (pointer_expression "*(pointer *)&t_00[1].should_run_soon_" * (cast_expression "(pointer *)&t_00[1].should_run_soon_" ( (type_descriptor "pointer *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&t_00[1].should_run_soon_" & (field_expression "t_00[1].should_run_soon_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier)))) = identifier) ;) (expression_statement "pIVar1 = this->input_objects_;" (assignment_expression "pIVar1 = this->input_objects_" identifier = (field_expression "this->input_objects_" identifier -> field_identifier)) ;) (expression_statement "*(int *)&t_00[1].name_.field_2 = iVar8;" (assignment_expression "*(int *)&t_00[1].name_.field_2 = iVar8" (pointer_expression "*(int *)&t_00[1].name_.field_2" * (cast_expression "(int *)&t_00[1].name_.field_2" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&t_00[1].name_.field_2" & (field_expression "t_00[1].name_.field_2" (field_expression "t_00[1].name_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) = identifier) ;) (expression_statement "pIVar10 = pIVar10 + 1;" (assignment_expression "pIVar10 = pIVar10 + 1" identifier = (binary_expression "pIVar10 + 1" identifier + number_literal)) ;) (expression_statement "pMVar6 = this->mapfile_;" (assignment_expression "pMVar6 = this->mapfile_" identifier = (field_expression "this->mapfile_" identifier -> field_identifier)) ;) (expression_statement "t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2;" (assignment_expression "t_00[1].name_._M_dataplus._M_p = (pointer)pLVar2" (field_expression "t_00[1].name_._M_dataplus._M_p" (field_expression "t_00[1].name_._M_dataplus" (field_expression "t_00[1].name_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)pLVar2" ( (type_descriptor "pointer" type_identifier) ) identifier)) ;) (expression_statement "t_00[1].name_._M_string_length = (size_type)pDVar5;" (assignment_expression "t_00[1].name_._M_string_length = (size_type)pDVar5" (field_expression "t_00[1].name_._M_string_length" (field_expression "t_00[1].name_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) = (cast_expression "(size_type)pDVar5" ( (type_descriptor "size_type" type_identifier) ) identifier)) ;) (expression_statement "t_00->list_next_ = (Task *)0x0;" (assignment_expression "t_00->list_next_ = (Task *)0x0" (field_expression "t_00->list_next_" identifier -> field_identifier) = (cast_expression "(Task *)0x0" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2;" (assignment_expression "(t_00->name_)._M_dataplus._M_p = (pointer)&(t_00->name_).field_2" (field_expression "(t_00->name_)._M_dataplus._M_p" (field_expression "(t_00->name_)._M_dataplus" (parenthesized_expression "(t_00->name_)" ( (field_expression "t_00->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (binary_expression "(pointer)&(t_00->name_).field_2" (parenthesized_expression "(pointer)" ( identifier )) & (field_expression "(t_00->name_).field_2" (parenthesized_expression "(t_00->name_)" ( (field_expression "t_00->name_" identifier -> field_identifier) )) . field_identifier))) ;) (expression_statement "(t_00->name_)._M_string_length = 0;" (assignment_expression "(t_00->name_)._M_string_length = 0" (field_expression "(t_00->name_)._M_string_length" (parenthesized_expression "(t_00->name_)" ( (field_expression "t_00->name_" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (expression_statement "(t_00->name_).field_2._M_local_buf[0] = '\0';" (assignment_expression "(t_00->name_).field_2._M_local_buf[0] = '\0'" (subscript_expression "(t_00->name_).field_2._M_local_buf[0]" (field_expression "(t_00->name_).field_2._M_local_buf" (field_expression "(t_00->name_).field_2" (parenthesized_expression "(t_00->name_)" ( (field_expression "t_00->name_" identifier -> field_identifier) )) . field_identifier) . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "t_00->should_run_soon_ = false;" (assignment_expression "t_00->should_run_soon_ = false" (field_expression "t_00->should_run_soon_" identifier -> field_identifier) = false) ;) (expression_statement "t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0;" (assignment_expression "t_00->_vptr_Task = (_func_int_varargs **)&PTR__Read_symbols_0042aac0" (field_expression "t_00->_vptr_Task" identifier -> field_identifier) = (cast_expression "(_func_int_varargs **)&PTR__Read_symbols_0042aac0" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&PTR__Read_symbols_0042aac0" & identifier))) ;) (expression_statement "t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1;" (assignment_expression "t_00[1]._vptr_Task = (_func_int_varargs **)pIVar1" (field_expression "t_00[1]._vptr_Task" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_func_int_varargs **)pIVar1" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "t_00[1].list_next_ = (Task *)pSVar3;" (assignment_expression "t_00[1].list_next_ = (Task *)pSVar3" (field_expression "t_00[1].list_next_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(Task *)pSVar3" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "*(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;" (assignment_expression "*(Mapfile **)((long)&t_00[1].name_.field_2 + 8) = pMVar6" (pointer_expression "*(Mapfile **)((long)&t_00[1].name_.field_2 + 8)" * (cast_expression "(Mapfile **)((long)&t_00[1].name_.field_2 + 8)" ( (type_descriptor "Mapfile **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)&t_00[1].name_.field_2 + 8)" ( (binary_expression "(long)&t_00[1].name_.field_2 + 8" (cast_expression "(long)&t_00[1].name_.field_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&t_00[1].name_.field_2" & (field_expression "t_00[1].name_.field_2" (field_expression "t_00[1].name_" (subscript_expression "t_00[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) = identifier) ;) (expression_statement "t_00[2]._vptr_Task = (_func_int_varargs **)0x0;" (assignment_expression "t_00[2]._vptr_Task = (_func_int_varargs **)0x0" (field_expression "t_00[2]._vptr_Task" (subscript_expression "t_00[2]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(_func_int_varargs **)0x0" ( (type_descriptor "_func_int_varargs **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "t_00[2].list_next_ = pTVar11;" (assignment_expression "t_00[2].list_next_ = pTVar11" (field_expression "t_00[2].list_next_" (subscript_expression "t_00[2]" identifier [ number_literal ]) . field_identifier) = identifier) ;) (expression_statement "t_00[2].name_._M_dataplus._M_p = (pointer)0x0;" (assignment_expression "t_00[2].name_._M_dataplus._M_p = (pointer)0x0" (field_expression "t_00[2].name_._M_dataplus._M_p" (field_expression "t_00[2].name_._M_dataplus" (field_expression "t_00[2].name_" (subscript_expression "t_00[2]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) = (cast_expression "(pointer)0x0" ( (type_descriptor "pointer" type_identifier) ) number_literal)) ;) (expression_statement "t_00[2].name_._M_string_length = (size_type)pcVar9;" (assignment_expression "t_00[2].name_._M_string_length = (size_type)pcVar9" (field_expression "t_00[2].name_._M_string_length" (field_expression "t_00[2].name_" (subscript_expression "t_00[2]" identifier [ number_literal ]) . field_identifier) . field_identifier) = (cast_expression "(size_type)pcVar9" ( (type_descriptor "size_type" type_identifier) ) identifier)) ;) (labeled_statement "Workqueue::queue_soon(workqueue,t_00);" statement_identifier : (ERROR ":" :) (expression_statement "queue_soon(workqueue,t_00);" (call_expression "queue_soon(workqueue,t_00)" identifier (argument_list "(workqueue,t_00)" ( identifier , identifier ))) ;)) (if_statement "if ((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10) break;" if (parenthesized_expression "((lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::Input_argument>_>._M_impl.\n          _M_finish == pIVar10)" ( (ERROR "(lib->files_).\n          super__Vector_base<gold::Input_argument,_std::allocator<gold::" (comma_expression "(lib->files_).\n          super__Vector_base<gold::Input_argument,_std" (binary_expression "(lib->files_).\n          super__Vector_base<gold" (field_expression "(lib->files_).\n          super__Vector_base" (parenthesized_expression "(lib->files_)" ( (field_expression "lib->files_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Input_argument" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (binary_expression "Input_argument>_>._M_impl.\n          _M_finish == pIVar10" (field_expression "Input_argument>_>._M_impl.\n          _M_finish" (field_expression "Input_argument>_>._M_impl" (binary_expression "Input_argument>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) == identifier) )) (break_statement "break;" break ;)) (expression_statement "pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12);" (assignment_expression "pTVar11 = (Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12)" identifier = (cast_expression "(Task *)((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12)" ( (type_descriptor "Task *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12)" ( (binary_expression "(long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_ + lVar12" (cast_expression "(long)&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_" & (field_expression "((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)->obj_" (parenthesized_expression "((this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::Archive_member>_>\n                                 ._M_impl._M_start)" ( (ERROR "(this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std::allocator<gold::" (comma_expression "(this_00->members_).\n                                 super__Vector_base<gold::Archive_member,_std" (binary_expression "(this_00->members_).\n                                 super__Vector_base<gold" (field_expression "(this_00->members_).\n                                 super__Vector_base" (parenthesized_expression "(this_00->members_)" ( (field_expression "this_00->members_" identifier -> field_identifier) )) . field_identifier) < identifier) (ERROR "::Archive_member" : : identifier) , identifier) : : (binary_expression "allocator<gold" identifier < identifier) : :) (field_expression "Archive_member>_>\n                                 ._M_impl._M_start" (field_expression "Archive_member>_>\n                                 ._M_impl" (binary_expression "Archive_member>_" identifier > identifier) (ERROR ">" >) . field_identifier) . field_identifier) )) -> field_identifier))) + identifier) )))) ;) (expression_statement "lVar12 = lVar12 + 0x18;" (assignment_expression "lVar12 = lVar12 + 0x18" identifier = (binary_expression "lVar12 + 0x18" identifier + number_literal)) ;) (if_statement "if (*pcVar9 == '\0') {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }" if (parenthesized_expression "(*pcVar9 == '\0')" ( (binary_expression "*pcVar9 == '\0'" (pointer_expression "*pcVar9" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");\n      }" { comment (expression_statement "do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker");" (call_expression "do_gold_unreachable("../../gold/token.h",0x8e,"add_blocker")" identifier (argument_list "("../../gold/token.h",0x8e,"add_blocker")" ( (string_literal ""../../gold/token.h"" " string_content ") , number_literal , (string_literal ""add_blocker"" " string_content ") ))) ;) })) (expression_statement "iVar8 = *(int *)(pcVar9 + 4);" (assignment_expression "iVar8 = *(int *)(pcVar9 + 4)" identifier = (pointer_expression "*(int *)(pcVar9 + 4)" * (cast_expression "(int *)(pcVar9 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar9 + 4)" ( (binary_expression "pcVar9 + 4" identifier + number_literal) ))))) ;) })) })) (expression_statement "pTVar4 = this->this_blocker_;" (assignment_expression "pTVar4 = this->this_blocker_" identifier = (field_expression "this->this_blocker_" identifier -> field_identifier)) ;) (if_statement "if ((t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {\n    *(char **)&t[1].name_.field_2 = pcVar9;\n    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;\n    Workqueue::queue_soon(workqueue,t);\n    return true;\n  }" if (parenthesized_expression "((t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0))" ( (binary_expression "(t[1].name_.field_2._M_allocated_capacity == 0) &&\n     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)" (parenthesized_expression "(t[1].name_.field_2._M_allocated_capacity == 0)" ( (binary_expression "t[1].name_.field_2._M_allocated_capacity == 0" (field_expression "t[1].name_.field_2._M_allocated_capacity" (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier) . field_identifier) == number_literal) )) && (parenthesized_expression "(*(long *)((long)&t[1].name_.field_2 + 8) == 0)" ( (binary_expression "*(long *)((long)&t[1].name_.field_2 + 8) == 0" (pointer_expression "*(long *)((long)&t[1].name_.field_2 + 8)" * (cast_expression "(long *)((long)&t[1].name_.field_2 + 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&t[1].name_.field_2 + 8)" ( (binary_expression "(long)&t[1].name_.field_2 + 8" (cast_expression "(long)&t[1].name_.field_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&t[1].name_.field_2" & (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n    *(char **)&t[1].name_.field_2 = pcVar9;\n    *(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;\n    Workqueue::queue_soon(workqueue,t);\n    return true;\n  }" { (expression_statement "*(char **)&t[1].name_.field_2 = pcVar9;" (assignment_expression "*(char **)&t[1].name_.field_2 = pcVar9" (pointer_expression "*(char **)&t[1].name_.field_2" * (cast_expression "(char **)&t[1].name_.field_2" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (pointer_expression "&t[1].name_.field_2" & (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier)))) = identifier) ;) (expression_statement "*(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4;" (assignment_expression "*(Task_token **)((long)&t[1].name_.field_2 + 8) = pTVar4" (pointer_expression "*(Task_token **)((long)&t[1].name_.field_2 + 8)" * (cast_expression "(Task_token **)((long)&t[1].name_.field_2 + 8)" ( (type_descriptor "Task_token **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)&t[1].name_.field_2 + 8)" ( (binary_expression "(long)&t[1].name_.field_2 + 8" (cast_expression "(long)&t[1].name_.field_2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&t[1].name_.field_2" & (field_expression "t[1].name_.field_2" (field_expression "t[1].name_" (subscript_expression "t[1]" identifier [ number_literal ]) . field_identifier) . field_identifier))) + number_literal) )))) = identifier) ;) (labeled_statement "Workqueue::queue_soon(workqueue,t);" statement_identifier : (ERROR ":" :) (expression_statement "queue_soon(workqueue,t);" (call_expression "queue_soon(workqueue,t)" identifier (argument_list "(workqueue,t)" ( identifier , identifier ))) ;)) (return_statement "return true;" return true ;) })) comment (expression_statement "do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker");" (call_expression "do_gold_unreachable("../../gold/archive.h",0x228,"set_blocker")" identifier (argument_list "("../../gold/archive.h",0x228,"set_blocker")" ( (string_literal ""../../gold/archive.h"" " string_content ") , number_literal , (string_literal ""set_blocker"" " string_content ") ))) ;) })))
(translation_unit "undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    \n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}\n\n" (function_definition "undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    \n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" type_identifier (function_declarator "FUN_0023fbf0(long param_1,undefined8 param_2)" identifier (parameter_list "(long param_1,undefined8 param_2)" ( (parameter_declaration "long param_1" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) ))) (compound_statement "{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    \n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "undefined8 uVar3;" type_identifier identifier ;) (declaration "undefined8 uVar4;" type_identifier identifier ;) (declaration "undefined8 uVar5;" type_identifier identifier ;) (declaration "undefined8 uVar6;" type_identifier identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined8 *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "long lVar13;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar15;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" if (parenthesized_expression "(**(char **)(param_1 + 0x68) == '\0')" ( (binary_expression "**(char **)(param_1 + 0x68) == '\0'" (pointer_expression "**(char **)(param_1 + 0x68)" * (pointer_expression "*(char **)(param_1 + 0x68)" * (cast_expression "(char **)(param_1 + 0x68)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) ))))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" { (expression_statement "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);" (assignment_expression "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70)" identifier = (pointer_expression "*(long **)(*(char **)(param_1 + 0x68) + 0x70)" * (cast_expression "(long **)(*(char **)(param_1 + 0x68) + 0x70)" ( (type_descriptor "long **" (sized_type_specifier "long" long) (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(char **)(param_1 + 0x68) + 0x70)" ( (binary_expression "*(char **)(param_1 + 0x68) + 0x70" (pointer_expression "*(char **)(param_1 + 0x68)" * (cast_expression "(char **)(param_1 + 0x68)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 0x68)" ( (binary_expression "param_1 + 0x68" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" if (parenthesized_expression "(plVar2 != (long *)0x0)" ( (binary_expression "plVar2 != (long *)0x0" identifier != (cast_expression "(long *)0x0" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" { (if_statement "if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" if (parenthesized_expression "((char)plVar2[4] != '\0')" ( (binary_expression "(char)plVar2[4] != '\0'" (cast_expression "(char)plVar2[4]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar2[4]" identifier [ number_literal ])) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" { (expression_statement "uVar12 = FUN_0023fa60(param_1,param_2);" (assignment_expression "uVar12 = FUN_0023fa60(param_1,param_2)" identifier = (call_expression "FUN_0023fa60(param_1,param_2)" identifier (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (return_statement "return uVar12;" return identifier ;) })) (expression_statement "lVar8 = FUN_002d94a0(0x30);" (assignment_expression "lVar8 = FUN_002d94a0(0x30)" identifier = (call_expression "FUN_002d94a0(0x30)" identifier (argument_list "(0x30)" ( number_literal )))) ;) (expression_statement "FUN_0028dcf0(lVar8,plVar2,param_1);" (call_expression "FUN_0028dcf0(lVar8,plVar2,param_1)" identifier (argument_list "(lVar8,plVar2,param_1)" ( identifier , identifier , identifier ))) ;) (expression_statement "puVar9 = (undefined8 *)FUN_002d94a0(0x70);" (assignment_expression "puVar9 = (undefined8 *)FUN_002d94a0(0x70)" identifier = (cast_expression "(undefined8 *)FUN_002d94a0(0x70)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x70)" identifier (argument_list "(0x70)" ( number_literal ))))) ;) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x48)" * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x40)" * (cast_expression "(undefined8 *)(param_1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x88);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x88)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x88)" * (cast_expression "(undefined8 *)(param_1 + 0x88)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x88)" ( (binary_expression "param_1 + 0x88" identifier + number_literal) ))))) ;) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[2] = puVar9 + 4;" (assignment_expression "puVar9[2] = puVar9 + 4" (subscript_expression "puVar9[2]" identifier [ number_literal ]) = (binary_expression "puVar9 + 4" identifier + number_literal)) ;) (expression_statement "*puVar9 = &PTR_FUN_0042c0a8;" (assignment_expression "*puVar9 = &PTR_FUN_0042c0a8" (pointer_expression "*puVar9" * identifier) = (pointer_expression "&PTR_FUN_0042c0a8" & identifier)) ;) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar9 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 4)" * (cast_expression "(undefined1 *)(puVar9 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 4)" ( (binary_expression "puVar9 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar9 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 6)" * (cast_expression "(undefined1 *)(puVar9 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar9 + 6)" ( (binary_expression "puVar9 + 6" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar9[7] = uVar4;" (assignment_expression "puVar9[7] = uVar4" (subscript_expression "puVar9[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[8] = uVar3;" (assignment_expression "puVar9[8] = uVar3" (subscript_expression "puVar9[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[9] = uVar12;" (assignment_expression "puVar9[9] = uVar12" (subscript_expression "puVar9[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[10] = lVar8;" (assignment_expression "puVar9[10] = lVar8" (subscript_expression "puVar9[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[0xb] = 0;" (assignment_expression "puVar9[0xb] = 0" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[0xc] = 0;" (assignment_expression "puVar9[0xc] = 0" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar9[0xd] = uVar5;" (assignment_expression "puVar9[0xd] = uVar5" (subscript_expression "puVar9[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "pcVar10 = (char *)FUN_002d94a0(0x20);" (assignment_expression "pcVar10 = (char *)FUN_002d94a0(0x20)" identifier = (cast_expression "(char *)FUN_002d94a0(0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x20)" identifier (argument_list "(0x20)" ( number_literal ))))) ;) (expression_statement "lVar13 = *plVar2;" (assignment_expression "lVar13 = *plVar2" identifier = (pointer_expression "*plVar2" * identifier)) ;) (expression_statement "*pcVar10 = '\x01';" (assignment_expression "*pcVar10 = '\x01'" (pointer_expression "*pcVar10" * identifier) = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "pcVar10[4] = '\0';" (assignment_expression "pcVar10[4] = '\0'" (subscript_expression "pcVar10[4]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[5] = '\0';" (assignment_expression "pcVar10[5] = '\0'" (subscript_expression "pcVar10[5]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[6] = '\0';" (assignment_expression "pcVar10[6] = '\0'" (subscript_expression "pcVar10[6]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[7] = '\0';" (assignment_expression "pcVar10[7] = '\0'" (subscript_expression "pcVar10[7]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x10] = '\0';" (assignment_expression "pcVar10[0x10] = '\0'" (subscript_expression "pcVar10[0x10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x11] = '\0';" (assignment_expression "pcVar10[0x11] = '\0'" (subscript_expression "pcVar10[0x11]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x12] = '\0';" (assignment_expression "pcVar10[0x12] = '\0'" (subscript_expression "pcVar10[0x12]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x13] = '\0';" (assignment_expression "pcVar10[0x13] = '\0'" (subscript_expression "pcVar10[0x13]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x14] = '\0';" (assignment_expression "pcVar10[0x14] = '\0'" (subscript_expression "pcVar10[0x14]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x15] = '\0';" (assignment_expression "pcVar10[0x15] = '\0'" (subscript_expression "pcVar10[0x15]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x16] = '\0';" (assignment_expression "pcVar10[0x16] = '\0'" (subscript_expression "pcVar10[0x16]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x17] = '\0';" (assignment_expression "pcVar10[0x17] = '\0'" (subscript_expression "pcVar10[0x17]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x18] = '\0';" (assignment_expression "pcVar10[0x18] = '\0'" (subscript_expression "pcVar10[0x18]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x19] = '\0';" (assignment_expression "pcVar10[0x19] = '\0'" (subscript_expression "pcVar10[0x19]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1a] = '\0';" (assignment_expression "pcVar10[0x1a] = '\0'" (subscript_expression "pcVar10[0x1a]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1b] = '\0';" (assignment_expression "pcVar10[0x1b] = '\0'" (subscript_expression "pcVar10[0x1b]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1c] = '\0';" (assignment_expression "pcVar10[0x1c] = '\0'" (subscript_expression "pcVar10[0x1c]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1d] = '\0';" (assignment_expression "pcVar10[0x1d] = '\0'" (subscript_expression "pcVar10[0x1d]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1e] = '\0';" (assignment_expression "pcVar10[0x1e] = '\0'" (subscript_expression "pcVar10[0x1e]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0x1f] = '\0';" (assignment_expression "pcVar10[0x1f] = '\0'" (subscript_expression "pcVar10[0x1f]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" if (parenthesized_expression "(lVar13 != plVar2[1])" ( (binary_expression "lVar13 != plVar2[1]" identifier != (subscript_expression "plVar2[1]" identifier [ number_literal ])) )) (compound_statement "{\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" { (expression_statement "lVar15 = 0x18;" (assignment_expression "lVar15 = 0x18" identifier = number_literal) ;) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18);" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18)" identifier = (pointer_expression "*(long *)(lVar8 + 0x18)" * (cast_expression "(long *)(lVar8 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x18)" ( (binary_expression "lVar8 + 0x18" identifier + number_literal) ))))) ;) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" identifier = number_literal) ;) (while_statement "while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" { (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "*(int *)(pcVar10 + 4) = iVar7 + 1;" (assignment_expression "*(int *)(pcVar10 + 4) = iVar7 + 1" (pointer_expression "*(int *)(pcVar10 + 4)" * (cast_expression "(int *)(pcVar10 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 4)" ( (binary_expression "pcVar10 + 4" identifier + number_literal) )))) = (binary_expression "iVar7 + 1" identifier + number_literal)) ;) (expression_statement "puVar11 = (undefined8 *)FUN_002d94a0(0x90);" (assignment_expression "puVar11 = (undefined8 *)FUN_002d94a0(0x90)" identifier = (cast_expression "(undefined8 *)FUN_002d94a0(0x90)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_002d94a0(0x90)" identifier (argument_list "(0x90)" ( number_literal ))))) ;) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x58);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x58)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x58)" * (cast_expression "(undefined4 *)(param_1 + 0x58)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x58)" ( (binary_expression "param_1 + 0x58" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x50);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x50)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x50)" * (cast_expression "(undefined8 *)(param_1 + 0x50)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x50)" ( (binary_expression "param_1 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x48)" * (cast_expression "(undefined8 *)(param_1 + 0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x48)" ( (binary_expression "param_1 + 0x48" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x40)" * (cast_expression "(undefined8 *)(param_1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) ))))) ;) (expression_statement "puVar11[0xd] = lVar13;" (assignment_expression "puVar11[0xd] = lVar13" (subscript_expression "puVar11[0xd]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x38)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x38)" * (cast_expression "(undefined8 *)(param_1 + 0x38)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x38)" ( (binary_expression "param_1 + 0x38" identifier + number_literal) ))))) ;) (expression_statement "*(undefined4 *)(puVar11 + 0xb) = uVar1;" (assignment_expression "*(undefined4 *)(puVar11 + 0xb) = uVar1" (pointer_expression "*(undefined4 *)(puVar11 + 0xb)" * (cast_expression "(undefined4 *)(puVar11 + 0xb)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0xb)" ( (binary_expression "puVar11 + 0xb" identifier + number_literal) )))) = identifier) ;) (expression_statement "lVar13 = lVar13 + 0x80;" (assignment_expression "lVar13 = lVar13 + 0x80" identifier = (binary_expression "lVar13 + 0x80" identifier + number_literal)) ;) (expression_statement "uVar6 = *(undefined8 *)(param_1 + 0x60);" (assignment_expression "uVar6 = *(undefined8 *)(param_1 + 0x60)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x60)" * (cast_expression "(undefined8 *)(param_1 + 0x60)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x60)" ( (binary_expression "param_1 + 0x60" identifier + number_literal) ))))) ;) (expression_statement "puVar11[9] = uVar3;" (assignment_expression "puVar11[9] = uVar3" (subscript_expression "puVar11[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[10] = uVar12;" (assignment_expression "puVar11[10] = uVar12" (subscript_expression "puVar11[10]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[1] = 0;" (assignment_expression "puVar11[1] = 0" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[2] = puVar11 + 4;" (assignment_expression "puVar11[2] = puVar11 + 4" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = (binary_expression "puVar11 + 4" identifier + number_literal)) ;) (expression_statement "puVar11[3] = 0;" (assignment_expression "puVar11[3] = 0" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar11 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 4)" * (cast_expression "(undefined1 *)(puVar11 + 4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 4)" ( (binary_expression "puVar11 + 4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined1 *)(puVar11 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 6)" * (cast_expression "(undefined1 *)(puVar11 + 6)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 6)" ( (binary_expression "puVar11 + 6" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*puVar11 = &PTR_FUN_0042aac0;" (assignment_expression "*puVar11 = &PTR_FUN_0042aac0" (pointer_expression "*puVar11" * identifier) = (pointer_expression "&PTR_FUN_0042aac0" & identifier)) ;) (expression_statement "puVar11[7] = uVar5;" (assignment_expression "puVar11[7] = uVar5" (subscript_expression "puVar11[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[8] = uVar4;" (assignment_expression "puVar11[8] = uVar4" (subscript_expression "puVar11[8]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0xc] = uVar6;" (assignment_expression "puVar11[0xc] = uVar6" (subscript_expression "puVar11[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0xe] = 0;" (assignment_expression "puVar11[0xe] = 0" (subscript_expression "puVar11[0xe]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[0xf] = lVar14;" (assignment_expression "puVar11[0xf] = lVar14" (subscript_expression "puVar11[0xf]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[0x10] = 0;" (assignment_expression "puVar11[0x10] = 0" (subscript_expression "puVar11[0x10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[0x11] = pcVar10;" (assignment_expression "puVar11[0x11] = pcVar10" (subscript_expression "puVar11[0x11]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_002897a0(param_2,puVar11);" (call_expression "FUN_002897a0(param_2,puVar11)" identifier (argument_list "(param_2,puVar11)" ( identifier , identifier ))) ;) (if_statement "if (plVar2[1] == lVar13) break;" if (parenthesized_expression "(plVar2[1] == lVar13)" ( (binary_expression "plVar2[1] == lVar13" (subscript_expression "plVar2[1]" identifier [ number_literal ]) == identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18) + lVar15;" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18) + lVar15" identifier = (binary_expression "*(long *)(lVar8 + 0x18) + lVar15" (pointer_expression "*(long *)(lVar8 + 0x18)" * (cast_expression "(long *)(lVar8 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x18)" ( (binary_expression "lVar8 + 0x18" identifier + number_literal) )))) + identifier)) ;) (expression_statement "lVar15 = lVar15 + 0x18;" (assignment_expression "lVar15 = lVar15 + 0x18" identifier = (binary_expression "lVar15 + 0x18" identifier + number_literal)) ;) (if_statement "if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" if (parenthesized_expression "(*pcVar10 == '\0')" ( (binary_expression "*pcVar10 == '\0'" (pointer_expression "*pcVar10" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" { (expression_statement "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");" (call_expression "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker")" identifier (argument_list "("../../gold/token.h",0x8e,"add_blocker")" ( (string_literal ""../../gold/token.h"" " string_content ") , number_literal , (string_literal ""add_blocker"" " string_content ") ))) ;) })) (expression_statement "iVar7 = *(int *)(pcVar10 + 4);" (assignment_expression "iVar7 = *(int *)(pcVar10 + 4)" identifier = (pointer_expression "*(int *)(pcVar10 + 4)" * (cast_expression "(int *)(pcVar10 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar10 + 4)" ( (binary_expression "pcVar10 + 4" identifier + number_literal) ))))) ;) })) })) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x80);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x80)" identifier = (pointer_expression "*(undefined8 *)(param_1 + 0x80)" * (cast_expression "(undefined8 *)(param_1 + 0x80)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x80)" ( (binary_expression "param_1 + 0x80" identifier + number_literal) ))))) ;) (if_statement "if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" if (parenthesized_expression "((puVar9[0xb] == 0) && (puVar9[0xc] == 0))" ( (binary_expression "(puVar9[0xb] == 0) && (puVar9[0xc] == 0)" (parenthesized_expression "(puVar9[0xb] == 0)" ( (binary_expression "puVar9[0xb] == 0" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) == number_literal) )) && (parenthesized_expression "(puVar9[0xc] == 0)" ( (binary_expression "puVar9[0xc] == 0" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) == number_literal) ))) )) (compound_statement "{\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" { (expression_statement "puVar9[0xb] = pcVar10;" (assignment_expression "puVar9[0xb] = pcVar10" (subscript_expression "puVar9[0xb]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar9[0xc] = uVar12;" (assignment_expression "puVar9[0xc] = uVar12" (subscript_expression "puVar9[0xc]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_002897a0(param_2,puVar9);" (call_expression "FUN_002897a0(param_2,puVar9)" identifier (argument_list "(param_2,puVar9)" ( identifier , identifier ))) ;) (return_statement "return 1;" return number_literal ;) })) (expression_statement "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");" (call_expression "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker")" identifier (argument_list "("../../gold/archive.h",0x228,"set_blocker")" ( (string_literal ""../../gold/archive.h"" " string_content ") , number_literal , (string_literal ""set_blocker"" " string_content ") ))) ;) })) (expression_statement "FUN_0023ec40();" (call_expression "FUN_0023ec40()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);" (call_expression "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c)" identifier (argument_list "("../../gold/options.h",0x83f,&DAT_00382d1c)" ( (string_literal ""../../gold/options.h"" " string_content ") , number_literal , (pointer_expression "&DAT_00382d1c" & identifier) ))) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = 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 ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (subscript_expression IDENT [ LIT ])) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = 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 (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 ]) = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * 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 ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (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 (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) && (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (pointer_expression & IDENT) ))) ;) })))
(function_definition "undefined8 FUN_0023fbf0(long param_1,undefined8 param_2)\n\n{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    \n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" (type_identifier "undefined8") (function_declarator "FUN_0023fbf0(long param_1,undefined8 param_2)" (identifier "FUN_0023fbf0") (parameter_list "(long param_1,undefined8 param_2)" (( "(") (parameter_declaration "long param_1" (sized_type_specifier "long" (long "long")) (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) () ")"))) (compound_statement "{\n  undefined4 uVar1;\n  long *plVar2;\n  undefined8 uVar3;\n  undefined8 uVar4;\n  undefined8 uVar5;\n  undefined8 uVar6;\n  int iVar7;\n  long lVar8;\n  undefined8 *puVar9;\n  char *pcVar10;\n  undefined8 *puVar11;\n  undefined8 uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  \n  if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }\n                    \n  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);\n}" ({ "{") (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (declaration "long *plVar2;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar2" (* "*") (identifier "plVar2")) (; ";")) (declaration "undefined8 uVar3;" (type_identifier "undefined8") (identifier "uVar3") (; ";")) (declaration "undefined8 uVar4;" (type_identifier "undefined8") (identifier "uVar4") (; ";")) (declaration "undefined8 uVar5;" (type_identifier "undefined8") (identifier "uVar5") (; ";")) (declaration "undefined8 uVar6;" (type_identifier "undefined8") (identifier "uVar6") (; ";")) (declaration "int iVar7;" (primitive_type "int") (identifier "iVar7") (; ";")) (declaration "long lVar8;" (sized_type_specifier "long" (long "long")) (identifier "lVar8") (; ";")) (declaration "undefined8 *puVar9;" (type_identifier "undefined8") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "undefined8 *puVar11;" (type_identifier "undefined8") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "long lVar13;" (sized_type_specifier "long" (long "long")) (identifier "lVar13") (; ";")) (declaration "long lVar14;" (sized_type_specifier "long" (long "long")) (identifier "lVar14") (; ";")) (declaration "long lVar15;" (sized_type_specifier "long" (long "long")) (identifier "lVar15") (; ";")) (if_statement "if (**(char **)(param_1 + 0x68) == '\0') {\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" (if "if") (parenthesized_expression "(**(char **)(param_1 + 0x68) == '\0')" (( "(") (binary_expression "**(char **)(param_1 + 0x68) == '\0'" (pointer_expression "**(char **)(param_1 + 0x68)" (* "*") (pointer_expression "*(char **)(param_1 + 0x68)" (* "*") (cast_expression "(char **)(param_1 + 0x68)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x68)" (( "(") (binary_expression "param_1 + 0x68" (identifier "param_1") (+ "+") (number_literal "0x68")) () ")"))))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);\n    if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }\n    FUN_0023ec40();\n  }" ({ "{") (expression_statement "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);" (assignment_expression "plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70)" (identifier "plVar2") (= "=") (pointer_expression "*(long **)(*(char **)(param_1 + 0x68) + 0x70)" (* "*") (cast_expression "(long **)(*(char **)(param_1 + 0x68) + 0x70)" (( "(") (type_descriptor "long **" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(char **)(param_1 + 0x68) + 0x70)" (( "(") (binary_expression "*(char **)(param_1 + 0x68) + 0x70" (pointer_expression "*(char **)(param_1 + 0x68)" (* "*") (cast_expression "(char **)(param_1 + 0x68)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 0x68)" (( "(") (binary_expression "param_1 + 0x68" (identifier "param_1") (+ "+") (number_literal "0x68")) () ")")))) (+ "+") (number_literal "0x70")) () ")"))))) (; ";")) (if_statement "if (plVar2 != (long *)0x0) {\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" (if "if") (parenthesized_expression "(plVar2 != (long *)0x0)" (( "(") (binary_expression "plVar2 != (long *)0x0" (identifier "plVar2") (!= "!=") (cast_expression "(long *)0x0" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }\n      lVar8 = FUN_002d94a0(0x30);\n                    \n      FUN_0028dcf0(lVar8,plVar2,param_1);\n      puVar9 = (undefined8 *)FUN_002d94a0(0x70);\n      uVar12 = *(undefined8 *)(param_1 + 0x38);\n      uVar3 = *(undefined8 *)(param_1 + 0x48);\n      uVar4 = *(undefined8 *)(param_1 + 0x40);\n      uVar5 = *(undefined8 *)(param_1 + 0x88);\n      puVar9[1] = 0;\n      puVar9[2] = puVar9 + 4;\n      *puVar9 = &PTR_FUN_0042c0a8;\n      puVar9[3] = 0;\n      *(undefined1 *)(puVar9 + 4) = 0;\n      *(undefined1 *)(puVar9 + 6) = 0;\n      puVar9[7] = uVar4;\n      puVar9[8] = uVar3;\n      puVar9[9] = uVar12;\n      puVar9[10] = lVar8;\n      puVar9[0xb] = 0;\n      puVar9[0xc] = 0;\n      puVar9[0xd] = uVar5;\n      pcVar10 = (char *)FUN_002d94a0(0x20);\n      lVar13 = *plVar2;\n      *pcVar10 = '\x01';\n      pcVar10[4] = '\0';\n      pcVar10[5] = '\0';\n      pcVar10[6] = '\0';\n      pcVar10[7] = '\0';\n      pcVar10[8] = '\0';\n      pcVar10[9] = '\0';\n      pcVar10[10] = '\0';\n      pcVar10[0xb] = '\0';\n      pcVar10[0xc] = '\0';\n      pcVar10[0xd] = '\0';\n      pcVar10[0xe] = '\0';\n      pcVar10[0xf] = '\0';\n      pcVar10[0x10] = '\0';\n      pcVar10[0x11] = '\0';\n      pcVar10[0x12] = '\0';\n      pcVar10[0x13] = '\0';\n      pcVar10[0x14] = '\0';\n      pcVar10[0x15] = '\0';\n      pcVar10[0x16] = '\0';\n      pcVar10[0x17] = '\0';\n      pcVar10[0x18] = '\0';\n      pcVar10[0x19] = '\0';\n      pcVar10[0x1a] = '\0';\n      pcVar10[0x1b] = '\0';\n      pcVar10[0x1c] = '\0';\n      pcVar10[0x1d] = '\0';\n      pcVar10[0x1e] = '\0';\n      pcVar10[0x1f] = '\0';\n      if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }\n      uVar12 = *(undefined8 *)(param_1 + 0x80);\n      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }\n                    \n      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");\n    }" ({ "{") (if_statement "if ((char)plVar2[4] != '\0') {\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" (if "if") (parenthesized_expression "((char)plVar2[4] != '\0')" (( "(") (binary_expression "(char)plVar2[4] != '\0'" (cast_expression "(char)plVar2[4]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "plVar2[4]" (identifier "plVar2") ([ "[") (number_literal "4") (] "]"))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        uVar12 = FUN_0023fa60(param_1,param_2);\n        return uVar12;\n      }" ({ "{") (expression_statement "uVar12 = FUN_0023fa60(param_1,param_2);" (assignment_expression "uVar12 = FUN_0023fa60(param_1,param_2)" (identifier "uVar12") (= "=") (call_expression "FUN_0023fa60(param_1,param_2)" (identifier "FUN_0023fa60") (argument_list "(param_1,param_2)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") () ")")))) (; ";")) (return_statement "return uVar12;" (return "return") (identifier "uVar12") (; ";")) (} "}"))) (expression_statement "lVar8 = FUN_002d94a0(0x30);" (assignment_expression "lVar8 = FUN_002d94a0(0x30)" (identifier "lVar8") (= "=") (call_expression "FUN_002d94a0(0x30)" (identifier "FUN_002d94a0") (argument_list "(0x30)" (( "(") (number_literal "0x30") () ")")))) (; ";")) (expression_statement "FUN_0028dcf0(lVar8,plVar2,param_1);" (call_expression "FUN_0028dcf0(lVar8,plVar2,param_1)" (identifier "FUN_0028dcf0") (argument_list "(lVar8,plVar2,param_1)" (( "(") (identifier "lVar8") (, ",") (identifier "plVar2") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "puVar9 = (undefined8 *)FUN_002d94a0(0x70);" (assignment_expression "puVar9 = (undefined8 *)FUN_002d94a0(0x70)" (identifier "puVar9") (= "=") (cast_expression "(undefined8 *)FUN_002d94a0(0x70)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_002d94a0(0x70)" (identifier "FUN_002d94a0") (argument_list "(0x70)" (( "(") (number_literal "0x70") () ")"))))) (; ";")) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x38)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x38)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x38)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" (identifier "uVar3") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x48)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" (identifier "uVar4") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x88);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x88)" (identifier "uVar5") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x88)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x88)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x88)" (( "(") (binary_expression "param_1 + 0x88" (identifier "param_1") (+ "+") (number_literal "0x88")) () ")"))))) (; ";")) (expression_statement "puVar9[1] = 0;" (assignment_expression "puVar9[1] = 0" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[2] = puVar9 + 4;" (assignment_expression "puVar9[2] = puVar9 + 4" (subscript_expression "puVar9[2]" (identifier "puVar9") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "puVar9 + 4" (identifier "puVar9") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "*puVar9 = &PTR_FUN_0042c0a8;" (assignment_expression "*puVar9 = &PTR_FUN_0042c0a8" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (pointer_expression "&PTR_FUN_0042c0a8" (& "&") (identifier "PTR_FUN_0042c0a8"))) (; ";")) (expression_statement "puVar9[3] = 0;" (assignment_expression "puVar9[3] = 0" (subscript_expression "puVar9[3]" (identifier "puVar9") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(puVar9 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 4)" (* "*") (cast_expression "(undefined1 *)(puVar9 + 4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar9 + 4)" (( "(") (binary_expression "puVar9 + 4" (identifier "puVar9") (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(puVar9 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar9 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar9 + 6)" (* "*") (cast_expression "(undefined1 *)(puVar9 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar9 + 6)" (( "(") (binary_expression "puVar9 + 6" (identifier "puVar9") (+ "+") (number_literal "6")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[7] = uVar4;" (assignment_expression "puVar9[7] = uVar4" (subscript_expression "puVar9[7]" (identifier "puVar9") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (expression_statement "puVar9[8] = uVar3;" (assignment_expression "puVar9[8] = uVar3" (subscript_expression "puVar9[8]" (identifier "puVar9") ([ "[") (number_literal "8") (] "]")) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "puVar9[9] = uVar12;" (assignment_expression "puVar9[9] = uVar12" (subscript_expression "puVar9[9]" (identifier "puVar9") ([ "[") (number_literal "9") (] "]")) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "puVar9[10] = lVar8;" (assignment_expression "puVar9[10] = lVar8" (subscript_expression "puVar9[10]" (identifier "puVar9") ([ "[") (number_literal "10") (] "]")) (= "=") (identifier "lVar8")) (; ";")) (expression_statement "puVar9[0xb] = 0;" (assignment_expression "puVar9[0xb] = 0" (subscript_expression "puVar9[0xb]" (identifier "puVar9") ([ "[") (number_literal "0xb") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[0xc] = 0;" (assignment_expression "puVar9[0xc] = 0" (subscript_expression "puVar9[0xc]" (identifier "puVar9") ([ "[") (number_literal "0xc") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar9[0xd] = uVar5;" (assignment_expression "puVar9[0xd] = uVar5" (subscript_expression "puVar9[0xd]" (identifier "puVar9") ([ "[") (number_literal "0xd") (] "]")) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "pcVar10 = (char *)FUN_002d94a0(0x20);" (assignment_expression "pcVar10 = (char *)FUN_002d94a0(0x20)" (identifier "pcVar10") (= "=") (cast_expression "(char *)FUN_002d94a0(0x20)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_002d94a0(0x20)" (identifier "FUN_002d94a0") (argument_list "(0x20)" (( "(") (number_literal "0x20") () ")"))))) (; ";")) (expression_statement "lVar13 = *plVar2;" (assignment_expression "lVar13 = *plVar2" (identifier "lVar13") (= "=") (pointer_expression "*plVar2" (* "*") (identifier "plVar2"))) (; ";")) (expression_statement "*pcVar10 = '\x01';" (assignment_expression "*pcVar10 = '\x01'" (pointer_expression "*pcVar10" (* "*") (identifier "pcVar10")) (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "pcVar10[4] = '\0';" (assignment_expression "pcVar10[4] = '\0'" (subscript_expression "pcVar10[4]" (identifier "pcVar10") ([ "[") (number_literal "4") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[5] = '\0';" (assignment_expression "pcVar10[5] = '\0'" (subscript_expression "pcVar10[5]" (identifier "pcVar10") ([ "[") (number_literal "5") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[6] = '\0';" (assignment_expression "pcVar10[6] = '\0'" (subscript_expression "pcVar10[6]" (identifier "pcVar10") ([ "[") (number_literal "6") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[7] = '\0';" (assignment_expression "pcVar10[7] = '\0'" (subscript_expression "pcVar10[7]" (identifier "pcVar10") ([ "[") (number_literal "7") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" (identifier "pcVar10") ([ "[") (number_literal "8") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" (identifier "pcVar10") ([ "[") (number_literal "9") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" (identifier "pcVar10") ([ "[") (number_literal "10") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" (identifier "pcVar10") ([ "[") (number_literal "0xb") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" (identifier "pcVar10") ([ "[") (number_literal "0xc") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" (identifier "pcVar10") ([ "[") (number_literal "0xd") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" (identifier "pcVar10") ([ "[") (number_literal "0xe") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" (identifier "pcVar10") ([ "[") (number_literal "0xf") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x10] = '\0';" (assignment_expression "pcVar10[0x10] = '\0'" (subscript_expression "pcVar10[0x10]" (identifier "pcVar10") ([ "[") (number_literal "0x10") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x11] = '\0';" (assignment_expression "pcVar10[0x11] = '\0'" (subscript_expression "pcVar10[0x11]" (identifier "pcVar10") ([ "[") (number_literal "0x11") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x12] = '\0';" (assignment_expression "pcVar10[0x12] = '\0'" (subscript_expression "pcVar10[0x12]" (identifier "pcVar10") ([ "[") (number_literal "0x12") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x13] = '\0';" (assignment_expression "pcVar10[0x13] = '\0'" (subscript_expression "pcVar10[0x13]" (identifier "pcVar10") ([ "[") (number_literal "0x13") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x14] = '\0';" (assignment_expression "pcVar10[0x14] = '\0'" (subscript_expression "pcVar10[0x14]" (identifier "pcVar10") ([ "[") (number_literal "0x14") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x15] = '\0';" (assignment_expression "pcVar10[0x15] = '\0'" (subscript_expression "pcVar10[0x15]" (identifier "pcVar10") ([ "[") (number_literal "0x15") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x16] = '\0';" (assignment_expression "pcVar10[0x16] = '\0'" (subscript_expression "pcVar10[0x16]" (identifier "pcVar10") ([ "[") (number_literal "0x16") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x17] = '\0';" (assignment_expression "pcVar10[0x17] = '\0'" (subscript_expression "pcVar10[0x17]" (identifier "pcVar10") ([ "[") (number_literal "0x17") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x18] = '\0';" (assignment_expression "pcVar10[0x18] = '\0'" (subscript_expression "pcVar10[0x18]" (identifier "pcVar10") ([ "[") (number_literal "0x18") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x19] = '\0';" (assignment_expression "pcVar10[0x19] = '\0'" (subscript_expression "pcVar10[0x19]" (identifier "pcVar10") ([ "[") (number_literal "0x19") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1a] = '\0';" (assignment_expression "pcVar10[0x1a] = '\0'" (subscript_expression "pcVar10[0x1a]" (identifier "pcVar10") ([ "[") (number_literal "0x1a") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1b] = '\0';" (assignment_expression "pcVar10[0x1b] = '\0'" (subscript_expression "pcVar10[0x1b]" (identifier "pcVar10") ([ "[") (number_literal "0x1b") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1c] = '\0';" (assignment_expression "pcVar10[0x1c] = '\0'" (subscript_expression "pcVar10[0x1c]" (identifier "pcVar10") ([ "[") (number_literal "0x1c") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1d] = '\0';" (assignment_expression "pcVar10[0x1d] = '\0'" (subscript_expression "pcVar10[0x1d]" (identifier "pcVar10") ([ "[") (number_literal "0x1d") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1e] = '\0';" (assignment_expression "pcVar10[0x1e] = '\0'" (subscript_expression "pcVar10[0x1e]" (identifier "pcVar10") ([ "[") (number_literal "0x1e") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0x1f] = '\0';" (assignment_expression "pcVar10[0x1f] = '\0'" (subscript_expression "pcVar10[0x1f]" (identifier "pcVar10") ([ "[") (number_literal "0x1f") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (if_statement "if (lVar13 != plVar2[1]) {\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" (if "if") (parenthesized_expression "(lVar13 != plVar2[1])" (( "(") (binary_expression "lVar13 != plVar2[1]" (identifier "lVar13") (!= "!=") (subscript_expression "plVar2[1]" (identifier "plVar2") ([ "[") (number_literal "1") (] "]"))) () ")")) (compound_statement "{\n        lVar15 = 0x18;\n        lVar14 = *(long *)(lVar8 + 0x18);\n        iVar7 = 0;\n        while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }\n      }" ({ "{") (expression_statement "lVar15 = 0x18;" (assignment_expression "lVar15 = 0x18" (identifier "lVar15") (= "=") (number_literal "0x18")) (; ";")) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18);" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18)" (identifier "lVar14") (= "=") (pointer_expression "*(long *)(lVar8 + 0x18)" (* "*") (cast_expression "(long *)(lVar8 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x18)" (( "(") (binary_expression "lVar8 + 0x18" (identifier "lVar8") (+ "+") (number_literal "0x18")) () ")"))))) (; ";")) (expression_statement "iVar7 = 0;" (assignment_expression "iVar7 = 0" (identifier "iVar7") (= "=") (number_literal "0")) (; ";")) (while_statement "while( true ) {\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n          pcVar10[8] = '\0';\n          pcVar10[9] = '\0';\n          pcVar10[10] = '\0';\n          pcVar10[0xb] = '\0';\n          pcVar10[0xc] = '\0';\n          pcVar10[0xd] = '\0';\n          pcVar10[0xe] = '\0';\n          pcVar10[0xf] = '\0';\n          *(int *)(pcVar10 + 4) = iVar7 + 1;\n          puVar11 = (undefined8 *)FUN_002d94a0(0x90);\n          uVar1 = *(undefined4 *)(param_1 + 0x58);\n          uVar12 = *(undefined8 *)(param_1 + 0x50);\n          uVar3 = *(undefined8 *)(param_1 + 0x48);\n          uVar4 = *(undefined8 *)(param_1 + 0x40);\n          puVar11[0xd] = lVar13;\n          uVar5 = *(undefined8 *)(param_1 + 0x38);\n          *(undefined4 *)(puVar11 + 0xb) = uVar1;\n          lVar13 = lVar13 + 0x80;\n          uVar6 = *(undefined8 *)(param_1 + 0x60);\n          puVar11[9] = uVar3;\n          puVar11[10] = uVar12;\n          puVar11[1] = 0;\n          puVar11[2] = puVar11 + 4;\n          puVar11[3] = 0;\n          *(undefined1 *)(puVar11 + 4) = 0;\n          *(undefined1 *)(puVar11 + 6) = 0;\n          *puVar11 = &PTR_FUN_0042aac0;\n          puVar11[7] = uVar5;\n          puVar11[8] = uVar4;\n          puVar11[0xc] = uVar6;\n          puVar11[0xe] = 0;\n          puVar11[0xf] = lVar14;\n          puVar11[0x10] = 0;\n          puVar11[0x11] = pcVar10;\n          FUN_002897a0(param_2,puVar11);\n          if (plVar2[1] == lVar13) break;\n          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;\n          lVar15 = lVar15 + 0x18;\n          if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }\n          iVar7 = *(int *)(pcVar10 + 4);\n        }" ({ "{") (expression_statement "pcVar10[8] = '\0';" (assignment_expression "pcVar10[8] = '\0'" (subscript_expression "pcVar10[8]" (identifier "pcVar10") ([ "[") (number_literal "8") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[9] = '\0';" (assignment_expression "pcVar10[9] = '\0'" (subscript_expression "pcVar10[9]" (identifier "pcVar10") ([ "[") (number_literal "9") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[10] = '\0';" (assignment_expression "pcVar10[10] = '\0'" (subscript_expression "pcVar10[10]" (identifier "pcVar10") ([ "[") (number_literal "10") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xb] = '\0';" (assignment_expression "pcVar10[0xb] = '\0'" (subscript_expression "pcVar10[0xb]" (identifier "pcVar10") ([ "[") (number_literal "0xb") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xc] = '\0';" (assignment_expression "pcVar10[0xc] = '\0'" (subscript_expression "pcVar10[0xc]" (identifier "pcVar10") ([ "[") (number_literal "0xc") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xd] = '\0';" (assignment_expression "pcVar10[0xd] = '\0'" (subscript_expression "pcVar10[0xd]" (identifier "pcVar10") ([ "[") (number_literal "0xd") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xe] = '\0';" (assignment_expression "pcVar10[0xe] = '\0'" (subscript_expression "pcVar10[0xe]" (identifier "pcVar10") ([ "[") (number_literal "0xe") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "pcVar10[0xf] = '\0';" (assignment_expression "pcVar10[0xf] = '\0'" (subscript_expression "pcVar10[0xf]" (identifier "pcVar10") ([ "[") (number_literal "0xf") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "*(int *)(pcVar10 + 4) = iVar7 + 1;" (assignment_expression "*(int *)(pcVar10 + 4) = iVar7 + 1" (pointer_expression "*(int *)(pcVar10 + 4)" (* "*") (cast_expression "(int *)(pcVar10 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar10 + 4)" (( "(") (binary_expression "pcVar10 + 4" (identifier "pcVar10") (+ "+") (number_literal "4")) () ")")))) (= "=") (binary_expression "iVar7 + 1" (identifier "iVar7") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar11 = (undefined8 *)FUN_002d94a0(0x90);" (assignment_expression "puVar11 = (undefined8 *)FUN_002d94a0(0x90)" (identifier "puVar11") (= "=") (cast_expression "(undefined8 *)FUN_002d94a0(0x90)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_002d94a0(0x90)" (identifier "FUN_002d94a0") (argument_list "(0x90)" (( "(") (number_literal "0x90") () ")"))))) (; ";")) (expression_statement "uVar1 = *(undefined4 *)(param_1 + 0x58);" (assignment_expression "uVar1 = *(undefined4 *)(param_1 + 0x58)" (identifier "uVar1") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x58)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x58)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x58)" (( "(") (binary_expression "param_1 + 0x58" (identifier "param_1") (+ "+") (number_literal "0x58")) () ")"))))) (; ";")) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x50);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x50)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x50)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x50)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x50)" (( "(") (binary_expression "param_1 + 0x50" (identifier "param_1") (+ "+") (number_literal "0x50")) () ")"))))) (; ";")) (expression_statement "uVar3 = *(undefined8 *)(param_1 + 0x48);" (assignment_expression "uVar3 = *(undefined8 *)(param_1 + 0x48)" (identifier "uVar3") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x48)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x48)" (( "(") (binary_expression "param_1 + 0x48" (identifier "param_1") (+ "+") (number_literal "0x48")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(undefined8 *)(param_1 + 0x40);" (assignment_expression "uVar4 = *(undefined8 *)(param_1 + 0x40)" (identifier "uVar4") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")"))))) (; ";")) (expression_statement "puVar11[0xd] = lVar13;" (assignment_expression "puVar11[0xd] = lVar13" (subscript_expression "puVar11[0xd]" (identifier "puVar11") ([ "[") (number_literal "0xd") (] "]")) (= "=") (identifier "lVar13")) (; ";")) (expression_statement "uVar5 = *(undefined8 *)(param_1 + 0x38);" (assignment_expression "uVar5 = *(undefined8 *)(param_1 + 0x38)" (identifier "uVar5") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x38)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x38)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x38)" (( "(") (binary_expression "param_1 + 0x38" (identifier "param_1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";")) (expression_statement "*(undefined4 *)(puVar11 + 0xb) = uVar1;" (assignment_expression "*(undefined4 *)(puVar11 + 0xb) = uVar1" (pointer_expression "*(undefined4 *)(puVar11 + 0xb)" (* "*") (cast_expression "(undefined4 *)(puVar11 + 0xb)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0xb)" (( "(") (binary_expression "puVar11 + 0xb" (identifier "puVar11") (+ "+") (number_literal "0xb")) () ")")))) (= "=") (identifier "uVar1")) (; ";")) (expression_statement "lVar13 = lVar13 + 0x80;" (assignment_expression "lVar13 = lVar13 + 0x80" (identifier "lVar13") (= "=") (binary_expression "lVar13 + 0x80" (identifier "lVar13") (+ "+") (number_literal "0x80"))) (; ";")) (expression_statement "uVar6 = *(undefined8 *)(param_1 + 0x60);" (assignment_expression "uVar6 = *(undefined8 *)(param_1 + 0x60)" (identifier "uVar6") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x60)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x60)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x60)" (( "(") (binary_expression "param_1 + 0x60" (identifier "param_1") (+ "+") (number_literal "0x60")) () ")"))))) (; ";")) (expression_statement "puVar11[9] = uVar3;" (assignment_expression "puVar11[9] = uVar3" (subscript_expression "puVar11[9]" (identifier "puVar11") ([ "[") (number_literal "9") (] "]")) (= "=") (identifier "uVar3")) (; ";")) (expression_statement "puVar11[10] = uVar12;" (assignment_expression "puVar11[10] = uVar12" (subscript_expression "puVar11[10]" (identifier "puVar11") ([ "[") (number_literal "10") (] "]")) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "puVar11[1] = 0;" (assignment_expression "puVar11[1] = 0" (subscript_expression "puVar11[1]" (identifier "puVar11") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11[2] = puVar11 + 4;" (assignment_expression "puVar11[2] = puVar11 + 4" (subscript_expression "puVar11[2]" (identifier "puVar11") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "puVar11 + 4" (identifier "puVar11") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "puVar11[3] = 0;" (assignment_expression "puVar11[3] = 0" (subscript_expression "puVar11[3]" (identifier "puVar11") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(puVar11 + 4) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 4) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 4)" (* "*") (cast_expression "(undefined1 *)(puVar11 + 4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 4)" (( "(") (binary_expression "puVar11 + 4" (identifier "puVar11") (+ "+") (number_literal "4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined1 *)(puVar11 + 6) = 0;" (assignment_expression "*(undefined1 *)(puVar11 + 6) = 0" (pointer_expression "*(undefined1 *)(puVar11 + 6)" (* "*") (cast_expression "(undefined1 *)(puVar11 + 6)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 6)" (( "(") (binary_expression "puVar11 + 6" (identifier "puVar11") (+ "+") (number_literal "6")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*puVar11 = &PTR_FUN_0042aac0;" (assignment_expression "*puVar11 = &PTR_FUN_0042aac0" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (pointer_expression "&PTR_FUN_0042aac0" (& "&") (identifier "PTR_FUN_0042aac0"))) (; ";")) (expression_statement "puVar11[7] = uVar5;" (assignment_expression "puVar11[7] = uVar5" (subscript_expression "puVar11[7]" (identifier "puVar11") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar5")) (; ";")) (expression_statement "puVar11[8] = uVar4;" (assignment_expression "puVar11[8] = uVar4" (subscript_expression "puVar11[8]" (identifier "puVar11") ([ "[") (number_literal "8") (] "]")) (= "=") (identifier "uVar4")) (; ";")) (expression_statement "puVar11[0xc] = uVar6;" (assignment_expression "puVar11[0xc] = uVar6" (subscript_expression "puVar11[0xc]" (identifier "puVar11") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "uVar6")) (; ";")) (expression_statement "puVar11[0xe] = 0;" (assignment_expression "puVar11[0xe] = 0" (subscript_expression "puVar11[0xe]" (identifier "puVar11") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11[0xf] = lVar14;" (assignment_expression "puVar11[0xf] = lVar14" (subscript_expression "puVar11[0xf]" (identifier "puVar11") ([ "[") (number_literal "0xf") (] "]")) (= "=") (identifier "lVar14")) (; ";")) (expression_statement "puVar11[0x10] = 0;" (assignment_expression "puVar11[0x10] = 0" (subscript_expression "puVar11[0x10]" (identifier "puVar11") ([ "[") (number_literal "0x10") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11[0x11] = pcVar10;" (assignment_expression "puVar11[0x11] = pcVar10" (subscript_expression "puVar11[0x11]" (identifier "puVar11") ([ "[") (number_literal "0x11") (] "]")) (= "=") (identifier "pcVar10")) (; ";")) (expression_statement "FUN_002897a0(param_2,puVar11);" (call_expression "FUN_002897a0(param_2,puVar11)" (identifier "FUN_002897a0") (argument_list "(param_2,puVar11)" (( "(") (identifier "param_2") (, ",") (identifier "puVar11") () ")"))) (; ";")) (if_statement "if (plVar2[1] == lVar13) break;" (if "if") (parenthesized_expression "(plVar2[1] == lVar13)" (( "(") (binary_expression "plVar2[1] == lVar13" (subscript_expression "plVar2[1]" (identifier "plVar2") ([ "[") (number_literal "1") (] "]")) (== "==") (identifier "lVar13")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar14 = *(long *)(lVar8 + 0x18) + lVar15;" (assignment_expression "lVar14 = *(long *)(lVar8 + 0x18) + lVar15" (identifier "lVar14") (= "=") (binary_expression "*(long *)(lVar8 + 0x18) + lVar15" (pointer_expression "*(long *)(lVar8 + 0x18)" (* "*") (cast_expression "(long *)(lVar8 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x18)" (( "(") (binary_expression "lVar8 + 0x18" (identifier "lVar8") (+ "+") (number_literal "0x18")) () ")")))) (+ "+") (identifier "lVar15"))) (; ";")) (expression_statement "lVar15 = lVar15 + 0x18;" (assignment_expression "lVar15 = lVar15 + 0x18" (identifier "lVar15") (= "=") (binary_expression "lVar15 + 0x18" (identifier "lVar15") (+ "+") (number_literal "0x18"))) (; ";")) (if_statement "if (*pcVar10 == '\0') {\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" (if "if") (parenthesized_expression "(*pcVar10 == '\0')" (( "(") (binary_expression "*pcVar10 == '\0'" (pointer_expression "*pcVar10" (* "*") (identifier "pcVar10")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");\n          }" ({ "{") (expression_statement "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");" (call_expression "FUN_0017c650("../../gold/token.h",0x8e,"add_blocker")" (identifier "FUN_0017c650") (argument_list "("../../gold/token.h",0x8e,"add_blocker")" (( "(") (string_literal ""../../gold/token.h"" (" """) (string_content "../../gold/token.h") (" """)) (, ",") (number_literal "0x8e") (, ",") (string_literal ""add_blocker"" (" """) (string_content "add_blocker") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar7 = *(int *)(pcVar10 + 4);" (assignment_expression "iVar7 = *(int *)(pcVar10 + 4)" (identifier "iVar7") (= "=") (pointer_expression "*(int *)(pcVar10 + 4)" (* "*") (cast_expression "(int *)(pcVar10 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar10 + 4)" (( "(") (binary_expression "pcVar10 + 4" (identifier "pcVar10") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (expression_statement "uVar12 = *(undefined8 *)(param_1 + 0x80);" (assignment_expression "uVar12 = *(undefined8 *)(param_1 + 0x80)" (identifier "uVar12") (= "=") (pointer_expression "*(undefined8 *)(param_1 + 0x80)" (* "*") (cast_expression "(undefined8 *)(param_1 + 0x80)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x80)" (( "(") (binary_expression "param_1 + 0x80" (identifier "param_1") (+ "+") (number_literal "0x80")) () ")"))))) (; ";")) (if_statement "if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" (if "if") (parenthesized_expression "((puVar9[0xb] == 0) && (puVar9[0xc] == 0))" (( "(") (binary_expression "(puVar9[0xb] == 0) && (puVar9[0xc] == 0)" (parenthesized_expression "(puVar9[0xb] == 0)" (( "(") (binary_expression "puVar9[0xb] == 0" (subscript_expression "puVar9[0xb]" (identifier "puVar9") ([ "[") (number_literal "0xb") (] "]")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(puVar9[0xc] == 0)" (( "(") (binary_expression "puVar9[0xc] == 0" (subscript_expression "puVar9[0xc]" (identifier "puVar9") ([ "[") (number_literal "0xc") (] "]")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        puVar9[0xb] = pcVar10;\n        puVar9[0xc] = uVar12;\n        FUN_002897a0(param_2,puVar9);\n        return 1;\n      }" ({ "{") (expression_statement "puVar9[0xb] = pcVar10;" (assignment_expression "puVar9[0xb] = pcVar10" (subscript_expression "puVar9[0xb]" (identifier "puVar9") ([ "[") (number_literal "0xb") (] "]")) (= "=") (identifier "pcVar10")) (; ";")) (expression_statement "puVar9[0xc] = uVar12;" (assignment_expression "puVar9[0xc] = uVar12" (subscript_expression "puVar9[0xc]" (identifier "puVar9") ([ "[") (number_literal "0xc") (] "]")) (= "=") (identifier "uVar12")) (; ";")) (expression_statement "FUN_002897a0(param_2,puVar9);" (call_expression "FUN_002897a0(param_2,puVar9)" (identifier "FUN_002897a0") (argument_list "(param_2,puVar9)" (( "(") (identifier "param_2") (, ",") (identifier "puVar9") () ")"))) (; ";")) (return_statement "return 1;" (return "return") (number_literal "1") (; ";")) (} "}"))) (expression_statement "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");" (call_expression "FUN_0017c650("../../gold/archive.h",0x228,"set_blocker")" (identifier "FUN_0017c650") (argument_list "("../../gold/archive.h",0x228,"set_blocker")" (( "(") (string_literal ""../../gold/archive.h"" (" """) (string_content "../../gold/archive.h") (" """)) (, ",") (number_literal "0x228") (, ",") (string_literal ""set_blocker"" (" """) (string_content "set_blocker") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0023ec40();" (call_expression "FUN_0023ec40()" (identifier "FUN_0023ec40") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);" (call_expression "FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c)" (identifier "FUN_0017c650") (argument_list "("../../gold/options.h",0x83f,&DAT_00382d1c)" (( "(") (string_literal ""../../gold/options.h"" (" """) (string_content "../../gold/options.h") (" """)) (, ",") (number_literal "0x83f") (, ",") (pointer_expression "&DAT_00382d1c" (& "&") (identifier "DAT_00382d1c")) () ")"))) (; ";")) (} "}")))

/* WARNING: Enum "DT": Some values do not have unique names */
/* DWARF original prototype: bool do_lib_group(Read_symbols * this, Workqueue * workqueue) */

bool __thiscall gold::type_1::function_1(type_1 *this,type_2 *workqueue)

{
  type_3 *var_2;
  type_4 *pIVar1;
  type_5 *pLVar2;
  type_6 *pSVar3;
  type_7 *pTVar4;
  type_8 *pDVar5;
  type_9 *pMVar6;
  bool bVar7;
  int var_8;
  type_10 *this_00;
  type_11 *t;
  char *var_7;
  type_11 *t_00;
  type_12 var_9;
  type_11 *pTVar11;
  long var_11;
  
  if (this->input_argument_->is_file_ != false) {
                    /* WARNING: Subroutine does not return */
    var_1("../../gold/options.h",0x83f,"lib");
  }
  var_2 = this->input_argument_->lib_;
  if (var_2 == (type_3 *)0x0) {
                    /* WARNING: Subroutine does not return */
    Input_argument::var_2((type_13 *)this,(type_13 *)workqueue);
  }
  if ((var_2->options_).whole_archive_ != false) {
    bVar7 = var_3(this,workqueue);
    return bVar7;
  }
  this_00 = (type_10 *)var_4(0x30);
                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */
  Lib_group::type_10(this_00,var_2,&this->super_Task);
  t = (type_11 *)var_4(0x70);
  pIVar1 = this->input_objects_;
  pLVar2 = this->layout_;
  pSVar3 = this->symtab_;
  pTVar4 = this->next_blocker_;
  t->list_next_ = (type_11 *)0x0;
  (t->name_)._M_dataplus._M_p = (type_12)&(t->name_).field_2;
  t->_vptr_Task = (type_14 **)&PTR__Add_lib_group_symbols_0042c0a8;
  (t->name_)._M_string_length = 0;
  (t->name_).field_2._M_local_buf[0] = '\0';
  t->should_run_soon_ = false;
  t[1]._vptr_Task = (type_14 **)pSVar3;
  t[1].list_next_ = (type_11 *)pLVar2;
  t[1].name_._M_dataplus._M_p = (type_12)pIVar1;
  t[1].name_._M_string_length = (type_15)this_00;
  t[1].name_.field_2._M_allocated_capacity = 0;
  *(type_16 *)((long)&t[1].name_.field_2 + 8) = 0;
  *(type_7 **)&t[1].should_run_soon_ = pTVar4;
  var_7 = (char *)var_4(0x20);
  var_9 = (var_2->files_).
            super__Vector_base<gold::type_13,_std::allocator<gold::type_13>var_5>._M_impl.
            _M_start;
  *var_7 = '\x01';
  var_7[4] = '\0';
  var_7[5] = '\0';
  var_7[6] = '\0';
  var_7[7] = '\0';
  var_7[8] = '\0';
  var_7[9] = '\0';
  var_7[10] = '\0';
  var_7[0xb] = '\0';
  var_7[0xc] = '\0';
  var_7[0xd] = '\0';
  var_7[0xe] = '\0';
  var_7[0xf] = '\0';
  var_7[0x10] = '\0';
  var_7[0x11] = '\0';
  var_7[0x12] = '\0';
  var_7[0x13] = '\0';
  var_7[0x14] = '\0';
  var_7[0x15] = '\0';
  var_7[0x16] = '\0';
  var_7[0x17] = '\0';
  var_7[0x18] = '\0';
  var_7[0x19] = '\0';
  var_7[0x1a] = '\0';
  var_7[0x1b] = '\0';
  var_7[0x1c] = '\0';
  var_7[0x1d] = '\0';
  var_7[0x1e] = '\0';
  var_7[0x1f] = '\0';
  if (var_9 !=
      (var_2->files_).super__Vector_base<gold::type_13,_std::allocator<gold::type_13>var_5>.
      _M_impl._M_finish) {
    var_11 = 0x18;
    pTVar11 = (type_11 *)(this_00->members_).
                      super__Vector_base<gold::var_6,_std::allocator<gold::var_6>var_5>
                      ._M_impl._M_start;
    var_8 = 0;
    while( true ) {
      var_7[8] = '\0';
      var_7[9] = '\0';
      var_7[10] = '\0';
      var_7[0xb] = '\0';
      var_7[0xc] = '\0';
      var_7[0xd] = '\0';
      var_7[0xe] = '\0';
      var_7[0xf] = '\0';
      *(int *)(var_7 + 4) = var_8 + 1;
      t_00 = (type_11 *)var_4(0x90);
      var_8 = this->dirindex_;
      pDVar5 = this->dirpath_;
      pLVar2 = this->layout_;
      pSVar3 = this->symtab_;
      *(type_12 *)&t_00[1].should_run_soon_ = var_9;
      pIVar1 = this->input_objects_;
      *(int *)&t_00[1].name_.field_2 = var_8;
      var_9 = var_9 + 1;
      pMVar6 = this->mapfile_;
      t_00[1].name_._M_dataplus._M_p = (type_12)pLVar2;
      t_00[1].name_._M_string_length = (type_15)pDVar5;
      t_00->list_next_ = (type_11 *)0x0;
      (t_00->name_)._M_dataplus._M_p = (type_12)&(t_00->name_).field_2;
      (t_00->name_)._M_string_length = 0;
      (t_00->name_).field_2._M_local_buf[0] = '\0';
      t_00->should_run_soon_ = false;
      t_00->_vptr_Task = (type_14 **)&PTR__Read_symbols_0042aac0;
      t_00[1]._vptr_Task = (type_14 **)pIVar1;
      t_00[1].list_next_ = (type_11 *)pSVar3;
      *(type_9 **)((long)&t_00[1].name_.field_2 + 8) = pMVar6;
      t_00[2]._vptr_Task = (type_14 **)0x0;
      t_00[2].list_next_ = pTVar11;
      t_00[2].name_._M_dataplus._M_p = (type_12)0x0;
      t_00[2].name_._M_string_length = (type_15)var_7;
      Workqueue::var_10(workqueue,t_00);
      if ((var_2->files_).
          super__Vector_base<gold::type_13,_std::allocator<gold::type_13>var_5>._M_impl.
          _M_finish == var_9) break;
      pTVar11 = (type_11 *)((long)&((this_00->members_).
                                 super__Vector_base<gold::var_6,_std::allocator<gold::var_6>var_5>
                                 ._M_impl._M_start)->obj_ + var_11);
      var_11 = var_11 + 0x18;
      if (*var_7 == '\0') {
                    /* WARNING: Subroutine does not return */
        var_1("../../gold/token.h",0x8e,"add_blocker");
      }
      var_8 = *(int *)(var_7 + 4);
    }
  }
  pTVar4 = this->this_blocker_;
  if ((t[1].name_.field_2._M_allocated_capacity == 0) &&
     (*(long *)((long)&t[1].name_.field_2 + 8) == 0)) {
    *(char **)&t[1].name_.field_2 = var_7;
    *(type_7 **)((long)&t[1].name_.field_2 + 8) = pTVar4;
    Workqueue::var_10(workqueue,t);
    return true;
  }
                    /* WARNING: Subroutine does not return */
  var_1("../../gold/archive.h",0x228,"set_blocker");
}


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

undefined8 MASKED(long param_1,undefined8 param_2)

{
  undefined4 uVar1;
  long *plVar2;
  undefined8 uVar3;
  undefined8 uVar4;
  undefined8 uVar5;
  undefined8 uVar6;
  int iVar7;
  long lVar8;
  undefined8 *puVar9;
  char *pcVar10;
  undefined8 *puVar11;
  undefined8 uVar12;
  long lVar13;
  long lVar14;
  long lVar15;
  
  if (**(char **)(param_1 + 0x68) == '\0') {
    plVar2 = *(long **)(*(char **)(param_1 + 0x68) + 0x70);
    if (plVar2 != (long *)0x0) {
      if ((char)plVar2[4] != '\0') {
        uVar12 = FUN_0023fa60(param_1,param_2);
        return uVar12;
      }
      lVar8 = FUN_002d94a0(0x30);
                    /* try { // try from 0023fc47 to 0023fc4b has its CatchHandler @ 0023fe9d */
      FUN_0028dcf0(lVar8,plVar2,param_1);
      puVar9 = (undefined8 *)FUN_002d94a0(0x70);
      uVar12 = *(undefined8 *)(param_1 + 0x38);
      uVar3 = *(undefined8 *)(param_1 + 0x48);
      uVar4 = *(undefined8 *)(param_1 + 0x40);
      uVar5 = *(undefined8 *)(param_1 + 0x88);
      puVar9[1] = 0;
      puVar9[2] = puVar9 + 4;
      *puVar9 = &PTR_FUN_0042c0a8;
      puVar9[3] = 0;
      *(undefined1 *)(puVar9 + 4) = 0;
      *(undefined1 *)(puVar9 + 6) = 0;
      puVar9[7] = uVar4;
      puVar9[8] = uVar3;
      puVar9[9] = uVar12;
      puVar9[10] = lVar8;
      puVar9[0xb] = 0;
      puVar9[0xc] = 0;
      puVar9[0xd] = uVar5;
      pcVar10 = (char *)FUN_002d94a0(0x20);
      lVar13 = *plVar2;
      *pcVar10 = '\x01';
      pcVar10[4] = '\0';
      pcVar10[5] = '\0';
      pcVar10[6] = '\0';
      pcVar10[7] = '\0';
      pcVar10[8] = '\0';
      pcVar10[9] = '\0';
      pcVar10[10] = '\0';
      pcVar10[0xb] = '\0';
      pcVar10[0xc] = '\0';
      pcVar10[0xd] = '\0';
      pcVar10[0xe] = '\0';
      pcVar10[0xf] = '\0';
      pcVar10[0x10] = '\0';
      pcVar10[0x11] = '\0';
      pcVar10[0x12] = '\0';
      pcVar10[0x13] = '\0';
      pcVar10[0x14] = '\0';
      pcVar10[0x15] = '\0';
      pcVar10[0x16] = '\0';
      pcVar10[0x17] = '\0';
      pcVar10[0x18] = '\0';
      pcVar10[0x19] = '\0';
      pcVar10[0x1a] = '\0';
      pcVar10[0x1b] = '\0';
      pcVar10[0x1c] = '\0';
      pcVar10[0x1d] = '\0';
      pcVar10[0x1e] = '\0';
      pcVar10[0x1f] = '\0';
      if (lVar13 != plVar2[1]) {
        lVar15 = 0x18;
        lVar14 = *(long *)(lVar8 + 0x18);
        iVar7 = 0;
        while( true ) {
          pcVar10[8] = '\0';
          pcVar10[9] = '\0';
          pcVar10[10] = '\0';
          pcVar10[0xb] = '\0';
          pcVar10[0xc] = '\0';
          pcVar10[0xd] = '\0';
          pcVar10[0xe] = '\0';
          pcVar10[0xf] = '\0';
          *(int *)(pcVar10 + 4) = iVar7 + 1;
          puVar11 = (undefined8 *)FUN_002d94a0(0x90);
          uVar1 = *(undefined4 *)(param_1 + 0x58);
          uVar12 = *(undefined8 *)(param_1 + 0x50);
          uVar3 = *(undefined8 *)(param_1 + 0x48);
          uVar4 = *(undefined8 *)(param_1 + 0x40);
          puVar11[0xd] = lVar13;
          uVar5 = *(undefined8 *)(param_1 + 0x38);
          *(undefined4 *)(puVar11 + 0xb) = uVar1;
          lVar13 = lVar13 + 0x80;
          uVar6 = *(undefined8 *)(param_1 + 0x60);
          puVar11[9] = uVar3;
          puVar11[10] = uVar12;
          puVar11[1] = 0;
          puVar11[2] = puVar11 + 4;
          puVar11[3] = 0;
          *(undefined1 *)(puVar11 + 4) = 0;
          *(undefined1 *)(puVar11 + 6) = 0;
          *puVar11 = &PTR_FUN_0042aac0;
          puVar11[7] = uVar5;
          puVar11[8] = uVar4;
          puVar11[0xc] = uVar6;
          puVar11[0xe] = 0;
          puVar11[0xf] = lVar14;
          puVar11[0x10] = 0;
          puVar11[0x11] = pcVar10;
          FUN_002897a0(param_2,puVar11);
          if (plVar2[1] == lVar13) break;
          lVar14 = *(long *)(lVar8 + 0x18) + lVar15;
          lVar15 = lVar15 + 0x18;
          if (*pcVar10 == '\0') {
                    /* WARNING: Subroutine does not return */
            FUN_0017c650("../../gold/token.h",0x8e,"add_blocker");
          }
          iVar7 = *(int *)(pcVar10 + 4);
        }
      }
      uVar12 = *(undefined8 *)(param_1 + 0x80);
      if ((puVar9[0xb] == 0) && (puVar9[0xc] == 0)) {
        puVar9[0xb] = pcVar10;
        puVar9[0xc] = uVar12;
        FUN_002897a0(param_2,puVar9);
        return 1;
      }
                    /* WARNING: Subroutine does not return */
      FUN_0017c650("../../gold/archive.h",0x228,"set_blocker");
    }
    FUN_0023ec40();
  }
                    /* WARNING: Subroutine does not return */
  FUN_0017c650("../../gold/options.h",0x83f,&DAT_00382d1c);
}

