
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: void load(Plugin * this) */

void __thiscall gold::Plugin::load(Plugin *this)

{
  General_options *pGVar1;
  pointer pbVar2;
  pointer pbVar3;
  pointer pcVar4;
  int iVar5;
  Parameters *pPVar6;
  void *pvVar7;
  code *pcVar8;
  char *pcVar9;
  undefined4 *puVar10;
  long lVar11;
  long lVar12;
  undefined8 uVar13;
  long lVar14;
  long lVar15;
  long lVar16;
  ulong uVar17;
  long lVar18;
  long lVar19;
  long lVar20;
  long lVar21;
  long lVar22;
  long lVar23;
  long local_c8;
  long local_c0;
  long local_b8;
  long local_b0;
  long local_a8;
  long local_a0;
  long local_98;
  long local_90;
  long local_88;
  long local_80;
  long local_78;
  long local_70;
  long local_68;
  long local_60;
  long local_58;
  int local_4c;
  int major;
  int minor;
  
  pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2);
  this->handle_ = pvVar7;
  if (pvVar7 == (void *)0x0) {
    uVar13 = dlerror();
    pcVar4 = (this->filename_)._M_dataplus._M_p;
    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");
    gold_error(pcVar9,pcVar4,uVar13);
  }
  else {
    pcVar8 = (code *)dlsym(pvVar7,"onload");
    if (pcVar8 == (code *)0x0) {
      pcVar4 = (this->filename_)._M_dataplus._M_p;
      pcVar9 = (char *)gettext("%s: could not find onload entry point");
      gold_error(pcVar9,pcVar4);
    }
    else {
      pcVar9 = get_version_string();
      major = 0;
      minor = 0;
      sscanf(pcVar9,"%d.%d",&major,&minor);
      iVar5 = (int)((long)(this->args_).
                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
                          ._M_impl._M_finish -
                    (long)(this->args_).
                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
                          ._M_impl._M_start >> 5);
      uVar17 = (ulong)(iVar5 + 0x1f);
      if (0x7ffffffffffffff < uVar17) {
                    /* WARNING: Subroutine does not return */
        __cxa_throw_bad_array_new_length();
      }
      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);
      *puVar10 = 0xb;
      *(code **)(puVar10 + 2) = message;
      puVar10[4] = 1;
      puVar10[10] = major * 100 + minor;
      pPVar6 = parameters;
      puVar10[6] = 1;
      pGVar1 = pPVar6->options_;
      puVar10[8] = 2;
      puVar10[0xc] = 3;
      if (pGVar1 == (General_options *)0x0) {
                    /* WARNING: Subroutine does not return */
        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");
      }
      if ((pGVar1->relocatable_).value == false) {
        if ((pGVar1->shared_).value == false) {
          if ((pGVar1->pie_).value == false) {
            puVar10[0xe] = 1;
          }
          else {
            puVar10[0xe] = 3;
          }
        }
        else {
          puVar10[0xe] = 2;
        }
      }
      else {
        puVar10[0xe] = 0;
      }
      pbVar2 = (this->args_).
               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
               ._M_impl._M_start;
      pbVar3 = (this->args_).
               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>
               ._M_impl._M_finish;
      puVar10[0x10] = 0xf;
      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;
      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;
      if (lVar14 == 0) {
        lVar15 = 0x1e0;
        lVar16 = 0xe0;
        local_4c = 0x1e;
        lVar18 = 0xd0;
        local_58 = 0x1d0;
        lVar19 = 0xc0;
        lVar20 = 0xb0;
        lVar21 = 0xa0;
        local_60 = 0x1c0;
        lVar22 = 0x90;
        lVar23 = 0x80;
        lVar11 = 0x70;
        local_68 = 0x1b0;
        lVar14 = 0x60;
        lVar12 = 0x50;
        local_70 = 0x1a0;
        local_78 = 400;
        local_80 = 0x180;
        local_88 = 0x170;
        local_90 = 0x160;
        local_98 = 0x150;
        local_a0 = 0x140;
        local_a8 = 0x130;
        local_b0 = 0x120;
        local_b8 = 0x110;
        local_c0 = 0x100;
        local_c8 = 0xf0;
      }
      else {
        lVar11 = 0;
        do {
          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;
          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =
               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);
          lVar11 = lVar11 + 0x10;
        } while (lVar14 << 4 != lVar11);
        local_4c = (int)lVar14 + 0x1e;
        lVar12 = (long)((int)lVar14 + 5) * 0x10;
        local_c8 = lVar12 + 0xa0;
        lVar14 = lVar12 + 0x10;
        local_c0 = lVar12 + 0xb0;
        lVar11 = lVar12 + 0x20;
        local_b8 = lVar12 + 0xc0;
        lVar23 = lVar12 + 0x30;
        local_b0 = lVar12 + 0xd0;
        lVar22 = lVar12 + 0x40;
        local_a8 = lVar12 + 0xe0;
        lVar21 = lVar12 + 0x50;
        lVar20 = lVar12 + 0x60;
        local_a0 = lVar12 + 0xf0;
        local_98 = lVar12 + 0x100;
        lVar19 = lVar12 + 0x70;
        local_90 = lVar12 + 0x110;
        lVar18 = lVar12 + 0x80;
        local_88 = lVar12 + 0x120;
        lVar16 = lVar12 + 0x90;
        local_80 = lVar12 + 0x130;
        lVar15 = lVar12 + 400;
        local_78 = lVar12 + 0x140;
        local_70 = lVar12 + 0x150;
        local_68 = lVar12 + 0x160;
        local_60 = lVar12 + 0x170;
        local_58 = lVar12 + 0x180;
      }
      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;
      *(undefined4 *)(lVar12 + (long)puVar10) = 5;
      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;
      *(undefined4 *)(lVar14 + (long)puVar10) = 6;
      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;
      *(undefined4 *)(lVar11 + (long)puVar10) = 7;
      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;
      *(undefined4 *)(lVar23 + (long)puVar10) = 8;
      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;
      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;
      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;
      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;
      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;
      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;
      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;
      *(undefined4 *)(lVar19 + (long)puVar10) = 9;
      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;
      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;
      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;
      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;
      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;
      *(undefined4 *)(local_c8 + (long)puVar10) = 10;
      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;
      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;
      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;
      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;
      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;
      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;
      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;
      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;
      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;
      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;
      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;
      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;
      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;
      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;
      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;
      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;
      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;
      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;
      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;
      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;
      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;
      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;
      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;
      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;
      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;
      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;
      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;
      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;
      *(undefined4 *)(lVar15 + (long)puVar10) = 0;
      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;
      if (iVar5 + 0x1e != local_4c) {
                    /* WARNING: Subroutine does not return */
        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");
      }
      (*pcVar8)(puVar10);
      operator_delete__(puVar10);
    }
  }
  return;
}



void FUN_00406da0(long *param_1)

{
  int iVar1;
  undefined *puVar2;
  long lVar3;
  code *pcVar4;
  char *__s;
  undefined4 *puVar5;
  long lVar6;
  undefined8 uVar7;
  undefined8 uVar8;
  long lVar9;
  long lVar10;
  long lVar11;
  ulong uVar12;
  long lVar13;
  long lVar14;
  long lVar15;
  long lVar16;
  long lVar17;
  long lVar18;
  long local_c8;
  long local_c0;
  long local_b8;
  long local_b0;
  long local_a8;
  long local_a0;
  long local_98;
  long local_90;
  long local_88;
  long local_80;
  long local_78;
  long local_70;
  long local_68;
  long local_60;
  long local_58;
  int local_4c;
  int local_40;
  int local_3c [3];
  
  lVar3 = dlopen(param_1[1],2);
  *param_1 = lVar3;
  if (lVar3 == 0) {
    uVar8 = dlerror();
    lVar3 = param_1[1];
    uVar7 = gettext("%s: could not load plugin library: %s");
    FUN_0034a750(uVar7,lVar3,uVar8);
  }
  else {
    pcVar4 = (code *)dlsym(lVar3,"onload");
    if (pcVar4 == (code *)0x0) {
      lVar3 = param_1[1];
      uVar8 = gettext("%s: could not find onload entry point");
      FUN_0034a750(uVar8,lVar3);
    }
    else {
      __s = (char *)FUN_0045b850();
      local_40 = 0;
      local_3c[0] = 0;
      sscanf(__s,"%d.%d",&local_40,local_3c);
      iVar1 = (int)(param_1[6] - param_1[5] >> 5);
      uVar12 = (ulong)(iVar1 + 0x1f);
      if (0x7ffffffffffffff < uVar12) {
                    /* WARNING: Subroutine does not return */
        FUN_0049ddb0();
      }
      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);
      *puVar5 = 0xb;
      *(code **)(puVar5 + 2) = FUN_00406940;
      puVar5[4] = 1;
      puVar5[10] = local_40 * 100 + local_3c[0];
      puVar2 = PTR_DAT_0067cb08;
      puVar5[6] = 1;
      lVar3 = *(long *)(puVar2 + 0x10);
      puVar5[8] = 2;
      puVar5[0xc] = 3;
      if (lVar3 == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/parameters.h",0x5c,"options");
      }
      if (*(char *)(lVar3 + 0x5051) == '\0') {
        if (*(char *)(lVar3 + 0x2a61) == '\0') {
          if (*(char *)(lVar3 + 0x42d1) == '\0') {
            puVar5[0xe] = 1;
          }
          else {
            puVar5[0xe] = 3;
          }
        }
        else {
          puVar5[0xe] = 2;
        }
      }
      else {
        puVar5[0xe] = 0;
      }
      lVar18 = param_1[5];
      lVar9 = param_1[6];
      puVar5[0x10] = 0xf;
      lVar9 = lVar9 - lVar18 >> 5;
      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);
      if (lVar9 == 0) {
        lVar10 = 0x1e0;
        lVar11 = 0xe0;
        local_4c = 0x1e;
        lVar13 = 0xd0;
        local_58 = 0x1d0;
        lVar14 = 0xc0;
        lVar15 = 0xb0;
        lVar16 = 0xa0;
        local_60 = 0x1c0;
        lVar17 = 0x90;
        lVar9 = 0x80;
        lVar18 = 0x70;
        local_68 = 0x1b0;
        lVar3 = 0x60;
        lVar6 = 0x50;
        local_70 = 0x1a0;
        local_78 = 400;
        local_80 = 0x180;
        local_88 = 0x170;
        local_90 = 0x160;
        local_98 = 0x150;
        local_a0 = 0x140;
        local_a8 = 0x130;
        local_b0 = 0x120;
        local_b8 = 0x110;
        local_c0 = 0x100;
        local_c8 = 0xf0;
      }
      else {
        lVar3 = 0;
        do {
          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;
          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);
          lVar3 = lVar3 + 0x10;
        } while (lVar9 << 4 != lVar3);
        local_4c = (int)lVar9 + 0x1e;
        lVar6 = (long)((int)lVar9 + 5) * 0x10;
        local_c8 = lVar6 + 0xa0;
        lVar3 = lVar6 + 0x10;
        local_c0 = lVar6 + 0xb0;
        lVar18 = lVar6 + 0x20;
        local_b8 = lVar6 + 0xc0;
        lVar9 = lVar6 + 0x30;
        local_b0 = lVar6 + 0xd0;
        lVar17 = lVar6 + 0x40;
        local_a8 = lVar6 + 0xe0;
        lVar16 = lVar6 + 0x50;
        lVar15 = lVar6 + 0x60;
        local_a0 = lVar6 + 0xf0;
        local_98 = lVar6 + 0x100;
        lVar14 = lVar6 + 0x70;
        local_90 = lVar6 + 0x110;
        lVar13 = lVar6 + 0x80;
        local_88 = lVar6 + 0x120;
        lVar11 = lVar6 + 0x90;
        local_80 = lVar6 + 0x130;
        lVar10 = lVar6 + 400;
        local_78 = lVar6 + 0x140;
        local_70 = lVar6 + 0x150;
        local_68 = lVar6 + 0x160;
        local_60 = lVar6 + 0x170;
        local_58 = lVar6 + 0x180;
      }
      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;
      *(undefined4 *)(lVar6 + (long)puVar5) = 5;
      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;
      *(undefined4 *)(lVar3 + (long)puVar5) = 6;
      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;
      *(undefined4 *)(lVar18 + (long)puVar5) = 7;
      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;
      *(undefined4 *)(lVar9 + (long)puVar5) = 8;
      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;
      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;
      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;
      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;
      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;
      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;
      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;
      *(undefined4 *)(lVar14 + (long)puVar5) = 9;
      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;
      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;
      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;
      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;
      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;
      *(undefined4 *)(local_c8 + (long)puVar5) = 10;
      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;
      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;
      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;
      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;
      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;
      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;
      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;
      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;
      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;
      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;
      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;
      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;
      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;
      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;
      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;
      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;
      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;
      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;
      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;
      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;
      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;
      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;
      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;
      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;
      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;
      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;
      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;
      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;
      *(undefined4 *)(lVar10 + (long)puVar5) = 0;
      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;
      if (iVar1 + 0x1e != local_4c) {
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);
      }
      (*pcVar4)(puVar5);
      thunk_FUN_0049e340(puVar5);
    }
  }
  return;
}


PUSH R15
MOV ESI,0x2
PUSH R14
PUSH R13
MOV R13,RDI
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x98
MOV RDI,qword ptr [RDI + 0x8]
CALL 0x001778a0
MOV qword ptr [R13],RAX
TEST RAX,RAX
JZ 0x004072c0
LEA RSI,[0x57c4ad]
MOV RDI,RAX
CALL 0x00177910
MOV R12,RAX
TEST RAX,RAX
JZ 0x004072f0
CALL 0x0045b850
LEA RCX,[RSP + 0x8c]
LEA RDX,[RSP + 0x88]
MOV dword ptr [RSP + 0x88],0x0
MOV RDI,RAX
XOR EAX,EAX
LEA RSI,[0x57c4b4]
MOV dword ptr [RSP + 0x8c],0x0
CALL 0x001775d0
MOV RBP,qword ptr [R13 + 0x30]
SUB RBP,qword ptr [R13 + 0x28]
MOV RAX,0x7ffffffffffffff
SAR RBP,0x5
LEA EDI,[RBP + 0x1f]
MOVSXD RDI,EDI
CMP RDI,RAX
JA 0x00185ae0
SHL RDI,0x4
CALL 0x0049cb10
MOV RBX,RAX
MOV dword ptr [RAX],0xb
LEA RAX,[0x406940]
MOV qword ptr [RBX + 0x8],RAX
IMUL EAX,dword ptr [RSP + 0x88],0x64
ADD EAX,dword ptr [RSP + 0x8c]
MOV dword ptr [RBX + 0x10],0x1
MOV dword ptr [RBX + 0x28],EAX
MOV RAX,qword ptr [0x0067cb08]
MOV dword ptr [RBX + 0x18],0x1
MOV RAX,qword ptr [RAX + 0x10]
MOV dword ptr [RBX + 0x20],0x2
MOV dword ptr [RBX + 0x30],0x3
TEST RAX,RAX
JZ 0x00407411
CMP byte ptr [RAX + 0x5051],0x0
JZ 0x00407288
MOV dword ptr [RBX + 0x38],0x0
MOV RSI,qword ptr [R13 + 0x28]
MOV RDX,qword ptr [R13 + 0x30]
MOV dword ptr [RBX + 0x40],0xf
MOV RAX,qword ptr [RAX + 0x4058]
SUB RDX,RSI
SAR RDX,0x5
MOV qword ptr [RBX + 0x48],RAX
JZ 0x00407328
MOV RDI,RDX
XOR EAX,EAX
SHL RDI,0x4
NOP
MOV dword ptr [RBX + RAX*0x1 + 0x50],0x4
MOV RCX,qword ptr [RSI + RAX*0x2]
MOV qword ptr [RBX + RAX*0x1 + 0x58],RCX
ADD RAX,0x10
CMP RDI,RAX
JNZ 0x00406ef0
SUB RDX,0x1
LEA EAX,[RDX + 0x6]
ADD EDX,0x1f
CDQE
MOV dword ptr [RSP + 0x7c],EDX
SHL RAX,0x4
LEA RCX,[RAX + 0xa0]
LEA R15,[RAX + 0x10]
MOV qword ptr [RSP],RCX
LEA RCX,[RAX + 0xb0]
LEA R14,[RAX + 0x20]
MOV qword ptr [RSP + 0x8],RCX
LEA RCX,[RAX + 0xc0]
LEA R13,[RAX + 0x30]
MOV qword ptr [RSP + 0x10],RCX
LEA RCX,[RAX + 0xd0]
LEA R11,[RAX + 0x40]
MOV qword ptr [RSP + 0x18],RCX
LEA RCX,[RAX + 0xe0]
LEA R10,[RAX + 0x50]
MOV qword ptr [RSP + 0x20],RCX
LEA R9,[RAX + 0x60]
LEA RCX,[RAX + 0xf0]
MOV qword ptr [RSP + 0x28],RCX
LEA RCX,[RAX + 0x100]
LEA R8,[RAX + 0x70]
MOV qword ptr [RSP + 0x30],RCX
LEA RCX,[RAX + 0x110]
LEA RDI,[RAX + 0x80]
MOV qword ptr [RSP + 0x38],RCX
LEA RCX,[RAX + 0x120]
LEA RSI,[RAX + 0x90]
MOV qword ptr [RSP + 0x40],RCX
LEA RCX,[RAX + 0x130]
LEA RDX,[RAX + 0x190]
MOV qword ptr [RSP + 0x48],RCX
LEA RCX,[RAX + 0x140]
MOV qword ptr [RSP + 0x50],RCX
LEA RCX,[RAX + 0x150]
MOV qword ptr [RSP + 0x58],RCX
LEA RCX,[RAX + 0x160]
MOV qword ptr [RSP + 0x60],RCX
LEA RCX,[RAX + 0x170]
MOV qword ptr [RSP + 0x68],RCX
LEA RCX,[RAX + 0x180]
MOV qword ptr [RSP + 0x70],RCX
ADD RAX,RBX
LEA RCX,[0x406d00]
ADD R15,RBX
ADD R14,RBX
MOV qword ptr [RAX + 0x8],RCX
ADD R13,RBX
ADD R11,RBX
ADD R10,RBX
MOV dword ptr [RAX],0x5
ADD R9,RBX
ADD R8,RBX
ADD RDI,RBX
LEA RAX,[0x406c80]
ADD RSI,RBX
ADD RDX,RBX
ADD EBP,0x1e
MOV qword ptr [R15 + 0x8],RAX
LEA RAX,[0x406c00]
MOV RCX,qword ptr [RSP]
MOV dword ptr [R15],0x6
MOV qword ptr [R14 + 0x8],RAX
LEA RAX,[0x409d70]
ADD RCX,RBX
MOV dword ptr [R14],0x7
MOV qword ptr [R13 + 0x8],RAX
LEA RAX,[0x407db0]
MOV dword ptr [R13],0x8
MOV qword ptr [R11 + 0x8],RAX
LEA RAX,[0x4085f0]
MOV dword ptr [R11],0xc
MOV qword ptr [R10 + 0x8],RAX
LEA RAX,[0x407e90]
MOV dword ptr [R10],0x12
MOV qword ptr [R9 + 0x8],RAX
LEA RAX,[0x409940]
MOV dword ptr [R9],0xd
MOV qword ptr [R8 + 0x8],RAX
LEA RAX,[0x409890]
MOV dword ptr [R8],0x9
MOV qword ptr [RDI + 0x8],RAX
LEA RAX,[0x4097e0]
MOV dword ptr [RDI],0x19
MOV qword ptr [RSI + 0x8],RAX
LEA RAX,[0x40a4e0]
MOV dword ptr [RSI],0x1c
LEA RSI,[0x40a470]
MOV qword ptr [RCX + 0x8],RAX
MOV RAX,qword ptr [RSP + 0x8]
MOV dword ptr [RCX],0xa
LEA RCX,[0x408210]
ADD RAX,RBX
MOV qword ptr [RAX + 0x8],RSI
LEA RSI,[0x408c50]
MOV dword ptr [RAX],0xe
MOV RAX,qword ptr [RSP + 0x10]
ADD RAX,RBX
MOV qword ptr [RAX + 0x8],RSI
LEA RSI,[0x408170]
MOV dword ptr [RAX],0x10
MOV RAX,qword ptr [RSP + 0x18]
ADD RAX,RBX
MOV qword ptr [RAX + 0x8],RCX
LEA RCX,[0x408410]
MOV dword ptr [RAX],0x13
MOV RAX,qword ptr [RSP + 0x20]
ADD RAX,RBX
MOV dword ptr [RAX],0x14
MOV qword ptr [RAX + 0x8],RSI
MOV RAX,qword ptr [RSP + 0x28]
LEA RSI,[0x408070]
ADD RAX,RBX
MOV dword ptr [RAX],0x15
MOV qword ptr [RAX + 0x8],RCX
MOV RAX,qword ptr [RSP + 0x30]
LEA RCX,[0x40a600]
ADD RAX,RBX
MOV dword ptr [RAX],0x16
MOV qword ptr [RAX + 0x8],RSI
MOV RAX,qword ptr [RSP + 0x38]
LEA RSI,[0x406b10]
ADD RAX,RBX
MOV dword ptr [RAX],0x17
MOV qword ptr [RAX + 0x8],RCX
MOV RAX,qword ptr [RSP + 0x40]
LEA RCX,[0x406aa0]
ADD RAX,RBX
MOV dword ptr [RAX],0x18
MOV qword ptr [RAX + 0x8],RSI
MOV RAX,qword ptr [RSP + 0x48]
LEA RSI,[0x408290]
ADD RAX,RBX
MOV dword ptr [RAX],0x1a
MOV qword ptr [RAX + 0x8],RCX
MOV RAX,qword ptr [RSP + 0x50]
LEA RCX,[0x407fd0]
ADD RAX,RBX
MOV dword ptr [RAX],0x1b
MOV qword ptr [RAX + 0x8],RSI
MOV RAX,qword ptr [RSP + 0x58]
LEA RSI,[0x407f30]
ADD RAX,RBX
MOV dword ptr [RAX],0x1d
MOV qword ptr [RAX + 0x8],RCX
MOV RAX,qword ptr [RSP + 0x60]
LEA RCX,[0x406b80]
ADD RAX,RBX
MOV dword ptr [RAX],0x1e
MOV qword ptr [RAX + 0x8],RSI
MOV RAX,qword ptr [RSP + 0x68]
LEA RSI,[0x406850]
ADD RAX,RBX
MOV dword ptr [RAX],0x1f
MOV qword ptr [RAX + 0x8],RCX
MOV RAX,qword ptr [RSP + 0x70]
ADD RAX,RBX
MOV dword ptr [RAX],0x20
MOV qword ptr [RAX + 0x8],RSI
MOV dword ptr [RDX],0x0
MOV dword ptr [RDX + 0x8],0x0
CMP EBP,dword ptr [RSP + 0x7c]
JNZ 0x004073f9
MOV RDI,RBX
CALL R12
MOV RDI,RBX
CALL 0x0049e310
ADD RSP,0x98
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
CMP byte ptr [RAX + 0x2a61],0x0
JNZ 0x004072b0
CMP byte ptr [RAX + 0x42d1],0x0
JZ 0x00407318
MOV dword ptr [RBX + 0x38],0x3
JMP 0x00406ebe
MOV dword ptr [RBX + 0x38],0x2
JMP 0x00406ebe
CALL 0x00177570
MOV RBX,qword ptr [R13 + 0x8]
LEA RDI,[0x57c588]
MOV RBP,RAX
CALL 0x00177320
MOV RDX,RBP
MOV RSI,RBX
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0034a750
JMP 0x00407273
MOV RBX,qword ptr [R13 + 0x8]
LEA RDI,[0x57c5b0]
CALL 0x00177320
MOV RDI,RAX
MOV RSI,RBX
XOR EAX,EAX
CALL 0x0034a750
JMP 0x00407273
MOV dword ptr [RBX + 0x38],0x1
JMP 0x00406ebe
MOV EDX,0x1e0
MOV ESI,0xe0
MOV dword ptr [RSP + 0x7c],0x1e
MOV EDI,0xd0
MOV qword ptr [RSP + 0x70],0x1d0
MOV R8D,0xc0
MOV R9D,0xb0
MOV R10D,0xa0
MOV qword ptr [RSP + 0x68],0x1c0
MOV R11D,0x90
MOV R13D,0x80
MOV R14D,0x70
MOV qword ptr [RSP + 0x60],0x1b0
MOV R15D,0x60
MOV EAX,0x50
MOV qword ptr [RSP + 0x58],0x1a0
MOV qword ptr [RSP + 0x50],0x190
MOV qword ptr [RSP + 0x48],0x180
MOV qword ptr [RSP + 0x40],0x170
MOV qword ptr [RSP + 0x38],0x160
MOV qword ptr [RSP + 0x30],0x150
MOV qword ptr [RSP + 0x28],0x140
MOV qword ptr [RSP + 0x20],0x130
MOV qword ptr [RSP + 0x18],0x120
MOV qword ptr [RSP + 0x10],0x110
MOV qword ptr [RSP + 0x8],0x100
MOV qword ptr [RSP],0xf0
JMP 0x00407002
LEA RDX,[0x57d121]
MOV ESI,0x174
LEA RDI,[0x57c484]
CALL 0x00352af0
LEA RDX,[0x57cca8]
MOV ESI,0x5c
LEA RDI,[0x52e279]
CALL 0x00352af0
(translation_unit "void FUN_00406da0(long *param_1)\n\n{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}\n\n" (function_definition "void FUN_00406da0(long *param_1)\n\n{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_00406da0(long *param_1)" identifier (parameter_list "(long *param_1)" ( (parameter_declaration "long *param_1" (sized_type_specifier "long" long) (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar7;" type_identifier identifier ;) (declaration "undefined8 uVar8;" type_identifier identifier ;) (declaration "long lVar9;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong 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 ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_98;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_90;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_88;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_80;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_78;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_70;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_68;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_4c;" primitive_type identifier ;) (declaration "int local_40;" primitive_type identifier ;) (declaration "int local_3c [3];" primitive_type (array_declarator "local_3c [3]" identifier [ number_literal ]) ;) (expression_statement "lVar3 = dlopen(param_1[1],2);" (assignment_expression "lVar3 = dlopen(param_1[1],2)" identifier = (call_expression "dlopen(param_1[1],2)" identifier (argument_list "(param_1[1],2)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "*param_1 = lVar3;" (assignment_expression "*param_1 = lVar3" (pointer_expression "*param_1" * identifier) = identifier) ;) (if_statement "if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }" { (expression_statement "uVar8 = dlerror();" (assignment_expression "uVar8 = dlerror()" identifier = (call_expression "dlerror()" identifier (argument_list "()" ( )))) ;) (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = gettext("%s: could not load plugin library: %s");" (assignment_expression "uVar7 = gettext("%s: could not load plugin library: %s")" identifier = (call_expression "gettext("%s: could not load plugin library: %s")" identifier (argument_list "("%s: could not load plugin library: %s")" ( (string_literal ""%s: could not load plugin library: %s"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar7,lVar3,uVar8);" (call_expression "FUN_0034a750(uVar7,lVar3,uVar8)" identifier (argument_list "(uVar7,lVar3,uVar8)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" else (compound_statement "{\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" { (expression_statement "pcVar4 = (code *)dlsym(lVar3,"onload");" (assignment_expression "pcVar4 = (code *)dlsym(lVar3,"onload")" identifier = (cast_expression "(code *)dlsym(lVar3,"onload")" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dlsym(lVar3,"onload")" identifier (argument_list "(lVar3,"onload")" ( identifier , (string_literal ""onload"" " string_content ") ))))) ;) (if_statement "if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" if (parenthesized_expression "(pcVar4 == (code *)0x0)" ( (binary_expression "pcVar4 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }" { (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "uVar8 = gettext("%s: could not find onload entry point");" (assignment_expression "uVar8 = gettext("%s: could not find onload entry point")" identifier = (call_expression "gettext("%s: could not find onload entry point")" identifier (argument_list "("%s: could not find onload entry point")" ( (string_literal ""%s: could not find onload entry point"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar8,lVar3);" (call_expression "FUN_0034a750(uVar8,lVar3)" identifier (argument_list "(uVar8,lVar3)" ( identifier , identifier ))) ;) }) (else_clause "else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" else (compound_statement "{\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" { (expression_statement "__s = (char *)FUN_0045b850();" (assignment_expression "__s = (char *)FUN_0045b850()" identifier = (cast_expression "(char *)FUN_0045b850()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0045b850()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_40 = 0;" (assignment_expression "local_40 = 0" identifier = number_literal) ;) (expression_statement "local_3c[0] = 0;" (assignment_expression "local_3c[0] = 0" (subscript_expression "local_3c[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "sscanf(__s,"%d.%d",&local_40,local_3c);" (call_expression "sscanf(__s,"%d.%d",&local_40,local_3c)" identifier (argument_list "(__s,"%d.%d",&local_40,local_3c)" ( identifier , (string_literal ""%d.%d"" " string_content ") , (pointer_expression "&local_40" & identifier) , identifier ))) ;) (expression_statement "iVar1 = (int)(param_1[6] - param_1[5] >> 5);" (assignment_expression "iVar1 = (int)(param_1[6] - param_1[5] >> 5)" identifier = (cast_expression "(int)(param_1[6] - param_1[5] >> 5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_1[6] - param_1[5] >> 5)" ( (binary_expression "param_1[6] - param_1[5] >> 5" (binary_expression "param_1[6] - param_1[5]" (subscript_expression "param_1[6]" identifier [ number_literal ]) - (subscript_expression "param_1[5]" identifier [ number_literal ])) >> number_literal) )))) ;) (expression_statement "uVar12 = (ulong)(iVar1 + 0x1f);" (assignment_expression "uVar12 = (ulong)(iVar1 + 0x1f)" identifier = (call_expression "(ulong)(iVar1 + 0x1f)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar1 + 0x1f)" ( (binary_expression "iVar1 + 0x1f" identifier + number_literal) )))) ;) (if_statement "if (0x7ffffffffffffff < uVar12) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }" if (parenthesized_expression "(0x7ffffffffffffff < uVar12)" ( (binary_expression "0x7ffffffffffffff < uVar12" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_0049ddb0();\n      }" { comment (expression_statement "FUN_0049ddb0();" (call_expression "FUN_0049ddb0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);" (assignment_expression "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" identifier = (cast_expression "(undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "thunk_FUN_0049cb70(uVar12 << 4)" identifier (argument_list "(uVar12 << 4)" ( (binary_expression "uVar12 << 4" identifier << number_literal) ))))) ;) (expression_statement "*puVar5 = 0xb;" (assignment_expression "*puVar5 = 0xb" (pointer_expression "*puVar5" * identifier) = number_literal) ;) (expression_statement "*(code **)(puVar5 + 2) = FUN_00406940;" (assignment_expression "*(code **)(puVar5 + 2) = FUN_00406940" (pointer_expression "*(code **)(puVar5 + 2)" * (cast_expression "(code **)(puVar5 + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 2)" ( (binary_expression "puVar5 + 2" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar5[4] = 1;" (assignment_expression "puVar5[4] = 1" (subscript_expression "puVar5[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar5[10] = local_40 * 100 + local_3c[0];" (assignment_expression "puVar5[10] = local_40 * 100 + local_3c[0]" (subscript_expression "puVar5[10]" identifier [ number_literal ]) = (binary_expression "local_40 * 100 + local_3c[0]" (binary_expression "local_40 * 100" identifier * number_literal) + (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "puVar2 = PTR_DAT_0067cb08;" (assignment_expression "puVar2 = PTR_DAT_0067cb08" identifier = identifier) ;) (expression_statement "puVar5[6] = 1;" (assignment_expression "puVar5[6] = 1" (subscript_expression "puVar5[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "lVar3 = *(long *)(puVar2 + 0x10);" (assignment_expression "lVar3 = *(long *)(puVar2 + 0x10)" identifier = (pointer_expression "*(long *)(puVar2 + 0x10)" * (cast_expression "(long *)(puVar2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar2 + 0x10)" ( (binary_expression "puVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar5[8] = 2;" (assignment_expression "puVar5[8] = 2" (subscript_expression "puVar5[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar5[0xc] = 3;" (assignment_expression "puVar5[0xc] = 3" (subscript_expression "puVar5[0xc]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (lVar3 == 0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" { comment (expression_statement "FUN_00352af0("../../gold/parameters.h",0x5c,"options");" (call_expression "FUN_00352af0("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;) })) (if_statement "if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }" if (parenthesized_expression "(*(char *)(lVar3 + 0x5051) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x5051) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x5051)" * (cast_expression "(char *)(lVar3 + 0x5051)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x5051)" ( (binary_expression "lVar3 + 0x5051" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }" { (if_statement "if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }" if (parenthesized_expression "(*(char *)(lVar3 + 0x2a61) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x2a61) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x2a61)" * (cast_expression "(char *)(lVar3 + 0x2a61)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x2a61)" ( (binary_expression "lVar3 + 0x2a61" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }" { (if_statement "if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }" if (parenthesized_expression "(*(char *)(lVar3 + 0x42d1) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x42d1) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x42d1)" * (cast_expression "(char *)(lVar3 + 0x42d1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x42d1)" ( (binary_expression "lVar3 + 0x42d1" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            puVar5[0xe] = 1;\n          }" { (expression_statement "puVar5[0xe] = 1;" (assignment_expression "puVar5[0xe] = 1" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n            puVar5[0xe] = 3;\n          }" else (compound_statement "{\n            puVar5[0xe] = 3;\n          }" { (expression_statement "puVar5[0xe] = 3;" (assignment_expression "puVar5[0xe] = 3" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n          puVar5[0xe] = 2;\n        }" else (compound_statement "{\n          puVar5[0xe] = 2;\n        }" { (expression_statement "puVar5[0xe] = 2;" (assignment_expression "puVar5[0xe] = 2" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n        puVar5[0xe] = 0;\n      }" else (compound_statement "{\n        puVar5[0xe] = 0;\n      }" { (expression_statement "puVar5[0xe] = 0;" (assignment_expression "puVar5[0xe] = 0" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) (expression_statement "lVar18 = param_1[5];" (assignment_expression "lVar18 = param_1[5]" identifier = (subscript_expression "param_1[5]" identifier [ number_literal ])) ;) (expression_statement "lVar9 = param_1[6];" (assignment_expression "lVar9 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "puVar5[0x10] = 0xf;" (assignment_expression "puVar5[0x10] = 0xf" (subscript_expression "puVar5[0x10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "lVar9 = lVar9 - lVar18 >> 5;" (assignment_expression "lVar9 = lVar9 - lVar18 >> 5" identifier = (binary_expression "lVar9 - lVar18 >> 5" (binary_expression "lVar9 - lVar18" identifier - identifier) >> number_literal)) ;) (expression_statement "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);" (assignment_expression "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058)" (pointer_expression "*(undefined8 *)(puVar5 + 0x12)" * (cast_expression "(undefined8 *)(puVar5 + 0x12)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x12)" ( (binary_expression "puVar5 + 0x12" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(lVar3 + 0x4058)" * (cast_expression "(undefined8 *)(lVar3 + 0x4058)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x4058)" ( (binary_expression "lVar3 + 0x4058" identifier + number_literal) ))))) ;) (if_statement "if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" if (parenthesized_expression "(lVar9 == 0)" ( (binary_expression "lVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }" { (expression_statement "lVar10 = 0x1e0;" (assignment_expression "lVar10 = 0x1e0" identifier = number_literal) ;) (expression_statement "lVar11 = 0xe0;" (assignment_expression "lVar11 = 0xe0" identifier = number_literal) ;) (expression_statement "local_4c = 0x1e;" (assignment_expression "local_4c = 0x1e" identifier = number_literal) ;) (expression_statement "lVar13 = 0xd0;" (assignment_expression "lVar13 = 0xd0" identifier = number_literal) ;) (expression_statement "local_58 = 0x1d0;" (assignment_expression "local_58 = 0x1d0" identifier = number_literal) ;) (expression_statement "lVar14 = 0xc0;" (assignment_expression "lVar14 = 0xc0" identifier = number_literal) ;) (expression_statement "lVar15 = 0xb0;" (assignment_expression "lVar15 = 0xb0" identifier = number_literal) ;) (expression_statement "lVar16 = 0xa0;" (assignment_expression "lVar16 = 0xa0" identifier = number_literal) ;) (expression_statement "local_60 = 0x1c0;" (assignment_expression "local_60 = 0x1c0" identifier = number_literal) ;) (expression_statement "lVar17 = 0x90;" (assignment_expression "lVar17 = 0x90" identifier = number_literal) ;) (expression_statement "lVar9 = 0x80;" (assignment_expression "lVar9 = 0x80" identifier = number_literal) ;) (expression_statement "lVar18 = 0x70;" (assignment_expression "lVar18 = 0x70" identifier = number_literal) ;) (expression_statement "local_68 = 0x1b0;" (assignment_expression "local_68 = 0x1b0" identifier = number_literal) ;) (expression_statement "lVar3 = 0x60;" (assignment_expression "lVar3 = 0x60" identifier = number_literal) ;) (expression_statement "lVar6 = 0x50;" (assignment_expression "lVar6 = 0x50" identifier = number_literal) ;) (expression_statement "local_70 = 0x1a0;" (assignment_expression "local_70 = 0x1a0" identifier = number_literal) ;) (expression_statement "local_78 = 400;" (assignment_expression "local_78 = 400" identifier = number_literal) ;) (expression_statement "local_80 = 0x180;" (assignment_expression "local_80 = 0x180" identifier = number_literal) ;) (expression_statement "local_88 = 0x170;" (assignment_expression "local_88 = 0x170" identifier = number_literal) ;) (expression_statement "local_90 = 0x160;" (assignment_expression "local_90 = 0x160" identifier = number_literal) ;) (expression_statement "local_98 = 0x150;" (assignment_expression "local_98 = 0x150" identifier = number_literal) ;) (expression_statement "local_a0 = 0x140;" (assignment_expression "local_a0 = 0x140" identifier = number_literal) ;) (expression_statement "local_a8 = 0x130;" (assignment_expression "local_a8 = 0x130" identifier = number_literal) ;) (expression_statement "local_b0 = 0x120;" (assignment_expression "local_b0 = 0x120" identifier = number_literal) ;) (expression_statement "local_b8 = 0x110;" (assignment_expression "local_b8 = 0x110" identifier = number_literal) ;) (expression_statement "local_c0 = 0x100;" (assignment_expression "local_c0 = 0x100" identifier = number_literal) ;) (expression_statement "local_c8 = 0xf0;" (assignment_expression "local_c8 = 0xf0" identifier = number_literal) ;) }) (else_clause "else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" else (compound_statement "{\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" { (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);" do (compound_statement "{\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        }" { (expression_statement "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;" (assignment_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4" (pointer_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50)" * (cast_expression "(undefined4 *)((long)puVar5 + lVar3 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar5 + lVar3 + 0x50)" ( (binary_expression "(long)puVar5 + lVar3 + 0x50" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);" (assignment_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2)" (pointer_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58)" * (cast_expression "(undefined8 *)((long)puVar5 + lVar3 + 0x58)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar5 + lVar3 + 0x58)" ( (binary_expression "(long)puVar5 + lVar3 + 0x58" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined8 *)(lVar18 + lVar3 * 2)" * (cast_expression "(undefined8 *)(lVar18 + lVar3 * 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + lVar3 * 2)" ( (binary_expression "lVar18 + lVar3 * 2" identifier + (binary_expression "lVar3 * 2" identifier * number_literal)) ))))) ;) (expression_statement "lVar3 = lVar3 + 0x10;" (assignment_expression "lVar3 = lVar3 + 0x10" identifier = (binary_expression "lVar3 + 0x10" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar9 << 4 != lVar3)" ( (binary_expression "lVar9 << 4 != lVar3" (binary_expression "lVar9 << 4" identifier << number_literal) != identifier) )) ;) (expression_statement "local_4c = (int)lVar9 + 0x1e;" (assignment_expression "local_4c = (int)lVar9 + 0x1e" identifier = (binary_expression "(int)lVar9 + 0x1e" (cast_expression "(int)lVar9" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "lVar6 = (long)((int)lVar9 + 5) * 0x10;" (assignment_expression "lVar6 = (long)((int)lVar9 + 5) * 0x10" identifier = (binary_expression "(long)((int)lVar9 + 5) * 0x10" (cast_expression "(long)((int)lVar9 + 5)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((int)lVar9 + 5)" ( (binary_expression "(int)lVar9 + 5" (cast_expression "(int)lVar9" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) * number_literal)) ;) (expression_statement "local_c8 = lVar6 + 0xa0;" (assignment_expression "local_c8 = lVar6 + 0xa0" identifier = (binary_expression "lVar6 + 0xa0" identifier + number_literal)) ;) (expression_statement "lVar3 = lVar6 + 0x10;" (assignment_expression "lVar3 = lVar6 + 0x10" identifier = (binary_expression "lVar6 + 0x10" identifier + number_literal)) ;) (expression_statement "local_c0 = lVar6 + 0xb0;" (assignment_expression "local_c0 = lVar6 + 0xb0" identifier = (binary_expression "lVar6 + 0xb0" identifier + number_literal)) ;) (expression_statement "lVar18 = lVar6 + 0x20;" (assignment_expression "lVar18 = lVar6 + 0x20" identifier = (binary_expression "lVar6 + 0x20" identifier + number_literal)) ;) (expression_statement "local_b8 = lVar6 + 0xc0;" (assignment_expression "local_b8 = lVar6 + 0xc0" identifier = (binary_expression "lVar6 + 0xc0" identifier + number_literal)) ;) (expression_statement "lVar9 = lVar6 + 0x30;" (assignment_expression "lVar9 = lVar6 + 0x30" identifier = (binary_expression "lVar6 + 0x30" identifier + number_literal)) ;) (expression_statement "local_b0 = lVar6 + 0xd0;" (assignment_expression "local_b0 = lVar6 + 0xd0" identifier = (binary_expression "lVar6 + 0xd0" identifier + number_literal)) ;) (expression_statement "lVar17 = lVar6 + 0x40;" (assignment_expression "lVar17 = lVar6 + 0x40" identifier = (binary_expression "lVar6 + 0x40" identifier + number_literal)) ;) (expression_statement "local_a8 = lVar6 + 0xe0;" (assignment_expression "local_a8 = lVar6 + 0xe0" identifier = (binary_expression "lVar6 + 0xe0" identifier + number_literal)) ;) (expression_statement "lVar16 = lVar6 + 0x50;" (assignment_expression "lVar16 = lVar6 + 0x50" identifier = (binary_expression "lVar6 + 0x50" identifier + number_literal)) ;) (expression_statement "lVar15 = lVar6 + 0x60;" (assignment_expression "lVar15 = lVar6 + 0x60" identifier = (binary_expression "lVar6 + 0x60" identifier + number_literal)) ;) (expression_statement "local_a0 = lVar6 + 0xf0;" (assignment_expression "local_a0 = lVar6 + 0xf0" identifier = (binary_expression "lVar6 + 0xf0" identifier + number_literal)) ;) (expression_statement "local_98 = lVar6 + 0x100;" (assignment_expression "local_98 = lVar6 + 0x100" identifier = (binary_expression "lVar6 + 0x100" identifier + number_literal)) ;) (expression_statement "lVar14 = lVar6 + 0x70;" (assignment_expression "lVar14 = lVar6 + 0x70" identifier = (binary_expression "lVar6 + 0x70" identifier + number_literal)) ;) (expression_statement "local_90 = lVar6 + 0x110;" (assignment_expression "local_90 = lVar6 + 0x110" identifier = (binary_expression "lVar6 + 0x110" identifier + number_literal)) ;) (expression_statement "lVar13 = lVar6 + 0x80;" (assignment_expression "lVar13 = lVar6 + 0x80" identifier = (binary_expression "lVar6 + 0x80" identifier + number_literal)) ;) (expression_statement "local_88 = lVar6 + 0x120;" (assignment_expression "local_88 = lVar6 + 0x120" identifier = (binary_expression "lVar6 + 0x120" identifier + number_literal)) ;) (expression_statement "lVar11 = lVar6 + 0x90;" (assignment_expression "lVar11 = lVar6 + 0x90" identifier = (binary_expression "lVar6 + 0x90" identifier + number_literal)) ;) (expression_statement "local_80 = lVar6 + 0x130;" (assignment_expression "local_80 = lVar6 + 0x130" identifier = (binary_expression "lVar6 + 0x130" identifier + number_literal)) ;) (expression_statement "lVar10 = lVar6 + 400;" (assignment_expression "lVar10 = lVar6 + 400" identifier = (binary_expression "lVar6 + 400" identifier + number_literal)) ;) (expression_statement "local_78 = lVar6 + 0x140;" (assignment_expression "local_78 = lVar6 + 0x140" identifier = (binary_expression "lVar6 + 0x140" identifier + number_literal)) ;) (expression_statement "local_70 = lVar6 + 0x150;" (assignment_expression "local_70 = lVar6 + 0x150" identifier = (binary_expression "lVar6 + 0x150" identifier + number_literal)) ;) (expression_statement "local_68 = lVar6 + 0x160;" (assignment_expression "local_68 = lVar6 + 0x160" identifier = (binary_expression "lVar6 + 0x160" identifier + number_literal)) ;) (expression_statement "local_60 = lVar6 + 0x170;" (assignment_expression "local_60 = lVar6 + 0x170" identifier = (binary_expression "lVar6 + 0x170" identifier + number_literal)) ;) (expression_statement "local_58 = lVar6 + 0x180;" (assignment_expression "local_58 = lVar6 + 0x180" identifier = (binary_expression "lVar6 + 0x180" identifier + number_literal)) ;) }))) (expression_statement "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;" (assignment_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00" (pointer_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar6 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar6 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + (long)puVar5)" ( (binary_expression "lVar6 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar6 + (long)puVar5) = 5;" (assignment_expression "*(undefined4 *)(lVar6 + (long)puVar5) = 5" (pointer_expression "*(undefined4 *)(lVar6 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + (long)puVar5)" ( (binary_expression "lVar6 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;" (assignment_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80" (pointer_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar3 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar3 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + (long)puVar5)" ( (binary_expression "lVar3 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar3 + (long)puVar5) = 6;" (assignment_expression "*(undefined4 *)(lVar3 + (long)puVar5) = 6" (pointer_expression "*(undefined4 *)(lVar3 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + (long)puVar5)" ( (binary_expression "lVar3 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;" (assignment_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00" (pointer_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar18 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar18 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar5)" ( (binary_expression "lVar18 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar18 + (long)puVar5) = 7;" (assignment_expression "*(undefined4 *)(lVar18 + (long)puVar5) = 7" (pointer_expression "*(undefined4 *)(lVar18 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar5)" ( (binary_expression "lVar18 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;" (assignment_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70" (pointer_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar9 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar9 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar9 + (long)puVar5)" ( (binary_expression "lVar9 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar9 + (long)puVar5) = 8;" (assignment_expression "*(undefined4 *)(lVar9 + (long)puVar5) = 8" (pointer_expression "*(undefined4 *)(lVar9 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar9 + (long)puVar5)" ( (binary_expression "lVar9 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;" (assignment_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0" (pointer_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar17 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar17 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + (long)puVar5)" ( (binary_expression "lVar17 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc;" (assignment_expression "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc" (pointer_expression "*(undefined4 *)(lVar17 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + (long)puVar5)" ( (binary_expression "lVar17 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;" (assignment_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0" (pointer_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar16 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar16 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar5)" ( (binary_expression "lVar16 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12;" (assignment_expression "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12" (pointer_expression "*(undefined4 *)(lVar16 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar5)" ( (binary_expression "lVar16 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;" (assignment_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90" (pointer_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar15 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar15 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar5)" ( (binary_expression "lVar15 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd;" (assignment_expression "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd" (pointer_expression "*(undefined4 *)(lVar15 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar5)" ( (binary_expression "lVar15 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;" (assignment_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940" (pointer_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar14 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar14 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar5)" ( (binary_expression "lVar14 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar14 + (long)puVar5) = 9;" (assignment_expression "*(undefined4 *)(lVar14 + (long)puVar5) = 9" (pointer_expression "*(undefined4 *)(lVar14 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar5)" ( (binary_expression "lVar14 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;" (assignment_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890" (pointer_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar13 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar13 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar13 + (long)puVar5)" ( (binary_expression "lVar13 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19;" (assignment_expression "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19" (pointer_expression "*(undefined4 *)(lVar13 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar13 + (long)puVar5)" ( (binary_expression "lVar13 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;" (assignment_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0" (pointer_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar11 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar11 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar5)" ( (binary_expression "lVar11 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;" (assignment_expression "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c" (pointer_expression "*(undefined4 *)(lVar11 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar5)" ( (binary_expression "lVar11 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;" (assignment_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0" (pointer_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_c8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar5)" ( (binary_expression "local_c8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c8 + (long)puVar5) = 10;" (assignment_expression "*(undefined4 *)(local_c8 + (long)puVar5) = 10" (pointer_expression "*(undefined4 *)(local_c8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar5)" ( (binary_expression "local_c8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;" (assignment_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470" (pointer_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_c0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar5)" ( (binary_expression "local_c0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe;" (assignment_expression "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe" (pointer_expression "*(undefined4 *)(local_c0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar5)" ( (binary_expression "local_c0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;" (assignment_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50" (pointer_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_b8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar5)" ( (binary_expression "local_b8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10;" (assignment_expression "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10" (pointer_expression "*(undefined4 *)(local_b8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar5)" ( (binary_expression "local_b8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;" (assignment_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210" (pointer_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_b0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar5)" ( (binary_expression "local_b0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13;" (assignment_expression "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13" (pointer_expression "*(undefined4 *)(local_b0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar5)" ( (binary_expression "local_b0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14;" (assignment_expression "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14" (pointer_expression "*(undefined4 *)(local_a8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar5)" ( (binary_expression "local_a8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;" (assignment_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170" (pointer_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_a8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar5)" ( (binary_expression "local_a8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15;" (assignment_expression "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15" (pointer_expression "*(undefined4 *)(local_a0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar5)" ( (binary_expression "local_a0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;" (assignment_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410" (pointer_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_a0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar5)" ( (binary_expression "local_a0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_98 + (long)puVar5) = 0x16;" (assignment_expression "*(undefined4 *)(local_98 + (long)puVar5) = 0x16" (pointer_expression "*(undefined4 *)(local_98 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar5)" ( (binary_expression "local_98 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;" (assignment_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070" (pointer_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_98 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_98 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar5)" ( (binary_expression "local_98 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_90 + (long)puVar5) = 0x17;" (assignment_expression "*(undefined4 *)(local_90 + (long)puVar5) = 0x17" (pointer_expression "*(undefined4 *)(local_90 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar5)" ( (binary_expression "local_90 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;" (assignment_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600" (pointer_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_90 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_90 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar5)" ( (binary_expression "local_90 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_88 + (long)puVar5) = 0x18;" (assignment_expression "*(undefined4 *)(local_88 + (long)puVar5) = 0x18" (pointer_expression "*(undefined4 *)(local_88 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar5)" ( (binary_expression "local_88 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;" (assignment_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10" (pointer_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_88 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_88 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar5)" ( (binary_expression "local_88 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a;" (assignment_expression "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a" (pointer_expression "*(undefined4 *)(local_80 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar5)" ( (binary_expression "local_80 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;" (assignment_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0" (pointer_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_80 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_80 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar5)" ( (binary_expression "local_80 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b;" (assignment_expression "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b" (pointer_expression "*(undefined4 *)(local_78 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar5)" ( (binary_expression "local_78 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;" (assignment_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290" (pointer_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_78 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_78 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar5)" ( (binary_expression "local_78 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d;" (assignment_expression "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d" (pointer_expression "*(undefined4 *)(local_70 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar5)" ( (binary_expression "local_70 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;" (assignment_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0" (pointer_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_70 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_70 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar5)" ( (binary_expression "local_70 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e;" (assignment_expression "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e" (pointer_expression "*(undefined4 *)(local_68 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar5)" ( (binary_expression "local_68 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;" (assignment_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30" (pointer_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_68 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_68 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar5)" ( (binary_expression "local_68 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f;" (assignment_expression "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f" (pointer_expression "*(undefined4 *)(local_60 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar5)" ( (binary_expression "local_60 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;" (assignment_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80" (pointer_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_60 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_60 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar5)" ( (binary_expression "local_60 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_58 + (long)puVar5) = 0x20;" (assignment_expression "*(undefined4 *)(local_58 + (long)puVar5) = 0x20" (pointer_expression "*(undefined4 *)(local_58 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar5)" ( (binary_expression "local_58 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;" (assignment_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850" (pointer_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_58 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_58 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar5)" ( (binary_expression "local_58 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar10 + (long)puVar5) = 0;" (assignment_expression "*(undefined4 *)(lVar10 + (long)puVar5) = 0" (pointer_expression "*(undefined4 *)(lVar10 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + (long)puVar5)" ( (binary_expression "lVar10 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;" (assignment_expression "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0" (subscript_expression "((undefined4 *)(lVar10 + (long)puVar5))[2]" (parenthesized_expression "((undefined4 *)(lVar10 + (long)puVar5))" ( (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + (long)puVar5)" ( (binary_expression "lVar10 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) )) [ number_literal ]) = number_literal) ;) (if_statement "if (iVar1 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" if (parenthesized_expression "(iVar1 + 0x1e != local_4c)" ( (binary_expression "iVar1 + 0x1e != local_4c" (binary_expression "iVar1 + 0x1e" identifier + number_literal) != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" { comment (expression_statement "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);" (call_expression "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121)" identifier (argument_list "("../../gold/plugin.cc",0x174,&DAT_0057d121)" ( (string_literal ""../../gold/plugin.cc"" " string_content ") , number_literal , (pointer_expression "&DAT_0057d121" & identifier) ))) ;) })) (expression_statement "(*pcVar4)(puVar5);" (call_expression "(*pcVar4)(puVar5)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(puVar5)" ( identifier ))) ;) (expression_statement "thunk_FUN_0049e340(puVar5);" (call_expression "thunk_FUN_0049e340(puVar5)" identifier (argument_list "(puVar5)" ( identifier ))) ;) }))) }))) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Enum "ELFOSABI": Some values do not have unique names */\n/* DWARF original prototype: void load(Plugin * this) */\n\nvoid __thiscall gold::Plugin::load(Plugin *this)\n\n{\n  General_options *pGVar1;\n  pointer pbVar2;\n  pointer pbVar3;\n  pointer pcVar4;\n  int iVar5;\n  Parameters *pPVar6;\n  void *pvVar7;\n  code *pcVar8;\n  char *pcVar9;\n  undefined4 *puVar10;\n  long lVar11;\n  long lVar12;\n  undefined8 uVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  ulong uVar17;\n  long lVar18;\n  long lVar19;\n  long lVar20;\n  long lVar21;\n  long lVar22;\n  long lVar23;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int major;\n  int minor;\n  \n  pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2);\n  this->handle_ = pvVar7;\n  if (pvVar7 == (void *)0x0) {\n    uVar13 = dlerror();\n    pcVar4 = (this->filename_)._M_dataplus._M_p;\n    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");\n    gold_error(pcVar9,pcVar4,uVar13);\n  }\n  else {\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }\n  return;\n}\n\n" comment comment comment (function_definition "void __thiscall gold::Plugin::load(Plugin *this)\n\n{\n  General_options *pGVar1;\n  pointer pbVar2;\n  pointer pbVar3;\n  pointer pcVar4;\n  int iVar5;\n  Parameters *pPVar6;\n  void *pvVar7;\n  code *pcVar8;\n  char *pcVar9;\n  undefined4 *puVar10;\n  long lVar11;\n  long lVar12;\n  undefined8 uVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  ulong uVar17;\n  long lVar18;\n  long lVar19;\n  long lVar20;\n  long lVar21;\n  long lVar22;\n  long lVar23;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int major;\n  int minor;\n  \n  pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2);\n  this->handle_ = pvVar7;\n  if (pvVar7 == (void *)0x0) {\n    uVar13 = dlerror();\n    pcVar4 = (this->filename_)._M_dataplus._M_p;\n    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");\n    gold_error(pcVar9,pcVar4,uVar13);\n  }\n  else {\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Plugin::" identifier : : identifier : :) (function_declarator "load(Plugin *this)" identifier (parameter_list "(Plugin *this)" ( (parameter_declaration "Plugin *this" type_identifier (pointer_declarator "*this" * identifier)) ))) (compound_statement "{\n  General_options *pGVar1;\n  pointer pbVar2;\n  pointer pbVar3;\n  pointer pcVar4;\n  int iVar5;\n  Parameters *pPVar6;\n  void *pvVar7;\n  code *pcVar8;\n  char *pcVar9;\n  undefined4 *puVar10;\n  long lVar11;\n  long lVar12;\n  undefined8 uVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  ulong uVar17;\n  long lVar18;\n  long lVar19;\n  long lVar20;\n  long lVar21;\n  long lVar22;\n  long lVar23;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int major;\n  int minor;\n  \n  pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2);\n  this->handle_ = pvVar7;\n  if (pvVar7 == (void *)0x0) {\n    uVar13 = dlerror();\n    pcVar4 = (this->filename_)._M_dataplus._M_p;\n    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");\n    gold_error(pcVar9,pcVar4,uVar13);\n  }\n  else {\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }\n  return;\n}" { (declaration "General_options *pGVar1;" type_identifier (pointer_declarator "*pGVar1" * identifier) ;) (declaration "pointer pbVar2;" type_identifier identifier ;) (declaration "pointer pbVar3;" type_identifier identifier ;) (declaration "pointer pcVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "Parameters *pPVar6;" type_identifier (pointer_declarator "*pPVar6" * identifier) ;) (declaration "void *pvVar7;" primitive_type (pointer_declarator "*pvVar7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "undefined4 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar12;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar13;" type_identifier identifier ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar15;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar17;" type_identifier identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar19;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar20;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar21;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar22;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar23;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_98;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_90;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_88;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_80;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_78;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_70;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_68;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_4c;" primitive_type identifier ;) (declaration "int major;" primitive_type identifier ;) (declaration "int minor;" primitive_type identifier ;) (expression_statement "pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2);" (assignment_expression "pvVar7 = (void *)dlopen((this->filename_)._M_dataplus._M_p,2)" identifier = (cast_expression "(void *)dlopen((this->filename_)._M_dataplus._M_p,2)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dlopen((this->filename_)._M_dataplus._M_p,2)" identifier (argument_list "((this->filename_)._M_dataplus._M_p,2)" ( (field_expression "(this->filename_)._M_dataplus._M_p" (field_expression "(this->filename_)._M_dataplus" (parenthesized_expression "(this->filename_)" ( (field_expression "this->filename_" identifier -> field_identifier) )) . field_identifier) . field_identifier) , number_literal ))))) ;) (expression_statement "this->handle_ = pvVar7;" (assignment_expression "this->handle_ = pvVar7" (field_expression "this->handle_" identifier -> field_identifier) = identifier) ;) (if_statement "if (pvVar7 == (void *)0x0) {\n    uVar13 = dlerror();\n    pcVar4 = (this->filename_)._M_dataplus._M_p;\n    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");\n    gold_error(pcVar9,pcVar4,uVar13);\n  }\n  else {\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }" if (parenthesized_expression "(pvVar7 == (void *)0x0)" ( (binary_expression "pvVar7 == (void *)0x0" identifier == (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar13 = dlerror();\n    pcVar4 = (this->filename_)._M_dataplus._M_p;\n    pcVar9 = (char *)gettext("%s: could not load plugin library: %s");\n    gold_error(pcVar9,pcVar4,uVar13);\n  }" { (expression_statement "uVar13 = dlerror();" (assignment_expression "uVar13 = dlerror()" identifier = (call_expression "dlerror()" identifier (argument_list "()" ( )))) ;) (expression_statement "pcVar4 = (this->filename_)._M_dataplus._M_p;" (assignment_expression "pcVar4 = (this->filename_)._M_dataplus._M_p" identifier = (field_expression "(this->filename_)._M_dataplus._M_p" (field_expression "(this->filename_)._M_dataplus" (parenthesized_expression "(this->filename_)" ( (field_expression "this->filename_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pcVar9 = (char *)gettext("%s: could not load plugin library: %s");" (assignment_expression "pcVar9 = (char *)gettext("%s: could not load plugin library: %s")" identifier = (cast_expression "(char *)gettext("%s: could not load plugin library: %s")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("%s: could not load plugin library: %s")" identifier (argument_list "("%s: could not load plugin library: %s")" ( (string_literal ""%s: could not load plugin library: %s"" " string_content ") ))))) ;) (expression_statement "gold_error(pcVar9,pcVar4,uVar13);" (call_expression "gold_error(pcVar9,pcVar4,uVar13)" identifier (argument_list "(pcVar9,pcVar4,uVar13)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }" else (compound_statement "{\n    pcVar8 = (code *)dlsym(pvVar7,"onload");\n    if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }\n  }" { (expression_statement "pcVar8 = (code *)dlsym(pvVar7,"onload");" (assignment_expression "pcVar8 = (code *)dlsym(pvVar7,"onload")" identifier = (cast_expression "(code *)dlsym(pvVar7,"onload")" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dlsym(pvVar7,"onload")" identifier (argument_list "(pvVar7,"onload")" ( identifier , (string_literal ""onload"" " string_content ") ))))) ;) (if_statement "if (pcVar8 == (code *)0x0) {\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }\n    else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }" if (parenthesized_expression "(pcVar8 == (code *)0x0)" ( (binary_expression "pcVar8 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar4 = (this->filename_)._M_dataplus._M_p;\n      pcVar9 = (char *)gettext("%s: could not find onload entry point");\n      gold_error(pcVar9,pcVar4);\n    }" { (expression_statement "pcVar4 = (this->filename_)._M_dataplus._M_p;" (assignment_expression "pcVar4 = (this->filename_)._M_dataplus._M_p" identifier = (field_expression "(this->filename_)._M_dataplus._M_p" (field_expression "(this->filename_)._M_dataplus" (parenthesized_expression "(this->filename_)" ( (field_expression "this->filename_" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pcVar9 = (char *)gettext("%s: could not find onload entry point");" (assignment_expression "pcVar9 = (char *)gettext("%s: could not find onload entry point")" identifier = (cast_expression "(char *)gettext("%s: could not find onload entry point")" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "gettext("%s: could not find onload entry point")" identifier (argument_list "("%s: could not find onload entry point")" ( (string_literal ""%s: could not find onload entry point"" " string_content ") ))))) ;) (expression_statement "gold_error(pcVar9,pcVar4);" (call_expression "gold_error(pcVar9,pcVar4)" identifier (argument_list "(pcVar9,pcVar4)" ( identifier , identifier ))) ;) }) (else_clause "else {\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }" else (compound_statement "{\n      pcVar9 = get_version_string();\n      major = 0;\n      minor = 0;\n      sscanf(pcVar9,"%d.%d",&major,&minor);\n      iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);\n      uVar17 = (ulong)(iVar5 + 0x1f);\n      if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }\n      puVar10 = (undefined4 *)operator_new__(uVar17 << 4);\n      *puVar10 = 0xb;\n      *(code **)(puVar10 + 2) = message;\n      puVar10[4] = 1;\n      puVar10[10] = major * 100 + minor;\n      pPVar6 = parameters;\n      puVar10[6] = 1;\n      pGVar1 = pPVar6->options_;\n      puVar10[8] = 2;\n      puVar10[0xc] = 3;\n      if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }\n      if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }\n      pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_start;\n      pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n               ._M_impl._M_finish;\n      puVar10[0x10] = 0xf;\n      lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;\n      *(char **)(puVar10 + 0x12) = (pGVar1->output_).value;\n      if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;\n      *(undefined4 *)(lVar12 + (long)puVar10) = 5;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;\n      *(undefined4 *)(lVar14 + (long)puVar10) = 6;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;\n      *(undefined4 *)(lVar11 + (long)puVar10) = 7;\n      *(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;\n      *(undefined4 *)(lVar23 + (long)puVar10) = 8;\n      *(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;\n      *(undefined4 *)(lVar22 + (long)puVar10) = 0xc;\n      *(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;\n      *(undefined4 *)(lVar21 + (long)puVar10) = 0x12;\n      *(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;\n      *(undefined4 *)(lVar20 + (long)puVar10) = 0xd;\n      *(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;\n      *(undefined4 *)(lVar19 + (long)puVar10) = 9;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;\n      *(undefined4 *)(lVar18 + (long)puVar10) = 0x19;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;\n      *(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;\n      *(undefined4 *)(local_c8 + (long)puVar10) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;\n      *(undefined4 *)(local_c0 + (long)puVar10) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;\n      *(undefined4 *)(local_b8 + (long)puVar10) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;\n      *(undefined4 *)(local_b0 + (long)puVar10) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar10) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;\n      *(undefined4 *)(local_a0 + (long)puVar10) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;\n      *(undefined4 *)(local_98 + (long)puVar10) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;\n      *(undefined4 *)(local_90 + (long)puVar10) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;\n      *(undefined4 *)(local_88 + (long)puVar10) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;\n      *(undefined4 *)(local_80 + (long)puVar10) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;\n      *(undefined4 *)(local_78 + (long)puVar10) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;\n      *(undefined4 *)(local_70 + (long)puVar10) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;\n      *(undefined4 *)(local_68 + (long)puVar10) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;\n      *(undefined4 *)(local_60 + (long)puVar10) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;\n      *(undefined4 *)(local_58 + (long)puVar10) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;\n      *(undefined4 *)(lVar15 + (long)puVar10) = 0;\n      ((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;\n      if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }\n      (*pcVar8)(puVar10);\n      operator_delete__(puVar10);\n    }" { (expression_statement "pcVar9 = get_version_string();" (assignment_expression "pcVar9 = get_version_string()" identifier = (call_expression "get_version_string()" identifier (argument_list "()" ( )))) ;) (expression_statement "major = 0;" (assignment_expression "major = 0" identifier = number_literal) ;) (expression_statement "minor = 0;" (assignment_expression "minor = 0" identifier = number_literal) ;) (expression_statement "sscanf(pcVar9,"%d.%d",&major,&minor);" (call_expression "sscanf(pcVar9,"%d.%d",&major,&minor)" identifier (argument_list "(pcVar9,"%d.%d",&major,&minor)" ( identifier , (string_literal ""%d.%d"" " string_content ") , (pointer_expression "&major" & identifier) , (pointer_expression "&minor" & identifier) ))) ;) (expression_statement "iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5);" (assignment_expression "iVar5 = (int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5)" identifier = (cast_expression "(int)((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5)" ( (ERROR "(long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (comma_expression "(long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char,_std" (binary_expression "(long)(this->args_).\n                          super__Vector_base<std::__cxx11::basic_string<char" (binary_expression "(long)(this->args_).\n                          super__Vector_base<std" (cast_expression "(long)(this->args_).\n                          super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(this->args_).\n                          super__Vector_base" (parenthesized_expression "(this->args_)" ( (field_expression "this->args_" identifier -> field_identifier) )) . field_identifier)) < identifier) (ERROR "::__cxx11::basic_string" : : identifier : : identifier) < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base<std" (binary_expression "allocator<char>_>_>_>\n                          ._M_impl._M_finish -\n                    (long)(this->args_).\n                          super__Vector_base" (field_expression "allocator<char>_>_>_>\n                          ._M_impl._M_finish" (field_expression "allocator<char>_>_>_>\n                          ._M_impl" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) - (cast_expression "(long)(this->args_).\n                          super__Vector_base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "(this->args_).\n                          super__Vector_base" (parenthesized_expression "(this->args_)" ( (field_expression "this->args_" identifier -> field_identifier) )) . field_identifier))) < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : identifier : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char>,_std" (binary_expression "char_traits<char" identifier < identifier) > (ERROR "," ,) identifier) : :) (binary_expression "allocator<char>_>_>_>\n                          ._M_impl._M_start >> 5" (field_expression "allocator<char>_>_>_>\n                          ._M_impl._M_start" (field_expression "allocator<char>_>_>_>\n                          ._M_impl" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) >> number_literal) )))) ;) (expression_statement "uVar17 = (ulong)(iVar5 + 0x1f);" (assignment_expression "uVar17 = (ulong)(iVar5 + 0x1f)" identifier = (call_expression "(ulong)(iVar5 + 0x1f)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar5 + 0x1f)" ( (binary_expression "iVar5 + 0x1f" identifier + number_literal) )))) ;) (if_statement "if (0x7ffffffffffffff < uVar17) {\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }" if (parenthesized_expression "(0x7ffffffffffffff < uVar17)" ( (binary_expression "0x7ffffffffffffff < uVar17" number_literal < identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        __cxa_throw_bad_array_new_length();\n      }" { comment (expression_statement "__cxa_throw_bad_array_new_length();" (call_expression "__cxa_throw_bad_array_new_length()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar10 = (undefined4 *)operator_new__(uVar17 << 4);" (assignment_expression "puVar10 = (undefined4 *)operator_new__(uVar17 << 4)" identifier = (cast_expression "(undefined4 *)operator_new__(uVar17 << 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "operator_new__(uVar17 << 4)" identifier (argument_list "(uVar17 << 4)" ( (binary_expression "uVar17 << 4" identifier << number_literal) ))))) ;) (expression_statement "*puVar10 = 0xb;" (assignment_expression "*puVar10 = 0xb" (pointer_expression "*puVar10" * identifier) = number_literal) ;) (expression_statement "*(code **)(puVar10 + 2) = message;" (assignment_expression "*(code **)(puVar10 + 2) = message" (pointer_expression "*(code **)(puVar10 + 2)" * (cast_expression "(code **)(puVar10 + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar10 + 2)" ( (binary_expression "puVar10 + 2" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar10[4] = 1;" (assignment_expression "puVar10[4] = 1" (subscript_expression "puVar10[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar10[10] = major * 100 + minor;" (assignment_expression "puVar10[10] = major * 100 + minor" (subscript_expression "puVar10[10]" identifier [ number_literal ]) = (binary_expression "major * 100 + minor" (binary_expression "major * 100" identifier * number_literal) + identifier)) ;) (expression_statement "pPVar6 = parameters;" (assignment_expression "pPVar6 = parameters" identifier = identifier) ;) (expression_statement "puVar10[6] = 1;" (assignment_expression "puVar10[6] = 1" (subscript_expression "puVar10[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "pGVar1 = pPVar6->options_;" (assignment_expression "pGVar1 = pPVar6->options_" identifier = (field_expression "pPVar6->options_" identifier -> field_identifier)) ;) (expression_statement "puVar10[8] = 2;" (assignment_expression "puVar10[8] = 2" (subscript_expression "puVar10[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar10[0xc] = 3;" (assignment_expression "puVar10[0xc] = 3" (subscript_expression "puVar10[0xc]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (pGVar1 == (General_options *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }" if (parenthesized_expression "(pGVar1 == (General_options *)0x0)" ( (binary_expression "pGVar1 == (General_options *)0x0" identifier == (cast_expression "(General_options *)0x0" ( (type_descriptor "General_options *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/parameters.h",0x5c,"options");\n      }" { comment (expression_statement "do_gold_unreachable("../../gold/parameters.h",0x5c,"options");" (call_expression "do_gold_unreachable("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;) })) (if_statement "if ((pGVar1->relocatable_).value == false) {\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }\n      else {\n        puVar10[0xe] = 0;\n      }" if (parenthesized_expression "((pGVar1->relocatable_).value == false)" ( (binary_expression "(pGVar1->relocatable_).value == false" (field_expression "(pGVar1->relocatable_).value" (parenthesized_expression "(pGVar1->relocatable_)" ( (field_expression "pGVar1->relocatable_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n        if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }\n      }" { (if_statement "if ((pGVar1->shared_).value == false) {\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }\n        else {\n          puVar10[0xe] = 2;\n        }" if (parenthesized_expression "((pGVar1->shared_).value == false)" ( (binary_expression "(pGVar1->shared_).value == false" (field_expression "(pGVar1->shared_).value" (parenthesized_expression "(pGVar1->shared_)" ( (field_expression "pGVar1->shared_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n          if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }\n        }" { (if_statement "if ((pGVar1->pie_).value == false) {\n            puVar10[0xe] = 1;\n          }\n          else {\n            puVar10[0xe] = 3;\n          }" if (parenthesized_expression "((pGVar1->pie_).value == false)" ( (binary_expression "(pGVar1->pie_).value == false" (field_expression "(pGVar1->pie_).value" (parenthesized_expression "(pGVar1->pie_)" ( (field_expression "pGVar1->pie_" identifier -> field_identifier) )) . field_identifier) == false) )) (compound_statement "{\n            puVar10[0xe] = 1;\n          }" { (expression_statement "puVar10[0xe] = 1;" (assignment_expression "puVar10[0xe] = 1" (subscript_expression "puVar10[0xe]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n            puVar10[0xe] = 3;\n          }" else (compound_statement "{\n            puVar10[0xe] = 3;\n          }" { (expression_statement "puVar10[0xe] = 3;" (assignment_expression "puVar10[0xe] = 3" (subscript_expression "puVar10[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n          puVar10[0xe] = 2;\n        }" else (compound_statement "{\n          puVar10[0xe] = 2;\n        }" { (expression_statement "puVar10[0xe] = 2;" (assignment_expression "puVar10[0xe] = 2" (subscript_expression "puVar10[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n        puVar10[0xe] = 0;\n      }" else (compound_statement "{\n        puVar10[0xe] = 0;\n      }" { (expression_statement "puVar10[0xe] = 0;" (assignment_expression "puVar10[0xe] = 0" (subscript_expression "puVar10[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) (ERROR "pbVar2 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (assignment_expression "pbVar2 = (this->args_).\n               super__Vector_base<std" identifier = (binary_expression "(this->args_).\n               super__Vector_base<std" (field_expression "(this->args_).\n               super__Vector_base" (parenthesized_expression "(this->args_)" ( (field_expression "this->args_" identifier -> field_identifier) )) . field_identifier) < identifier)) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>_>_>_>\n               ._M_impl._M_start;" (field_expression "allocator<char>_>_>_>\n               ._M_impl._M_start" (field_expression "allocator<char>_>_>_>\n               ._M_impl" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (ERROR "pbVar3 = (this->args_).\n               super__Vector_base<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::allocator<char>_>,_std::allocator<std::__cxx11::basic_string<char,_std::char_traits<char>,_std::" (assignment_expression "pbVar3 = (this->args_).\n               super__Vector_base<std" identifier = (binary_expression "(this->args_).\n               super__Vector_base<std" (field_expression "(this->args_).\n               super__Vector_base" (parenthesized_expression "(this->args_)" ( (field_expression "this->args_" identifier -> field_identifier) )) . field_identifier) < identifier)) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : : (binary_expression "allocator<char>_>,_std" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > (ERROR "," ,) identifier) : : (binary_expression "allocator<std" identifier < identifier) : : (comma_expression "__cxx11::basic_string<char,_std::char_traits<char>,_std" identifier (ERROR "::basic_string<char,_std::char_traits<char>" : : (comma_expression "basic_string<char,_std" (binary_expression "basic_string<char" identifier < identifier) , identifier) : : (binary_expression "char_traits<char" identifier < identifier) >) , identifier) : :) (expression_statement "allocator<char>_>_>_>\n               ._M_impl._M_finish;" (field_expression "allocator<char>_>_>_>\n               ._M_impl._M_finish" (field_expression "allocator<char>_>_>_>\n               ._M_impl" (binary_expression "allocator<char>_>_>_" (binary_expression "allocator<char>_>_" (binary_expression "allocator<char>_" (binary_expression "allocator<char" identifier < identifier) > identifier) > identifier) > identifier) (ERROR ">" >) . field_identifier) . field_identifier) ;) (expression_statement "puVar10[0x10] = 0xf;" (assignment_expression "puVar10[0x10] = 0xf" (subscript_expression "puVar10[0x10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "lVar14 = (long)pbVar3 - (long)pbVar2 >> 5;" (assignment_expression "lVar14 = (long)pbVar3 - (long)pbVar2 >> 5" identifier = (binary_expression "(long)pbVar3 - (long)pbVar2 >> 5" (binary_expression "(long)pbVar3 - (long)pbVar2" (cast_expression "(long)pbVar3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)pbVar2" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) >> number_literal)) ;) (expression_statement "*(char **)(puVar10 + 0x12) = (pGVar1->output_).value;" (assignment_expression "*(char **)(puVar10 + 0x12) = (pGVar1->output_).value" (pointer_expression "*(char **)(puVar10 + 0x12)" * (cast_expression "(char **)(puVar10 + 0x12)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar10 + 0x12)" ( (binary_expression "puVar10 + 0x12" identifier + number_literal) )))) = (field_expression "(pGVar1->output_).value" (parenthesized_expression "(pGVar1->output_)" ( (field_expression "pGVar1->output_" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (lVar14 == 0) {\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }" if (parenthesized_expression "(lVar14 == 0)" ( (binary_expression "lVar14 == 0" identifier == number_literal) )) (compound_statement "{\n        lVar15 = 0x1e0;\n        lVar16 = 0xe0;\n        local_4c = 0x1e;\n        lVar18 = 0xd0;\n        local_58 = 0x1d0;\n        lVar19 = 0xc0;\n        lVar20 = 0xb0;\n        lVar21 = 0xa0;\n        local_60 = 0x1c0;\n        lVar22 = 0x90;\n        lVar23 = 0x80;\n        lVar11 = 0x70;\n        local_68 = 0x1b0;\n        lVar14 = 0x60;\n        lVar12 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }" { (expression_statement "lVar15 = 0x1e0;" (assignment_expression "lVar15 = 0x1e0" identifier = number_literal) ;) (expression_statement "lVar16 = 0xe0;" (assignment_expression "lVar16 = 0xe0" identifier = number_literal) ;) (expression_statement "local_4c = 0x1e;" (assignment_expression "local_4c = 0x1e" identifier = number_literal) ;) (expression_statement "lVar18 = 0xd0;" (assignment_expression "lVar18 = 0xd0" identifier = number_literal) ;) (expression_statement "local_58 = 0x1d0;" (assignment_expression "local_58 = 0x1d0" identifier = number_literal) ;) (expression_statement "lVar19 = 0xc0;" (assignment_expression "lVar19 = 0xc0" identifier = number_literal) ;) (expression_statement "lVar20 = 0xb0;" (assignment_expression "lVar20 = 0xb0" identifier = number_literal) ;) (expression_statement "lVar21 = 0xa0;" (assignment_expression "lVar21 = 0xa0" identifier = number_literal) ;) (expression_statement "local_60 = 0x1c0;" (assignment_expression "local_60 = 0x1c0" identifier = number_literal) ;) (expression_statement "lVar22 = 0x90;" (assignment_expression "lVar22 = 0x90" identifier = number_literal) ;) (expression_statement "lVar23 = 0x80;" (assignment_expression "lVar23 = 0x80" identifier = number_literal) ;) (expression_statement "lVar11 = 0x70;" (assignment_expression "lVar11 = 0x70" identifier = number_literal) ;) (expression_statement "local_68 = 0x1b0;" (assignment_expression "local_68 = 0x1b0" identifier = number_literal) ;) (expression_statement "lVar14 = 0x60;" (assignment_expression "lVar14 = 0x60" identifier = number_literal) ;) (expression_statement "lVar12 = 0x50;" (assignment_expression "lVar12 = 0x50" identifier = number_literal) ;) (expression_statement "local_70 = 0x1a0;" (assignment_expression "local_70 = 0x1a0" identifier = number_literal) ;) (expression_statement "local_78 = 400;" (assignment_expression "local_78 = 400" identifier = number_literal) ;) (expression_statement "local_80 = 0x180;" (assignment_expression "local_80 = 0x180" identifier = number_literal) ;) (expression_statement "local_88 = 0x170;" (assignment_expression "local_88 = 0x170" identifier = number_literal) ;) (expression_statement "local_90 = 0x160;" (assignment_expression "local_90 = 0x160" identifier = number_literal) ;) (expression_statement "local_98 = 0x150;" (assignment_expression "local_98 = 0x150" identifier = number_literal) ;) (expression_statement "local_a0 = 0x140;" (assignment_expression "local_a0 = 0x140" identifier = number_literal) ;) (expression_statement "local_a8 = 0x130;" (assignment_expression "local_a8 = 0x130" identifier = number_literal) ;) (expression_statement "local_b0 = 0x120;" (assignment_expression "local_b0 = 0x120" identifier = number_literal) ;) (expression_statement "local_b8 = 0x110;" (assignment_expression "local_b8 = 0x110" identifier = number_literal) ;) (expression_statement "local_c0 = 0x100;" (assignment_expression "local_c0 = 0x100" identifier = number_literal) ;) (expression_statement "local_c8 = 0xf0;" (assignment_expression "local_c8 = 0xf0" identifier = number_literal) ;) }) (else_clause "else {\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }" else (compound_statement "{\n        lVar11 = 0;\n        do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);\n        local_4c = (int)lVar14 + 0x1e;\n        lVar12 = (long)((int)lVar14 + 5) * 0x10;\n        local_c8 = lVar12 + 0xa0;\n        lVar14 = lVar12 + 0x10;\n        local_c0 = lVar12 + 0xb0;\n        lVar11 = lVar12 + 0x20;\n        local_b8 = lVar12 + 0xc0;\n        lVar23 = lVar12 + 0x30;\n        local_b0 = lVar12 + 0xd0;\n        lVar22 = lVar12 + 0x40;\n        local_a8 = lVar12 + 0xe0;\n        lVar21 = lVar12 + 0x50;\n        lVar20 = lVar12 + 0x60;\n        local_a0 = lVar12 + 0xf0;\n        local_98 = lVar12 + 0x100;\n        lVar19 = lVar12 + 0x70;\n        local_90 = lVar12 + 0x110;\n        lVar18 = lVar12 + 0x80;\n        local_88 = lVar12 + 0x120;\n        lVar16 = lVar12 + 0x90;\n        local_80 = lVar12 + 0x130;\n        lVar15 = lVar12 + 400;\n        local_78 = lVar12 + 0x140;\n        local_70 = lVar12 + 0x150;\n        local_68 = lVar12 + 0x160;\n        local_60 = lVar12 + 0x170;\n        local_58 = lVar12 + 0x180;\n      }" { (expression_statement "lVar11 = 0;" (assignment_expression "lVar11 = 0" identifier = number_literal) ;) (do_statement "do {\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        } while (lVar14 << 4 != lVar11);" do (compound_statement "{\n          *(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;\n          *(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);\n          lVar11 = lVar11 + 0x10;\n        }" { (expression_statement "*(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4;" (assignment_expression "*(undefined4 *)((long)puVar10 + lVar11 + 0x50) = 4" (pointer_expression "*(undefined4 *)((long)puVar10 + lVar11 + 0x50)" * (cast_expression "(undefined4 *)((long)puVar10 + lVar11 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar10 + lVar11 + 0x50)" ( (binary_expression "(long)puVar10 + lVar11 + 0x50" (binary_expression "(long)puVar10 + lVar11" (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2);" (assignment_expression "*(undefined8 *)((long)puVar10 + lVar11 + 0x58) =\n               *(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2)" (pointer_expression "*(undefined8 *)((long)puVar10 + lVar11 + 0x58)" * (cast_expression "(undefined8 *)((long)puVar10 + lVar11 + 0x58)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar10 + lVar11 + 0x58)" ( (binary_expression "(long)puVar10 + lVar11 + 0x58" (binary_expression "(long)puVar10 + lVar11" (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2)" * (cast_expression "(undefined8 *)((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2)" ( (binary_expression "(long)&(pbVar2->_M_dataplus)._M_p + lVar11 * 2" (cast_expression "(long)&(pbVar2->_M_dataplus)._M_p" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(pbVar2->_M_dataplus)._M_p" & (field_expression "(pbVar2->_M_dataplus)._M_p" (parenthesized_expression "(pbVar2->_M_dataplus)" ( (field_expression "pbVar2->_M_dataplus" identifier -> field_identifier) )) . field_identifier))) + (binary_expression "lVar11 * 2" identifier * number_literal)) ))))) ;) (expression_statement "lVar11 = lVar11 + 0x10;" (assignment_expression "lVar11 = lVar11 + 0x10" identifier = (binary_expression "lVar11 + 0x10" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar14 << 4 != lVar11)" ( (binary_expression "lVar14 << 4 != lVar11" (binary_expression "lVar14 << 4" identifier << number_literal) != identifier) )) ;) (expression_statement "local_4c = (int)lVar14 + 0x1e;" (assignment_expression "local_4c = (int)lVar14 + 0x1e" identifier = (binary_expression "(int)lVar14 + 0x1e" (cast_expression "(int)lVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "lVar12 = (long)((int)lVar14 + 5) * 0x10;" (assignment_expression "lVar12 = (long)((int)lVar14 + 5) * 0x10" identifier = (binary_expression "(long)((int)lVar14 + 5) * 0x10" (cast_expression "(long)((int)lVar14 + 5)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((int)lVar14 + 5)" ( (binary_expression "(int)lVar14 + 5" (cast_expression "(int)lVar14" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) * number_literal)) ;) (expression_statement "local_c8 = lVar12 + 0xa0;" (assignment_expression "local_c8 = lVar12 + 0xa0" identifier = (binary_expression "lVar12 + 0xa0" identifier + number_literal)) ;) (expression_statement "lVar14 = lVar12 + 0x10;" (assignment_expression "lVar14 = lVar12 + 0x10" identifier = (binary_expression "lVar12 + 0x10" identifier + number_literal)) ;) (expression_statement "local_c0 = lVar12 + 0xb0;" (assignment_expression "local_c0 = lVar12 + 0xb0" identifier = (binary_expression "lVar12 + 0xb0" identifier + number_literal)) ;) (expression_statement "lVar11 = lVar12 + 0x20;" (assignment_expression "lVar11 = lVar12 + 0x20" identifier = (binary_expression "lVar12 + 0x20" identifier + number_literal)) ;) (expression_statement "local_b8 = lVar12 + 0xc0;" (assignment_expression "local_b8 = lVar12 + 0xc0" identifier = (binary_expression "lVar12 + 0xc0" identifier + number_literal)) ;) (expression_statement "lVar23 = lVar12 + 0x30;" (assignment_expression "lVar23 = lVar12 + 0x30" identifier = (binary_expression "lVar12 + 0x30" identifier + number_literal)) ;) (expression_statement "local_b0 = lVar12 + 0xd0;" (assignment_expression "local_b0 = lVar12 + 0xd0" identifier = (binary_expression "lVar12 + 0xd0" identifier + number_literal)) ;) (expression_statement "lVar22 = lVar12 + 0x40;" (assignment_expression "lVar22 = lVar12 + 0x40" identifier = (binary_expression "lVar12 + 0x40" identifier + number_literal)) ;) (expression_statement "local_a8 = lVar12 + 0xe0;" (assignment_expression "local_a8 = lVar12 + 0xe0" identifier = (binary_expression "lVar12 + 0xe0" identifier + number_literal)) ;) (expression_statement "lVar21 = lVar12 + 0x50;" (assignment_expression "lVar21 = lVar12 + 0x50" identifier = (binary_expression "lVar12 + 0x50" identifier + number_literal)) ;) (expression_statement "lVar20 = lVar12 + 0x60;" (assignment_expression "lVar20 = lVar12 + 0x60" identifier = (binary_expression "lVar12 + 0x60" identifier + number_literal)) ;) (expression_statement "local_a0 = lVar12 + 0xf0;" (assignment_expression "local_a0 = lVar12 + 0xf0" identifier = (binary_expression "lVar12 + 0xf0" identifier + number_literal)) ;) (expression_statement "local_98 = lVar12 + 0x100;" (assignment_expression "local_98 = lVar12 + 0x100" identifier = (binary_expression "lVar12 + 0x100" identifier + number_literal)) ;) (expression_statement "lVar19 = lVar12 + 0x70;" (assignment_expression "lVar19 = lVar12 + 0x70" identifier = (binary_expression "lVar12 + 0x70" identifier + number_literal)) ;) (expression_statement "local_90 = lVar12 + 0x110;" (assignment_expression "local_90 = lVar12 + 0x110" identifier = (binary_expression "lVar12 + 0x110" identifier + number_literal)) ;) (expression_statement "lVar18 = lVar12 + 0x80;" (assignment_expression "lVar18 = lVar12 + 0x80" identifier = (binary_expression "lVar12 + 0x80" identifier + number_literal)) ;) (expression_statement "local_88 = lVar12 + 0x120;" (assignment_expression "local_88 = lVar12 + 0x120" identifier = (binary_expression "lVar12 + 0x120" identifier + number_literal)) ;) (expression_statement "lVar16 = lVar12 + 0x90;" (assignment_expression "lVar16 = lVar12 + 0x90" identifier = (binary_expression "lVar12 + 0x90" identifier + number_literal)) ;) (expression_statement "local_80 = lVar12 + 0x130;" (assignment_expression "local_80 = lVar12 + 0x130" identifier = (binary_expression "lVar12 + 0x130" identifier + number_literal)) ;) (expression_statement "lVar15 = lVar12 + 400;" (assignment_expression "lVar15 = lVar12 + 400" identifier = (binary_expression "lVar12 + 400" identifier + number_literal)) ;) (expression_statement "local_78 = lVar12 + 0x140;" (assignment_expression "local_78 = lVar12 + 0x140" identifier = (binary_expression "lVar12 + 0x140" identifier + number_literal)) ;) (expression_statement "local_70 = lVar12 + 0x150;" (assignment_expression "local_70 = lVar12 + 0x150" identifier = (binary_expression "lVar12 + 0x150" identifier + number_literal)) ;) (expression_statement "local_68 = lVar12 + 0x160;" (assignment_expression "local_68 = lVar12 + 0x160" identifier = (binary_expression "lVar12 + 0x160" identifier + number_literal)) ;) (expression_statement "local_60 = lVar12 + 0x170;" (assignment_expression "local_60 = lVar12 + 0x170" identifier = (binary_expression "lVar12 + 0x170" identifier + number_literal)) ;) (expression_statement "local_58 = lVar12 + 0x180;" (assignment_expression "local_58 = lVar12 + 0x180" identifier = (binary_expression "lVar12 + 0x180" identifier + number_literal)) ;) }))) (expression_statement "*(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file;" (assignment_expression "*(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2) = register_claim_file" (pointer_expression "*(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar12 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar12 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar12 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar12 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar12 + (long)puVar10)" ( (binary_expression "lVar12 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar12 + (long)puVar10) = 5;" (assignment_expression "*(undefined4 *)(lVar12 + (long)puVar10) = 5" (pointer_expression "*(undefined4 *)(lVar12 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar12 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar12 + (long)puVar10)" ( (binary_expression "lVar12 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read;" (assignment_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2) = register_all_symbols_read" (pointer_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar14 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar14 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar14 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar14 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar10)" ( (binary_expression "lVar14 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar14 + (long)puVar10) = 6;" (assignment_expression "*(undefined4 *)(lVar14 + (long)puVar10) = 6" (pointer_expression "*(undefined4 *)(lVar14 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar14 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar10)" ( (binary_expression "lVar14 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup;" (assignment_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2) = register_cleanup" (pointer_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar11 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar11 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar11 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar11 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar10)" ( (binary_expression "lVar11 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar11 + (long)puVar10) = 7;" (assignment_expression "*(undefined4 *)(lVar11 + (long)puVar10) = 7" (pointer_expression "*(undefined4 *)(lVar11 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar11 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar10)" ( (binary_expression "lVar11 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols;" (assignment_expression "*(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2) = add_symbols" (pointer_expression "*(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar23 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar23 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar23 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar23 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + (long)puVar10)" ( (binary_expression "lVar23 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar23 + (long)puVar10) = 8;" (assignment_expression "*(undefined4 *)(lVar23 + (long)puVar10) = 8" (pointer_expression "*(undefined4 *)(lVar23 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar23 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + (long)puVar10)" ( (binary_expression "lVar23 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file;" (assignment_expression "*(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2) = get_input_file" (pointer_expression "*(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar22 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar22 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar22 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar22 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar22 + (long)puVar10)" ( (binary_expression "lVar22 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar22 + (long)puVar10) = 0xc;" (assignment_expression "*(undefined4 *)(lVar22 + (long)puVar10) = 0xc" (pointer_expression "*(undefined4 *)(lVar22 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar22 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar22 + (long)puVar10)" ( (binary_expression "lVar22 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view;" (assignment_expression "*(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2) = get_view" (pointer_expression "*(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar21 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar21 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar21 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar21 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar21 + (long)puVar10)" ( (binary_expression "lVar21 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar21 + (long)puVar10) = 0x12;" (assignment_expression "*(undefined4 *)(lVar21 + (long)puVar10) = 0x12" (pointer_expression "*(undefined4 *)(lVar21 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar21 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar21 + (long)puVar10)" ( (binary_expression "lVar21 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file;" (assignment_expression "*(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2) = release_input_file" (pointer_expression "*(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar20 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar20 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar20 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar20 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar20 + (long)puVar10)" ( (binary_expression "lVar20 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar20 + (long)puVar10) = 0xd;" (assignment_expression "*(undefined4 *)(lVar20 + (long)puVar10) = 0xd" (pointer_expression "*(undefined4 *)(lVar20 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar20 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar20 + (long)puVar10)" ( (binary_expression "lVar20 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols;" (assignment_expression "*(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2) = get_symbols" (pointer_expression "*(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar19 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar19 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar19 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar19 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar19 + (long)puVar10)" ( (binary_expression "lVar19 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar19 + (long)puVar10) = 9;" (assignment_expression "*(undefined4 *)(lVar19 + (long)puVar10) = 9" (pointer_expression "*(undefined4 *)(lVar19 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar19 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar19 + (long)puVar10)" ( (binary_expression "lVar19 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2;" (assignment_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2) = get_symbols_v2" (pointer_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar18 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar18 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar18 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar18 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar10)" ( (binary_expression "lVar18 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar18 + (long)puVar10) = 0x19;" (assignment_expression "*(undefined4 *)(lVar18 + (long)puVar10) = 0x19" (pointer_expression "*(undefined4 *)(lVar18 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar18 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar10)" ( (binary_expression "lVar18 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3;" (assignment_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2) = get_symbols_v3" (pointer_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar16 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar16 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(lVar16 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(lVar16 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar10)" ( (binary_expression "lVar16 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar16 + (long)puVar10) = 0x1c;" (assignment_expression "*(undefined4 *)(lVar16 + (long)puVar10) = 0x1c" (pointer_expression "*(undefined4 *)(lVar16 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar16 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar10)" ( (binary_expression "lVar16 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file;" (assignment_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2) = add_input_file" (pointer_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c8 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c8 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_c8 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_c8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar10)" ( (binary_expression "local_c8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c8 + (long)puVar10) = 10;" (assignment_expression "*(undefined4 *)(local_c8 + (long)puVar10) = 10" (pointer_expression "*(undefined4 *)(local_c8 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_c8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar10)" ( (binary_expression "local_c8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library;" (assignment_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2) = add_input_library" (pointer_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c0 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c0 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_c0 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_c0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar10)" ( (binary_expression "local_c0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c0 + (long)puVar10) = 0xe;" (assignment_expression "*(undefined4 *)(local_c0 + (long)puVar10) = 0xe" (pointer_expression "*(undefined4 *)(local_c0 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_c0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar10)" ( (binary_expression "local_c0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path;" (assignment_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2) = set_extra_library_path" (pointer_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b8 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b8 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_b8 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_b8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar10)" ( (binary_expression "local_b8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b8 + (long)puVar10) = 0x10;" (assignment_expression "*(undefined4 *)(local_b8 + (long)puVar10) = 0x10" (pointer_expression "*(undefined4 *)(local_b8 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_b8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar10)" ( (binary_expression "local_b8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count;" (assignment_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2) = get_input_section_count" (pointer_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b0 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b0 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_b0 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_b0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar10)" ( (binary_expression "local_b0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b0 + (long)puVar10) = 0x13;" (assignment_expression "*(undefined4 *)(local_b0 + (long)puVar10) = 0x13" (pointer_expression "*(undefined4 *)(local_b0 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_b0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar10)" ( (binary_expression "local_b0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(local_a8 + (long)puVar10) = 0x14;" (assignment_expression "*(undefined4 *)(local_a8 + (long)puVar10) = 0x14" (pointer_expression "*(undefined4 *)(local_a8 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_a8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar10)" ( (binary_expression "local_a8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type;" (assignment_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2) = get_input_section_type" (pointer_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a8 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a8 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_a8 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_a8 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar10)" ( (binary_expression "local_a8 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_a0 + (long)puVar10) = 0x15;" (assignment_expression "*(undefined4 *)(local_a0 + (long)puVar10) = 0x15" (pointer_expression "*(undefined4 *)(local_a0 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_a0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar10)" ( (binary_expression "local_a0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name;" (assignment_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2) = get_input_section_name" (pointer_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a0 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a0 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_a0 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_a0 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar10)" ( (binary_expression "local_a0 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_98 + (long)puVar10) = 0x16;" (assignment_expression "*(undefined4 *)(local_98 + (long)puVar10) = 0x16" (pointer_expression "*(undefined4 *)(local_98 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_98 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar10)" ( (binary_expression "local_98 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents;" (assignment_expression "*(code **)((undefined4 *)(local_98 + (long)puVar10) + 2) = get_input_section_contents" (pointer_expression "*(code **)((undefined4 *)(local_98 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_98 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_98 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_98 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_98 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar10)" ( (binary_expression "local_98 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_90 + (long)puVar10) = 0x17;" (assignment_expression "*(undefined4 *)(local_90 + (long)puVar10) = 0x17" (pointer_expression "*(undefined4 *)(local_90 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_90 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar10)" ( (binary_expression "local_90 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order;" (assignment_expression "*(code **)((undefined4 *)(local_90 + (long)puVar10) + 2) = update_section_order" (pointer_expression "*(code **)((undefined4 *)(local_90 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_90 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_90 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_90 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_90 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar10)" ( (binary_expression "local_90 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_88 + (long)puVar10) = 0x18;" (assignment_expression "*(undefined4 *)(local_88 + (long)puVar10) = 0x18" (pointer_expression "*(undefined4 *)(local_88 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_88 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar10)" ( (binary_expression "local_88 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering;" (assignment_expression "*(code **)((undefined4 *)(local_88 + (long)puVar10) + 2) = allow_section_ordering" (pointer_expression "*(code **)((undefined4 *)(local_88 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_88 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_88 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_88 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_88 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar10)" ( (binary_expression "local_88 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_80 + (long)puVar10) = 0x1a;" (assignment_expression "*(undefined4 *)(local_80 + (long)puVar10) = 0x1a" (pointer_expression "*(undefined4 *)(local_80 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_80 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar10)" ( (binary_expression "local_80 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections;" (assignment_expression "*(code **)((undefined4 *)(local_80 + (long)puVar10) + 2) = allow_unique_segment_for_sections" (pointer_expression "*(code **)((undefined4 *)(local_80 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_80 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_80 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_80 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_80 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar10)" ( (binary_expression "local_80 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_78 + (long)puVar10) = 0x1b;" (assignment_expression "*(undefined4 *)(local_78 + (long)puVar10) = 0x1b" (pointer_expression "*(undefined4 *)(local_78 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_78 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar10)" ( (binary_expression "local_78 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections;" (assignment_expression "*(code **)((undefined4 *)(local_78 + (long)puVar10) + 2) = unique_segment_for_sections" (pointer_expression "*(code **)((undefined4 *)(local_78 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_78 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_78 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_78 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_78 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar10)" ( (binary_expression "local_78 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_70 + (long)puVar10) = 0x1d;" (assignment_expression "*(undefined4 *)(local_70 + (long)puVar10) = 0x1d" (pointer_expression "*(undefined4 *)(local_70 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_70 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar10)" ( (binary_expression "local_70 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment;" (assignment_expression "*(code **)((undefined4 *)(local_70 + (long)puVar10) + 2) = get_input_section_alignment" (pointer_expression "*(code **)((undefined4 *)(local_70 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_70 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_70 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_70 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_70 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar10)" ( (binary_expression "local_70 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_68 + (long)puVar10) = 0x1e;" (assignment_expression "*(undefined4 *)(local_68 + (long)puVar10) = 0x1e" (pointer_expression "*(undefined4 *)(local_68 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_68 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar10)" ( (binary_expression "local_68 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size;" (assignment_expression "*(code **)((undefined4 *)(local_68 + (long)puVar10) + 2) = get_input_section_size" (pointer_expression "*(code **)((undefined4 *)(local_68 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_68 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_68 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_68 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_68 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar10)" ( (binary_expression "local_68 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_60 + (long)puVar10) = 0x1f;" (assignment_expression "*(undefined4 *)(local_60 + (long)puVar10) = 0x1f" (pointer_expression "*(undefined4 *)(local_60 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_60 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar10)" ( (binary_expression "local_60 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input;" (assignment_expression "*(code **)((undefined4 *)(local_60 + (long)puVar10) + 2) = register_new_input" (pointer_expression "*(code **)((undefined4 *)(local_60 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_60 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_60 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_60 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_60 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar10)" ( (binary_expression "local_60 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_58 + (long)puVar10) = 0x20;" (assignment_expression "*(undefined4 *)(local_58 + (long)puVar10) = 0x20" (pointer_expression "*(undefined4 *)(local_58 + (long)puVar10)" * (cast_expression "(undefined4 *)(local_58 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar10)" ( (binary_expression "local_58 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols;" (assignment_expression "*(code **)((undefined4 *)(local_58 + (long)puVar10) + 2) = get_wrap_symbols" (pointer_expression "*(code **)((undefined4 *)(local_58 + (long)puVar10) + 2)" * (cast_expression "(code **)((undefined4 *)(local_58 + (long)puVar10) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_58 + (long)puVar10) + 2)" ( (binary_expression "(undefined4 *)(local_58 + (long)puVar10) + 2" (cast_expression "(undefined4 *)(local_58 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar10)" ( (binary_expression "local_58 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar15 + (long)puVar10) = 0;" (assignment_expression "*(undefined4 *)(lVar15 + (long)puVar10) = 0" (pointer_expression "*(undefined4 *)(lVar15 + (long)puVar10)" * (cast_expression "(undefined4 *)(lVar15 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar10)" ( (binary_expression "lVar15 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "((undefined4 *)(lVar15 + (long)puVar10))[2] = 0;" (assignment_expression "((undefined4 *)(lVar15 + (long)puVar10))[2] = 0" (subscript_expression "((undefined4 *)(lVar15 + (long)puVar10))[2]" (parenthesized_expression "((undefined4 *)(lVar15 + (long)puVar10))" ( (cast_expression "(undefined4 *)(lVar15 + (long)puVar10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar10)" ( (binary_expression "lVar15 + (long)puVar10" identifier + (cast_expression "(long)puVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) )) [ number_literal ]) = number_literal) ;) (if_statement "if (iVar5 + 0x1e != local_4c) {\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }" if (parenthesized_expression "(iVar5 + 0x1e != local_4c)" ( (binary_expression "iVar5 + 0x1e != local_4c" (binary_expression "iVar5 + 0x1e" identifier + number_literal) != identifier) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        do_gold_unreachable("../../gold/plugin.cc",0x174,"load");\n      }" { comment (expression_statement "do_gold_unreachable("../../gold/plugin.cc",0x174,"load");" (call_expression "do_gold_unreachable("../../gold/plugin.cc",0x174,"load")" identifier (argument_list "("../../gold/plugin.cc",0x174,"load")" ( (string_literal ""../../gold/plugin.cc"" " string_content ") , number_literal , (string_literal ""load"" " string_content ") ))) ;) })) (expression_statement "(*pcVar8)(puVar10);" (call_expression "(*pcVar8)(puVar10)" (parenthesized_expression "(*pcVar8)" ( (pointer_expression "*pcVar8" * identifier) )) (argument_list "(puVar10)" ( identifier ))) ;) (expression_statement "operator_delete__(puVar10);" (call_expression "operator_delete__(puVar10)" identifier (argument_list "(puVar10)" ( identifier ))) ;) }))) }))) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00406da0(long *param_1)\n\n{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}\n\n" (function_definition "void FUN_00406da0(long *param_1)\n\n{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" primitive_type (function_declarator "FUN_00406da0(long *param_1)" identifier (parameter_list "(long *param_1)" ( (parameter_declaration "long *param_1" (sized_type_specifier "long" long) (pointer_declarator "*param_1" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (declaration "code *pcVar4;" type_identifier (pointer_declarator "*pcVar4" * identifier) ;) (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "undefined4 *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar7;" type_identifier identifier ;) (declaration "undefined8 uVar8;" type_identifier identifier ;) (declaration "long lVar9;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar10;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar11;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong 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 ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_c0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_b0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a8;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_a0;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_98;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_90;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_88;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_80;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_78;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_70;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_68;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_60;" (sized_type_specifier "long" long) identifier ;) (declaration "long local_58;" (sized_type_specifier "long" long) identifier ;) (declaration "int local_4c;" primitive_type identifier ;) (declaration "int local_40;" primitive_type identifier ;) (declaration "int local_3c [3];" primitive_type (array_declarator "local_3c [3]" identifier [ number_literal ]) ;) (expression_statement "lVar3 = dlopen(param_1[1],2);" (assignment_expression "lVar3 = dlopen(param_1[1],2)" identifier = (call_expression "dlopen(param_1[1],2)" identifier (argument_list "(param_1[1],2)" ( (subscript_expression "param_1[1]" identifier [ number_literal ]) , number_literal )))) ;) (expression_statement "*param_1 = lVar3;" (assignment_expression "*param_1 = lVar3" (pointer_expression "*param_1" * identifier) = identifier) ;) (if_statement "if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }" { (expression_statement "uVar8 = dlerror();" (assignment_expression "uVar8 = dlerror()" identifier = (call_expression "dlerror()" identifier (argument_list "()" ( )))) ;) (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "uVar7 = gettext("%s: could not load plugin library: %s");" (assignment_expression "uVar7 = gettext("%s: could not load plugin library: %s")" identifier = (call_expression "gettext("%s: could not load plugin library: %s")" identifier (argument_list "("%s: could not load plugin library: %s")" ( (string_literal ""%s: could not load plugin library: %s"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar7,lVar3,uVar8);" (call_expression "FUN_0034a750(uVar7,lVar3,uVar8)" identifier (argument_list "(uVar7,lVar3,uVar8)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" else (compound_statement "{\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" { (expression_statement "pcVar4 = (code *)dlsym(lVar3,"onload");" (assignment_expression "pcVar4 = (code *)dlsym(lVar3,"onload")" identifier = (cast_expression "(code *)dlsym(lVar3,"onload")" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dlsym(lVar3,"onload")" identifier (argument_list "(lVar3,"onload")" ( identifier , (string_literal ""onload"" " string_content ") ))))) ;) (if_statement "if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" if (parenthesized_expression "(pcVar4 == (code *)0x0)" ( (binary_expression "pcVar4 == (code *)0x0" identifier == (cast_expression "(code *)0x0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }" { (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" identifier = (subscript_expression "param_1[1]" identifier [ number_literal ])) ;) (expression_statement "uVar8 = gettext("%s: could not find onload entry point");" (assignment_expression "uVar8 = gettext("%s: could not find onload entry point")" identifier = (call_expression "gettext("%s: could not find onload entry point")" identifier (argument_list "("%s: could not find onload entry point")" ( (string_literal ""%s: could not find onload entry point"" " string_content ") )))) ;) (expression_statement "FUN_0034a750(uVar8,lVar3);" (call_expression "FUN_0034a750(uVar8,lVar3)" identifier (argument_list "(uVar8,lVar3)" ( identifier , identifier ))) ;) }) (else_clause "else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" else (compound_statement "{\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" { (expression_statement "__s = (char *)FUN_0045b850();" (assignment_expression "__s = (char *)FUN_0045b850()" identifier = (cast_expression "(char *)FUN_0045b850()" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0045b850()" identifier (argument_list "()" ( ))))) ;) (expression_statement "local_40 = 0;" (assignment_expression "local_40 = 0" identifier = number_literal) ;) (expression_statement "local_3c[0] = 0;" (assignment_expression "local_3c[0] = 0" (subscript_expression "local_3c[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "sscanf(__s,"%d.%d",&local_40,local_3c);" (call_expression "sscanf(__s,"%d.%d",&local_40,local_3c)" identifier (argument_list "(__s,"%d.%d",&local_40,local_3c)" ( identifier , (string_literal ""%d.%d"" " string_content ") , (pointer_expression "&local_40" & identifier) , identifier ))) ;) (expression_statement "iVar1 = (int)(param_1[6] - param_1[5] >> 5);" (assignment_expression "iVar1 = (int)(param_1[6] - param_1[5] >> 5)" identifier = (cast_expression "(int)(param_1[6] - param_1[5] >> 5)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(param_1[6] - param_1[5] >> 5)" ( (binary_expression "param_1[6] - param_1[5] >> 5" (binary_expression "param_1[6] - param_1[5]" (subscript_expression "param_1[6]" identifier [ number_literal ]) - (subscript_expression "param_1[5]" identifier [ number_literal ])) >> number_literal) )))) ;) (expression_statement "uVar12 = (ulong)(iVar1 + 0x1f);" (assignment_expression "uVar12 = (ulong)(iVar1 + 0x1f)" identifier = (call_expression "(ulong)(iVar1 + 0x1f)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(iVar1 + 0x1f)" ( (binary_expression "iVar1 + 0x1f" identifier + number_literal) )))) ;) (if_statement "if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }" if (parenthesized_expression "(0x7ffffffffffffff < uVar12)" ( (binary_expression "0x7ffffffffffffff < uVar12" number_literal < identifier) )) (compound_statement "{\n                    \n        FUN_0049ddb0();\n      }" { (expression_statement "FUN_0049ddb0();" (call_expression "FUN_0049ddb0()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);" (assignment_expression "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" identifier = (cast_expression "(undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "thunk_FUN_0049cb70(uVar12 << 4)" identifier (argument_list "(uVar12 << 4)" ( (binary_expression "uVar12 << 4" identifier << number_literal) ))))) ;) (expression_statement "*puVar5 = 0xb;" (assignment_expression "*puVar5 = 0xb" (pointer_expression "*puVar5" * identifier) = number_literal) ;) (expression_statement "*(code **)(puVar5 + 2) = FUN_00406940;" (assignment_expression "*(code **)(puVar5 + 2) = FUN_00406940" (pointer_expression "*(code **)(puVar5 + 2)" * (cast_expression "(code **)(puVar5 + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 2)" ( (binary_expression "puVar5 + 2" identifier + number_literal) )))) = identifier) ;) (expression_statement "puVar5[4] = 1;" (assignment_expression "puVar5[4] = 1" (subscript_expression "puVar5[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar5[10] = local_40 * 100 + local_3c[0];" (assignment_expression "puVar5[10] = local_40 * 100 + local_3c[0]" (subscript_expression "puVar5[10]" identifier [ number_literal ]) = (binary_expression "local_40 * 100 + local_3c[0]" (binary_expression "local_40 * 100" identifier * number_literal) + (subscript_expression "local_3c[0]" identifier [ number_literal ]))) ;) (expression_statement "puVar2 = PTR_DAT_0067cb08;" (assignment_expression "puVar2 = PTR_DAT_0067cb08" identifier = identifier) ;) (expression_statement "puVar5[6] = 1;" (assignment_expression "puVar5[6] = 1" (subscript_expression "puVar5[6]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "lVar3 = *(long *)(puVar2 + 0x10);" (assignment_expression "lVar3 = *(long *)(puVar2 + 0x10)" identifier = (pointer_expression "*(long *)(puVar2 + 0x10)" * (cast_expression "(long *)(puVar2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar2 + 0x10)" ( (binary_expression "puVar2 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "puVar5[8] = 2;" (assignment_expression "puVar5[8] = 2" (subscript_expression "puVar5[8]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar5[0xc] = 3;" (assignment_expression "puVar5[0xc] = 3" (subscript_expression "puVar5[0xc]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" if (parenthesized_expression "(lVar3 == 0)" ( (binary_expression "lVar3 == 0" identifier == number_literal) )) (compound_statement "{\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" { (expression_statement "FUN_00352af0("../../gold/parameters.h",0x5c,"options");" (call_expression "FUN_00352af0("../../gold/parameters.h",0x5c,"options")" identifier (argument_list "("../../gold/parameters.h",0x5c,"options")" ( (string_literal ""../../gold/parameters.h"" " string_content ") , number_literal , (string_literal ""options"" " string_content ") ))) ;) })) (if_statement "if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }" if (parenthesized_expression "(*(char *)(lVar3 + 0x5051) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x5051) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x5051)" * (cast_expression "(char *)(lVar3 + 0x5051)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x5051)" ( (binary_expression "lVar3 + 0x5051" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }" { (if_statement "if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }" if (parenthesized_expression "(*(char *)(lVar3 + 0x2a61) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x2a61) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x2a61)" * (cast_expression "(char *)(lVar3 + 0x2a61)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x2a61)" ( (binary_expression "lVar3 + 0x2a61" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }" { (if_statement "if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }" if (parenthesized_expression "(*(char *)(lVar3 + 0x42d1) == '\0')" ( (binary_expression "*(char *)(lVar3 + 0x42d1) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x42d1)" * (cast_expression "(char *)(lVar3 + 0x42d1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x42d1)" ( (binary_expression "lVar3 + 0x42d1" identifier + number_literal) )))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            puVar5[0xe] = 1;\n          }" { (expression_statement "puVar5[0xe] = 1;" (assignment_expression "puVar5[0xe] = 1" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }) (else_clause "else {\n            puVar5[0xe] = 3;\n          }" else (compound_statement "{\n            puVar5[0xe] = 3;\n          }" { (expression_statement "puVar5[0xe] = 3;" (assignment_expression "puVar5[0xe] = 3" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n          puVar5[0xe] = 2;\n        }" else (compound_statement "{\n          puVar5[0xe] = 2;\n        }" { (expression_statement "puVar5[0xe] = 2;" (assignment_expression "puVar5[0xe] = 2" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) }) (else_clause "else {\n        puVar5[0xe] = 0;\n      }" else (compound_statement "{\n        puVar5[0xe] = 0;\n      }" { (expression_statement "puVar5[0xe] = 0;" (assignment_expression "puVar5[0xe] = 0" (subscript_expression "puVar5[0xe]" identifier [ number_literal ]) = number_literal) ;) }))) (expression_statement "lVar18 = param_1[5];" (assignment_expression "lVar18 = param_1[5]" identifier = (subscript_expression "param_1[5]" identifier [ number_literal ])) ;) (expression_statement "lVar9 = param_1[6];" (assignment_expression "lVar9 = param_1[6]" identifier = (subscript_expression "param_1[6]" identifier [ number_literal ])) ;) (expression_statement "puVar5[0x10] = 0xf;" (assignment_expression "puVar5[0x10] = 0xf" (subscript_expression "puVar5[0x10]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "lVar9 = lVar9 - lVar18 >> 5;" (assignment_expression "lVar9 = lVar9 - lVar18 >> 5" identifier = (binary_expression "lVar9 - lVar18 >> 5" (binary_expression "lVar9 - lVar18" identifier - identifier) >> number_literal)) ;) (expression_statement "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);" (assignment_expression "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058)" (pointer_expression "*(undefined8 *)(puVar5 + 0x12)" * (cast_expression "(undefined8 *)(puVar5 + 0x12)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x12)" ( (binary_expression "puVar5 + 0x12" identifier + number_literal) )))) = (pointer_expression "*(undefined8 *)(lVar3 + 0x4058)" * (cast_expression "(undefined8 *)(lVar3 + 0x4058)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + 0x4058)" ( (binary_expression "lVar3 + 0x4058" identifier + number_literal) ))))) ;) (if_statement "if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" if (parenthesized_expression "(lVar9 == 0)" ( (binary_expression "lVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }" { (expression_statement "lVar10 = 0x1e0;" (assignment_expression "lVar10 = 0x1e0" identifier = number_literal) ;) (expression_statement "lVar11 = 0xe0;" (assignment_expression "lVar11 = 0xe0" identifier = number_literal) ;) (expression_statement "local_4c = 0x1e;" (assignment_expression "local_4c = 0x1e" identifier = number_literal) ;) (expression_statement "lVar13 = 0xd0;" (assignment_expression "lVar13 = 0xd0" identifier = number_literal) ;) (expression_statement "local_58 = 0x1d0;" (assignment_expression "local_58 = 0x1d0" identifier = number_literal) ;) (expression_statement "lVar14 = 0xc0;" (assignment_expression "lVar14 = 0xc0" identifier = number_literal) ;) (expression_statement "lVar15 = 0xb0;" (assignment_expression "lVar15 = 0xb0" identifier = number_literal) ;) (expression_statement "lVar16 = 0xa0;" (assignment_expression "lVar16 = 0xa0" identifier = number_literal) ;) (expression_statement "local_60 = 0x1c0;" (assignment_expression "local_60 = 0x1c0" identifier = number_literal) ;) (expression_statement "lVar17 = 0x90;" (assignment_expression "lVar17 = 0x90" identifier = number_literal) ;) (expression_statement "lVar9 = 0x80;" (assignment_expression "lVar9 = 0x80" identifier = number_literal) ;) (expression_statement "lVar18 = 0x70;" (assignment_expression "lVar18 = 0x70" identifier = number_literal) ;) (expression_statement "local_68 = 0x1b0;" (assignment_expression "local_68 = 0x1b0" identifier = number_literal) ;) (expression_statement "lVar3 = 0x60;" (assignment_expression "lVar3 = 0x60" identifier = number_literal) ;) (expression_statement "lVar6 = 0x50;" (assignment_expression "lVar6 = 0x50" identifier = number_literal) ;) (expression_statement "local_70 = 0x1a0;" (assignment_expression "local_70 = 0x1a0" identifier = number_literal) ;) (expression_statement "local_78 = 400;" (assignment_expression "local_78 = 400" identifier = number_literal) ;) (expression_statement "local_80 = 0x180;" (assignment_expression "local_80 = 0x180" identifier = number_literal) ;) (expression_statement "local_88 = 0x170;" (assignment_expression "local_88 = 0x170" identifier = number_literal) ;) (expression_statement "local_90 = 0x160;" (assignment_expression "local_90 = 0x160" identifier = number_literal) ;) (expression_statement "local_98 = 0x150;" (assignment_expression "local_98 = 0x150" identifier = number_literal) ;) (expression_statement "local_a0 = 0x140;" (assignment_expression "local_a0 = 0x140" identifier = number_literal) ;) (expression_statement "local_a8 = 0x130;" (assignment_expression "local_a8 = 0x130" identifier = number_literal) ;) (expression_statement "local_b0 = 0x120;" (assignment_expression "local_b0 = 0x120" identifier = number_literal) ;) (expression_statement "local_b8 = 0x110;" (assignment_expression "local_b8 = 0x110" identifier = number_literal) ;) (expression_statement "local_c0 = 0x100;" (assignment_expression "local_c0 = 0x100" identifier = number_literal) ;) (expression_statement "local_c8 = 0xf0;" (assignment_expression "local_c8 = 0xf0" identifier = number_literal) ;) }) (else_clause "else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" else (compound_statement "{\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" { (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" identifier = number_literal) ;) (do_statement "do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);" do (compound_statement "{\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        }" { (expression_statement "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;" (assignment_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4" (pointer_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50)" * (cast_expression "(undefined4 *)((long)puVar5 + lVar3 + 0x50)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar5 + lVar3 + 0x50)" ( (binary_expression "(long)puVar5 + lVar3 + 0x50" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);" (assignment_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2)" (pointer_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58)" * (cast_expression "(undefined8 *)((long)puVar5 + lVar3 + 0x58)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar5 + lVar3 + 0x58)" ( (binary_expression "(long)puVar5 + lVar3 + 0x58" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier) + number_literal) )))) = (pointer_expression "*(undefined8 *)(lVar18 + lVar3 * 2)" * (cast_expression "(undefined8 *)(lVar18 + lVar3 * 2)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + lVar3 * 2)" ( (binary_expression "lVar18 + lVar3 * 2" identifier + (binary_expression "lVar3 * 2" identifier * number_literal)) ))))) ;) (expression_statement "lVar3 = lVar3 + 0x10;" (assignment_expression "lVar3 = lVar3 + 0x10" identifier = (binary_expression "lVar3 + 0x10" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar9 << 4 != lVar3)" ( (binary_expression "lVar9 << 4 != lVar3" (binary_expression "lVar9 << 4" identifier << number_literal) != identifier) )) ;) (expression_statement "local_4c = (int)lVar9 + 0x1e;" (assignment_expression "local_4c = (int)lVar9 + 0x1e" identifier = (binary_expression "(int)lVar9 + 0x1e" (cast_expression "(int)lVar9" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "lVar6 = (long)((int)lVar9 + 5) * 0x10;" (assignment_expression "lVar6 = (long)((int)lVar9 + 5) * 0x10" identifier = (binary_expression "(long)((int)lVar9 + 5) * 0x10" (cast_expression "(long)((int)lVar9 + 5)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (parenthesized_expression "((int)lVar9 + 5)" ( (binary_expression "(int)lVar9 + 5" (cast_expression "(int)lVar9" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) * number_literal)) ;) (expression_statement "local_c8 = lVar6 + 0xa0;" (assignment_expression "local_c8 = lVar6 + 0xa0" identifier = (binary_expression "lVar6 + 0xa0" identifier + number_literal)) ;) (expression_statement "lVar3 = lVar6 + 0x10;" (assignment_expression "lVar3 = lVar6 + 0x10" identifier = (binary_expression "lVar6 + 0x10" identifier + number_literal)) ;) (expression_statement "local_c0 = lVar6 + 0xb0;" (assignment_expression "local_c0 = lVar6 + 0xb0" identifier = (binary_expression "lVar6 + 0xb0" identifier + number_literal)) ;) (expression_statement "lVar18 = lVar6 + 0x20;" (assignment_expression "lVar18 = lVar6 + 0x20" identifier = (binary_expression "lVar6 + 0x20" identifier + number_literal)) ;) (expression_statement "local_b8 = lVar6 + 0xc0;" (assignment_expression "local_b8 = lVar6 + 0xc0" identifier = (binary_expression "lVar6 + 0xc0" identifier + number_literal)) ;) (expression_statement "lVar9 = lVar6 + 0x30;" (assignment_expression "lVar9 = lVar6 + 0x30" identifier = (binary_expression "lVar6 + 0x30" identifier + number_literal)) ;) (expression_statement "local_b0 = lVar6 + 0xd0;" (assignment_expression "local_b0 = lVar6 + 0xd0" identifier = (binary_expression "lVar6 + 0xd0" identifier + number_literal)) ;) (expression_statement "lVar17 = lVar6 + 0x40;" (assignment_expression "lVar17 = lVar6 + 0x40" identifier = (binary_expression "lVar6 + 0x40" identifier + number_literal)) ;) (expression_statement "local_a8 = lVar6 + 0xe0;" (assignment_expression "local_a8 = lVar6 + 0xe0" identifier = (binary_expression "lVar6 + 0xe0" identifier + number_literal)) ;) (expression_statement "lVar16 = lVar6 + 0x50;" (assignment_expression "lVar16 = lVar6 + 0x50" identifier = (binary_expression "lVar6 + 0x50" identifier + number_literal)) ;) (expression_statement "lVar15 = lVar6 + 0x60;" (assignment_expression "lVar15 = lVar6 + 0x60" identifier = (binary_expression "lVar6 + 0x60" identifier + number_literal)) ;) (expression_statement "local_a0 = lVar6 + 0xf0;" (assignment_expression "local_a0 = lVar6 + 0xf0" identifier = (binary_expression "lVar6 + 0xf0" identifier + number_literal)) ;) (expression_statement "local_98 = lVar6 + 0x100;" (assignment_expression "local_98 = lVar6 + 0x100" identifier = (binary_expression "lVar6 + 0x100" identifier + number_literal)) ;) (expression_statement "lVar14 = lVar6 + 0x70;" (assignment_expression "lVar14 = lVar6 + 0x70" identifier = (binary_expression "lVar6 + 0x70" identifier + number_literal)) ;) (expression_statement "local_90 = lVar6 + 0x110;" (assignment_expression "local_90 = lVar6 + 0x110" identifier = (binary_expression "lVar6 + 0x110" identifier + number_literal)) ;) (expression_statement "lVar13 = lVar6 + 0x80;" (assignment_expression "lVar13 = lVar6 + 0x80" identifier = (binary_expression "lVar6 + 0x80" identifier + number_literal)) ;) (expression_statement "local_88 = lVar6 + 0x120;" (assignment_expression "local_88 = lVar6 + 0x120" identifier = (binary_expression "lVar6 + 0x120" identifier + number_literal)) ;) (expression_statement "lVar11 = lVar6 + 0x90;" (assignment_expression "lVar11 = lVar6 + 0x90" identifier = (binary_expression "lVar6 + 0x90" identifier + number_literal)) ;) (expression_statement "local_80 = lVar6 + 0x130;" (assignment_expression "local_80 = lVar6 + 0x130" identifier = (binary_expression "lVar6 + 0x130" identifier + number_literal)) ;) (expression_statement "lVar10 = lVar6 + 400;" (assignment_expression "lVar10 = lVar6 + 400" identifier = (binary_expression "lVar6 + 400" identifier + number_literal)) ;) (expression_statement "local_78 = lVar6 + 0x140;" (assignment_expression "local_78 = lVar6 + 0x140" identifier = (binary_expression "lVar6 + 0x140" identifier + number_literal)) ;) (expression_statement "local_70 = lVar6 + 0x150;" (assignment_expression "local_70 = lVar6 + 0x150" identifier = (binary_expression "lVar6 + 0x150" identifier + number_literal)) ;) (expression_statement "local_68 = lVar6 + 0x160;" (assignment_expression "local_68 = lVar6 + 0x160" identifier = (binary_expression "lVar6 + 0x160" identifier + number_literal)) ;) (expression_statement "local_60 = lVar6 + 0x170;" (assignment_expression "local_60 = lVar6 + 0x170" identifier = (binary_expression "lVar6 + 0x170" identifier + number_literal)) ;) (expression_statement "local_58 = lVar6 + 0x180;" (assignment_expression "local_58 = lVar6 + 0x180" identifier = (binary_expression "lVar6 + 0x180" identifier + number_literal)) ;) }))) (expression_statement "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;" (assignment_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00" (pointer_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar6 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar6 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + (long)puVar5)" ( (binary_expression "lVar6 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar6 + (long)puVar5) = 5;" (assignment_expression "*(undefined4 *)(lVar6 + (long)puVar5) = 5" (pointer_expression "*(undefined4 *)(lVar6 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar6 + (long)puVar5)" ( (binary_expression "lVar6 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;" (assignment_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80" (pointer_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar3 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar3 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + (long)puVar5)" ( (binary_expression "lVar3 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar3 + (long)puVar5) = 6;" (assignment_expression "*(undefined4 *)(lVar3 + (long)puVar5) = 6" (pointer_expression "*(undefined4 *)(lVar3 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar3 + (long)puVar5)" ( (binary_expression "lVar3 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;" (assignment_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00" (pointer_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar18 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar18 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar5)" ( (binary_expression "lVar18 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar18 + (long)puVar5) = 7;" (assignment_expression "*(undefined4 *)(lVar18 + (long)puVar5) = 7" (pointer_expression "*(undefined4 *)(lVar18 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar18 + (long)puVar5)" ( (binary_expression "lVar18 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;" (assignment_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70" (pointer_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar9 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar9 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar9 + (long)puVar5)" ( (binary_expression "lVar9 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar9 + (long)puVar5) = 8;" (assignment_expression "*(undefined4 *)(lVar9 + (long)puVar5) = 8" (pointer_expression "*(undefined4 *)(lVar9 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar9 + (long)puVar5)" ( (binary_expression "lVar9 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;" (assignment_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0" (pointer_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar17 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar17 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + (long)puVar5)" ( (binary_expression "lVar17 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc;" (assignment_expression "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc" (pointer_expression "*(undefined4 *)(lVar17 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + (long)puVar5)" ( (binary_expression "lVar17 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;" (assignment_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0" (pointer_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar16 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar16 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar5)" ( (binary_expression "lVar16 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12;" (assignment_expression "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12" (pointer_expression "*(undefined4 *)(lVar16 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + (long)puVar5)" ( (binary_expression "lVar16 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;" (assignment_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90" (pointer_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar15 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar15 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar5)" ( (binary_expression "lVar15 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd;" (assignment_expression "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd" (pointer_expression "*(undefined4 *)(lVar15 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar15 + (long)puVar5)" ( (binary_expression "lVar15 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;" (assignment_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940" (pointer_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar14 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar14 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar5)" ( (binary_expression "lVar14 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar14 + (long)puVar5) = 9;" (assignment_expression "*(undefined4 *)(lVar14 + (long)puVar5) = 9" (pointer_expression "*(undefined4 *)(lVar14 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar14 + (long)puVar5)" ( (binary_expression "lVar14 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;" (assignment_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890" (pointer_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar13 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar13 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar13 + (long)puVar5)" ( (binary_expression "lVar13 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19;" (assignment_expression "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19" (pointer_expression "*(undefined4 *)(lVar13 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar13 + (long)puVar5)" ( (binary_expression "lVar13 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;" (assignment_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0" (pointer_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(lVar11 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(lVar11 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar5)" ( (binary_expression "lVar11 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;" (assignment_expression "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c" (pointer_expression "*(undefined4 *)(lVar11 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar11 + (long)puVar5)" ( (binary_expression "lVar11 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;" (assignment_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0" (pointer_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_c8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar5)" ( (binary_expression "local_c8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c8 + (long)puVar5) = 10;" (assignment_expression "*(undefined4 *)(local_c8 + (long)puVar5) = 10" (pointer_expression "*(undefined4 *)(local_c8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c8 + (long)puVar5)" ( (binary_expression "local_c8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;" (assignment_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470" (pointer_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_c0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_c0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar5)" ( (binary_expression "local_c0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe;" (assignment_expression "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe" (pointer_expression "*(undefined4 *)(local_c0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_c0 + (long)puVar5)" ( (binary_expression "local_c0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;" (assignment_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50" (pointer_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_b8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar5)" ( (binary_expression "local_b8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10;" (assignment_expression "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10" (pointer_expression "*(undefined4 *)(local_b8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b8 + (long)puVar5)" ( (binary_expression "local_b8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;" (assignment_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210" (pointer_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_b0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_b0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar5)" ( (binary_expression "local_b0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13;" (assignment_expression "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13" (pointer_expression "*(undefined4 *)(local_b0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_b0 + (long)puVar5)" ( (binary_expression "local_b0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14;" (assignment_expression "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14" (pointer_expression "*(undefined4 *)(local_a8 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar5)" ( (binary_expression "local_a8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;" (assignment_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170" (pointer_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a8 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_a8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a8 + (long)puVar5)" ( (binary_expression "local_a8 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15;" (assignment_expression "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15" (pointer_expression "*(undefined4 *)(local_a0 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar5)" ( (binary_expression "local_a0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;" (assignment_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410" (pointer_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_a0 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_a0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_a0 + (long)puVar5)" ( (binary_expression "local_a0 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_98 + (long)puVar5) = 0x16;" (assignment_expression "*(undefined4 *)(local_98 + (long)puVar5) = 0x16" (pointer_expression "*(undefined4 *)(local_98 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar5)" ( (binary_expression "local_98 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;" (assignment_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070" (pointer_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_98 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_98 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_98 + (long)puVar5)" ( (binary_expression "local_98 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_90 + (long)puVar5) = 0x17;" (assignment_expression "*(undefined4 *)(local_90 + (long)puVar5) = 0x17" (pointer_expression "*(undefined4 *)(local_90 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar5)" ( (binary_expression "local_90 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;" (assignment_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600" (pointer_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_90 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_90 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_90 + (long)puVar5)" ( (binary_expression "local_90 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_88 + (long)puVar5) = 0x18;" (assignment_expression "*(undefined4 *)(local_88 + (long)puVar5) = 0x18" (pointer_expression "*(undefined4 *)(local_88 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar5)" ( (binary_expression "local_88 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;" (assignment_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10" (pointer_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_88 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_88 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_88 + (long)puVar5)" ( (binary_expression "local_88 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a;" (assignment_expression "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a" (pointer_expression "*(undefined4 *)(local_80 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar5)" ( (binary_expression "local_80 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;" (assignment_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0" (pointer_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_80 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_80 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_80 + (long)puVar5)" ( (binary_expression "local_80 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b;" (assignment_expression "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b" (pointer_expression "*(undefined4 *)(local_78 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar5)" ( (binary_expression "local_78 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;" (assignment_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290" (pointer_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_78 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_78 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_78 + (long)puVar5)" ( (binary_expression "local_78 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d;" (assignment_expression "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d" (pointer_expression "*(undefined4 *)(local_70 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar5)" ( (binary_expression "local_70 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;" (assignment_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0" (pointer_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_70 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_70 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_70 + (long)puVar5)" ( (binary_expression "local_70 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e;" (assignment_expression "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e" (pointer_expression "*(undefined4 *)(local_68 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar5)" ( (binary_expression "local_68 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;" (assignment_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30" (pointer_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_68 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_68 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_68 + (long)puVar5)" ( (binary_expression "local_68 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f;" (assignment_expression "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f" (pointer_expression "*(undefined4 *)(local_60 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar5)" ( (binary_expression "local_60 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;" (assignment_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80" (pointer_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_60 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_60 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_60 + (long)puVar5)" ( (binary_expression "local_60 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(local_58 + (long)puVar5) = 0x20;" (assignment_expression "*(undefined4 *)(local_58 + (long)puVar5) = 0x20" (pointer_expression "*(undefined4 *)(local_58 + (long)puVar5)" * (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar5)" ( (binary_expression "local_58 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;" (assignment_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850" (pointer_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" * (cast_expression "(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((undefined4 *)(local_58 + (long)puVar5) + 2)" ( (binary_expression "(undefined4 *)(local_58 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(local_58 + (long)puVar5)" ( (binary_expression "local_58 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(lVar10 + (long)puVar5) = 0;" (assignment_expression "*(undefined4 *)(lVar10 + (long)puVar5) = 0" (pointer_expression "*(undefined4 *)(lVar10 + (long)puVar5)" * (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + (long)puVar5)" ( (binary_expression "lVar10 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )))) = number_literal) ;) (expression_statement "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;" (assignment_expression "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0" (subscript_expression "((undefined4 *)(lVar10 + (long)puVar5))[2]" (parenthesized_expression "((undefined4 *)(lVar10 + (long)puVar5))" ( (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar10 + (long)puVar5)" ( (binary_expression "lVar10 + (long)puVar5" identifier + (cast_expression "(long)puVar5" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) ))) )) [ number_literal ]) = number_literal) ;) (if_statement "if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" if (parenthesized_expression "(iVar1 + 0x1e != local_4c)" ( (binary_expression "iVar1 + 0x1e != local_4c" (binary_expression "iVar1 + 0x1e" identifier + number_literal) != identifier) )) (compound_statement "{\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" { (expression_statement "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);" (call_expression "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121)" identifier (argument_list "("../../gold/plugin.cc",0x174,&DAT_0057d121)" ( (string_literal ""../../gold/plugin.cc"" " string_content ") , number_literal , (pointer_expression "&DAT_0057d121" & identifier) ))) ;) })) (expression_statement "(*pcVar4)(puVar5);" (call_expression "(*pcVar4)(puVar5)" (parenthesized_expression "(*pcVar4)" ( (pointer_expression "*pcVar4" * identifier) )) (argument_list "(puVar5)" ( identifier ))) ;) (expression_statement "thunk_FUN_0049e340(puVar5);" (call_expression "thunk_FUN_0049e340(puVar5)" identifier (argument_list "(puVar5)" ( identifier ))) ;) }))) }))) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration (sized_type_specifier long) (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (pointer_expression & IDENT) , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) - (subscript_expression IDENT [ LIT ])) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT << LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression IDENT * LIT) + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = 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 (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }))) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT - IDENT) >> LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT) + LIT) )))) = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (binary_expression IDENT << LIT) != IDENT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) ))) * LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression (parenthesized_expression ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) ))) )) [ LIT ]) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT + LIT) != IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (pointer_expression & IDENT) ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) }))) (return_statement return ;) })))
(function_definition "void FUN_00406da0(long *param_1)\n\n{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00406da0(long *param_1)" (identifier "FUN_00406da0") (parameter_list "(long *param_1)" (( "(") (parameter_declaration "long *param_1" (sized_type_specifier "long" (long "long")) (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) () ")"))) (compound_statement "{\n  int iVar1;\n  undefined *puVar2;\n  long lVar3;\n  code *pcVar4;\n  char *__s;\n  undefined4 *puVar5;\n  long lVar6;\n  undefined8 uVar7;\n  undefined8 uVar8;\n  long lVar9;\n  long lVar10;\n  long lVar11;\n  ulong uVar12;\n  long lVar13;\n  long lVar14;\n  long lVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  long local_c8;\n  long local_c0;\n  long local_b8;\n  long local_b0;\n  long local_a8;\n  long local_a0;\n  long local_98;\n  long local_90;\n  long local_88;\n  long local_80;\n  long local_78;\n  long local_70;\n  long local_68;\n  long local_60;\n  long local_58;\n  int local_4c;\n  int local_40;\n  int local_3c [3];\n  \n  lVar3 = dlopen(param_1[1],2);\n  *param_1 = lVar3;\n  if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }\n  return;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined *puVar2;" (type_identifier "undefined") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "long lVar3;" (sized_type_specifier "long" (long "long")) (identifier "lVar3") (; ";")) (declaration "code *pcVar4;" (type_identifier "code") (pointer_declarator "*pcVar4" (* "*") (identifier "pcVar4")) (; ";")) (declaration "char *__s;" (primitive_type "char") (pointer_declarator "*__s" (* "*") (identifier "__s")) (; ";")) (declaration "undefined4 *puVar5;" (type_identifier "undefined4") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "long lVar6;" (sized_type_specifier "long" (long "long")) (identifier "lVar6") (; ";")) (declaration "undefined8 uVar7;" (type_identifier "undefined8") (identifier "uVar7") (; ";")) (declaration "undefined8 uVar8;" (type_identifier "undefined8") (identifier "uVar8") (; ";")) (declaration "long lVar9;" (sized_type_specifier "long" (long "long")) (identifier "lVar9") (; ";")) (declaration "long lVar10;" (sized_type_specifier "long" (long "long")) (identifier "lVar10") (; ";")) (declaration "long lVar11;" (sized_type_specifier "long" (long "long")) (identifier "lVar11") (; ";")) (declaration "ulong uVar12;" (type_identifier "ulong") (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") (; ";")) (declaration "long lVar16;" (sized_type_specifier "long" (long "long")) (identifier "lVar16") (; ";")) (declaration "long lVar17;" (sized_type_specifier "long" (long "long")) (identifier "lVar17") (; ";")) (declaration "long lVar18;" (sized_type_specifier "long" (long "long")) (identifier "lVar18") (; ";")) (declaration "long local_c8;" (sized_type_specifier "long" (long "long")) (identifier "local_c8") (; ";")) (declaration "long local_c0;" (sized_type_specifier "long" (long "long")) (identifier "local_c0") (; ";")) (declaration "long local_b8;" (sized_type_specifier "long" (long "long")) (identifier "local_b8") (; ";")) (declaration "long local_b0;" (sized_type_specifier "long" (long "long")) (identifier "local_b0") (; ";")) (declaration "long local_a8;" (sized_type_specifier "long" (long "long")) (identifier "local_a8") (; ";")) (declaration "long local_a0;" (sized_type_specifier "long" (long "long")) (identifier "local_a0") (; ";")) (declaration "long local_98;" (sized_type_specifier "long" (long "long")) (identifier "local_98") (; ";")) (declaration "long local_90;" (sized_type_specifier "long" (long "long")) (identifier "local_90") (; ";")) (declaration "long local_88;" (sized_type_specifier "long" (long "long")) (identifier "local_88") (; ";")) (declaration "long local_80;" (sized_type_specifier "long" (long "long")) (identifier "local_80") (; ";")) (declaration "long local_78;" (sized_type_specifier "long" (long "long")) (identifier "local_78") (; ";")) (declaration "long local_70;" (sized_type_specifier "long" (long "long")) (identifier "local_70") (; ";")) (declaration "long local_68;" (sized_type_specifier "long" (long "long")) (identifier "local_68") (; ";")) (declaration "long local_60;" (sized_type_specifier "long" (long "long")) (identifier "local_60") (; ";")) (declaration "long local_58;" (sized_type_specifier "long" (long "long")) (identifier "local_58") (; ";")) (declaration "int local_4c;" (primitive_type "int") (identifier "local_4c") (; ";")) (declaration "int local_40;" (primitive_type "int") (identifier "local_40") (; ";")) (declaration "int local_3c [3];" (primitive_type "int") (array_declarator "local_3c [3]" (identifier "local_3c") ([ "[") (number_literal "3") (] "]")) (; ";")) (expression_statement "lVar3 = dlopen(param_1[1],2);" (assignment_expression "lVar3 = dlopen(param_1[1],2)" (identifier "lVar3") (= "=") (call_expression "dlopen(param_1[1],2)" (identifier "dlopen") (argument_list "(param_1[1],2)" (( "(") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "2") () ")")))) (; ";")) (expression_statement "*param_1 = lVar3;" (assignment_expression "*param_1 = lVar3" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (identifier "lVar3")) (; ";")) (if_statement "if (lVar3 == 0) {\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }\n  else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" (if "if") (parenthesized_expression "(lVar3 == 0)" (( "(") (binary_expression "lVar3 == 0" (identifier "lVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar8 = dlerror();\n    lVar3 = param_1[1];\n    uVar7 = gettext("%s: could not load plugin library: %s");\n    FUN_0034a750(uVar7,lVar3,uVar8);\n  }" ({ "{") (expression_statement "uVar8 = dlerror();" (assignment_expression "uVar8 = dlerror()" (identifier "uVar8") (= "=") (call_expression "dlerror()" (identifier "dlerror") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" (identifier "lVar3") (= "=") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar7 = gettext("%s: could not load plugin library: %s");" (assignment_expression "uVar7 = gettext("%s: could not load plugin library: %s")" (identifier "uVar7") (= "=") (call_expression "gettext("%s: could not load plugin library: %s")" (identifier "gettext") (argument_list "("%s: could not load plugin library: %s")" (( "(") (string_literal ""%s: could not load plugin library: %s"" (" """) (string_content "%s: could not load plugin library: %s") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034a750(uVar7,lVar3,uVar8);" (call_expression "FUN_0034a750(uVar7,lVar3,uVar8)" (identifier "FUN_0034a750") (argument_list "(uVar7,lVar3,uVar8)" (( "(") (identifier "uVar7") (, ",") (identifier "lVar3") (, ",") (identifier "uVar8") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" (else "else") (compound_statement "{\n    pcVar4 = (code *)dlsym(lVar3,"onload");\n    if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }\n  }" ({ "{") (expression_statement "pcVar4 = (code *)dlsym(lVar3,"onload");" (assignment_expression "pcVar4 = (code *)dlsym(lVar3,"onload")" (identifier "pcVar4") (= "=") (cast_expression "(code *)dlsym(lVar3,"onload")" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dlsym(lVar3,"onload")" (identifier "dlsym") (argument_list "(lVar3,"onload")" (( "(") (identifier "lVar3") (, ",") (string_literal ""onload"" (" """) (string_content "onload") (" """)) () ")"))))) (; ";")) (if_statement "if (pcVar4 == (code *)0x0) {\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }\n    else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" (if "if") (parenthesized_expression "(pcVar4 == (code *)0x0)" (( "(") (binary_expression "pcVar4 == (code *)0x0" (identifier "pcVar4") (== "==") (cast_expression "(code *)0x0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      lVar3 = param_1[1];\n      uVar8 = gettext("%s: could not find onload entry point");\n      FUN_0034a750(uVar8,lVar3);\n    }" ({ "{") (expression_statement "lVar3 = param_1[1];" (assignment_expression "lVar3 = param_1[1]" (identifier "lVar3") (= "=") (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar8 = gettext("%s: could not find onload entry point");" (assignment_expression "uVar8 = gettext("%s: could not find onload entry point")" (identifier "uVar8") (= "=") (call_expression "gettext("%s: could not find onload entry point")" (identifier "gettext") (argument_list "("%s: could not find onload entry point")" (( "(") (string_literal ""%s: could not find onload entry point"" (" """) (string_content "%s: could not find onload entry point") (" """)) () ")")))) (; ";")) (expression_statement "FUN_0034a750(uVar8,lVar3);" (call_expression "FUN_0034a750(uVar8,lVar3)" (identifier "FUN_0034a750") (argument_list "(uVar8,lVar3)" (( "(") (identifier "uVar8") (, ",") (identifier "lVar3") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" (else "else") (compound_statement "{\n      __s = (char *)FUN_0045b850();\n      local_40 = 0;\n      local_3c[0] = 0;\n      sscanf(__s,"%d.%d",&local_40,local_3c);\n      iVar1 = (int)(param_1[6] - param_1[5] >> 5);\n      uVar12 = (ulong)(iVar1 + 0x1f);\n      if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }\n      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);\n      *puVar5 = 0xb;\n      *(code **)(puVar5 + 2) = FUN_00406940;\n      puVar5[4] = 1;\n      puVar5[10] = local_40 * 100 + local_3c[0];\n      puVar2 = PTR_DAT_0067cb08;\n      puVar5[6] = 1;\n      lVar3 = *(long *)(puVar2 + 0x10);\n      puVar5[8] = 2;\n      puVar5[0xc] = 3;\n      if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }\n      if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }\n      lVar18 = param_1[5];\n      lVar9 = param_1[6];\n      puVar5[0x10] = 0xf;\n      lVar9 = lVar9 - lVar18 >> 5;\n      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);\n      if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }\n      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;\n      *(undefined4 *)(lVar6 + (long)puVar5) = 5;\n      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;\n      *(undefined4 *)(lVar3 + (long)puVar5) = 6;\n      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;\n      *(undefined4 *)(lVar18 + (long)puVar5) = 7;\n      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;\n      *(undefined4 *)(lVar9 + (long)puVar5) = 8;\n      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;\n      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;\n      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;\n      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;\n      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;\n      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;\n      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;\n      *(undefined4 *)(lVar14 + (long)puVar5) = 9;\n      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;\n      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;\n      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;\n      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;\n      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;\n      *(undefined4 *)(local_c8 + (long)puVar5) = 10;\n      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;\n      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;\n      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;\n      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;\n      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;\n      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;\n      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;\n      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;\n      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;\n      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;\n      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;\n      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;\n      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;\n      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;\n      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;\n      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;\n      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;\n      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;\n      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;\n      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;\n      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;\n      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;\n      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;\n      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;\n      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;\n      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;\n      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;\n      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;\n      *(undefined4 *)(lVar10 + (long)puVar5) = 0;\n      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;\n      if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }\n      (*pcVar4)(puVar5);\n      thunk_FUN_0049e340(puVar5);\n    }" ({ "{") (expression_statement "__s = (char *)FUN_0045b850();" (assignment_expression "__s = (char *)FUN_0045b850()" (identifier "__s") (= "=") (cast_expression "(char *)FUN_0045b850()" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0045b850()" (identifier "FUN_0045b850") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "local_40 = 0;" (assignment_expression "local_40 = 0" (identifier "local_40") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_3c[0] = 0;" (assignment_expression "local_3c[0] = 0" (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "sscanf(__s,"%d.%d",&local_40,local_3c);" (call_expression "sscanf(__s,"%d.%d",&local_40,local_3c)" (identifier "sscanf") (argument_list "(__s,"%d.%d",&local_40,local_3c)" (( "(") (identifier "__s") (, ",") (string_literal ""%d.%d"" (" """) (string_content "%d.%d") (" """)) (, ",") (pointer_expression "&local_40" (& "&") (identifier "local_40")) (, ",") (identifier "local_3c") () ")"))) (; ";")) (expression_statement "iVar1 = (int)(param_1[6] - param_1[5] >> 5);" (assignment_expression "iVar1 = (int)(param_1[6] - param_1[5] >> 5)" (identifier "iVar1") (= "=") (cast_expression "(int)(param_1[6] - param_1[5] >> 5)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "(param_1[6] - param_1[5] >> 5)" (( "(") (binary_expression "param_1[6] - param_1[5] >> 5" (binary_expression "param_1[6] - param_1[5]" (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]")) (- "-") (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]"))) (>> ">>") (number_literal "5")) () ")")))) (; ";")) (expression_statement "uVar12 = (ulong)(iVar1 + 0x1f);" (assignment_expression "uVar12 = (ulong)(iVar1 + 0x1f)" (identifier "uVar12") (= "=") (call_expression "(ulong)(iVar1 + 0x1f)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(iVar1 + 0x1f)" (( "(") (binary_expression "iVar1 + 0x1f" (identifier "iVar1") (+ "+") (number_literal "0x1f")) () ")")))) (; ";")) (if_statement "if (0x7ffffffffffffff < uVar12) {\n                    \n        FUN_0049ddb0();\n      }" (if "if") (parenthesized_expression "(0x7ffffffffffffff < uVar12)" (( "(") (binary_expression "0x7ffffffffffffff < uVar12" (number_literal "0x7ffffffffffffff") (< "<") (identifier "uVar12")) () ")")) (compound_statement "{\n                    \n        FUN_0049ddb0();\n      }" ({ "{") (expression_statement "FUN_0049ddb0();" (call_expression "FUN_0049ddb0()" (identifier "FUN_0049ddb0") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);" (assignment_expression "puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" (identifier "puVar5") (= "=") (cast_expression "(undefined4 *)thunk_FUN_0049cb70(uVar12 << 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "thunk_FUN_0049cb70(uVar12 << 4)" (identifier "thunk_FUN_0049cb70") (argument_list "(uVar12 << 4)" (( "(") (binary_expression "uVar12 << 4" (identifier "uVar12") (<< "<<") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "*puVar5 = 0xb;" (assignment_expression "*puVar5 = 0xb" (pointer_expression "*puVar5" (* "*") (identifier "puVar5")) (= "=") (number_literal "0xb")) (; ";")) (expression_statement "*(code **)(puVar5 + 2) = FUN_00406940;" (assignment_expression "*(code **)(puVar5 + 2) = FUN_00406940" (pointer_expression "*(code **)(puVar5 + 2)" (* "*") (cast_expression "(code **)(puVar5 + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 2)" (( "(") (binary_expression "puVar5 + 2" (identifier "puVar5") (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406940")) (; ";")) (expression_statement "puVar5[4] = 1;" (assignment_expression "puVar5[4] = 1" (subscript_expression "puVar5[4]" (identifier "puVar5") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar5[10] = local_40 * 100 + local_3c[0];" (assignment_expression "puVar5[10] = local_40 * 100 + local_3c[0]" (subscript_expression "puVar5[10]" (identifier "puVar5") ([ "[") (number_literal "10") (] "]")) (= "=") (binary_expression "local_40 * 100 + local_3c[0]" (binary_expression "local_40 * 100" (identifier "local_40") (* "*") (number_literal "100")) (+ "+") (subscript_expression "local_3c[0]" (identifier "local_3c") ([ "[") (number_literal "0") (] "]")))) (; ";")) (expression_statement "puVar2 = PTR_DAT_0067cb08;" (assignment_expression "puVar2 = PTR_DAT_0067cb08" (identifier "puVar2") (= "=") (identifier "PTR_DAT_0067cb08")) (; ";")) (expression_statement "puVar5[6] = 1;" (assignment_expression "puVar5[6] = 1" (subscript_expression "puVar5[6]" (identifier "puVar5") ([ "[") (number_literal "6") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "lVar3 = *(long *)(puVar2 + 0x10);" (assignment_expression "lVar3 = *(long *)(puVar2 + 0x10)" (identifier "lVar3") (= "=") (pointer_expression "*(long *)(puVar2 + 0x10)" (* "*") (cast_expression "(long *)(puVar2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar2 + 0x10)" (( "(") (binary_expression "puVar2 + 0x10" (identifier "puVar2") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "puVar5[8] = 2;" (assignment_expression "puVar5[8] = 2" (subscript_expression "puVar5[8]" (identifier "puVar5") ([ "[") (number_literal "8") (] "]")) (= "=") (number_literal "2")) (; ";")) (expression_statement "puVar5[0xc] = 3;" (assignment_expression "puVar5[0xc] = 3" (subscript_expression "puVar5[0xc]" (identifier "puVar5") ([ "[") (number_literal "0xc") (] "]")) (= "=") (number_literal "3")) (; ";")) (if_statement "if (lVar3 == 0) {\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" (if "if") (parenthesized_expression "(lVar3 == 0)" (( "(") (binary_expression "lVar3 == 0" (identifier "lVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    \n        FUN_00352af0("../../gold/parameters.h",0x5c,"options");\n      }" ({ "{") (expression_statement "FUN_00352af0("../../gold/parameters.h",0x5c,"options");" (call_expression "FUN_00352af0("../../gold/parameters.h",0x5c,"options")" (identifier "FUN_00352af0") (argument_list "("../../gold/parameters.h",0x5c,"options")" (( "(") (string_literal ""../../gold/parameters.h"" (" """) (string_content "../../gold/parameters.h") (" """)) (, ",") (number_literal "0x5c") (, ",") (string_literal ""options"" (" """) (string_content "options") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(lVar3 + 0x5051) == '\0') {\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }\n      else {\n        puVar5[0xe] = 0;\n      }" (if "if") (parenthesized_expression "(*(char *)(lVar3 + 0x5051) == '\0')" (( "(") (binary_expression "*(char *)(lVar3 + 0x5051) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x5051)" (* "*") (cast_expression "(char *)(lVar3 + 0x5051)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + 0x5051)" (( "(") (binary_expression "lVar3 + 0x5051" (identifier "lVar3") (+ "+") (number_literal "0x5051")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }\n      }" ({ "{") (if_statement "if (*(char *)(lVar3 + 0x2a61) == '\0') {\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }\n        else {\n          puVar5[0xe] = 2;\n        }" (if "if") (parenthesized_expression "(*(char *)(lVar3 + 0x2a61) == '\0')" (( "(") (binary_expression "*(char *)(lVar3 + 0x2a61) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x2a61)" (* "*") (cast_expression "(char *)(lVar3 + 0x2a61)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + 0x2a61)" (( "(") (binary_expression "lVar3 + 0x2a61" (identifier "lVar3") (+ "+") (number_literal "0x2a61")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }\n        }" ({ "{") (if_statement "if (*(char *)(lVar3 + 0x42d1) == '\0') {\n            puVar5[0xe] = 1;\n          }\n          else {\n            puVar5[0xe] = 3;\n          }" (if "if") (parenthesized_expression "(*(char *)(lVar3 + 0x42d1) == '\0')" (( "(") (binary_expression "*(char *)(lVar3 + 0x42d1) == '\0'" (pointer_expression "*(char *)(lVar3 + 0x42d1)" (* "*") (cast_expression "(char *)(lVar3 + 0x42d1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + 0x42d1)" (( "(") (binary_expression "lVar3 + 0x42d1" (identifier "lVar3") (+ "+") (number_literal "0x42d1")) () ")")))) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            puVar5[0xe] = 1;\n          }" ({ "{") (expression_statement "puVar5[0xe] = 1;" (assignment_expression "puVar5[0xe] = 1" (subscript_expression "puVar5[0xe]" (identifier "puVar5") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n            puVar5[0xe] = 3;\n          }" (else "else") (compound_statement "{\n            puVar5[0xe] = 3;\n          }" ({ "{") (expression_statement "puVar5[0xe] = 3;" (assignment_expression "puVar5[0xe] = 3" (subscript_expression "puVar5[0xe]" (identifier "puVar5") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "3")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n          puVar5[0xe] = 2;\n        }" (else "else") (compound_statement "{\n          puVar5[0xe] = 2;\n        }" ({ "{") (expression_statement "puVar5[0xe] = 2;" (assignment_expression "puVar5[0xe] = 2" (subscript_expression "puVar5[0xe]" (identifier "puVar5") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "2")) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n        puVar5[0xe] = 0;\n      }" (else "else") (compound_statement "{\n        puVar5[0xe] = 0;\n      }" ({ "{") (expression_statement "puVar5[0xe] = 0;" (assignment_expression "puVar5[0xe] = 0" (subscript_expression "puVar5[0xe]" (identifier "puVar5") ([ "[") (number_literal "0xe") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "lVar18 = param_1[5];" (assignment_expression "lVar18 = param_1[5]" (identifier "lVar18") (= "=") (subscript_expression "param_1[5]" (identifier "param_1") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "lVar9 = param_1[6];" (assignment_expression "lVar9 = param_1[6]" (identifier "lVar9") (= "=") (subscript_expression "param_1[6]" (identifier "param_1") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "puVar5[0x10] = 0xf;" (assignment_expression "puVar5[0x10] = 0xf" (subscript_expression "puVar5[0x10]" (identifier "puVar5") ([ "[") (number_literal "0x10") (] "]")) (= "=") (number_literal "0xf")) (; ";")) (expression_statement "lVar9 = lVar9 - lVar18 >> 5;" (assignment_expression "lVar9 = lVar9 - lVar18 >> 5" (identifier "lVar9") (= "=") (binary_expression "lVar9 - lVar18 >> 5" (binary_expression "lVar9 - lVar18" (identifier "lVar9") (- "-") (identifier "lVar18")) (>> ">>") (number_literal "5"))) (; ";")) (expression_statement "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);" (assignment_expression "*(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058)" (pointer_expression "*(undefined8 *)(puVar5 + 0x12)" (* "*") (cast_expression "(undefined8 *)(puVar5 + 0x12)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x12)" (( "(") (binary_expression "puVar5 + 0x12" (identifier "puVar5") (+ "+") (number_literal "0x12")) () ")")))) (= "=") (pointer_expression "*(undefined8 *)(lVar3 + 0x4058)" (* "*") (cast_expression "(undefined8 *)(lVar3 + 0x4058)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + 0x4058)" (( "(") (binary_expression "lVar3 + 0x4058" (identifier "lVar3") (+ "+") (number_literal "0x4058")) () ")"))))) (; ";")) (if_statement "if (lVar9 == 0) {\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }\n      else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" (if "if") (parenthesized_expression "(lVar9 == 0)" (( "(") (binary_expression "lVar9 == 0" (identifier "lVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        lVar10 = 0x1e0;\n        lVar11 = 0xe0;\n        local_4c = 0x1e;\n        lVar13 = 0xd0;\n        local_58 = 0x1d0;\n        lVar14 = 0xc0;\n        lVar15 = 0xb0;\n        lVar16 = 0xa0;\n        local_60 = 0x1c0;\n        lVar17 = 0x90;\n        lVar9 = 0x80;\n        lVar18 = 0x70;\n        local_68 = 0x1b0;\n        lVar3 = 0x60;\n        lVar6 = 0x50;\n        local_70 = 0x1a0;\n        local_78 = 400;\n        local_80 = 0x180;\n        local_88 = 0x170;\n        local_90 = 0x160;\n        local_98 = 0x150;\n        local_a0 = 0x140;\n        local_a8 = 0x130;\n        local_b0 = 0x120;\n        local_b8 = 0x110;\n        local_c0 = 0x100;\n        local_c8 = 0xf0;\n      }" ({ "{") (expression_statement "lVar10 = 0x1e0;" (assignment_expression "lVar10 = 0x1e0" (identifier "lVar10") (= "=") (number_literal "0x1e0")) (; ";")) (expression_statement "lVar11 = 0xe0;" (assignment_expression "lVar11 = 0xe0" (identifier "lVar11") (= "=") (number_literal "0xe0")) (; ";")) (expression_statement "local_4c = 0x1e;" (assignment_expression "local_4c = 0x1e" (identifier "local_4c") (= "=") (number_literal "0x1e")) (; ";")) (expression_statement "lVar13 = 0xd0;" (assignment_expression "lVar13 = 0xd0" (identifier "lVar13") (= "=") (number_literal "0xd0")) (; ";")) (expression_statement "local_58 = 0x1d0;" (assignment_expression "local_58 = 0x1d0" (identifier "local_58") (= "=") (number_literal "0x1d0")) (; ";")) (expression_statement "lVar14 = 0xc0;" (assignment_expression "lVar14 = 0xc0" (identifier "lVar14") (= "=") (number_literal "0xc0")) (; ";")) (expression_statement "lVar15 = 0xb0;" (assignment_expression "lVar15 = 0xb0" (identifier "lVar15") (= "=") (number_literal "0xb0")) (; ";")) (expression_statement "lVar16 = 0xa0;" (assignment_expression "lVar16 = 0xa0" (identifier "lVar16") (= "=") (number_literal "0xa0")) (; ";")) (expression_statement "local_60 = 0x1c0;" (assignment_expression "local_60 = 0x1c0" (identifier "local_60") (= "=") (number_literal "0x1c0")) (; ";")) (expression_statement "lVar17 = 0x90;" (assignment_expression "lVar17 = 0x90" (identifier "lVar17") (= "=") (number_literal "0x90")) (; ";")) (expression_statement "lVar9 = 0x80;" (assignment_expression "lVar9 = 0x80" (identifier "lVar9") (= "=") (number_literal "0x80")) (; ";")) (expression_statement "lVar18 = 0x70;" (assignment_expression "lVar18 = 0x70" (identifier "lVar18") (= "=") (number_literal "0x70")) (; ";")) (expression_statement "local_68 = 0x1b0;" (assignment_expression "local_68 = 0x1b0" (identifier "local_68") (= "=") (number_literal "0x1b0")) (; ";")) (expression_statement "lVar3 = 0x60;" (assignment_expression "lVar3 = 0x60" (identifier "lVar3") (= "=") (number_literal "0x60")) (; ";")) (expression_statement "lVar6 = 0x50;" (assignment_expression "lVar6 = 0x50" (identifier "lVar6") (= "=") (number_literal "0x50")) (; ";")) (expression_statement "local_70 = 0x1a0;" (assignment_expression "local_70 = 0x1a0" (identifier "local_70") (= "=") (number_literal "0x1a0")) (; ";")) (expression_statement "local_78 = 400;" (assignment_expression "local_78 = 400" (identifier "local_78") (= "=") (number_literal "400")) (; ";")) (expression_statement "local_80 = 0x180;" (assignment_expression "local_80 = 0x180" (identifier "local_80") (= "=") (number_literal "0x180")) (; ";")) (expression_statement "local_88 = 0x170;" (assignment_expression "local_88 = 0x170" (identifier "local_88") (= "=") (number_literal "0x170")) (; ";")) (expression_statement "local_90 = 0x160;" (assignment_expression "local_90 = 0x160" (identifier "local_90") (= "=") (number_literal "0x160")) (; ";")) (expression_statement "local_98 = 0x150;" (assignment_expression "local_98 = 0x150" (identifier "local_98") (= "=") (number_literal "0x150")) (; ";")) (expression_statement "local_a0 = 0x140;" (assignment_expression "local_a0 = 0x140" (identifier "local_a0") (= "=") (number_literal "0x140")) (; ";")) (expression_statement "local_a8 = 0x130;" (assignment_expression "local_a8 = 0x130" (identifier "local_a8") (= "=") (number_literal "0x130")) (; ";")) (expression_statement "local_b0 = 0x120;" (assignment_expression "local_b0 = 0x120" (identifier "local_b0") (= "=") (number_literal "0x120")) (; ";")) (expression_statement "local_b8 = 0x110;" (assignment_expression "local_b8 = 0x110" (identifier "local_b8") (= "=") (number_literal "0x110")) (; ";")) (expression_statement "local_c0 = 0x100;" (assignment_expression "local_c0 = 0x100" (identifier "local_c0") (= "=") (number_literal "0x100")) (; ";")) (expression_statement "local_c8 = 0xf0;" (assignment_expression "local_c8 = 0xf0" (identifier "local_c8") (= "=") (number_literal "0xf0")) (; ";")) (} "}")) (else_clause "else {\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" (else "else") (compound_statement "{\n        lVar3 = 0;\n        do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);\n        local_4c = (int)lVar9 + 0x1e;\n        lVar6 = (long)((int)lVar9 + 5) * 0x10;\n        local_c8 = lVar6 + 0xa0;\n        lVar3 = lVar6 + 0x10;\n        local_c0 = lVar6 + 0xb0;\n        lVar18 = lVar6 + 0x20;\n        local_b8 = lVar6 + 0xc0;\n        lVar9 = lVar6 + 0x30;\n        local_b0 = lVar6 + 0xd0;\n        lVar17 = lVar6 + 0x40;\n        local_a8 = lVar6 + 0xe0;\n        lVar16 = lVar6 + 0x50;\n        lVar15 = lVar6 + 0x60;\n        local_a0 = lVar6 + 0xf0;\n        local_98 = lVar6 + 0x100;\n        lVar14 = lVar6 + 0x70;\n        local_90 = lVar6 + 0x110;\n        lVar13 = lVar6 + 0x80;\n        local_88 = lVar6 + 0x120;\n        lVar11 = lVar6 + 0x90;\n        local_80 = lVar6 + 0x130;\n        lVar10 = lVar6 + 400;\n        local_78 = lVar6 + 0x140;\n        local_70 = lVar6 + 0x150;\n        local_68 = lVar6 + 0x160;\n        local_60 = lVar6 + 0x170;\n        local_58 = lVar6 + 0x180;\n      }" ({ "{") (expression_statement "lVar3 = 0;" (assignment_expression "lVar3 = 0" (identifier "lVar3") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        } while (lVar9 << 4 != lVar3);" (do "do") (compound_statement "{\n          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;\n          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);\n          lVar3 = lVar3 + 0x10;\n        }" ({ "{") (expression_statement "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;" (assignment_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4" (pointer_expression "*(undefined4 *)((long)puVar5 + lVar3 + 0x50)" (* "*") (cast_expression "(undefined4 *)((long)puVar5 + lVar3 + 0x50)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar5 + lVar3 + 0x50)" (( "(") (binary_expression "(long)puVar5 + lVar3 + 0x50" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5")) (+ "+") (identifier "lVar3")) (+ "+") (number_literal "0x50")) () ")")))) (= "=") (number_literal "4")) (; ";")) (expression_statement "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);" (assignment_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2)" (pointer_expression "*(undefined8 *)((long)puVar5 + lVar3 + 0x58)" (* "*") (cast_expression "(undefined8 *)((long)puVar5 + lVar3 + 0x58)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar5 + lVar3 + 0x58)" (( "(") (binary_expression "(long)puVar5 + lVar3 + 0x58" (binary_expression "(long)puVar5 + lVar3" (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5")) (+ "+") (identifier "lVar3")) (+ "+") (number_literal "0x58")) () ")")))) (= "=") (pointer_expression "*(undefined8 *)(lVar18 + lVar3 * 2)" (* "*") (cast_expression "(undefined8 *)(lVar18 + lVar3 * 2)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar18 + lVar3 * 2)" (( "(") (binary_expression "lVar18 + lVar3 * 2" (identifier "lVar18") (+ "+") (binary_expression "lVar3 * 2" (identifier "lVar3") (* "*") (number_literal "2"))) () ")"))))) (; ";")) (expression_statement "lVar3 = lVar3 + 0x10;" (assignment_expression "lVar3 = lVar3 + 0x10" (identifier "lVar3") (= "=") (binary_expression "lVar3 + 0x10" (identifier "lVar3") (+ "+") (number_literal "0x10"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar9 << 4 != lVar3)" (( "(") (binary_expression "lVar9 << 4 != lVar3" (binary_expression "lVar9 << 4" (identifier "lVar9") (<< "<<") (number_literal "4")) (!= "!=") (identifier "lVar3")) () ")")) (; ";")) (expression_statement "local_4c = (int)lVar9 + 0x1e;" (assignment_expression "local_4c = (int)lVar9 + 0x1e" (identifier "local_4c") (= "=") (binary_expression "(int)lVar9 + 0x1e" (cast_expression "(int)lVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar9")) (+ "+") (number_literal "0x1e"))) (; ";")) (expression_statement "lVar6 = (long)((int)lVar9 + 5) * 0x10;" (assignment_expression "lVar6 = (long)((int)lVar9 + 5) * 0x10" (identifier "lVar6") (= "=") (binary_expression "(long)((int)lVar9 + 5) * 0x10" (cast_expression "(long)((int)lVar9 + 5)" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (parenthesized_expression "((int)lVar9 + 5)" (( "(") (binary_expression "(int)lVar9 + 5" (cast_expression "(int)lVar9" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "lVar9")) (+ "+") (number_literal "5")) () ")"))) (* "*") (number_literal "0x10"))) (; ";")) (expression_statement "local_c8 = lVar6 + 0xa0;" (assignment_expression "local_c8 = lVar6 + 0xa0" (identifier "local_c8") (= "=") (binary_expression "lVar6 + 0xa0" (identifier "lVar6") (+ "+") (number_literal "0xa0"))) (; ";")) (expression_statement "lVar3 = lVar6 + 0x10;" (assignment_expression "lVar3 = lVar6 + 0x10" (identifier "lVar3") (= "=") (binary_expression "lVar6 + 0x10" (identifier "lVar6") (+ "+") (number_literal "0x10"))) (; ";")) (expression_statement "local_c0 = lVar6 + 0xb0;" (assignment_expression "local_c0 = lVar6 + 0xb0" (identifier "local_c0") (= "=") (binary_expression "lVar6 + 0xb0" (identifier "lVar6") (+ "+") (number_literal "0xb0"))) (; ";")) (expression_statement "lVar18 = lVar6 + 0x20;" (assignment_expression "lVar18 = lVar6 + 0x20" (identifier "lVar18") (= "=") (binary_expression "lVar6 + 0x20" (identifier "lVar6") (+ "+") (number_literal "0x20"))) (; ";")) (expression_statement "local_b8 = lVar6 + 0xc0;" (assignment_expression "local_b8 = lVar6 + 0xc0" (identifier "local_b8") (= "=") (binary_expression "lVar6 + 0xc0" (identifier "lVar6") (+ "+") (number_literal "0xc0"))) (; ";")) (expression_statement "lVar9 = lVar6 + 0x30;" (assignment_expression "lVar9 = lVar6 + 0x30" (identifier "lVar9") (= "=") (binary_expression "lVar6 + 0x30" (identifier "lVar6") (+ "+") (number_literal "0x30"))) (; ";")) (expression_statement "local_b0 = lVar6 + 0xd0;" (assignment_expression "local_b0 = lVar6 + 0xd0" (identifier "local_b0") (= "=") (binary_expression "lVar6 + 0xd0" (identifier "lVar6") (+ "+") (number_literal "0xd0"))) (; ";")) (expression_statement "lVar17 = lVar6 + 0x40;" (assignment_expression "lVar17 = lVar6 + 0x40" (identifier "lVar17") (= "=") (binary_expression "lVar6 + 0x40" (identifier "lVar6") (+ "+") (number_literal "0x40"))) (; ";")) (expression_statement "local_a8 = lVar6 + 0xe0;" (assignment_expression "local_a8 = lVar6 + 0xe0" (identifier "local_a8") (= "=") (binary_expression "lVar6 + 0xe0" (identifier "lVar6") (+ "+") (number_literal "0xe0"))) (; ";")) (expression_statement "lVar16 = lVar6 + 0x50;" (assignment_expression "lVar16 = lVar6 + 0x50" (identifier "lVar16") (= "=") (binary_expression "lVar6 + 0x50" (identifier "lVar6") (+ "+") (number_literal "0x50"))) (; ";")) (expression_statement "lVar15 = lVar6 + 0x60;" (assignment_expression "lVar15 = lVar6 + 0x60" (identifier "lVar15") (= "=") (binary_expression "lVar6 + 0x60" (identifier "lVar6") (+ "+") (number_literal "0x60"))) (; ";")) (expression_statement "local_a0 = lVar6 + 0xf0;" (assignment_expression "local_a0 = lVar6 + 0xf0" (identifier "local_a0") (= "=") (binary_expression "lVar6 + 0xf0" (identifier "lVar6") (+ "+") (number_literal "0xf0"))) (; ";")) (expression_statement "local_98 = lVar6 + 0x100;" (assignment_expression "local_98 = lVar6 + 0x100" (identifier "local_98") (= "=") (binary_expression "lVar6 + 0x100" (identifier "lVar6") (+ "+") (number_literal "0x100"))) (; ";")) (expression_statement "lVar14 = lVar6 + 0x70;" (assignment_expression "lVar14 = lVar6 + 0x70" (identifier "lVar14") (= "=") (binary_expression "lVar6 + 0x70" (identifier "lVar6") (+ "+") (number_literal "0x70"))) (; ";")) (expression_statement "local_90 = lVar6 + 0x110;" (assignment_expression "local_90 = lVar6 + 0x110" (identifier "local_90") (= "=") (binary_expression "lVar6 + 0x110" (identifier "lVar6") (+ "+") (number_literal "0x110"))) (; ";")) (expression_statement "lVar13 = lVar6 + 0x80;" (assignment_expression "lVar13 = lVar6 + 0x80" (identifier "lVar13") (= "=") (binary_expression "lVar6 + 0x80" (identifier "lVar6") (+ "+") (number_literal "0x80"))) (; ";")) (expression_statement "local_88 = lVar6 + 0x120;" (assignment_expression "local_88 = lVar6 + 0x120" (identifier "local_88") (= "=") (binary_expression "lVar6 + 0x120" (identifier "lVar6") (+ "+") (number_literal "0x120"))) (; ";")) (expression_statement "lVar11 = lVar6 + 0x90;" (assignment_expression "lVar11 = lVar6 + 0x90" (identifier "lVar11") (= "=") (binary_expression "lVar6 + 0x90" (identifier "lVar6") (+ "+") (number_literal "0x90"))) (; ";")) (expression_statement "local_80 = lVar6 + 0x130;" (assignment_expression "local_80 = lVar6 + 0x130" (identifier "local_80") (= "=") (binary_expression "lVar6 + 0x130" (identifier "lVar6") (+ "+") (number_literal "0x130"))) (; ";")) (expression_statement "lVar10 = lVar6 + 400;" (assignment_expression "lVar10 = lVar6 + 400" (identifier "lVar10") (= "=") (binary_expression "lVar6 + 400" (identifier "lVar6") (+ "+") (number_literal "400"))) (; ";")) (expression_statement "local_78 = lVar6 + 0x140;" (assignment_expression "local_78 = lVar6 + 0x140" (identifier "local_78") (= "=") (binary_expression "lVar6 + 0x140" (identifier "lVar6") (+ "+") (number_literal "0x140"))) (; ";")) (expression_statement "local_70 = lVar6 + 0x150;" (assignment_expression "local_70 = lVar6 + 0x150" (identifier "local_70") (= "=") (binary_expression "lVar6 + 0x150" (identifier "lVar6") (+ "+") (number_literal "0x150"))) (; ";")) (expression_statement "local_68 = lVar6 + 0x160;" (assignment_expression "local_68 = lVar6 + 0x160" (identifier "local_68") (= "=") (binary_expression "lVar6 + 0x160" (identifier "lVar6") (+ "+") (number_literal "0x160"))) (; ";")) (expression_statement "local_60 = lVar6 + 0x170;" (assignment_expression "local_60 = lVar6 + 0x170" (identifier "local_60") (= "=") (binary_expression "lVar6 + 0x170" (identifier "lVar6") (+ "+") (number_literal "0x170"))) (; ";")) (expression_statement "local_58 = lVar6 + 0x180;" (assignment_expression "local_58 = lVar6 + 0x180" (identifier "local_58") (= "=") (binary_expression "lVar6 + 0x180" (identifier "lVar6") (+ "+") (number_literal "0x180"))) (; ";")) (} "}")))) (expression_statement "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;" (assignment_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00" (pointer_expression "*(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar6 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar6 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar6 + (long)puVar5)" (( "(") (binary_expression "lVar6 + (long)puVar5" (identifier "lVar6") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406d00")) (; ";")) (expression_statement "*(undefined4 *)(lVar6 + (long)puVar5) = 5;" (assignment_expression "*(undefined4 *)(lVar6 + (long)puVar5) = 5" (pointer_expression "*(undefined4 *)(lVar6 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar6 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar6 + (long)puVar5)" (( "(") (binary_expression "lVar6 + (long)puVar5" (identifier "lVar6") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "5")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;" (assignment_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80" (pointer_expression "*(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar3 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar3 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + (long)puVar5)" (( "(") (binary_expression "lVar3 + (long)puVar5" (identifier "lVar3") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406c80")) (; ";")) (expression_statement "*(undefined4 *)(lVar3 + (long)puVar5) = 6;" (assignment_expression "*(undefined4 *)(lVar3 + (long)puVar5) = 6" (pointer_expression "*(undefined4 *)(lVar3 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar3 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar3 + (long)puVar5)" (( "(") (binary_expression "lVar3 + (long)puVar5" (identifier "lVar3") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "6")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;" (assignment_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00" (pointer_expression "*(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar18 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar18 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar18 + (long)puVar5)" (( "(") (binary_expression "lVar18 + (long)puVar5" (identifier "lVar18") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406c00")) (; ";")) (expression_statement "*(undefined4 *)(lVar18 + (long)puVar5) = 7;" (assignment_expression "*(undefined4 *)(lVar18 + (long)puVar5) = 7" (pointer_expression "*(undefined4 *)(lVar18 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar18 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar18 + (long)puVar5)" (( "(") (binary_expression "lVar18 + (long)puVar5" (identifier "lVar18") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "7")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;" (assignment_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70" (pointer_expression "*(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar9 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar9 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar9 + (long)puVar5)" (( "(") (binary_expression "lVar9 + (long)puVar5" (identifier "lVar9") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00409d70")) (; ";")) (expression_statement "*(undefined4 *)(lVar9 + (long)puVar5) = 8;" (assignment_expression "*(undefined4 *)(lVar9 + (long)puVar5) = 8" (pointer_expression "*(undefined4 *)(lVar9 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar9 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar9 + (long)puVar5)" (( "(") (binary_expression "lVar9 + (long)puVar5" (identifier "lVar9") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "8")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;" (assignment_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0" (pointer_expression "*(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar17 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar17 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + (long)puVar5)" (( "(") (binary_expression "lVar17 + (long)puVar5" (identifier "lVar17") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00407db0")) (; ";")) (expression_statement "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc;" (assignment_expression "*(undefined4 *)(lVar17 + (long)puVar5) = 0xc" (pointer_expression "*(undefined4 *)(lVar17 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar17 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + (long)puVar5)" (( "(") (binary_expression "lVar17 + (long)puVar5" (identifier "lVar17") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0xc")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;" (assignment_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0" (pointer_expression "*(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar16 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar16 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + (long)puVar5)" (( "(") (binary_expression "lVar16 + (long)puVar5" (identifier "lVar16") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_004085f0")) (; ";")) (expression_statement "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12;" (assignment_expression "*(undefined4 *)(lVar16 + (long)puVar5) = 0x12" (pointer_expression "*(undefined4 *)(lVar16 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar16 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + (long)puVar5)" (( "(") (binary_expression "lVar16 + (long)puVar5" (identifier "lVar16") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x12")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;" (assignment_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90" (pointer_expression "*(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar15 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar15 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar15 + (long)puVar5)" (( "(") (binary_expression "lVar15 + (long)puVar5" (identifier "lVar15") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00407e90")) (; ";")) (expression_statement "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd;" (assignment_expression "*(undefined4 *)(lVar15 + (long)puVar5) = 0xd" (pointer_expression "*(undefined4 *)(lVar15 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar15 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar15 + (long)puVar5)" (( "(") (binary_expression "lVar15 + (long)puVar5" (identifier "lVar15") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0xd")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;" (assignment_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940" (pointer_expression "*(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar14 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar14 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar14 + (long)puVar5)" (( "(") (binary_expression "lVar14 + (long)puVar5" (identifier "lVar14") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00409940")) (; ";")) (expression_statement "*(undefined4 *)(lVar14 + (long)puVar5) = 9;" (assignment_expression "*(undefined4 *)(lVar14 + (long)puVar5) = 9" (pointer_expression "*(undefined4 *)(lVar14 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar14 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar14 + (long)puVar5)" (( "(") (binary_expression "lVar14 + (long)puVar5" (identifier "lVar14") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "9")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;" (assignment_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890" (pointer_expression "*(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar13 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar13 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar13 + (long)puVar5)" (( "(") (binary_expression "lVar13 + (long)puVar5" (identifier "lVar13") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00409890")) (; ";")) (expression_statement "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19;" (assignment_expression "*(undefined4 *)(lVar13 + (long)puVar5) = 0x19" (pointer_expression "*(undefined4 *)(lVar13 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar13 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar13 + (long)puVar5)" (( "(") (binary_expression "lVar13 + (long)puVar5" (identifier "lVar13") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x19")) (; ";")) (expression_statement "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;" (assignment_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0" (pointer_expression "*(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(lVar11 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(lVar11 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + (long)puVar5)" (( "(") (binary_expression "lVar11 + (long)puVar5" (identifier "lVar11") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_004097e0")) (; ";")) (expression_statement "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;" (assignment_expression "*(undefined4 *)(lVar11 + (long)puVar5) = 0x1c" (pointer_expression "*(undefined4 *)(lVar11 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar11 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar11 + (long)puVar5)" (( "(") (binary_expression "lVar11 + (long)puVar5" (identifier "lVar11") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1c")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;" (assignment_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0" (pointer_expression "*(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_c8 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_c8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_c8 + (long)puVar5)" (( "(") (binary_expression "local_c8 + (long)puVar5" (identifier "local_c8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_0040a4e0")) (; ";")) (expression_statement "*(undefined4 *)(local_c8 + (long)puVar5) = 10;" (assignment_expression "*(undefined4 *)(local_c8 + (long)puVar5) = 10" (pointer_expression "*(undefined4 *)(local_c8 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_c8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_c8 + (long)puVar5)" (( "(") (binary_expression "local_c8 + (long)puVar5" (identifier "local_c8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "10")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;" (assignment_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470" (pointer_expression "*(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_c0 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_c0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_c0 + (long)puVar5)" (( "(") (binary_expression "local_c0 + (long)puVar5" (identifier "local_c0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_0040a470")) (; ";")) (expression_statement "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe;" (assignment_expression "*(undefined4 *)(local_c0 + (long)puVar5) = 0xe" (pointer_expression "*(undefined4 *)(local_c0 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_c0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_c0 + (long)puVar5)" (( "(") (binary_expression "local_c0 + (long)puVar5" (identifier "local_c0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0xe")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;" (assignment_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50" (pointer_expression "*(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_b8 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_b8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_b8 + (long)puVar5)" (( "(") (binary_expression "local_b8 + (long)puVar5" (identifier "local_b8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408c50")) (; ";")) (expression_statement "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10;" (assignment_expression "*(undefined4 *)(local_b8 + (long)puVar5) = 0x10" (pointer_expression "*(undefined4 *)(local_b8 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_b8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_b8 + (long)puVar5)" (( "(") (binary_expression "local_b8 + (long)puVar5" (identifier "local_b8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x10")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;" (assignment_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210" (pointer_expression "*(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_b0 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_b0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_b0 + (long)puVar5)" (( "(") (binary_expression "local_b0 + (long)puVar5" (identifier "local_b0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408210")) (; ";")) (expression_statement "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13;" (assignment_expression "*(undefined4 *)(local_b0 + (long)puVar5) = 0x13" (pointer_expression "*(undefined4 *)(local_b0 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_b0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_b0 + (long)puVar5)" (( "(") (binary_expression "local_b0 + (long)puVar5" (identifier "local_b0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x13")) (; ";")) (expression_statement "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14;" (assignment_expression "*(undefined4 *)(local_a8 + (long)puVar5) = 0x14" (pointer_expression "*(undefined4 *)(local_a8 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_a8 + (long)puVar5)" (( "(") (binary_expression "local_a8 + (long)puVar5" (identifier "local_a8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x14")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;" (assignment_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170" (pointer_expression "*(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_a8 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_a8 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a8 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_a8 + (long)puVar5)" (( "(") (binary_expression "local_a8 + (long)puVar5" (identifier "local_a8") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408170")) (; ";")) (expression_statement "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15;" (assignment_expression "*(undefined4 *)(local_a0 + (long)puVar5) = 0x15" (pointer_expression "*(undefined4 *)(local_a0 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_a0 + (long)puVar5)" (( "(") (binary_expression "local_a0 + (long)puVar5" (identifier "local_a0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x15")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;" (assignment_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410" (pointer_expression "*(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_a0 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_a0 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_a0 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_a0 + (long)puVar5)" (( "(") (binary_expression "local_a0 + (long)puVar5" (identifier "local_a0") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408410")) (; ";")) (expression_statement "*(undefined4 *)(local_98 + (long)puVar5) = 0x16;" (assignment_expression "*(undefined4 *)(local_98 + (long)puVar5) = 0x16" (pointer_expression "*(undefined4 *)(local_98 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_98 + (long)puVar5)" (( "(") (binary_expression "local_98 + (long)puVar5" (identifier "local_98") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x16")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;" (assignment_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070" (pointer_expression "*(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_98 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_98 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_98 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_98 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_98 + (long)puVar5)" (( "(") (binary_expression "local_98 + (long)puVar5" (identifier "local_98") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408070")) (; ";")) (expression_statement "*(undefined4 *)(local_90 + (long)puVar5) = 0x17;" (assignment_expression "*(undefined4 *)(local_90 + (long)puVar5) = 0x17" (pointer_expression "*(undefined4 *)(local_90 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_90 + (long)puVar5)" (( "(") (binary_expression "local_90 + (long)puVar5" (identifier "local_90") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x17")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;" (assignment_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600" (pointer_expression "*(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_90 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_90 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_90 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_90 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_90 + (long)puVar5)" (( "(") (binary_expression "local_90 + (long)puVar5" (identifier "local_90") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_0040a600")) (; ";")) (expression_statement "*(undefined4 *)(local_88 + (long)puVar5) = 0x18;" (assignment_expression "*(undefined4 *)(local_88 + (long)puVar5) = 0x18" (pointer_expression "*(undefined4 *)(local_88 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_88 + (long)puVar5)" (( "(") (binary_expression "local_88 + (long)puVar5" (identifier "local_88") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x18")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;" (assignment_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10" (pointer_expression "*(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_88 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_88 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_88 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_88 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_88 + (long)puVar5)" (( "(") (binary_expression "local_88 + (long)puVar5" (identifier "local_88") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406b10")) (; ";")) (expression_statement "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a;" (assignment_expression "*(undefined4 *)(local_80 + (long)puVar5) = 0x1a" (pointer_expression "*(undefined4 *)(local_80 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_80 + (long)puVar5)" (( "(") (binary_expression "local_80 + (long)puVar5" (identifier "local_80") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1a")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;" (assignment_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0" (pointer_expression "*(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_80 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_80 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_80 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_80 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_80 + (long)puVar5)" (( "(") (binary_expression "local_80 + (long)puVar5" (identifier "local_80") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406aa0")) (; ";")) (expression_statement "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b;" (assignment_expression "*(undefined4 *)(local_78 + (long)puVar5) = 0x1b" (pointer_expression "*(undefined4 *)(local_78 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_78 + (long)puVar5)" (( "(") (binary_expression "local_78 + (long)puVar5" (identifier "local_78") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1b")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;" (assignment_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290" (pointer_expression "*(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_78 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_78 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_78 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_78 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_78 + (long)puVar5)" (( "(") (binary_expression "local_78 + (long)puVar5" (identifier "local_78") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00408290")) (; ";")) (expression_statement "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d;" (assignment_expression "*(undefined4 *)(local_70 + (long)puVar5) = 0x1d" (pointer_expression "*(undefined4 *)(local_70 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + (long)puVar5)" (( "(") (binary_expression "local_70 + (long)puVar5" (identifier "local_70") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1d")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;" (assignment_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0" (pointer_expression "*(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_70 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_70 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_70 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_70 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_70 + (long)puVar5)" (( "(") (binary_expression "local_70 + (long)puVar5" (identifier "local_70") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00407fd0")) (; ";")) (expression_statement "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e;" (assignment_expression "*(undefined4 *)(local_68 + (long)puVar5) = 0x1e" (pointer_expression "*(undefined4 *)(local_68 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_68 + (long)puVar5)" (( "(") (binary_expression "local_68 + (long)puVar5" (identifier "local_68") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1e")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;" (assignment_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30" (pointer_expression "*(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_68 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_68 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_68 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_68 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_68 + (long)puVar5)" (( "(") (binary_expression "local_68 + (long)puVar5" (identifier "local_68") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00407f30")) (; ";")) (expression_statement "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f;" (assignment_expression "*(undefined4 *)(local_60 + (long)puVar5) = 0x1f" (pointer_expression "*(undefined4 *)(local_60 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_60 + (long)puVar5)" (( "(") (binary_expression "local_60 + (long)puVar5" (identifier "local_60") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x1f")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;" (assignment_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80" (pointer_expression "*(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_60 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_60 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_60 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_60 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_60 + (long)puVar5)" (( "(") (binary_expression "local_60 + (long)puVar5" (identifier "local_60") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406b80")) (; ";")) (expression_statement "*(undefined4 *)(local_58 + (long)puVar5) = 0x20;" (assignment_expression "*(undefined4 *)(local_58 + (long)puVar5) = 0x20" (pointer_expression "*(undefined4 *)(local_58 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_58 + (long)puVar5)" (( "(") (binary_expression "local_58 + (long)puVar5" (identifier "local_58") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0x20")) (; ";")) (expression_statement "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;" (assignment_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850" (pointer_expression "*(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" (* "*") (cast_expression "(code **)((undefined4 *)(local_58 + (long)puVar5) + 2)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "((undefined4 *)(local_58 + (long)puVar5) + 2)" (( "(") (binary_expression "(undefined4 *)(local_58 + (long)puVar5) + 2" (cast_expression "(undefined4 *)(local_58 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(local_58 + (long)puVar5)" (( "(") (binary_expression "local_58 + (long)puVar5" (identifier "local_58") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) (+ "+") (number_literal "2")) () ")")))) (= "=") (identifier "FUN_00406850")) (; ";")) (expression_statement "*(undefined4 *)(lVar10 + (long)puVar5) = 0;" (assignment_expression "*(undefined4 *)(lVar10 + (long)puVar5) = 0" (pointer_expression "*(undefined4 *)(lVar10 + (long)puVar5)" (* "*") (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar10 + (long)puVar5)" (( "(") (binary_expression "lVar10 + (long)puVar5" (identifier "lVar10") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;" (assignment_expression "((undefined4 *)(lVar10 + (long)puVar5))[2] = 0" (subscript_expression "((undefined4 *)(lVar10 + (long)puVar5))[2]" (parenthesized_expression "((undefined4 *)(lVar10 + (long)puVar5))" (( "(") (cast_expression "(undefined4 *)(lVar10 + (long)puVar5)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar10 + (long)puVar5)" (( "(") (binary_expression "lVar10 + (long)puVar5" (identifier "lVar10") (+ "+") (cast_expression "(long)puVar5" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar5"))) () ")"))) () ")")) ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar1 + 0x1e != local_4c) {\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" (if "if") (parenthesized_expression "(iVar1 + 0x1e != local_4c)" (( "(") (binary_expression "iVar1 + 0x1e != local_4c" (binary_expression "iVar1 + 0x1e" (identifier "iVar1") (+ "+") (number_literal "0x1e")) (!= "!=") (identifier "local_4c")) () ")")) (compound_statement "{\n                    \n        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);\n      }" ({ "{") (expression_statement "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);" (call_expression "FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121)" (identifier "FUN_00352af0") (argument_list "("../../gold/plugin.cc",0x174,&DAT_0057d121)" (( "(") (string_literal ""../../gold/plugin.cc"" (" """) (string_content "../../gold/plugin.cc") (" """)) (, ",") (number_literal "0x174") (, ",") (pointer_expression "&DAT_0057d121" (& "&") (identifier "DAT_0057d121")) () ")"))) (; ";")) (} "}"))) (expression_statement "(*pcVar4)(puVar5);" (call_expression "(*pcVar4)(puVar5)" (parenthesized_expression "(*pcVar4)" (( "(") (pointer_expression "*pcVar4" (* "*") (identifier "pcVar4")) () ")")) (argument_list "(puVar5)" (( "(") (identifier "puVar5") () ")"))) (; ";")) (expression_statement "thunk_FUN_0049e340(puVar5);" (call_expression "thunk_FUN_0049e340(puVar5)" (identifier "thunk_FUN_0049e340") (argument_list "(puVar5)" (( "(") (identifier "puVar5") () ")"))) (; ";")) (} "}")))) (} "}")))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Enum "ELFOSABI": Some values do not have unique names */
/* DWARF original prototype: void load(Plugin * this) */

void __thiscall gold::type_1::function_1(type_1 *this)

{
  type_2 *var_20;
  type_3 pbVar2;
  type_3 pbVar3;
  type_3 pcVar4;
  int var_13;
  type_4 *pPVar6;
  void *var_2;
  type_5 *var_7;
  char *pcVar9;
  type_6 *var_17;
  long var_23;
  long var_24;
  type_7 uVar13;
  long var_22;
  long var_47;
  long var_31;
  type_8 var_14;
  long var_30;
  long var_29;
  long var_28;
  long var_27;
  long var_26;
  long var_25;
  long var_32;
  long var_33;
  long var_34;
  long var_35;
  long var_36;
  long var_37;
  long var_38;
  long var_39;
  long var_40;
  long var_41;
  long var_42;
  long var_43;
  long var_44;
  long var_45;
  long var_46;
  int var_48;
  int var_18;
  int var_19;
  
  var_2 = (void *)var_1((this->filename_)._M_dataplus._M_p,2);
  this->handle_ = var_2;
  if (var_2 == (void *)0x0) {
    uVar13 = var_3();
    pcVar4 = (this->filename_)._M_dataplus._M_p;
    pcVar9 = (char *)var_4("%s: could not load plugin library: %s");
    var_5(pcVar9,pcVar4,uVar13);
  }
  else {
    var_7 = (type_5 *)var_6(var_2,"onload");
    if (var_7 == (type_5 *)0x0) {
      pcVar4 = (this->filename_)._M_dataplus._M_p;
      pcVar9 = (char *)var_4("%s: could not find onload entry point");
      var_5(pcVar9,pcVar4);
    }
    else {
      pcVar9 = var_8();
      var_18 = 0;
      var_19 = 0;
      var_9(pcVar9,"%d.%d",&var_18,&var_19);
      var_13 = (int)((long)(this->args_).
                          super__Vector_base<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>,_std::var_10<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>var_12>var_12>
                          ._M_impl._M_finish -
                    (long)(this->args_).
                          super__Vector_base<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>,_std::var_10<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>var_12>var_12>
                          ._M_impl._M_start >> 5);
      var_14 = (type_8)(var_13 + 0x1f);
      if (0x7ffffffffffffff < var_14) {
                    /* WARNING: Subroutine does not return */
        var_15();
      }
      var_17 = (type_6 *)var_16(var_14 << 4);
      *var_17 = 0xb;
      *(type_5 **)(var_17 + 2) = message;
      var_17[4] = 1;
      var_17[10] = var_18 * 100 + var_19;
      pPVar6 = parameters;
      var_17[6] = 1;
      var_20 = pPVar6->options_;
      var_17[8] = 2;
      var_17[0xc] = 3;
      if (var_20 == (type_2 *)0x0) {
                    /* WARNING: Subroutine does not return */
        var_21("../../gold/parameters.h",0x5c,"options");
      }
      if ((var_20->relocatable_).value == false) {
        if ((var_20->shared_).value == false) {
          if ((var_20->pie_).value == false) {
            var_17[0xe] = 1;
          }
          else {
            var_17[0xe] = 3;
          }
        }
        else {
          var_17[0xe] = 2;
        }
      }
      else {
        var_17[0xe] = 0;
      }
      pbVar2 = (this->args_).
               super__Vector_base<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>,_std::var_10<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>var_12>var_12>
               ._M_impl._M_start;
      pbVar3 = (this->args_).
               super__Vector_base<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>,_std::var_10<std::__cxx11::basic_string<var_11,_std::char_traits<var_11>,_std::var_10<var_11>var_12>var_12>var_12>
               ._M_impl._M_finish;
      var_17[0x10] = 0xf;
      var_22 = (long)pbVar3 - (long)pbVar2 >> 5;
      *(char **)(var_17 + 0x12) = (var_20->output_).value;
      if (var_22 == 0) {
        var_47 = 0x1e0;
        var_31 = 0xe0;
        var_48 = 0x1e;
        var_30 = 0xd0;
        var_46 = 0x1d0;
        var_29 = 0xc0;
        var_28 = 0xb0;
        var_27 = 0xa0;
        var_45 = 0x1c0;
        var_26 = 0x90;
        var_25 = 0x80;
        var_23 = 0x70;
        var_44 = 0x1b0;
        var_22 = 0x60;
        var_24 = 0x50;
        var_43 = 0x1a0;
        var_42 = 400;
        var_41 = 0x180;
        var_40 = 0x170;
        var_39 = 0x160;
        var_38 = 0x150;
        var_37 = 0x140;
        var_36 = 0x130;
        var_35 = 0x120;
        var_34 = 0x110;
        var_33 = 0x100;
        var_32 = 0xf0;
      }
      else {
        var_23 = 0;
        do {
          *(type_6 *)((long)var_17 + var_23 + 0x50) = 4;
          *(type_7 *)((long)var_17 + var_23 + 0x58) =
               *(type_7 *)((long)&(pbVar2->_M_dataplus)._M_p + var_23 * 2);
          var_23 = var_23 + 0x10;
        } while (var_22 << 4 != var_23);
        var_48 = (int)var_22 + 0x1e;
        var_24 = (long)((int)var_22 + 5) * 0x10;
        var_32 = var_24 + 0xa0;
        var_22 = var_24 + 0x10;
        var_33 = var_24 + 0xb0;
        var_23 = var_24 + 0x20;
        var_34 = var_24 + 0xc0;
        var_25 = var_24 + 0x30;
        var_35 = var_24 + 0xd0;
        var_26 = var_24 + 0x40;
        var_36 = var_24 + 0xe0;
        var_27 = var_24 + 0x50;
        var_28 = var_24 + 0x60;
        var_37 = var_24 + 0xf0;
        var_38 = var_24 + 0x100;
        var_29 = var_24 + 0x70;
        var_39 = var_24 + 0x110;
        var_30 = var_24 + 0x80;
        var_40 = var_24 + 0x120;
        var_31 = var_24 + 0x90;
        var_41 = var_24 + 0x130;
        var_47 = var_24 + 400;
        var_42 = var_24 + 0x140;
        var_43 = var_24 + 0x150;
        var_44 = var_24 + 0x160;
        var_45 = var_24 + 0x170;
        var_46 = var_24 + 0x180;
      }
      *(type_5 **)((type_6 *)(var_24 + (long)var_17) + 2) = register_claim_file;
      *(type_6 *)(var_24 + (long)var_17) = 5;
      *(type_5 **)((type_6 *)(var_22 + (long)var_17) + 2) = register_all_symbols_read;
      *(type_6 *)(var_22 + (long)var_17) = 6;
      *(type_5 **)((type_6 *)(var_23 + (long)var_17) + 2) = register_cleanup;
      *(type_6 *)(var_23 + (long)var_17) = 7;
      *(type_5 **)((type_6 *)(var_25 + (long)var_17) + 2) = add_symbols;
      *(type_6 *)(var_25 + (long)var_17) = 8;
      *(type_5 **)((type_6 *)(var_26 + (long)var_17) + 2) = get_input_file;
      *(type_6 *)(var_26 + (long)var_17) = 0xc;
      *(type_5 **)((type_6 *)(var_27 + (long)var_17) + 2) = get_view;
      *(type_6 *)(var_27 + (long)var_17) = 0x12;
      *(type_5 **)((type_6 *)(var_28 + (long)var_17) + 2) = release_input_file;
      *(type_6 *)(var_28 + (long)var_17) = 0xd;
      *(type_5 **)((type_6 *)(var_29 + (long)var_17) + 2) = get_symbols;
      *(type_6 *)(var_29 + (long)var_17) = 9;
      *(type_5 **)((type_6 *)(var_30 + (long)var_17) + 2) = get_symbols_v2;
      *(type_6 *)(var_30 + (long)var_17) = 0x19;
      *(type_5 **)((type_6 *)(var_31 + (long)var_17) + 2) = get_symbols_v3;
      *(type_6 *)(var_31 + (long)var_17) = 0x1c;
      *(type_5 **)((type_6 *)(var_32 + (long)var_17) + 2) = add_input_file;
      *(type_6 *)(var_32 + (long)var_17) = 10;
      *(type_5 **)((type_6 *)(var_33 + (long)var_17) + 2) = add_input_library;
      *(type_6 *)(var_33 + (long)var_17) = 0xe;
      *(type_5 **)((type_6 *)(var_34 + (long)var_17) + 2) = set_extra_library_path;
      *(type_6 *)(var_34 + (long)var_17) = 0x10;
      *(type_5 **)((type_6 *)(var_35 + (long)var_17) + 2) = get_input_section_count;
      *(type_6 *)(var_35 + (long)var_17) = 0x13;
      *(type_6 *)(var_36 + (long)var_17) = 0x14;
      *(type_5 **)((type_6 *)(var_36 + (long)var_17) + 2) = get_input_section_type;
      *(type_6 *)(var_37 + (long)var_17) = 0x15;
      *(type_5 **)((type_6 *)(var_37 + (long)var_17) + 2) = get_input_section_name;
      *(type_6 *)(var_38 + (long)var_17) = 0x16;
      *(type_5 **)((type_6 *)(var_38 + (long)var_17) + 2) = get_input_section_contents;
      *(type_6 *)(var_39 + (long)var_17) = 0x17;
      *(type_5 **)((type_6 *)(var_39 + (long)var_17) + 2) = update_section_order;
      *(type_6 *)(var_40 + (long)var_17) = 0x18;
      *(type_5 **)((type_6 *)(var_40 + (long)var_17) + 2) = allow_section_ordering;
      *(type_6 *)(var_41 + (long)var_17) = 0x1a;
      *(type_5 **)((type_6 *)(var_41 + (long)var_17) + 2) = allow_unique_segment_for_sections;
      *(type_6 *)(var_42 + (long)var_17) = 0x1b;
      *(type_5 **)((type_6 *)(var_42 + (long)var_17) + 2) = unique_segment_for_sections;
      *(type_6 *)(var_43 + (long)var_17) = 0x1d;
      *(type_5 **)((type_6 *)(var_43 + (long)var_17) + 2) = get_input_section_alignment;
      *(type_6 *)(var_44 + (long)var_17) = 0x1e;
      *(type_5 **)((type_6 *)(var_44 + (long)var_17) + 2) = get_input_section_size;
      *(type_6 *)(var_45 + (long)var_17) = 0x1f;
      *(type_5 **)((type_6 *)(var_45 + (long)var_17) + 2) = register_new_input;
      *(type_6 *)(var_46 + (long)var_17) = 0x20;
      *(type_5 **)((type_6 *)(var_46 + (long)var_17) + 2) = get_wrap_symbols;
      *(type_6 *)(var_47 + (long)var_17) = 0;
      ((type_6 *)(var_47 + (long)var_17))[2] = 0;
      if (var_13 + 0x1e != var_48) {
                    /* WARNING: Subroutine does not return */
        var_21("../../gold/plugin.cc",0x174,"load");
      }
      (*var_7)(var_17);
      var_49(var_17);
    }
  }
  return;
}


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

void MASKED(long *param_1)

{
  int iVar1;
  undefined *puVar2;
  long lVar3;
  code *pcVar4;
  char *__s;
  undefined4 *puVar5;
  long lVar6;
  undefined8 uVar7;
  undefined8 uVar8;
  long lVar9;
  long lVar10;
  long lVar11;
  ulong uVar12;
  long lVar13;
  long lVar14;
  long lVar15;
  long lVar16;
  long lVar17;
  long lVar18;
  long local_c8;
  long local_c0;
  long local_b8;
  long local_b0;
  long local_a8;
  long local_a0;
  long local_98;
  long local_90;
  long local_88;
  long local_80;
  long local_78;
  long local_70;
  long local_68;
  long local_60;
  long local_58;
  int local_4c;
  int local_40;
  int local_3c [3];
  
  lVar3 = dlopen(param_1[1],2);
  *param_1 = lVar3;
  if (lVar3 == 0) {
    uVar8 = dlerror();
    lVar3 = param_1[1];
    uVar7 = gettext("%s: could not load plugin library: %s");
    FUN_0034a750(uVar7,lVar3,uVar8);
  }
  else {
    pcVar4 = (code *)dlsym(lVar3,"onload");
    if (pcVar4 == (code *)0x0) {
      lVar3 = param_1[1];
      uVar8 = gettext("%s: could not find onload entry point");
      FUN_0034a750(uVar8,lVar3);
    }
    else {
      __s = (char *)FUN_0045b850();
      local_40 = 0;
      local_3c[0] = 0;
      sscanf(__s,"%d.%d",&local_40,local_3c);
      iVar1 = (int)(param_1[6] - param_1[5] >> 5);
      uVar12 = (ulong)(iVar1 + 0x1f);
      if (0x7ffffffffffffff < uVar12) {
                    /* WARNING: Subroutine does not return */
        FUN_0049ddb0();
      }
      puVar5 = (undefined4 *)thunk_FUN_0049cb70(uVar12 << 4);
      *puVar5 = 0xb;
      *(code **)(puVar5 + 2) = FUN_00406940;
      puVar5[4] = 1;
      puVar5[10] = local_40 * 100 + local_3c[0];
      puVar2 = PTR_DAT_0067cb08;
      puVar5[6] = 1;
      lVar3 = *(long *)(puVar2 + 0x10);
      puVar5[8] = 2;
      puVar5[0xc] = 3;
      if (lVar3 == 0) {
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/parameters.h",0x5c,"options");
      }
      if (*(char *)(lVar3 + 0x5051) == '\0') {
        if (*(char *)(lVar3 + 0x2a61) == '\0') {
          if (*(char *)(lVar3 + 0x42d1) == '\0') {
            puVar5[0xe] = 1;
          }
          else {
            puVar5[0xe] = 3;
          }
        }
        else {
          puVar5[0xe] = 2;
        }
      }
      else {
        puVar5[0xe] = 0;
      }
      lVar18 = param_1[5];
      lVar9 = param_1[6];
      puVar5[0x10] = 0xf;
      lVar9 = lVar9 - lVar18 >> 5;
      *(undefined8 *)(puVar5 + 0x12) = *(undefined8 *)(lVar3 + 0x4058);
      if (lVar9 == 0) {
        lVar10 = 0x1e0;
        lVar11 = 0xe0;
        local_4c = 0x1e;
        lVar13 = 0xd0;
        local_58 = 0x1d0;
        lVar14 = 0xc0;
        lVar15 = 0xb0;
        lVar16 = 0xa0;
        local_60 = 0x1c0;
        lVar17 = 0x90;
        lVar9 = 0x80;
        lVar18 = 0x70;
        local_68 = 0x1b0;
        lVar3 = 0x60;
        lVar6 = 0x50;
        local_70 = 0x1a0;
        local_78 = 400;
        local_80 = 0x180;
        local_88 = 0x170;
        local_90 = 0x160;
        local_98 = 0x150;
        local_a0 = 0x140;
        local_a8 = 0x130;
        local_b0 = 0x120;
        local_b8 = 0x110;
        local_c0 = 0x100;
        local_c8 = 0xf0;
      }
      else {
        lVar3 = 0;
        do {
          *(undefined4 *)((long)puVar5 + lVar3 + 0x50) = 4;
          *(undefined8 *)((long)puVar5 + lVar3 + 0x58) = *(undefined8 *)(lVar18 + lVar3 * 2);
          lVar3 = lVar3 + 0x10;
        } while (lVar9 << 4 != lVar3);
        local_4c = (int)lVar9 + 0x1e;
        lVar6 = (long)((int)lVar9 + 5) * 0x10;
        local_c8 = lVar6 + 0xa0;
        lVar3 = lVar6 + 0x10;
        local_c0 = lVar6 + 0xb0;
        lVar18 = lVar6 + 0x20;
        local_b8 = lVar6 + 0xc0;
        lVar9 = lVar6 + 0x30;
        local_b0 = lVar6 + 0xd0;
        lVar17 = lVar6 + 0x40;
        local_a8 = lVar6 + 0xe0;
        lVar16 = lVar6 + 0x50;
        lVar15 = lVar6 + 0x60;
        local_a0 = lVar6 + 0xf0;
        local_98 = lVar6 + 0x100;
        lVar14 = lVar6 + 0x70;
        local_90 = lVar6 + 0x110;
        lVar13 = lVar6 + 0x80;
        local_88 = lVar6 + 0x120;
        lVar11 = lVar6 + 0x90;
        local_80 = lVar6 + 0x130;
        lVar10 = lVar6 + 400;
        local_78 = lVar6 + 0x140;
        local_70 = lVar6 + 0x150;
        local_68 = lVar6 + 0x160;
        local_60 = lVar6 + 0x170;
        local_58 = lVar6 + 0x180;
      }
      *(code **)((undefined4 *)(lVar6 + (long)puVar5) + 2) = FUN_00406d00;
      *(undefined4 *)(lVar6 + (long)puVar5) = 5;
      *(code **)((undefined4 *)(lVar3 + (long)puVar5) + 2) = FUN_00406c80;
      *(undefined4 *)(lVar3 + (long)puVar5) = 6;
      *(code **)((undefined4 *)(lVar18 + (long)puVar5) + 2) = FUN_00406c00;
      *(undefined4 *)(lVar18 + (long)puVar5) = 7;
      *(code **)((undefined4 *)(lVar9 + (long)puVar5) + 2) = FUN_00409d70;
      *(undefined4 *)(lVar9 + (long)puVar5) = 8;
      *(code **)((undefined4 *)(lVar17 + (long)puVar5) + 2) = FUN_00407db0;
      *(undefined4 *)(lVar17 + (long)puVar5) = 0xc;
      *(code **)((undefined4 *)(lVar16 + (long)puVar5) + 2) = FUN_004085f0;
      *(undefined4 *)(lVar16 + (long)puVar5) = 0x12;
      *(code **)((undefined4 *)(lVar15 + (long)puVar5) + 2) = FUN_00407e90;
      *(undefined4 *)(lVar15 + (long)puVar5) = 0xd;
      *(code **)((undefined4 *)(lVar14 + (long)puVar5) + 2) = FUN_00409940;
      *(undefined4 *)(lVar14 + (long)puVar5) = 9;
      *(code **)((undefined4 *)(lVar13 + (long)puVar5) + 2) = FUN_00409890;
      *(undefined4 *)(lVar13 + (long)puVar5) = 0x19;
      *(code **)((undefined4 *)(lVar11 + (long)puVar5) + 2) = FUN_004097e0;
      *(undefined4 *)(lVar11 + (long)puVar5) = 0x1c;
      *(code **)((undefined4 *)(local_c8 + (long)puVar5) + 2) = FUN_0040a4e0;
      *(undefined4 *)(local_c8 + (long)puVar5) = 10;
      *(code **)((undefined4 *)(local_c0 + (long)puVar5) + 2) = FUN_0040a470;
      *(undefined4 *)(local_c0 + (long)puVar5) = 0xe;
      *(code **)((undefined4 *)(local_b8 + (long)puVar5) + 2) = FUN_00408c50;
      *(undefined4 *)(local_b8 + (long)puVar5) = 0x10;
      *(code **)((undefined4 *)(local_b0 + (long)puVar5) + 2) = FUN_00408210;
      *(undefined4 *)(local_b0 + (long)puVar5) = 0x13;
      *(undefined4 *)(local_a8 + (long)puVar5) = 0x14;
      *(code **)((undefined4 *)(local_a8 + (long)puVar5) + 2) = FUN_00408170;
      *(undefined4 *)(local_a0 + (long)puVar5) = 0x15;
      *(code **)((undefined4 *)(local_a0 + (long)puVar5) + 2) = FUN_00408410;
      *(undefined4 *)(local_98 + (long)puVar5) = 0x16;
      *(code **)((undefined4 *)(local_98 + (long)puVar5) + 2) = FUN_00408070;
      *(undefined4 *)(local_90 + (long)puVar5) = 0x17;
      *(code **)((undefined4 *)(local_90 + (long)puVar5) + 2) = FUN_0040a600;
      *(undefined4 *)(local_88 + (long)puVar5) = 0x18;
      *(code **)((undefined4 *)(local_88 + (long)puVar5) + 2) = FUN_00406b10;
      *(undefined4 *)(local_80 + (long)puVar5) = 0x1a;
      *(code **)((undefined4 *)(local_80 + (long)puVar5) + 2) = FUN_00406aa0;
      *(undefined4 *)(local_78 + (long)puVar5) = 0x1b;
      *(code **)((undefined4 *)(local_78 + (long)puVar5) + 2) = FUN_00408290;
      *(undefined4 *)(local_70 + (long)puVar5) = 0x1d;
      *(code **)((undefined4 *)(local_70 + (long)puVar5) + 2) = FUN_00407fd0;
      *(undefined4 *)(local_68 + (long)puVar5) = 0x1e;
      *(code **)((undefined4 *)(local_68 + (long)puVar5) + 2) = FUN_00407f30;
      *(undefined4 *)(local_60 + (long)puVar5) = 0x1f;
      *(code **)((undefined4 *)(local_60 + (long)puVar5) + 2) = FUN_00406b80;
      *(undefined4 *)(local_58 + (long)puVar5) = 0x20;
      *(code **)((undefined4 *)(local_58 + (long)puVar5) + 2) = FUN_00406850;
      *(undefined4 *)(lVar10 + (long)puVar5) = 0;
      ((undefined4 *)(lVar10 + (long)puVar5))[2] = 0;
      if (iVar1 + 0x1e != local_4c) {
                    /* WARNING: Subroutine does not return */
        FUN_00352af0("../../gold/plugin.cc",0x174,&DAT_0057d121);
      }
      (*pcVar4)(puVar5);
      thunk_FUN_0049e340(puVar5);
    }
  }
  return;
}

