
/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* WARNING: Enum "STT": Some values do not have unique names */
/* DWARF original prototype: uint64_t value(Binary_lshift * this, Expression_eval_info * eei) */

uint64_t __thiscall gold::Binary_lshift::value(Binary_lshift *this,Expression_eval_info *eei)

{
  uint64_t right_alignment;
  uint64_t left_alignment;
  Output_section *right_section;
  Output_section *left_section;
  
  left_alignment._4_4_ = 0;
                    /* WARNING: Subroutine does not return */
  left_alignment._0_4_ = 0;
  Expression::eval_maybe_dot
            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,
             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,
             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);
}



ulonglong FUN_003036f4(int param_1,undefined4 *param_2)

{
  undefined *puVar1;
  int iVar2;
  undefined4 uVar3;
  uint uVar4;
  uint extraout_v1;
  uint extraout_v1_00;
  undefined *puVar5;
  undefined4 *puVar6;
  undefined *puVar7;
  code *pcVar8;
  undefined8 uVar9;
  ulonglong uVar10;
  undefined4 in_stack_ffffff14;
  undefined4 uStack_b8;
  undefined4 uStack_b4;
  undefined4 uStack_b0;
  undefined4 uStack_ac;
  int iStack_a8;
  int iStack_a4;
  uint uStack_a0;
  uint uStack_9c;
  int iStack_98;
  undefined *puStack_94;
  int iStack_90;
  undefined4 uStack_8c;
  undefined4 uStack_88;
  code *pcStack_84;
  undefined4 in_stack_ffffff94;
  undefined4 local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  int local_28;
  int local_24;
  
  puVar1 = PTR_eval_maybe_dot_004c27d8;
  local_2c = 0;
  local_30 = 0;
  uVar9 = gold::Expression::eval_maybe_dot
                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),
                     *(bool *)(param_2 + 2),
                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),
                     (Output_section *)param_2[4],(Output_section **)param_2[5],
                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,
                     (bool *)0x0);
  iVar2 = (int)((ulonglong)uVar9 >> 0x20);
  uVar4 = (uint)uVar9;
  local_34 = 0;
  local_38 = 0;
  gold::Expression::eval_maybe_dot
            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),
             *(bool *)(param_2 + 2),
             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),
             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],
             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);
  if ((local_24 != 0) || (local_28 != 0)) {
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      puVar6 = (undefined4 *)&DAT_0000005c;
      pcVar8 = FUN_0030390c;
      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;
      puVar7 = PTR_do_gold_unreachable_004c1a30;
      (*(code *)PTR_do_gold_unreachable_004c1a30)
                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);
      puStack_94 = puVar1;
      uStack_88 = 0;
      uStack_8c = 0;
      uStack_ac = 0;
      uStack_b0 = 0;
      uStack_a0 = extraout_v1;
      uStack_9c = uVar4;
      iStack_98 = iVar2;
      iStack_90 = param_1;
      pcStack_84 = pcVar8;
      uVar9 = gold::Expression::eval_maybe_dot
                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),
                         *(bool *)(puVar6 + 2),
                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),
                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],
                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,
                         false,(bool *)0x0);
      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);
      uStack_b4 = 0;
      uStack_b8 = 0;
      gold::Expression::eval_maybe_dot
                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),
                 *(bool *)(puVar6 + 2),
                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),
                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],
                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);
      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {
        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {
          uVar10 = (**(code **)(puVar7 + 0x1be124))
                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,
                              *(int *)(puVar7 + 0x1be010) + 0x7f10);
          return uVar10;
        }
        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {
          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);
          (**(code **)(puVar7 + 0x1be3c4))(uVar3);
        }
      }
      if ((extraout_v1_00 & 0x20) == 0) {
        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),
                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |
                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));
      }
      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));
    }
    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {
      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);
      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);
    }
  }
  if ((extraout_v1 & 0x20) == 0) {
    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),
                    uVar4 << (extraout_v1 & 0x1f));
  }
  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;
}


lui gp,0x1c
addiu gp,gp,0x5b4c
addu gp,gp,t9
addiu sp,sp,-0x80
addiu v0,sp,0x50
sw zero,0x38(sp)
sw v0,0x28(sp)
addiu v0,sp,0x5c
sw zero,0x34(sp)
sw zero,0x30(sp)
sw v0,0x24(sp)
sw zero,0x2c(sp)
sw s3,0x6c(sp)
sw s4,0x70(sp)
or s4,a0,zero
sw s0,0x60(sp)
or s0,a1,zero
sw s7,0x78(sp)
or s7,zero,zero
sw s6,0x74(sp)
or s6,zero,zero
sw gp,0x40(sp)
sw ra,0x7c(sp)
sw s2,0x68(sp)
sw s1,0x64(sp)
sw s7,0x54(sp)
lw s3,-0x6a68(gp)
lw t2,0x30(a1)
lw t1,0x14(a1)
lw t0,0x10(a1)
or t9,s3,zero
lbu a3,0x8(a1)
lw a2,0x4(a1)
lw v1,0x18(a1)
lbu v0,0x9(a1)
lw a0,0x4(a0)
lw a1,0x0(a1)
sw t2,0x3c(sp)
sw t1,0x1c(sp)
sw t0,0x18(sp)
sw v1,0x20(sp)
sw v0,0x10(sp)
bal 0x002fdec8
_sw s6,0x50(sp)
or t9,s3,zero
or s1,v1,zero
lw t3,0x30(s0)
addiu v1,sp,0x48
lw t2,0x18(s0)
lw t1,0x14(s0)
or s2,v0,zero
lw t0,0x10(s0)
lbu v0,0x9(s0)
lbu a3,0x8(s0)
lw a2,0x4(s0)
lw a1,0x0(s0)
lw a0,0x8(s4)
sw v1,0x28(sp)
addiu v1,sp,0x58
sw t3,0x3c(sp)
sw zero,0x38(sp)
sw zero,0x34(sp)
sw zero,0x30(sp)
sw zero,0x2c(sp)
sw v1,0x24(sp)
sw t2,0x20(sp)
sw t1,0x1c(sp)
sw t0,0x18(sp)
sw v0,0x10(sp)
sw s7,0x4c(sp)
bal 0x002fdec8
_sw s6,0x48(sp)
lw v0,0x5c(sp)
or s0,v1,zero
beq v0,zero,0x003038e0
_lw gp,0x40(sp)
lw v0,-0x788c(gp)
lw v0,0x0(v0)
lw v0,0x8(v0)
beq v0,zero,0x003038f4
_lw a2,-0x7924(gp)
lbu v0,0x3195(v0)
bne v0,zero,0x003038bc
_lw a0,-0x7924(gp)
andi v0,s0,0x20
beq v0,zero,0x00303880
_srl a0,s1,0x1
lw ra,0x7c(sp)
sllv v0,s1,s0
lw s7,0x78(sp)
or v1,zero,zero
lw s6,0x74(sp)
lw s4,0x70(sp)
lw s3,0x6c(sp)
lw s2,0x68(sp)
lw s1,0x64(sp)
lw s0,0x60(sp)
jr ra
_addiu sp,sp,0x80
lw ra,0x7c(sp)
nor v0,zero,s0
lw s7,0x78(sp)
srlv a0,a0,v0
lw s6,0x74(sp)
sllv v0,s2,s0
lw s4,0x70(sp)
sllv v1,s1,s0
lw s3,0x6c(sp)
lw s2,0x68(sp)
or v0,a0,v0
lw s1,0x64(sp)
lw s0,0x60(sp)
jr ra
_addiu sp,sp,0x80
lw t9,-0x3610(gp)
jalr t9
_addiu a0,a0,0x7b30
lw gp,0x40(sp)
lw t9,-0x7570(gp)
jalr t9
_or a0,v0,zero
b 0x00303848
_andi v0,s0,0x20
lw v0,0x58(sp)
bne v0,zero,0x00303824
_andi v0,s0,0x20
b 0x00303848
_nop
li a1,0x5c
lw a0,-0x7fc4(gp)
lw t9,-0x7810(gp)
addiu a2,a2,0x7f10
jalr t9
_addiu a0,a0,-0x9b8
(translation_unit "ulonglong FUN_003036f4(int param_1,undefined4 *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}\n\n" (function_definition "ulonglong FUN_003036f4(int param_1,undefined4 *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" type_identifier (function_declarator "FUN_003036f4(int param_1,undefined4 *param_2)" identifier (parameter_list "(int param_1,undefined4 *param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint extraout_v1;" type_identifier identifier ;) (declaration "uint extraout_v1_00;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (declaration "undefined8 uVar9;" type_identifier identifier ;) (declaration "ulonglong uVar10;" type_identifier identifier ;) (declaration "undefined4 in_stack_ffffff14;" type_identifier identifier ;) (declaration "undefined4 uStack_b8;" type_identifier identifier ;) (declaration "undefined4 uStack_b4;" type_identifier identifier ;) (declaration "undefined4 uStack_b0;" type_identifier identifier ;) (declaration "undefined4 uStack_ac;" type_identifier identifier ;) (declaration "int iStack_a8;" primitive_type identifier ;) (declaration "int iStack_a4;" primitive_type identifier ;) (declaration "uint uStack_a0;" type_identifier identifier ;) (declaration "uint uStack_9c;" type_identifier identifier ;) (declaration "int iStack_98;" primitive_type identifier ;) (declaration "undefined *puStack_94;" type_identifier (pointer_declarator "*puStack_94" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "undefined4 uStack_8c;" type_identifier identifier ;) (declaration "undefined4 uStack_88;" type_identifier identifier ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "undefined4 in_stack_ffffff94;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "int local_28;" primitive_type identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_eval_maybe_dot_004c27d8;" (assignment_expression "puVar1 = PTR_eval_maybe_dot_004c27d8" identifier = identifier) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" identifier = number_literal) ;) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" identifier = identifier) : :) (labeled_statement "Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" (call_expression "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(param_1 + 4)" * (cast_expression "(Symbol_table **)(param_1 + 4)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) , (cast_expression "(Layout *)*param_2" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (call_expression "SUB41(param_2[1],0)" identifier (argument_list "(param_2[1],0)" ( (subscript_expression "param_2[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(param_2 + 2)" * (cast_expression "(bool *)(param_2 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 2)" ( (binary_expression "param_2 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" identifier (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (pointer_expression "*(undefined1 *)((int)param_2 + 9)" * (cast_expression "(undefined1 *)((int)param_2 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_2 + 9)" ( (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)param_2[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)param_2[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)param_2[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&local_24" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_24" & identifier)) , (cast_expression "(STV *)&local_30" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_30" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;)) (expression_statement "iVar2 = (int)((ulonglong)uVar9 >> 0x20);" (assignment_expression "iVar2 = (int)((ulonglong)uVar9 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)uVar9 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar9 >> 0x20)" ( (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar4 = (uint)uVar9;" (assignment_expression "uVar4 = (uint)uVar9" identifier = (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (labeled_statement "gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (labeled_statement "Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(param_1 + 8)" * (cast_expression "(Symbol_table **)(param_1 + 8)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) , (cast_expression "(Layout *)*param_2" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (call_expression "SUB41(param_2[1],0)" identifier (argument_list "(param_2[1],0)" ( (subscript_expression "param_2[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(param_2 + 2)" * (cast_expression "(bool *)(param_2 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 2)" ( (binary_expression "param_2 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" identifier (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (pointer_expression "*(undefined1 *)((int)param_2 + 9)" * (cast_expression "(undefined1 *)((int)param_2 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_2 + 9)" ( (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)param_2[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)param_2[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)param_2[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&local_28" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_28" & identifier)) , (cast_expression "(STV *)&local_38" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_38" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;))) (if_statement "if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" if (parenthesized_expression "((local_24 != 0) || (local_28 != 0))" ( (binary_expression "(local_24 != 0) || (local_28 != 0)" (parenthesized_expression "(local_24 != 0)" ( (binary_expression "local_24 != 0" identifier != number_literal) )) || (parenthesized_expression "(local_28 != 0)" ( (binary_expression "local_28 != 0" identifier != number_literal) ))) )) (compound_statement "{\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" { (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" { (expression_statement "puVar6 = (undefined4 *)&DAT_0000005c;" (assignment_expression "puVar6 = (undefined4 *)&DAT_0000005c" identifier = (cast_expression "(undefined4 *)&DAT_0000005c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000005c" & identifier))) ;) (expression_statement "pcVar8 = FUN_0030390c;" (assignment_expression "pcVar8 = FUN_0030390c" identifier = identifier) ;) (expression_statement "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier = (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier + number_literal)) ;) (expression_statement "puVar7 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar7 = PTR_do_gold_unreachable_004c1a30" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" ( identifier , number_literal , (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7f10" identifier + number_literal) ))) ;) (expression_statement "puStack_94 = puVar1;" (assignment_expression "puStack_94 = puVar1" identifier = identifier) ;) (expression_statement "uStack_88 = 0;" (assignment_expression "uStack_88 = 0" identifier = number_literal) ;) (expression_statement "uStack_8c = 0;" (assignment_expression "uStack_8c = 0" identifier = number_literal) ;) (expression_statement "uStack_ac = 0;" (assignment_expression "uStack_ac = 0" identifier = number_literal) ;) (expression_statement "uStack_b0 = 0;" (assignment_expression "uStack_b0 = 0" identifier = number_literal) ;) (expression_statement "uStack_a0 = extraout_v1;" (assignment_expression "uStack_a0 = extraout_v1" identifier = identifier) ;) (expression_statement "uStack_9c = uVar4;" (assignment_expression "uStack_9c = uVar4" identifier = identifier) ;) (expression_statement "iStack_98 = iVar2;" (assignment_expression "iStack_98 = iVar2" identifier = identifier) ;) (expression_statement "iStack_90 = param_1;" (assignment_expression "iStack_90 = param_1" identifier = identifier) ;) (expression_statement "pcStack_84 = pcVar8;" (assignment_expression "pcStack_84 = pcVar8" identifier = identifier) ;) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" identifier = identifier) : :) (labeled_statement "Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(puVar5 + 4)" * (cast_expression "(Symbol_table **)(puVar5 + 4)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 4)" ( (binary_expression "puVar5 + 4" identifier + number_literal) )))) , (cast_expression "(Layout *)*puVar6" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier)) , (call_expression "SUB41(puVar6[1],0)" identifier (argument_list "(puVar6[1],0)" ( (subscript_expression "puVar6[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(puVar6 + 2)" * (cast_expression "(bool *)(puVar6 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 2)" ( (binary_expression "puVar6 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" identifier (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" * (cast_expression "(undefined1 *)((int)puVar6 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar6 + 9)" ( (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)puVar6[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)puVar6[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar6[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)puVar6[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&iStack_a4" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&iStack_a4" & identifier)) , (cast_expression "(STV *)&uStack_b0" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_b0" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;)) (expression_statement "uVar4 = (uint)((ulonglong)uVar9 >> 0x20);" (assignment_expression "uVar4 = (uint)((ulonglong)uVar9 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar9 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar9 >> 0x20)" ( (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uStack_b4 = 0;" (assignment_expression "uStack_b4 = 0" identifier = number_literal) ;) (expression_statement "uStack_b8 = 0;" (assignment_expression "uStack_b8 = 0" identifier = number_literal) ;) (labeled_statement "gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (labeled_statement "Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(puVar5 + 8)" * (cast_expression "(Symbol_table **)(puVar5 + 8)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 8)" ( (binary_expression "puVar5 + 8" identifier + number_literal) )))) , (cast_expression "(Layout *)*puVar6" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier)) , (call_expression "SUB41(puVar6[1],0)" identifier (argument_list "(puVar6[1],0)" ( (subscript_expression "puVar6[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(puVar6 + 2)" * (cast_expression "(bool *)(puVar6 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 2)" ( (binary_expression "puVar6 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" identifier (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" * (cast_expression "(undefined1 *)((int)puVar6 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar6 + 9)" ( (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)puVar6[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)puVar6[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar6[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)puVar6[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&iStack_a8" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&iStack_a8" & identifier)) , (cast_expression "(STV *)&uStack_b8" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_b8" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;))) (if_statement "if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" if (parenthesized_expression "((iStack_a4 != 0) || (iStack_a8 != 0))" ( (binary_expression "(iStack_a4 != 0) || (iStack_a8 != 0)" (parenthesized_expression "(iStack_a4 != 0)" ( (binary_expression "iStack_a4 != 0" identifier != number_literal) )) || (parenthesized_expression "(iStack_a8 != 0)" ( (binary_expression "iStack_a8 != 0" identifier != number_literal) ))) )) (compound_statement "{\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" { (if_statement "if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" if (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0)" ( (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" * (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" * (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" * (cast_expression "(int **)(puVar7 + 0x1be0a8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be0a8)" ( (binary_expression "puVar7 + 0x1be0a8" identifier + number_literal) ))))) + number_literal) )))) == number_literal) )) (compound_statement "{\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" { (expression_statement "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);" (assignment_expression "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" identifier = (call_expression "(**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be124))" ( (pointer_expression "**(code **)(puVar7 + 0x1be124)" * (pointer_expression "*(code **)(puVar7 + 0x1be124)" * (cast_expression "(code **)(puVar7 + 0x1be124)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be124)" ( (binary_expression "puVar7 + 0x1be124" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" ( (binary_expression "*(int *)(puVar7 + 0x1bd970) + -0x9b8" (pointer_expression "*(int *)(puVar7 + 0x1bd970)" * (cast_expression "(int *)(puVar7 + 0x1bd970)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1bd970)" ( (binary_expression "puVar7 + 0x1bd970" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7f10" (pointer_expression "*(int *)(puVar7 + 0x1be010)" * (cast_expression "(int *)(puVar7 + 0x1be010)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1be010)" ( (binary_expression "puVar7 + 0x1be010" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return uVar10;" return identifier ;) })) (if_statement "if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" if (parenthesized_expression "(*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0')" ( (binary_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" * (cast_expression "(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" ( (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" * (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" * (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" * (cast_expression "(int **)(puVar7 + 0x1be0a8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be0a8)" ( (binary_expression "puVar7 + 0x1be0a8" identifier + number_literal) ))))) + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" { (expression_statement "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);" (assignment_expression "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" identifier = (call_expression "(**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" (parenthesized_expression "(**(code **)(puVar7 + 0x1c2324))" ( (pointer_expression "**(code **)(puVar7 + 0x1c2324)" * (pointer_expression "*(code **)(puVar7 + 0x1c2324)" * (cast_expression "(code **)(puVar7 + 0x1c2324)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1c2324)" ( (binary_expression "puVar7 + 0x1c2324" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar7 + 0x1be010) + 0x7b60)" ( (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7b60" (pointer_expression "*(int *)(puVar7 + 0x1be010)" * (cast_expression "(int *)(puVar7 + 0x1be010)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1be010)" ( (binary_expression "puVar7 + 0x1be010" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar7 + 0x1be3c4))(uVar3);" (call_expression "(**(code **)(puVar7 + 0x1be3c4))(uVar3)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be3c4))" ( (pointer_expression "**(code **)(puVar7 + 0x1be3c4)" * (pointer_expression "*(code **)(puVar7 + 0x1be3c4)" * (cast_expression "(code **)(puVar7 + 0x1be3c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be3c4)" ( (binary_expression "puVar7 + 0x1be3c4" identifier + number_literal) ))))) )) (argument_list "(uVar3)" ( identifier ))) ;) })) })) (if_statement "if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" if (parenthesized_expression "((extraout_v1_00 & 0x20) == 0)" ( (binary_expression "(extraout_v1_00 & 0x20) == 0" (parenthesized_expression "(extraout_v1_00 & 0x20)" ( (binary_expression "extraout_v1_00 & 0x20" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" { (return_statement "return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));" return (call_expression "CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" identifier (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" ( (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" identifier >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) ))) , (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f)" (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f)" (parenthesized_expression "(uVar4 << 1)" ( (binary_expression "uVar4 << 1" identifier << number_literal) )) << (parenthesized_expression "(~extraout_v1_00 & 0x1f)" ( (binary_expression "~extraout_v1_00 & 0x1f" (unary_expression "~extraout_v1_00" ~ identifier) & number_literal) ))) | (binary_expression "(uint)uVar9 >> (extraout_v1_00 & 0x1f)" (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier) >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) )))) ))) ;) })) (return_statement "return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));" return (call_expression "(ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f))" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f))" ( (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" identifier >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) ))) ))) ;) })) (if_statement "if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" if (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0')" ( (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" { (expression_statement "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);" (assignment_expression "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" identifier = (call_expression "(*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" (parenthesized_expression "(*(code *)PTR_gettext_004c5c30)" ( (pointer_expression "*(code *)PTR_gettext_004c5c30" * (cast_expression "(code *)PTR_gettext_004c5c30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_in_a_linker_script_004c191c + 0x7b30)" ( (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7b30" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_gold_warning_004c1cd0)(uVar3);" (call_expression "(*(code *)PTR_gold_warning_004c1cd0)(uVar3)" (parenthesized_expression "(*(code *)PTR_gold_warning_004c1cd0)" ( (pointer_expression "*(code *)PTR_gold_warning_004c1cd0" * (cast_expression "(code *)PTR_gold_warning_004c1cd0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3)" ( identifier ))) ;) })) })) (if_statement "if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" if (parenthesized_expression "((extraout_v1 & 0x20) == 0)" ( (binary_expression "(extraout_v1 & 0x20) == 0" (parenthesized_expression "(extraout_v1 & 0x20)" ( (binary_expression "extraout_v1 & 0x20" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" { (return_statement "return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));" return (call_expression "CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" identifier (argument_list "((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" ( (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f)" (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f)" (parenthesized_expression "(uVar4 >> 1)" ( (binary_expression "uVar4 >> 1" identifier >> number_literal) )) >> (parenthesized_expression "(~extraout_v1 & 0x1f)" ( (binary_expression "~extraout_v1 & 0x1f" (unary_expression "~extraout_v1" ~ identifier) & number_literal) ))) | (binary_expression "iVar2 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) )))) , (binary_expression "uVar4 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) ))) ))) ;) })) (return_statement "return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;" return (binary_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20" (call_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f))" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(uVar4 << (extraout_v1 & 0x1f))" ( (binary_expression "uVar4 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) ))) ))) << number_literal) ;) })))
(translation_unit "/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */\n/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */\n/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */\n/* WARNING: Enum "DT": Some values do not have unique names */\n/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */\n/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */\n/* WARNING: Enum "STT": Some values do not have unique names */\n/* DWARF original prototype: uint64_t value(Binary_lshift * this, Expression_eval_info * eei) */\n\nuint64_t __thiscall gold::Binary_lshift::value(Binary_lshift *this,Expression_eval_info *eei)\n\n{\n  uint64_t right_alignment;\n  uint64_t left_alignment;\n  Output_section *right_section;\n  Output_section *left_section;\n  \n  left_alignment._4_4_ = 0;\n                    /* WARNING: Subroutine does not return */\n  left_alignment._0_4_ = 0;\n  Expression::eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);\n}\n\n" comment comment comment comment comment comment comment comment (function_definition "uint64_t __thiscall gold::Binary_lshift::value(Binary_lshift *this,Expression_eval_info *eei)\n\n{\n  uint64_t right_alignment;\n  uint64_t left_alignment;\n  Output_section *right_section;\n  Output_section *left_section;\n  \n  left_alignment._4_4_ = 0;\n                    /* WARNING: Subroutine does not return */\n  left_alignment._0_4_ = 0;\n  Expression::eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Binary_lshift::" identifier : : identifier : :) (function_declarator "value(Binary_lshift *this,Expression_eval_info *eei)" identifier (parameter_list "(Binary_lshift *this,Expression_eval_info *eei)" ( (parameter_declaration "Binary_lshift *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Expression_eval_info *eei" type_identifier (pointer_declarator "*eei" * identifier)) ))) (compound_statement "{\n  uint64_t right_alignment;\n  uint64_t left_alignment;\n  Output_section *right_section;\n  Output_section *left_section;\n  \n  left_alignment._4_4_ = 0;\n                    /* WARNING: Subroutine does not return */\n  left_alignment._0_4_ = 0;\n  Expression::eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);\n}" { (declaration "uint64_t right_alignment;" primitive_type identifier ;) (declaration "uint64_t left_alignment;" primitive_type identifier ;) (declaration "Output_section *right_section;" type_identifier (pointer_declarator "*right_section" * identifier) ;) (declaration "Output_section *left_section;" type_identifier (pointer_declarator "*left_section" * identifier) ;) (expression_statement "left_alignment._4_4_ = 0;" (assignment_expression "left_alignment._4_4_ = 0" (field_expression "left_alignment._4_4_" identifier . field_identifier) = number_literal) ;) comment (expression_statement "left_alignment._0_4_ = 0;" (assignment_expression "left_alignment._0_4_ = 0" (field_expression "left_alignment._0_4_" identifier . field_identifier) = number_literal) ;) (labeled_statement "Expression::eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer);" (call_expression "eval_maybe_dot\n            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer)" identifier (argument_list "((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,\n             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,\n             (STT *)0x0,(STV *)0x0,(uchar *)0x0,false,eei->is_valid_pointer)" ( (field_expression "(this->super_Binary_expression).left_" (parenthesized_expression "(this->super_Binary_expression)" ( (field_expression "this->super_Binary_expression" identifier -> field_identifier) )) . field_identifier) , (field_expression "eei->symtab" identifier -> field_identifier) , (field_expression "eei->layout" identifier -> field_identifier) , (field_expression "eei->check_assertions" identifier -> field_identifier) , (field_expression "eei->is_dot_available" identifier -> field_identifier) , (field_expression "eei->dot_value" identifier -> field_identifier) , (field_expression "eei->dot_section" identifier -> field_identifier) , (pointer_expression "&left_section" & identifier) , (pointer_expression "&left_alignment" & identifier) , (cast_expression "(STT *)0x0" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(STV *)0x0" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (field_expression "eei->is_valid_pointer" identifier -> field_identifier) ))) ;)) })))
(translation_unit "ulonglong FUN_003036f4(int param_1,undefined4 *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}\n\n" (function_definition "ulonglong FUN_003036f4(int param_1,undefined4 *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" type_identifier (function_declarator "FUN_003036f4(int param_1,undefined4 *param_2)" identifier (parameter_list "(int param_1,undefined4 *param_2)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined4 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "uint extraout_v1;" type_identifier identifier ;) (declaration "uint extraout_v1_00;" type_identifier identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "code *pcVar8;" type_identifier (pointer_declarator "*pcVar8" * identifier) ;) (declaration "undefined8 uVar9;" type_identifier identifier ;) (declaration "ulonglong uVar10;" type_identifier identifier ;) (declaration "undefined4 in_stack_ffffff14;" type_identifier identifier ;) (declaration "undefined4 uStack_b8;" type_identifier identifier ;) (declaration "undefined4 uStack_b4;" type_identifier identifier ;) (declaration "undefined4 uStack_b0;" type_identifier identifier ;) (declaration "undefined4 uStack_ac;" type_identifier identifier ;) (declaration "int iStack_a8;" primitive_type identifier ;) (declaration "int iStack_a4;" primitive_type identifier ;) (declaration "uint uStack_a0;" type_identifier identifier ;) (declaration "uint uStack_9c;" type_identifier identifier ;) (declaration "int iStack_98;" primitive_type identifier ;) (declaration "undefined *puStack_94;" type_identifier (pointer_declarator "*puStack_94" * identifier) ;) (declaration "int iStack_90;" primitive_type identifier ;) (declaration "undefined4 uStack_8c;" type_identifier identifier ;) (declaration "undefined4 uStack_88;" type_identifier identifier ;) (declaration "code *pcStack_84;" type_identifier (pointer_declarator "*pcStack_84" * identifier) ;) (declaration "undefined4 in_stack_ffffff94;" type_identifier identifier ;) (declaration "undefined4 local_38;" type_identifier identifier ;) (declaration "undefined4 local_34;" type_identifier identifier ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "int local_28;" primitive_type identifier ;) (declaration "int local_24;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_eval_maybe_dot_004c27d8;" (assignment_expression "puVar1 = PTR_eval_maybe_dot_004c27d8" identifier = identifier) ;) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" identifier = number_literal) ;) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" identifier = number_literal) ;) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" identifier = identifier) : :) (labeled_statement "Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" (call_expression "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(param_1 + 4)" * (cast_expression "(Symbol_table **)(param_1 + 4)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) )))) , (cast_expression "(Layout *)*param_2" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (call_expression "SUB41(param_2[1],0)" identifier (argument_list "(param_2[1],0)" ( (subscript_expression "param_2[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(param_2 + 2)" * (cast_expression "(bool *)(param_2 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 2)" ( (binary_expression "param_2 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" identifier (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (pointer_expression "*(undefined1 *)((int)param_2 + 9)" * (cast_expression "(undefined1 *)((int)param_2 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_2 + 9)" ( (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)param_2[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)param_2[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)param_2[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&local_24" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_24" & identifier)) , (cast_expression "(STV *)&local_30" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_30" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;)) (expression_statement "iVar2 = (int)((ulonglong)uVar9 >> 0x20);" (assignment_expression "iVar2 = (int)((ulonglong)uVar9 >> 0x20)" identifier = (cast_expression "(int)((ulonglong)uVar9 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)uVar9 >> 0x20)" ( (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uVar4 = (uint)uVar9;" (assignment_expression "uVar4 = (uint)uVar9" identifier = (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" identifier = number_literal) ;) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" identifier = number_literal) ;) (labeled_statement "gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (labeled_statement "Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(param_1 + 8)" * (cast_expression "(Symbol_table **)(param_1 + 8)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) )))) , (cast_expression "(Layout *)*param_2" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*param_2" * identifier)) , (call_expression "SUB41(param_2[1],0)" identifier (argument_list "(param_2[1],0)" ( (subscript_expression "param_2[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(param_2 + 2)" * (cast_expression "(bool *)(param_2 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 2)" ( (binary_expression "param_2 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" identifier (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" ( (pointer_expression "*(undefined1 *)((int)param_2 + 9)" * (cast_expression "(undefined1 *)((int)param_2 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)param_2 + 9)" ( (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)param_2[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)param_2[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "param_2[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)param_2[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&local_28" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_28" & identifier)) , (cast_expression "(STV *)&local_38" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&local_38" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;))) (if_statement "if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" if (parenthesized_expression "((local_24 != 0) || (local_28 != 0))" ( (binary_expression "(local_24 != 0) || (local_28 != 0)" (parenthesized_expression "(local_24 != 0)" ( (binary_expression "local_24 != 0" identifier != number_literal) )) || (parenthesized_expression "(local_28 != 0)" ( (binary_expression "local_28 != 0" identifier != number_literal) ))) )) (compound_statement "{\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" { (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" if (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) == number_literal) )) (compound_statement "{\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" { (expression_statement "puVar6 = (undefined4 *)&DAT_0000005c;" (assignment_expression "puVar6 = (undefined4 *)&DAT_0000005c" identifier = (cast_expression "(undefined4 *)&DAT_0000005c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_0000005c" & identifier))) ;) (expression_statement "pcVar8 = FUN_0030390c;" (assignment_expression "pcVar8 = FUN_0030390c" identifier = identifier) ;) (expression_statement "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier = (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" identifier + number_literal)) ;) (expression_statement "puVar7 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar7 = PTR_do_gold_unreachable_004c1a30" identifier = identifier) ;) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" ( (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" * (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" ( identifier , number_literal , (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7f10" identifier + number_literal) ))) ;) (expression_statement "puStack_94 = puVar1;" (assignment_expression "puStack_94 = puVar1" identifier = identifier) ;) (expression_statement "uStack_88 = 0;" (assignment_expression "uStack_88 = 0" identifier = number_literal) ;) (expression_statement "uStack_8c = 0;" (assignment_expression "uStack_8c = 0" identifier = number_literal) ;) (expression_statement "uStack_ac = 0;" (assignment_expression "uStack_ac = 0" identifier = number_literal) ;) (expression_statement "uStack_b0 = 0;" (assignment_expression "uStack_b0 = 0" identifier = number_literal) ;) (expression_statement "uStack_a0 = extraout_v1;" (assignment_expression "uStack_a0 = extraout_v1" identifier = identifier) ;) (expression_statement "uStack_9c = uVar4;" (assignment_expression "uStack_9c = uVar4" identifier = identifier) ;) (expression_statement "iStack_98 = iVar2;" (assignment_expression "iStack_98 = iVar2" identifier = identifier) ;) (expression_statement "iStack_90 = param_1;" (assignment_expression "iStack_90 = param_1" identifier = identifier) ;) (expression_statement "pcStack_84 = pcVar8;" (assignment_expression "pcStack_84 = pcVar8" identifier = identifier) ;) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" identifier = identifier) : :) (labeled_statement "Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(puVar5 + 4)" * (cast_expression "(Symbol_table **)(puVar5 + 4)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 4)" ( (binary_expression "puVar5 + 4" identifier + number_literal) )))) , (cast_expression "(Layout *)*puVar6" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier)) , (call_expression "SUB41(puVar6[1],0)" identifier (argument_list "(puVar6[1],0)" ( (subscript_expression "puVar6[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(puVar6 + 2)" * (cast_expression "(bool *)(puVar6 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 2)" ( (binary_expression "puVar6 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" identifier (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" * (cast_expression "(undefined1 *)((int)puVar6 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar6 + 9)" ( (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)puVar6[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)puVar6[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar6[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)puVar6[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&iStack_a4" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&iStack_a4" & identifier)) , (cast_expression "(STV *)&uStack_b0" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_b0" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;)) (expression_statement "uVar4 = (uint)((ulonglong)uVar9 >> 0x20);" (assignment_expression "uVar4 = (uint)((ulonglong)uVar9 >> 0x20)" identifier = (call_expression "(uint)((ulonglong)uVar9 >> 0x20)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((ulonglong)uVar9 >> 0x20)" ( (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) )))) ;) (expression_statement "uStack_b4 = 0;" (assignment_expression "uStack_b4 = 0" identifier = number_literal) ;) (expression_statement "uStack_b8 = 0;" (assignment_expression "uStack_b8 = 0" identifier = number_literal) ;) (labeled_statement "gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (labeled_statement "Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" statement_identifier : (ERROR ":" :) (expression_statement "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" identifier (argument_list "(*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" ( (pointer_expression "*(Symbol_table **)(puVar5 + 8)" * (cast_expression "(Symbol_table **)(puVar5 + 8)" ( (type_descriptor "Symbol_table **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 8)" ( (binary_expression "puVar5 + 8" identifier + number_literal) )))) , (cast_expression "(Layout *)*puVar6" ( (type_descriptor "Layout *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar6" * identifier)) , (call_expression "SUB41(puVar6[1],0)" identifier (argument_list "(puVar6[1],0)" ( (subscript_expression "puVar6[1]" identifier [ number_literal ]) , number_literal ))) , (pointer_expression "*(bool *)(puVar6 + 2)" * (cast_expression "(bool *)(puVar6 + 2)" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + 2)" ( (binary_expression "puVar6 + 2" identifier + number_literal) )))) , (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (type_descriptor "ulonglong" type_identifier) ) (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" identifier (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" ( (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" * (cast_expression "(undefined1 *)((int)puVar6 + 9)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar6 + 9)" ( (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) , identifier )))) , (cast_expression "(Output_section *)puVar6[4]" ( (type_descriptor "Output_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[4]" identifier [ number_literal ])) , (cast_expression "(Output_section **)puVar6[5]" ( (type_descriptor "Output_section **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (subscript_expression "puVar6[5]" identifier [ number_literal ])) , (cast_expression "(ulonglong *)puVar6[6]" ( (type_descriptor "ulonglong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar6[6]" identifier [ number_literal ])) , (cast_expression "(STT *)&iStack_a8" ( (type_descriptor "STT *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&iStack_a8" & identifier)) , (cast_expression "(STV *)&uStack_b8" ( (type_descriptor "STV *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&uStack_b8" & identifier)) , (cast_expression "(uchar *)0x0" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) , false , (cast_expression "(bool *)0x0" ( (type_descriptor "bool *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;))) (if_statement "if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" if (parenthesized_expression "((iStack_a4 != 0) || (iStack_a8 != 0))" ( (binary_expression "(iStack_a4 != 0) || (iStack_a8 != 0)" (parenthesized_expression "(iStack_a4 != 0)" ( (binary_expression "iStack_a4 != 0" identifier != number_literal) )) || (parenthesized_expression "(iStack_a8 != 0)" ( (binary_expression "iStack_a8 != 0" identifier != number_literal) ))) )) (compound_statement "{\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" { (if_statement "if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" if (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0)" ( (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" * (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" * (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" * (cast_expression "(int **)(puVar7 + 0x1be0a8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be0a8)" ( (binary_expression "puVar7 + 0x1be0a8" identifier + number_literal) ))))) + number_literal) )))) == number_literal) )) (compound_statement "{\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" { (expression_statement "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);" (assignment_expression "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" identifier = (call_expression "(**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be124))" ( (pointer_expression "**(code **)(puVar7 + 0x1be124)" * (pointer_expression "*(code **)(puVar7 + 0x1be124)" * (cast_expression "(code **)(puVar7 + 0x1be124)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be124)" ( (binary_expression "puVar7 + 0x1be124" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" ( (binary_expression "*(int *)(puVar7 + 0x1bd970) + -0x9b8" (pointer_expression "*(int *)(puVar7 + 0x1bd970)" * (cast_expression "(int *)(puVar7 + 0x1bd970)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1bd970)" ( (binary_expression "puVar7 + 0x1bd970" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7f10" (pointer_expression "*(int *)(puVar7 + 0x1be010)" * (cast_expression "(int *)(puVar7 + 0x1be010)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1be010)" ( (binary_expression "puVar7 + 0x1be010" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return uVar10;" return identifier ;) })) (if_statement "if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" if (parenthesized_expression "(*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0')" ( (binary_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" * (cast_expression "(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" ( (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" * (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" ( (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" * (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" * (cast_expression "(int **)(puVar7 + 0x1be0a8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be0a8)" ( (binary_expression "puVar7 + 0x1be0a8" identifier + number_literal) ))))) + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" { (expression_statement "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);" (assignment_expression "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" identifier = (call_expression "(**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" (parenthesized_expression "(**(code **)(puVar7 + 0x1c2324))" ( (pointer_expression "**(code **)(puVar7 + 0x1c2324)" * (pointer_expression "*(code **)(puVar7 + 0x1c2324)" * (cast_expression "(code **)(puVar7 + 0x1c2324)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1c2324)" ( (binary_expression "puVar7 + 0x1c2324" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar7 + 0x1be010) + 0x7b60)" ( (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7b60" (pointer_expression "*(int *)(puVar7 + 0x1be010)" * (cast_expression "(int *)(puVar7 + 0x1be010)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar7 + 0x1be010)" ( (binary_expression "puVar7 + 0x1be010" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(puVar7 + 0x1be3c4))(uVar3);" (call_expression "(**(code **)(puVar7 + 0x1be3c4))(uVar3)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be3c4))" ( (pointer_expression "**(code **)(puVar7 + 0x1be3c4)" * (pointer_expression "*(code **)(puVar7 + 0x1be3c4)" * (cast_expression "(code **)(puVar7 + 0x1be3c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar7 + 0x1be3c4)" ( (binary_expression "puVar7 + 0x1be3c4" identifier + number_literal) ))))) )) (argument_list "(uVar3)" ( identifier ))) ;) })) })) (if_statement "if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" if (parenthesized_expression "((extraout_v1_00 & 0x20) == 0)" ( (binary_expression "(extraout_v1_00 & 0x20) == 0" (parenthesized_expression "(extraout_v1_00 & 0x20)" ( (binary_expression "extraout_v1_00 & 0x20" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" { (return_statement "return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));" return (call_expression "CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" identifier (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" ( (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" identifier >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) ))) , (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f)" (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f)" (parenthesized_expression "(uVar4 << 1)" ( (binary_expression "uVar4 << 1" identifier << number_literal) )) << (parenthesized_expression "(~extraout_v1_00 & 0x1f)" ( (binary_expression "~extraout_v1_00 & 0x1f" (unary_expression "~extraout_v1_00" ~ identifier) & number_literal) ))) | (binary_expression "(uint)uVar9 >> (extraout_v1_00 & 0x1f)" (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier) >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) )))) ))) ;) })) (return_statement "return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));" return (call_expression "(ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f))" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f))" ( (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" identifier >> (parenthesized_expression "(extraout_v1_00 & 0x1f)" ( (binary_expression "extraout_v1_00 & 0x1f" identifier & number_literal) ))) ))) ;) })) (if_statement "if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" if (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0')" ( (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" * (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" ( (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" * (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" ( (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" * (cast_expression "(int *)PTR_parameters_004c19b4" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) + number_literal) )))) + number_literal) )))) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" { (expression_statement "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);" (assignment_expression "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" identifier = (call_expression "(*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" (parenthesized_expression "(*(code *)PTR_gettext_004c5c30)" ( (pointer_expression "*(code *)PTR_gettext_004c5c30" * (cast_expression "(code *)PTR_gettext_004c5c30" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_in_a_linker_script_004c191c + 0x7b30)" ( (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7b30" identifier + number_literal) )))) ;) (expression_statement "(*(code *)PTR_gold_warning_004c1cd0)(uVar3);" (call_expression "(*(code *)PTR_gold_warning_004c1cd0)(uVar3)" (parenthesized_expression "(*(code *)PTR_gold_warning_004c1cd0)" ( (pointer_expression "*(code *)PTR_gold_warning_004c1cd0" * (cast_expression "(code *)PTR_gold_warning_004c1cd0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(uVar3)" ( identifier ))) ;) })) })) (if_statement "if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" if (parenthesized_expression "((extraout_v1 & 0x20) == 0)" ( (binary_expression "(extraout_v1 & 0x20) == 0" (parenthesized_expression "(extraout_v1 & 0x20)" ( (binary_expression "extraout_v1 & 0x20" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" { (return_statement "return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));" return (call_expression "CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" identifier (argument_list "((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" ( (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f)" (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f)" (parenthesized_expression "(uVar4 >> 1)" ( (binary_expression "uVar4 >> 1" identifier >> number_literal) )) >> (parenthesized_expression "(~extraout_v1 & 0x1f)" ( (binary_expression "~extraout_v1 & 0x1f" (unary_expression "~extraout_v1" ~ identifier) & number_literal) ))) | (binary_expression "iVar2 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) )))) , (binary_expression "uVar4 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) ))) ))) ;) })) (return_statement "return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;" return (binary_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20" (call_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f))" (parenthesized_expression "(ulonglong)" ( identifier )) (argument_list "(uVar4 << (extraout_v1 & 0x1f))" ( (binary_expression "uVar4 << (extraout_v1 & 0x1f)" identifier << (parenthesized_expression "(extraout_v1 & 0x1f)" ( (binary_expression "extraout_v1 & 0x1f" identifier & number_literal) ))) ))) << number_literal) ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (ERROR (assignment_expression IDENT = IDENT) : :) (labeled_statement statement_identifier : (ERROR :) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) , IDENT )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , BOOL , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (ERROR :) (labeled_statement statement_identifier : (ERROR :) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) , IDENT )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , BOOL , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ))) ;))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , LIT , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (ERROR (assignment_expression IDENT = IDENT) : :) (labeled_statement statement_identifier : (ERROR :) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) , IDENT )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , BOOL , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (ERROR :) (labeled_statement statement_identifier : (ERROR :) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT)) , (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , LIT ))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )))) , IDENT )))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT)) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) , BOOL , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT) ))) ;))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (return_statement return IDENT ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) + LIT) )))) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (return_statement return (call_expression IDENT (argument_list ( (binary_expression IDENT >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) , (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT << LIT) )) << (parenthesized_expression ( (binary_expression (unary_expression ~ IDENT) & LIT) ))) | (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ))) ;) })) (return_statement return (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> (parenthesized_expression ( (binary_expression IDENT & LIT) ))) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) + LIT) )))) + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT ))) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (return_statement return (call_expression IDENT (argument_list ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT >> LIT) )) >> (parenthesized_expression ( (binary_expression (unary_expression ~ IDENT) & LIT) ))) | (binary_expression IDENT << (parenthesized_expression ( (binary_expression IDENT & LIT) )))) , (binary_expression IDENT << (parenthesized_expression ( (binary_expression IDENT & LIT) ))) ))) ;) })) (return_statement return (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT << (parenthesized_expression ( (binary_expression IDENT & LIT) ))) ))) << LIT) ;) })))
(function_definition "ulonglong FUN_003036f4(int param_1,undefined4 *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" (type_identifier "ulonglong") (function_declarator "FUN_003036f4(int param_1,undefined4 *param_2)" (identifier "FUN_003036f4") (parameter_list "(int param_1,undefined4 *param_2)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 *param_2" (type_identifier "undefined4") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 uVar3;\n  uint uVar4;\n  uint extraout_v1;\n  uint extraout_v1_00;\n  undefined *puVar5;\n  undefined4 *puVar6;\n  undefined *puVar7;\n  code *pcVar8;\n  undefined8 uVar9;\n  ulonglong uVar10;\n  undefined4 in_stack_ffffff14;\n  undefined4 uStack_b8;\n  undefined4 uStack_b4;\n  undefined4 uStack_b0;\n  undefined4 uStack_ac;\n  int iStack_a8;\n  int iStack_a4;\n  uint uStack_a0;\n  uint uStack_9c;\n  int iStack_98;\n  undefined *puStack_94;\n  int iStack_90;\n  undefined4 uStack_8c;\n  undefined4 uStack_88;\n  code *pcStack_84;\n  undefined4 in_stack_ffffff94;\n  undefined4 local_38;\n  undefined4 local_34;\n  undefined4 local_30;\n  undefined4 local_2c;\n  int local_28;\n  int local_24;\n  \n  puVar1 = PTR_eval_maybe_dot_004c27d8;\n  local_2c = 0;\n  local_30 = 0;\n  uVar9 = gold::Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);\n  iVar2 = (int)((ulonglong)uVar9 >> 0x20);\n  uVar4 = (uint)uVar9;\n  local_34 = 0;\n  local_38 = 0;\n  gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);\n  if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }\n  if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }\n  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "uint extraout_v1;" (type_identifier "uint") (identifier "extraout_v1") (; ";")) (declaration "uint extraout_v1_00;" (type_identifier "uint") (identifier "extraout_v1_00") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "undefined *puVar7;" (type_identifier "undefined") (pointer_declarator "*puVar7" (* "*") (identifier "puVar7")) (; ";")) (declaration "code *pcVar8;" (type_identifier "code") (pointer_declarator "*pcVar8" (* "*") (identifier "pcVar8")) (; ";")) (declaration "undefined8 uVar9;" (type_identifier "undefined8") (identifier "uVar9") (; ";")) (declaration "ulonglong uVar10;" (type_identifier "ulonglong") (identifier "uVar10") (; ";")) (declaration "undefined4 in_stack_ffffff14;" (type_identifier "undefined4") (identifier "in_stack_ffffff14") (; ";")) (declaration "undefined4 uStack_b8;" (type_identifier "undefined4") (identifier "uStack_b8") (; ";")) (declaration "undefined4 uStack_b4;" (type_identifier "undefined4") (identifier "uStack_b4") (; ";")) (declaration "undefined4 uStack_b0;" (type_identifier "undefined4") (identifier "uStack_b0") (; ";")) (declaration "undefined4 uStack_ac;" (type_identifier "undefined4") (identifier "uStack_ac") (; ";")) (declaration "int iStack_a8;" (primitive_type "int") (identifier "iStack_a8") (; ";")) (declaration "int iStack_a4;" (primitive_type "int") (identifier "iStack_a4") (; ";")) (declaration "uint uStack_a0;" (type_identifier "uint") (identifier "uStack_a0") (; ";")) (declaration "uint uStack_9c;" (type_identifier "uint") (identifier "uStack_9c") (; ";")) (declaration "int iStack_98;" (primitive_type "int") (identifier "iStack_98") (; ";")) (declaration "undefined *puStack_94;" (type_identifier "undefined") (pointer_declarator "*puStack_94" (* "*") (identifier "puStack_94")) (; ";")) (declaration "int iStack_90;" (primitive_type "int") (identifier "iStack_90") (; ";")) (declaration "undefined4 uStack_8c;" (type_identifier "undefined4") (identifier "uStack_8c") (; ";")) (declaration "undefined4 uStack_88;" (type_identifier "undefined4") (identifier "uStack_88") (; ";")) (declaration "code *pcStack_84;" (type_identifier "code") (pointer_declarator "*pcStack_84" (* "*") (identifier "pcStack_84")) (; ";")) (declaration "undefined4 in_stack_ffffff94;" (type_identifier "undefined4") (identifier "in_stack_ffffff94") (; ";")) (declaration "undefined4 local_38;" (type_identifier "undefined4") (identifier "local_38") (; ";")) (declaration "undefined4 local_34;" (type_identifier "undefined4") (identifier "local_34") (; ";")) (declaration "undefined4 local_30;" (type_identifier "undefined4") (identifier "local_30") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (declaration "int local_28;" (primitive_type "int") (identifier "local_28") (; ";")) (declaration "int local_24;" (primitive_type "int") (identifier "local_24") (; ";")) (expression_statement "puVar1 = PTR_eval_maybe_dot_004c27d8;" (assignment_expression "puVar1 = PTR_eval_maybe_dot_004c27d8" (identifier "puVar1") (= "=") (identifier "PTR_eval_maybe_dot_004c27d8")) (; ";")) (expression_statement "local_2c = 0;" (assignment_expression "local_2c = 0" (identifier "local_2c") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_30 = 0;" (assignment_expression "local_30 = 0" (identifier "local_30") (= "=") (number_literal "0")) (; ";")) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" (identifier "uVar9") (= "=") (identifier "gold")) (: ":") (: ":")) (labeled_statement "Expression::eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" (statement_identifier "Expression") (: ":") (ERROR ":" (: ":")) (expression_statement "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0);" (call_expression "eval_maybe_dot\n                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" (identifier "eval_maybe_dot") (argument_list "(*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),\n                     *(bool *)(param_2 + 2),\n                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n                     (Output_section *)param_2[4],(Output_section **)param_2[5],\n                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,\n                     (bool *)0x0)" (( "(") (pointer_expression "*(Symbol_table **)(param_1 + 4)" (* "*") (cast_expression "(Symbol_table **)(param_1 + 4)" (( "(") (type_descriptor "Symbol_table **" (type_identifier "Symbol_table") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")")))) (, ",") (cast_expression "(Layout *)*param_2" (( "(") (type_descriptor "Layout *" (type_identifier "Layout") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (, ",") (call_expression "SUB41(param_2[1],0)" (identifier "SUB41") (argument_list "(param_2[1],0)" (( "(") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0") () ")"))) (, ",") (pointer_expression "*(bool *)(param_2 + 2)" (* "*") (cast_expression "(bool *)(param_2 + 2)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 2)" (( "(") (binary_expression "param_2 + 2" (identifier "param_2") (+ "+") (number_literal "2")) () ")")))) (, ",") (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (identifier "CONCAT14") (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (( "(") (pointer_expression "*(undefined1 *)((int)param_2 + 9)" (* "*") (cast_expression "(undefined1 *)((int)param_2 + 9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_2 + 9)" (( "(") (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (+ "+") (number_literal "9")) () ")")))) (, ",") (identifier "in_stack_ffffff94") () ")")))) (, ",") (cast_expression "(Output_section *)param_2[4]" (( "(") (type_descriptor "Output_section *" (type_identifier "Output_section") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[4]" (identifier "param_2") ([ "[") (number_literal "4") (] "]"))) (, ",") (cast_expression "(Output_section **)param_2[5]" (( "(") (type_descriptor "Output_section **" (type_identifier "Output_section") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "param_2[5]" (identifier "param_2") ([ "[") (number_literal "5") (] "]"))) (, ",") (cast_expression "(ulonglong *)param_2[6]" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[6]" (identifier "param_2") ([ "[") (number_literal "6") (] "]"))) (, ",") (cast_expression "(STT *)&local_24" (( "(") (type_descriptor "STT *" (type_identifier "STT") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_24" (& "&") (identifier "local_24"))) (, ",") (cast_expression "(STV *)&local_30" (( "(") (type_descriptor "STV *" (type_identifier "STV") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_30" (& "&") (identifier "local_30"))) (, ",") (cast_expression "(uchar *)0x0" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (false "false") (, ",") (cast_expression "(bool *)0x0" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) () ")"))) (; ";"))) (expression_statement "iVar2 = (int)((ulonglong)uVar9 >> 0x20);" (assignment_expression "iVar2 = (int)((ulonglong)uVar9 >> 0x20)" (identifier "iVar2") (= "=") (cast_expression "(int)((ulonglong)uVar9 >> 0x20)" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (parenthesized_expression "((ulonglong)uVar9 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar9")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "uVar4 = (uint)uVar9;" (assignment_expression "uVar4 = (uint)uVar9" (identifier "uVar4") (= "=") (cast_expression "(uint)uVar9" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar9"))) (; ";")) (expression_statement "local_34 = 0;" (assignment_expression "local_34 = 0" (identifier "local_34") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_38 = 0;" (assignment_expression "local_38 = 0" (identifier "local_38") (= "=") (number_literal "0")) (; ";")) (labeled_statement "gold::Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" (statement_identifier "gold") (: ":") (ERROR ":" (: ":")) (labeled_statement "Expression::eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" (statement_identifier "Expression") (: ":") (ERROR ":" (: ":")) (expression_statement "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" (identifier "eval_maybe_dot") (argument_list "(*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),\n             *(bool *)(param_2 + 2),\n             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),\n             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],\n             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0)" (( "(") (pointer_expression "*(Symbol_table **)(param_1 + 8)" (* "*") (cast_expression "(Symbol_table **)(param_1 + 8)" (( "(") (type_descriptor "Symbol_table **" (type_identifier "Symbol_table") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")")))) (, ",") (cast_expression "(Layout *)*param_2" (( "(") (type_descriptor "Layout *" (type_identifier "Layout") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (, ",") (call_expression "SUB41(param_2[1],0)" (identifier "SUB41") (argument_list "(param_2[1],0)" (( "(") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0") () ")"))) (, ",") (pointer_expression "*(bool *)(param_2 + 2)" (* "*") (cast_expression "(bool *)(param_2 + 2)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 2)" (( "(") (binary_expression "param_2 + 2" (identifier "param_2") (+ "+") (number_literal "2")) () ")")))) (, ",") (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (call_expression "CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (identifier "CONCAT14") (argument_list "(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94)" (( "(") (pointer_expression "*(undefined1 *)((int)param_2 + 9)" (* "*") (cast_expression "(undefined1 *)((int)param_2 + 9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)param_2 + 9)" (( "(") (binary_expression "(int)param_2 + 9" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (+ "+") (number_literal "9")) () ")")))) (, ",") (identifier "in_stack_ffffff94") () ")")))) (, ",") (cast_expression "(Output_section *)param_2[4]" (( "(") (type_descriptor "Output_section *" (type_identifier "Output_section") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[4]" (identifier "param_2") ([ "[") (number_literal "4") (] "]"))) (, ",") (cast_expression "(Output_section **)param_2[5]" (( "(") (type_descriptor "Output_section **" (type_identifier "Output_section") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "param_2[5]" (identifier "param_2") ([ "[") (number_literal "5") (] "]"))) (, ",") (cast_expression "(ulonglong *)param_2[6]" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[6]" (identifier "param_2") ([ "[") (number_literal "6") (] "]"))) (, ",") (cast_expression "(STT *)&local_28" (( "(") (type_descriptor "STT *" (type_identifier "STT") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_28" (& "&") (identifier "local_28"))) (, ",") (cast_expression "(STV *)&local_38" (( "(") (type_descriptor "STV *" (type_identifier "STV") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&local_38" (& "&") (identifier "local_38"))) (, ",") (cast_expression "(uchar *)0x0" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (false "false") (, ",") (cast_expression "(bool *)0x0" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) () ")"))) (; ";")))) (if_statement "if ((local_24 != 0) || (local_28 != 0)) {\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" (if "if") (parenthesized_expression "((local_24 != 0) || (local_28 != 0))" (( "(") (binary_expression "(local_24 != 0) || (local_28 != 0)" (parenthesized_expression "(local_24 != 0)" (( "(") (binary_expression "local_24 != 0" (identifier "local_24") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(local_28 != 0)" (( "(") (binary_expression "local_28 != 0" (identifier "local_28") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }\n    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }\n  }" ({ "{") (if_statement "if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" (if "if") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" (* "*") (cast_expression "(int *)PTR_parameters_004c19b4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_004c19b4"))) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      puVar6 = (undefined4 *)&DAT_0000005c;\n      pcVar8 = FUN_0030390c;\n      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;\n      puVar7 = PTR_do_gold_unreachable_004c1a30;\n      (*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);\n      puStack_94 = puVar1;\n      uStack_88 = 0;\n      uStack_8c = 0;\n      uStack_ac = 0;\n      uStack_b0 = 0;\n      uStack_a0 = extraout_v1;\n      uStack_9c = uVar4;\n      iStack_98 = iVar2;\n      iStack_90 = param_1;\n      pcStack_84 = pcVar8;\n      uVar9 = gold::Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);\n      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);\n      uStack_b4 = 0;\n      uStack_b8 = 0;\n      gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);\n      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }\n      if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }\n      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));\n    }" ({ "{") (expression_statement "puVar6 = (undefined4 *)&DAT_0000005c;" (assignment_expression "puVar6 = (undefined4 *)&DAT_0000005c" (identifier "puVar6") (= "=") (cast_expression "(undefined4 *)&DAT_0000005c" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_0000005c" (& "&") (identifier "DAT_0000005c")))) (; ";")) (expression_statement "pcVar8 = FUN_0030390c;" (assignment_expression "pcVar8 = FUN_0030390c" (identifier "pcVar8") (= "=") (identifier "FUN_0030390c")) (; ";")) (expression_statement "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;" (assignment_expression "puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" (identifier "puVar5") (= "=") (binary_expression "PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8" (identifier "PTR_s_ral_options14Struct_no_crefE_004c127c") (+ "+") (number_literal "-0x9b8"))) (; ";")) (expression_statement "puVar7 = PTR_do_gold_unreachable_004c1a30;" (assignment_expression "puVar7 = PTR_do_gold_unreachable_004c1a30" (identifier "puVar7") (= "=") (identifier "PTR_do_gold_unreachable_004c1a30")) (; ";")) (expression_statement "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);" (call_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)\n                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" (parenthesized_expression "(*(code *)PTR_do_gold_unreachable_004c1a30)" (( "(") (pointer_expression "*(code *)PTR_do_gold_unreachable_004c1a30" (* "*") (cast_expression "(code *)PTR_do_gold_unreachable_004c1a30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_do_gold_unreachable_004c1a30"))) () ")")) (argument_list "(puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10)" (( "(") (identifier "puVar5") (, ",") (number_literal "0x5c") (, ",") (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7f10" (identifier "PTR_s_in_a_linker_script_004c191c") (+ "+") (number_literal "0x7f10")) () ")"))) (; ";")) (expression_statement "puStack_94 = puVar1;" (assignment_expression "puStack_94 = puVar1" (identifier "puStack_94") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "uStack_88 = 0;" (assignment_expression "uStack_88 = 0" (identifier "uStack_88") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_8c = 0;" (assignment_expression "uStack_8c = 0" (identifier "uStack_8c") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_ac = 0;" (assignment_expression "uStack_ac = 0" (identifier "uStack_ac") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_b0 = 0;" (assignment_expression "uStack_b0 = 0" (identifier "uStack_b0") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_a0 = extraout_v1;" (assignment_expression "uStack_a0 = extraout_v1" (identifier "uStack_a0") (= "=") (identifier "extraout_v1")) (; ";")) (expression_statement "uStack_9c = uVar4;" (assignment_expression "uStack_9c = uVar4" (identifier "uStack_9c") (= "=") (identifier "uVar4")) (; ";")) (expression_statement "iStack_98 = iVar2;" (assignment_expression "iStack_98 = iVar2" (identifier "iStack_98") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "iStack_90 = param_1;" (assignment_expression "iStack_90 = param_1" (identifier "iStack_90") (= "=") (identifier "param_1")) (; ";")) (expression_statement "pcStack_84 = pcVar8;" (assignment_expression "pcStack_84 = pcVar8" (identifier "pcStack_84") (= "=") (identifier "pcVar8")) (; ";")) (ERROR "uVar9 = gold::" (assignment_expression "uVar9 = gold" (identifier "uVar9") (= "=") (identifier "gold")) (: ":") (: ":")) (labeled_statement "Expression::eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" (statement_identifier "Expression") (: ":") (ERROR ":" (: ":")) (expression_statement "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" (identifier "eval_maybe_dot") (argument_list "(*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                         *(bool *)(puVar6 + 2),\n                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],\n                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,\n                         false,(bool *)0x0)" (( "(") (pointer_expression "*(Symbol_table **)(puVar5 + 4)" (* "*") (cast_expression "(Symbol_table **)(puVar5 + 4)" (( "(") (type_descriptor "Symbol_table **" (type_identifier "Symbol_table") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 4)" (( "(") (binary_expression "puVar5 + 4" (identifier "puVar5") (+ "+") (number_literal "4")) () ")")))) (, ",") (cast_expression "(Layout *)*puVar6" (( "(") (type_descriptor "Layout *" (type_identifier "Layout") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (, ",") (call_expression "SUB41(puVar6[1],0)" (identifier "SUB41") (argument_list "(puVar6[1],0)" (( "(") (subscript_expression "puVar6[1]" (identifier "puVar6") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0") () ")"))) (, ",") (pointer_expression "*(bool *)(puVar6 + 2)" (* "*") (cast_expression "(bool *)(puVar6 + 2)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 2)" (( "(") (binary_expression "puVar6 + 2" (identifier "puVar6") (+ "+") (number_literal "2")) () ")")))) (, ",") (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (identifier "CONCAT14") (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (( "(") (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" (* "*") (cast_expression "(undefined1 *)((int)puVar6 + 9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar6 + 9)" (( "(") (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar6")) (+ "+") (number_literal "9")) () ")")))) (, ",") (identifier "in_stack_ffffff14") () ")")))) (, ",") (cast_expression "(Output_section *)puVar6[4]" (( "(") (type_descriptor "Output_section *" (type_identifier "Output_section") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar6[4]" (identifier "puVar6") ([ "[") (number_literal "4") (] "]"))) (, ",") (cast_expression "(Output_section **)puVar6[5]" (( "(") (type_descriptor "Output_section **" (type_identifier "Output_section") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "puVar6[5]" (identifier "puVar6") ([ "[") (number_literal "5") (] "]"))) (, ",") (cast_expression "(ulonglong *)puVar6[6]" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar6[6]" (identifier "puVar6") ([ "[") (number_literal "6") (] "]"))) (, ",") (cast_expression "(STT *)&iStack_a4" (( "(") (type_descriptor "STT *" (type_identifier "STT") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&iStack_a4" (& "&") (identifier "iStack_a4"))) (, ",") (cast_expression "(STV *)&uStack_b0" (( "(") (type_descriptor "STV *" (type_identifier "STV") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&uStack_b0" (& "&") (identifier "uStack_b0"))) (, ",") (cast_expression "(uchar *)0x0" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (false "false") (, ",") (cast_expression "(bool *)0x0" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) () ")"))) (; ";"))) (expression_statement "uVar4 = (uint)((ulonglong)uVar9 >> 0x20);" (assignment_expression "uVar4 = (uint)((ulonglong)uVar9 >> 0x20)" (identifier "uVar4") (= "=") (call_expression "(uint)((ulonglong)uVar9 >> 0x20)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((ulonglong)uVar9 >> 0x20)" (( "(") (binary_expression "(ulonglong)uVar9 >> 0x20" (cast_expression "(ulonglong)uVar9" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (identifier "uVar9")) (>> ">>") (number_literal "0x20")) () ")")))) (; ";")) (expression_statement "uStack_b4 = 0;" (assignment_expression "uStack_b4 = 0" (identifier "uStack_b4") (= "=") (number_literal "0")) (; ";")) (expression_statement "uStack_b8 = 0;" (assignment_expression "uStack_b8 = 0" (identifier "uStack_b8") (= "=") (number_literal "0")) (; ";")) (labeled_statement "gold::Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" (statement_identifier "gold") (: ":") (ERROR ":" (: ":")) (labeled_statement "Expression::eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" (statement_identifier "Expression") (: ":") (ERROR ":" (: ":")) (expression_statement "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);" (call_expression "eval_maybe_dot\n                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" (identifier "eval_maybe_dot") (argument_list "(*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),\n                 *(bool *)(puVar6 + 2),\n                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),\n                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],\n                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0)" (( "(") (pointer_expression "*(Symbol_table **)(puVar5 + 8)" (* "*") (cast_expression "(Symbol_table **)(puVar5 + 8)" (( "(") (type_descriptor "Symbol_table **" (type_identifier "Symbol_table") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 8)" (( "(") (binary_expression "puVar5 + 8" (identifier "puVar5") (+ "+") (number_literal "8")) () ")")))) (, ",") (cast_expression "(Layout *)*puVar6" (( "(") (type_descriptor "Layout *" (type_identifier "Layout") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (, ",") (call_expression "SUB41(puVar6[1],0)" (identifier "SUB41") (argument_list "(puVar6[1],0)" (( "(") (subscript_expression "puVar6[1]" (identifier "puVar6") ([ "[") (number_literal "1") (] "]")) (, ",") (number_literal "0") () ")"))) (, ",") (pointer_expression "*(bool *)(puVar6 + 2)" (* "*") (cast_expression "(bool *)(puVar6 + 2)" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar6 + 2)" (( "(") (binary_expression "puVar6 + 2" (identifier "puVar6") (+ "+") (number_literal "2")) () ")")))) (, ",") (cast_expression "(ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (( "(") (type_descriptor "ulonglong" (type_identifier "ulonglong")) () ")") (call_expression "CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (identifier "CONCAT14") (argument_list "(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14)" (( "(") (pointer_expression "*(undefined1 *)((int)puVar6 + 9)" (* "*") (cast_expression "(undefined1 *)((int)puVar6 + 9)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar6 + 9)" (( "(") (binary_expression "(int)puVar6 + 9" (cast_expression "(int)puVar6" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar6")) (+ "+") (number_literal "9")) () ")")))) (, ",") (identifier "in_stack_ffffff14") () ")")))) (, ",") (cast_expression "(Output_section *)puVar6[4]" (( "(") (type_descriptor "Output_section *" (type_identifier "Output_section") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar6[4]" (identifier "puVar6") ([ "[") (number_literal "4") (] "]"))) (, ",") (cast_expression "(Output_section **)puVar6[5]" (( "(") (type_descriptor "Output_section **" (type_identifier "Output_section") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (subscript_expression "puVar6[5]" (identifier "puVar6") ([ "[") (number_literal "5") (] "]"))) (, ",") (cast_expression "(ulonglong *)puVar6[6]" (( "(") (type_descriptor "ulonglong *" (type_identifier "ulonglong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar6[6]" (identifier "puVar6") ([ "[") (number_literal "6") (] "]"))) (, ",") (cast_expression "(STT *)&iStack_a8" (( "(") (type_descriptor "STT *" (type_identifier "STT") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&iStack_a8" (& "&") (identifier "iStack_a8"))) (, ",") (cast_expression "(STV *)&uStack_b8" (( "(") (type_descriptor "STV *" (type_identifier "STV") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&uStack_b8" (& "&") (identifier "uStack_b8"))) (, ",") (cast_expression "(uchar *)0x0" (( "(") (type_descriptor "uchar *" (type_identifier "uchar") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) (, ",") (false "false") (, ",") (cast_expression "(bool *)0x0" (( "(") (type_descriptor "bool *" (primitive_type "bool") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0")) () ")"))) (; ";")))) (if_statement "if ((iStack_a4 != 0) || (iStack_a8 != 0)) {\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" (if "if") (parenthesized_expression "((iStack_a4 != 0) || (iStack_a8 != 0))" (( "(") (binary_expression "(iStack_a4 != 0) || (iStack_a8 != 0)" (parenthesized_expression "(iStack_a4 != 0)" (( "(") (binary_expression "iStack_a4 != 0" (identifier "iStack_a4") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iStack_a8 != 0)" (( "(") (binary_expression "iStack_a8 != 0" (identifier "iStack_a8") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }\n        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }\n      }" ({ "{") (if_statement "if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" (if "if") (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0)" (( "(") (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" (* "*") (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" (( "(") (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" (* "*") (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" (* "*") (cast_expression "(int **)(puVar7 + 0x1be0a8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar7 + 0x1be0a8)" (( "(") (binary_expression "puVar7 + 0x1be0a8" (identifier "puVar7") (+ "+") (number_literal "0x1be0a8")) () ")"))))) (+ "+") (number_literal "8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);\n          return uVar10;\n        }" ({ "{") (expression_statement "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10);" (assignment_expression "uVar10 = (**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" (identifier "uVar10") (= "=") (call_expression "(**(code **)(puVar7 + 0x1be124))\n                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be124))" (( "(") (pointer_expression "**(code **)(puVar7 + 0x1be124)" (* "*") (pointer_expression "*(code **)(puVar7 + 0x1be124)" (* "*") (cast_expression "(code **)(puVar7 + 0x1be124)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar7 + 0x1be124)" (( "(") (binary_expression "puVar7 + 0x1be124" (identifier "puVar7") (+ "+") (number_literal "0x1be124")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,\n                              *(int *)(puVar7 + 0x1be010) + 0x7f10)" (( "(") (binary_expression "*(int *)(puVar7 + 0x1bd970) + -0x9b8" (pointer_expression "*(int *)(puVar7 + 0x1bd970)" (* "*") (cast_expression "(int *)(puVar7 + 0x1bd970)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar7 + 0x1bd970)" (( "(") (binary_expression "puVar7 + 0x1bd970" (identifier "puVar7") (+ "+") (number_literal "0x1bd970")) () ")")))) (+ "+") (number_literal "-0x9b8")) (, ",") (number_literal "0x5c") (, ",") (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7f10" (pointer_expression "*(int *)(puVar7 + 0x1be010)" (* "*") (cast_expression "(int *)(puVar7 + 0x1be010)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar7 + 0x1be010)" (( "(") (binary_expression "puVar7 + 0x1be010" (identifier "puVar7") (+ "+") (number_literal "0x1be010")) () ")")))) (+ "+") (number_literal "0x7f10")) () ")")))) (; ";")) (return_statement "return uVar10;" (return "return") (identifier "uVar10") (; ";")) (} "}"))) (if_statement "if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" (if "if") (parenthesized_expression "(*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0')" (( "(") (binary_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" (* "*") (cast_expression "(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195)" (( "(") (binary_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195" (pointer_expression "*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" (* "*") (cast_expression "(int *)(**(int **)(puVar7 + 0x1be0a8) + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(**(int **)(puVar7 + 0x1be0a8) + 8)" (( "(") (binary_expression "**(int **)(puVar7 + 0x1be0a8) + 8" (pointer_expression "**(int **)(puVar7 + 0x1be0a8)" (* "*") (pointer_expression "*(int **)(puVar7 + 0x1be0a8)" (* "*") (cast_expression "(int **)(puVar7 + 0x1be0a8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar7 + 0x1be0a8)" (( "(") (binary_expression "puVar7 + 0x1be0a8" (identifier "puVar7") (+ "+") (number_literal "0x1be0a8")) () ")"))))) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x3195")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);\n          (**(code **)(puVar7 + 0x1be3c4))(uVar3);\n        }" ({ "{") (expression_statement "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);" (assignment_expression "uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" (identifier "uVar3") (= "=") (call_expression "(**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60)" (parenthesized_expression "(**(code **)(puVar7 + 0x1c2324))" (( "(") (pointer_expression "**(code **)(puVar7 + 0x1c2324)" (* "*") (pointer_expression "*(code **)(puVar7 + 0x1c2324)" (* "*") (cast_expression "(code **)(puVar7 + 0x1c2324)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar7 + 0x1c2324)" (( "(") (binary_expression "puVar7 + 0x1c2324" (identifier "puVar7") (+ "+") (number_literal "0x1c2324")) () ")"))))) () ")")) (argument_list "(*(int *)(puVar7 + 0x1be010) + 0x7b60)" (( "(") (binary_expression "*(int *)(puVar7 + 0x1be010) + 0x7b60" (pointer_expression "*(int *)(puVar7 + 0x1be010)" (* "*") (cast_expression "(int *)(puVar7 + 0x1be010)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar7 + 0x1be010)" (( "(") (binary_expression "puVar7 + 0x1be010" (identifier "puVar7") (+ "+") (number_literal "0x1be010")) () ")")))) (+ "+") (number_literal "0x7b60")) () ")")))) (; ";")) (expression_statement "(**(code **)(puVar7 + 0x1be3c4))(uVar3);" (call_expression "(**(code **)(puVar7 + 0x1be3c4))(uVar3)" (parenthesized_expression "(**(code **)(puVar7 + 0x1be3c4))" (( "(") (pointer_expression "**(code **)(puVar7 + 0x1be3c4)" (* "*") (pointer_expression "*(code **)(puVar7 + 0x1be3c4)" (* "*") (cast_expression "(code **)(puVar7 + 0x1be3c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar7 + 0x1be3c4)" (( "(") (binary_expression "puVar7 + 0x1be3c4" (identifier "puVar7") (+ "+") (number_literal "0x1be3c4")) () ")"))))) () ")")) (argument_list "(uVar3)" (( "(") (identifier "uVar3") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if ((extraout_v1_00 & 0x20) == 0) {\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" (if "if") (parenthesized_expression "((extraout_v1_00 & 0x20) == 0)" (( "(") (binary_expression "(extraout_v1_00 & 0x20) == 0" (parenthesized_expression "(extraout_v1_00 & 0x20)" (( "(") (binary_expression "extraout_v1_00 & 0x20" (identifier "extraout_v1_00") (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));\n      }" ({ "{") (return_statement "return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));" (return "return") (call_expression "CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" (identifier "CONCAT44") (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f),\n                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f))" (( "(") (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" (identifier "uVar4") (>> ">>") (parenthesized_expression "(extraout_v1_00 & 0x1f)" (( "(") (binary_expression "extraout_v1_00 & 0x1f" (identifier "extraout_v1_00") (& "&") (number_literal "0x1f")) () ")"))) (, ",") (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f) |\n                        (uint)uVar9 >> (extraout_v1_00 & 0x1f)" (binary_expression "(uVar4 << 1) << (~extraout_v1_00 & 0x1f)" (parenthesized_expression "(uVar4 << 1)" (( "(") (binary_expression "uVar4 << 1" (identifier "uVar4") (<< "<<") (number_literal "1")) () ")")) (<< "<<") (parenthesized_expression "(~extraout_v1_00 & 0x1f)" (( "(") (binary_expression "~extraout_v1_00 & 0x1f" (unary_expression "~extraout_v1_00" (~ "~") (identifier "extraout_v1_00")) (& "&") (number_literal "0x1f")) () ")"))) (| "|") (binary_expression "(uint)uVar9 >> (extraout_v1_00 & 0x1f)" (cast_expression "(uint)uVar9" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar9")) (>> ">>") (parenthesized_expression "(extraout_v1_00 & 0x1f)" (( "(") (binary_expression "extraout_v1_00 & 0x1f" (identifier "extraout_v1_00") (& "&") (number_literal "0x1f")) () ")")))) () ")"))) (; ";")) (} "}"))) (return_statement "return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));" (return "return") (call_expression "(ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f))" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(uVar4 >> (extraout_v1_00 & 0x1f))" (( "(") (binary_expression "uVar4 >> (extraout_v1_00 & 0x1f)" (identifier "uVar4") (>> ">>") (parenthesized_expression "(extraout_v1_00 & 0x1f)" (( "(") (binary_expression "extraout_v1_00 & 0x1f" (identifier "extraout_v1_00") (& "&") (number_literal "0x1f")) () ")"))) () ")"))) (; ";")) (} "}"))) (if_statement "if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" (if "if") (parenthesized_expression "(*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0')" (( "(") (binary_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0'" (pointer_expression "*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" (* "*") (cast_expression "(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195)" (( "(") (binary_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195" (pointer_expression "*(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (* "*") (cast_expression "(int *)(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)PTR_parameters_004c19b4 + 8)" (( "(") (binary_expression "*(int *)PTR_parameters_004c19b4 + 8" (pointer_expression "*(int *)PTR_parameters_004c19b4" (* "*") (cast_expression "(int *)PTR_parameters_004c19b4" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_parameters_004c19b4"))) (+ "+") (number_literal "8")) () ")")))) (+ "+") (number_literal "0x3195")) () ")")))) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);\n      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);\n    }" ({ "{") (expression_statement "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);" (assignment_expression "uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" (identifier "uVar3") (= "=") (call_expression "(*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30)" (parenthesized_expression "(*(code *)PTR_gettext_004c5c30)" (( "(") (pointer_expression "*(code *)PTR_gettext_004c5c30" (* "*") (cast_expression "(code *)PTR_gettext_004c5c30" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gettext_004c5c30"))) () ")")) (argument_list "(PTR_s_in_a_linker_script_004c191c + 0x7b30)" (( "(") (binary_expression "PTR_s_in_a_linker_script_004c191c + 0x7b30" (identifier "PTR_s_in_a_linker_script_004c191c") (+ "+") (number_literal "0x7b30")) () ")")))) (; ";")) (expression_statement "(*(code *)PTR_gold_warning_004c1cd0)(uVar3);" (call_expression "(*(code *)PTR_gold_warning_004c1cd0)(uVar3)" (parenthesized_expression "(*(code *)PTR_gold_warning_004c1cd0)" (( "(") (pointer_expression "*(code *)PTR_gold_warning_004c1cd0" (* "*") (cast_expression "(code *)PTR_gold_warning_004c1cd0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_gold_warning_004c1cd0"))) () ")")) (argument_list "(uVar3)" (( "(") (identifier "uVar3") () ")"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if ((extraout_v1 & 0x20) == 0) {\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" (if "if") (parenthesized_expression "((extraout_v1 & 0x20) == 0)" (( "(") (binary_expression "(extraout_v1 & 0x20) == 0" (parenthesized_expression "(extraout_v1 & 0x20)" (( "(") (binary_expression "extraout_v1 & 0x20" (identifier "extraout_v1") (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));\n  }" ({ "{") (return_statement "return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f));" (return "return") (call_expression "CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" (identifier "CONCAT44") (argument_list "((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),\n                    uVar4 << (extraout_v1 & 0x1f))" (( "(") (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f)" (binary_expression "(uVar4 >> 1) >> (~extraout_v1 & 0x1f)" (parenthesized_expression "(uVar4 >> 1)" (( "(") (binary_expression "uVar4 >> 1" (identifier "uVar4") (>> ">>") (number_literal "1")) () ")")) (>> ">>") (parenthesized_expression "(~extraout_v1 & 0x1f)" (( "(") (binary_expression "~extraout_v1 & 0x1f" (unary_expression "~extraout_v1" (~ "~") (identifier "extraout_v1")) (& "&") (number_literal "0x1f")) () ")"))) (| "|") (binary_expression "iVar2 << (extraout_v1 & 0x1f)" (identifier "iVar2") (<< "<<") (parenthesized_expression "(extraout_v1 & 0x1f)" (( "(") (binary_expression "extraout_v1 & 0x1f" (identifier "extraout_v1") (& "&") (number_literal "0x1f")) () ")")))) (, ",") (binary_expression "uVar4 << (extraout_v1 & 0x1f)" (identifier "uVar4") (<< "<<") (parenthesized_expression "(extraout_v1 & 0x1f)" (( "(") (binary_expression "extraout_v1 & 0x1f" (identifier "extraout_v1") (& "&") (number_literal "0x1f")) () ")"))) () ")"))) (; ";")) (} "}"))) (return_statement "return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;" (return "return") (binary_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20" (call_expression "(ulonglong)(uVar4 << (extraout_v1 & 0x1f))" (parenthesized_expression "(ulonglong)" (( "(") (identifier "ulonglong") () ")")) (argument_list "(uVar4 << (extraout_v1 & 0x1f))" (( "(") (binary_expression "uVar4 << (extraout_v1 & 0x1f)" (identifier "uVar4") (<< "<<") (parenthesized_expression "(extraout_v1 & 0x1f)" (( "(") (binary_expression "extraout_v1 & 0x1f" (identifier "extraout_v1") (& "&") (number_literal "0x1f")) () ")"))) () ")"))) (<< "<<") (number_literal "0x20")) (; ";")) (} "}")))

/* WARNING: Struct "Output_section_data": ignoring overlapping field "output_section_" */
/* WARNING: Struct "Output_section": ignoring overlapping field "name_" */
/* WARNING: Struct "Output_section_headers": ignoring overlapping field "layout_" */
/* WARNING: Enum "DT": Some values do not have unique names */
/* WARNING: Struct "Output_reduced_debug_abbrev_section": ignoring overlapping field "data_" */
/* WARNING: Struct "Output_reduced_debug_info_section": ignoring overlapping field "data_" */
/* WARNING: Enum "STT": Some values do not have unique names */
/* DWARF original prototype: uint64_t value(Binary_lshift * this, Expression_eval_info * eei) */

uint64_t __thiscall gold::type_1::function_1(type_1 *this,type_2 *eei)

{
  uint64_t right_alignment;
  uint64_t left_alignment;
  type_3 *right_section;
  type_3 *left_section;
  
  left_alignment._4_4_ = 0;
                    /* WARNING: Subroutine does not return */
  left_alignment._0_4_ = 0;
  Expression::var_1
            ((this->super_Binary_expression).left_,eei->symtab,eei->layout,eei->check_assertions,
             eei->is_dot_available,eei->dot_value,eei->dot_section,&left_section,&left_alignment,
             (type_4 *)0x0,(type_5 *)0x0,(type_6 *)0x0,false,eei->is_valid_pointer);
}


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

ulonglong MASKED(int param_1,undefined4 *param_2)

{
  undefined *puVar1;
  int iVar2;
  undefined4 uVar3;
  uint uVar4;
  uint extraout_v1;
  uint extraout_v1_00;
  undefined *puVar5;
  undefined4 *puVar6;
  undefined *puVar7;
  code *pcVar8;
  undefined8 uVar9;
  ulonglong uVar10;
  undefined4 in_stack_ffffff14;
  undefined4 uStack_b8;
  undefined4 uStack_b4;
  undefined4 uStack_b0;
  undefined4 uStack_ac;
  int iStack_a8;
  int iStack_a4;
  uint uStack_a0;
  uint uStack_9c;
  int iStack_98;
  undefined *puStack_94;
  int iStack_90;
  undefined4 uStack_8c;
  undefined4 uStack_88;
  code *pcStack_84;
  undefined4 in_stack_ffffff94;
  undefined4 local_38;
  undefined4 local_34;
  undefined4 local_30;
  undefined4 local_2c;
  int local_28;
  int local_24;
  
  puVar1 = PTR_eval_maybe_dot_004c27d8;
  local_2c = 0;
  local_30 = 0;
  uVar9 = gold::Expression::eval_maybe_dot
                    (*(Symbol_table **)(param_1 + 4),(Layout *)*param_2,SUB41(param_2[1],0),
                     *(bool *)(param_2 + 2),
                     (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),
                     (Output_section *)param_2[4],(Output_section **)param_2[5],
                     (ulonglong *)param_2[6],(STT *)&local_24,(STV *)&local_30,(uchar *)0x0,false,
                     (bool *)0x0);
  iVar2 = (int)((ulonglong)uVar9 >> 0x20);
  uVar4 = (uint)uVar9;
  local_34 = 0;
  local_38 = 0;
  gold::Expression::eval_maybe_dot
            (*(Symbol_table **)(param_1 + 8),(Layout *)*param_2,SUB41(param_2[1],0),
             *(bool *)(param_2 + 2),
             (ulonglong)CONCAT14(*(undefined1 *)((int)param_2 + 9),in_stack_ffffff94),
             (Output_section *)param_2[4],(Output_section **)param_2[5],(ulonglong *)param_2[6],
             (STT *)&local_28,(STV *)&local_38,(uchar *)0x0,false,(bool *)0x0);
  if ((local_24 != 0) || (local_28 != 0)) {
    if (*(int *)(*(int *)PTR_parameters_004c19b4 + 8) == 0) {
      puVar6 = (undefined4 *)&DAT_0000005c;
      pcVar8 = FUN_0030390c;
      puVar5 = PTR_s_ral_options14Struct_no_crefE_004c127c + -0x9b8;
      puVar7 = PTR_do_gold_unreachable_004c1a30;
      (*(code *)PTR_do_gold_unreachable_004c1a30)
                (puVar5,0x5c,PTR_s_in_a_linker_script_004c191c + 0x7f10);
      puStack_94 = puVar1;
      uStack_88 = 0;
      uStack_8c = 0;
      uStack_ac = 0;
      uStack_b0 = 0;
      uStack_a0 = extraout_v1;
      uStack_9c = uVar4;
      iStack_98 = iVar2;
      iStack_90 = param_1;
      pcStack_84 = pcVar8;
      uVar9 = gold::Expression::eval_maybe_dot
                        (*(Symbol_table **)(puVar5 + 4),(Layout *)*puVar6,SUB41(puVar6[1],0),
                         *(bool *)(puVar6 + 2),
                         (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),
                         (Output_section *)puVar6[4],(Output_section **)puVar6[5],
                         (ulonglong *)puVar6[6],(STT *)&iStack_a4,(STV *)&uStack_b0,(uchar *)0x0,
                         false,(bool *)0x0);
      uVar4 = (uint)((ulonglong)uVar9 >> 0x20);
      uStack_b4 = 0;
      uStack_b8 = 0;
      gold::Expression::eval_maybe_dot
                (*(Symbol_table **)(puVar5 + 8),(Layout *)*puVar6,SUB41(puVar6[1],0),
                 *(bool *)(puVar6 + 2),
                 (ulonglong)CONCAT14(*(undefined1 *)((int)puVar6 + 9),in_stack_ffffff14),
                 (Output_section *)puVar6[4],(Output_section **)puVar6[5],(ulonglong *)puVar6[6],
                 (STT *)&iStack_a8,(STV *)&uStack_b8,(uchar *)0x0,false,(bool *)0x0);
      if ((iStack_a4 != 0) || (iStack_a8 != 0)) {
        if (*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) == 0) {
          uVar10 = (**(code **)(puVar7 + 0x1be124))
                             (*(int *)(puVar7 + 0x1bd970) + -0x9b8,0x5c,
                              *(int *)(puVar7 + 0x1be010) + 0x7f10);
          return uVar10;
        }
        if (*(char *)(*(int *)(**(int **)(puVar7 + 0x1be0a8) + 8) + 0x3195) != '\0') {
          uVar3 = (**(code **)(puVar7 + 0x1c2324))(*(int *)(puVar7 + 0x1be010) + 0x7b60);
          (**(code **)(puVar7 + 0x1be3c4))(uVar3);
        }
      }
      if ((extraout_v1_00 & 0x20) == 0) {
        return CONCAT44(uVar4 >> (extraout_v1_00 & 0x1f),
                        (uVar4 << 1) << (~extraout_v1_00 & 0x1f) |
                        (uint)uVar9 >> (extraout_v1_00 & 0x1f));
      }
      return (ulonglong)(uVar4 >> (extraout_v1_00 & 0x1f));
    }
    if (*(char *)(*(int *)(*(int *)PTR_parameters_004c19b4 + 8) + 0x3195) != '\0') {
      uVar3 = (*(code *)PTR_gettext_004c5c30)(PTR_s_in_a_linker_script_004c191c + 0x7b30);
      (*(code *)PTR_gold_warning_004c1cd0)(uVar3);
    }
  }
  if ((extraout_v1 & 0x20) == 0) {
    return CONCAT44((uVar4 >> 1) >> (~extraout_v1 & 0x1f) | iVar2 << (extraout_v1 & 0x1f),
                    uVar4 << (extraout_v1 & 0x1f));
  }
  return (ulonglong)(uVar4 << (extraout_v1 & 0x1f)) << 0x20;
}

