
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 report_op_error(symbolS *symp,symbolS *left,operatorT op,symbolS *right)

{
  symbolS *psVar1;
  int iVar2;
  char *format;
  char *pcVar3;
  segT paVar4;
  char *pcVar5;
  segT paVar6;
  segT paVar7;
  char *pcVar8;
  char *local_30;
  char *file;
  uint line;
  undefined4 uStack_14;
  
  paVar6 = (segT)0x0;
  uStack_14 = 0x369af;
  if (left != (symbolS *)0x0) {
    paVar6 = (segT)left->bsym;
    if (((uint)left->sy_flags & 1) != 0) {
      if (reg_section != paVar6) goto LAB_000369ce;
      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;
    }
    paVar6 = (segT)paVar6->flags;
  }
LAB_000369ce:
  paVar7 = (segT)right->bsym;
  if (((uint)right->sy_flags & 1) == 0) {
LAB_00036a0a:
    paVar7 = (segT)paVar7->flags;
  }
  else if (reg_section == paVar7) {
    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;
    goto LAB_00036a0a;
  }
  switch(op) {
  case O_uminus:
  case O_subtract:
    local_30 = "-";
    break;
  case O_bit_not:
    local_30 = "~";
    break;
  case O_logical_not:
    local_30 = "!";
    break;
  case O_multiply:
    local_30 = "*";
    break;
  case O_divide:
    local_30 = "/";
    break;
  case O_modulus:
    local_30 = "%";
    break;
  case O_left_shift:
    local_30 = "<<";
    break;
  case O_right_shift:
    local_30 = ">>";
    break;
  case O_bit_inclusive_or:
    local_30 = "|";
    break;
  case O_bit_or_not:
    local_30 = "|~";
    break;
  case O_bit_exclusive_or:
    local_30 = "^";
    break;
  case O_bit_and:
    local_30 = "&";
    break;
  case O_add:
    local_30 = "+";
    break;
  case O_eq:
    local_30 = "==";
    break;
  case O_ne:
    local_30 = "!=";
    break;
  case O_lt:
    local_30 = "<";
    break;
  case O_le:
    local_30 = "<=";
    break;
  case O_ge:
    local_30 = ">=";
    break;
  case O_gt:
    local_30 = ">";
    break;
  case O_logical_and:
    local_30 = "&&";
    break;
  case O_logical_or:
    local_30 = "||";
    break;
  default:
                    /* WARNING: Subroutine does not return */
    as_abort("../../gas/symbols.c",0x3df,"report_op_error");
  }
  iVar2 = expr_symbol_where(symp,&file,&line);
  if (iVar2 != 0) {
    pcVar8 = paVar7->name;
    if (left == (symbolS *)0x0) {
      pcVar5 = "invalid operand (%s section) for `%s\'";
      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);
      pcVar3 = pcVar8;
      pcVar8 = local_30;
    }
    else {
      pcVar3 = paVar6->name;
      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);
      pcVar5 = local_30;
    }
    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);
    return;
  }
  paVar4 = (segT)symp->bsym;
  if (((uint)symp->sy_flags & 1) != 0) {
    if (reg_section != paVar4) {
      psVar1 = (symp->sy_value).X_add_symbol;
      pcVar8 = paVar7->name;
      goto joined_r0x00036c49;
    }
    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;
  }
  psVar1 = (symbolS *)paVar4->id;
  pcVar8 = paVar7->name;
joined_r0x00036c49:
  if (left == (symbolS *)0x0) {
    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);
    as_bad(pcVar5,pcVar8,local_30,psVar1);
    return;
  }
  pcVar5 = paVar6->name;
  pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",
                             5);
  as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1);
  return;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)

{
  undefined4 uVar1;
  byte *pbVar2;
  int iVar3;
  undefined4 uVar4;
  undefined4 uVar5;
  undefined4 *puVar6;
  undefined4 uVar7;
  undefined4 *puVar8;
  undefined4 *puVar9;
  char *pcVar10;
  char *pcVar11;
  char *pcVar12;
  char *pcStack_30;
  undefined4 uStack_24;
  undefined4 auStack_20 [3];
  undefined4 uStack_14;
  
  puVar8 = (undefined4 *)0x0;
  uStack_14 = 0x369af;
  if (param_2 != (byte *)0x0) {
    puVar8 = *(undefined4 **)(param_2 + 4);
    if ((*param_2 & 1) != 0) {
      if (DAT_000776d0 != puVar8) goto LAB_000369ce;
      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);
    }
    puVar8 = (undefined4 *)puVar8[5];
  }
LAB_000369ce:
  puVar9 = *(undefined4 **)(param_4 + 4);
  if ((*param_4 & 1) == 0) {
LAB_00036a0a:
    puVar9 = (undefined4 *)puVar9[5];
    pbVar2 = param_4;
  }
  else {
    pbVar2 = (byte *)&DAT_000776d0;
    if (DAT_000776d0 == puVar9) {
      param_4 = *(byte **)(param_4 + 0xc);
      puVar9 = *(undefined4 **)(param_4 + 4);
      goto LAB_00036a0a;
    }
  }
  switch(param_3) {
  case 7:
  case 0x14:
    pcStack_30 = "-";
    break;
  case 8:
    pcStack_30 = "~";
    break;
  case 9:
    pcStack_30 = "!";
    break;
  case 10:
    pcStack_30 = "*";
    break;
  case 0xb:
    pcStack_30 = "/";
    break;
  case 0xc:
    pcStack_30 = "%";
    break;
  case 0xd:
    pcStack_30 = "<<";
    break;
  case 0xe:
    pcStack_30 = ">>";
    break;
  case 0xf:
    pcStack_30 = "|";
    break;
  case 0x10:
    pcStack_30 = "|~";
    break;
  case 0x11:
    pcStack_30 = "^";
    break;
  case 0x12:
    pcStack_30 = "&";
    break;
  case 0x13:
    pcStack_30 = "+";
    break;
  case 0x15:
    pcStack_30 = "==";
    break;
  case 0x16:
    pcStack_30 = "!=";
    break;
  case 0x17:
    pcStack_30 = "<";
    break;
  case 0x18:
    pcStack_30 = "<=";
    break;
  case 0x19:
    pcStack_30 = ">=";
    break;
  case 0x1a:
    pcStack_30 = ">";
    break;
  case 0x1b:
    pcStack_30 = "&&";
    break;
  case 0x1c:
    pcStack_30 = "||";
    break;
  default:
                    /* WARNING: Subroutine does not return */
    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);
  }
  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);
  if (iVar3 != 0) {
    pcVar11 = (char *)*puVar9;
    if (param_2 == (byte *)0x0) {
      pcVar12 = "invalid operand (%s section) for `%s\'";
      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);
      pcVar10 = pcVar11;
      pcVar11 = pcStack_30;
    }
    else {
      pcVar10 = (char *)*puVar8;
      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);
      pcVar12 = pcStack_30;
    }
    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);
    return;
  }
  puVar6 = *(undefined4 **)(param_1 + 4);
  if ((*param_1 & 1) != 0) {
    if (DAT_000776d0 != puVar6) {
      uVar4 = *(undefined4 *)(param_1 + 8);
      uVar1 = *puVar9;
      goto joined_r0x00036c49;
    }
    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);
  }
  uVar4 = puVar6[1];
  uVar1 = *puVar9;
joined_r0x00036c49:
  if (param_2 == (byte *)0x0) {
    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);
    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);
    return;
  }
  uVar7 = *puVar8;
  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);
  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);
  return;
}


PUSH EBP
MOV EBP,EAX
PUSH EDI
PUSH ESI
MOV ESI,EDX
XOR EDX,EDX
PUSH EBX
CALL 0x00016040
ADD EBX,0x37651
SUB ESP,0x2c
TEST ESI,ESI
JZ 0x000369ce
MOV EDX,dword ptr [ESI + 0x4]
TEST byte ptr [ESI],0x1
JZ 0x00036a16
LEA EAX,[EBX + 0x96d0]
CMP dword ptr [EAX],EDX
JZ 0x00036a10
MOV EAX,dword ptr [ESP + 0x40]
MOV EDI,dword ptr [EAX + 0x4]
TEST byte ptr [EAX],0x1
JZ 0x00036a0a
LEA EAX,[EBX + 0x96d0]
CMP dword ptr [EAX],EDI
JZ 0x00036a00
SUB ECX,0x7
CMP ECX,0x15
JA 0x00036c9e
MOV EAX,dword ptr [EBX + ECX*0x4 + 0xfffe7114]
ADD EAX,EBX
JMP EAX
MOV EAX,dword ptr [ESP + 0x40]
MOV EAX,dword ptr [EAX + 0xc]
MOV EDI,dword ptr [EAX + 0x4]
MOV EDI,dword ptr [EDI + 0x14]
JMP 0x000369e4
MOV EAX,dword ptr [ESI + 0xc]
MOV EDX,dword ptr [EAX + 0x4]
MOV EDX,dword ptr [EDX + 0x14]
JMP 0x000369ce
PUSH EAX
LEA EAX,[EBX + 0xfffe7364]
PUSH EAX
LEA EAX,[EBX + 0xfffe6c50]
PUSH 0x3df
PUSH EAX
CALL 0x0002be10
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)\n\n{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}\n\n" comment (function_definition "void __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)\n\n{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" identifier (parameter_list "(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "byte *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcStack_30;" primitive_type (pointer_declarator "*pcStack_30" * identifier) ;) (declaration "undefined4 uStack_24;" type_identifier identifier ;) (declaration "undefined4 auStack_20 [3];" type_identifier (array_declarator "auStack_20 [3]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar8 = (undefined4 *)0x0;" (assignment_expression "puVar8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_14 = 0x369af;" (assignment_expression "uStack_14 = 0x369af" identifier = number_literal) ;) (if_statement "if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" if (parenthesized_expression "(param_2 != (byte *)0x0)" ( (binary_expression "param_2 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" { (expression_statement "puVar8 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar8 = *(undefined4 **)(param_2 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" if (parenthesized_expression "((*param_2 & 1) != 0)" ( (binary_expression "(*param_2 & 1) != 0" (parenthesized_expression "(*param_2 & 1)" ( (binary_expression "*param_2 & 1" (pointer_expression "*param_2" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" { (if_statement "if (DAT_000776d0 != puVar8) goto LAB_000369ce;" if (parenthesized_expression "(DAT_000776d0 != puVar8)" ( (binary_expression "DAT_000776d0 != puVar8" identifier != identifier) )) (goto_statement "goto LAB_000369ce;" goto statement_identifier ;)) (expression_statement "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" ( (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) })) (expression_statement "puVar8 = (undefined4 *)puVar8[5];" (assignment_expression "puVar8 = (undefined4 *)puVar8[5]" identifier = (cast_expression "(undefined4 *)puVar8[5]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar8[5]" identifier [ number_literal ]))) ;) })) (labeled_statement "LAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);" statement_identifier : (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_4 + 4)" * (cast_expression "(undefined4 **)(param_4 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 4)" ( (binary_expression "param_4 + 4" identifier + number_literal) ))))) ;)) (if_statement "if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" if (parenthesized_expression "((*param_4 & 1) == 0)" ( (binary_expression "(*param_4 & 1) == 0" (parenthesized_expression "(*param_4 & 1)" ( (binary_expression "*param_4 & 1" (pointer_expression "*param_4" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }" { (labeled_statement "LAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];" statement_identifier : (expression_statement "puVar9 = (undefined4 *)puVar9[5];" (assignment_expression "puVar9 = (undefined4 *)puVar9[5]" identifier = (cast_expression "(undefined4 *)puVar9[5]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar9[5]" identifier [ number_literal ]))) ;)) (expression_statement "pbVar2 = param_4;" (assignment_expression "pbVar2 = param_4" identifier = identifier) ;) }) (else_clause "else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" else (compound_statement "{\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" { (expression_statement "pbVar2 = (byte *)&DAT_000776d0;" (assignment_expression "pbVar2 = (byte *)&DAT_000776d0" identifier = (cast_expression "(byte *)&DAT_000776d0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_000776d0" & identifier))) ;) (if_statement "if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" if (parenthesized_expression "(DAT_000776d0 == puVar9)" ( (binary_expression "DAT_000776d0 == puVar9" identifier == identifier) )) (compound_statement "{\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" { (expression_statement "param_4 = *(byte **)(param_4 + 0xc);" (assignment_expression "param_4 = *(byte **)(param_4 + 0xc)" identifier = (pointer_expression "*(byte **)(param_4 + 0xc)" * (cast_expression "(byte **)(param_4 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 0xc)" ( (binary_expression "param_4 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_4 + 4)" * (cast_expression "(undefined4 **)(param_4 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 4)" ( (binary_expression "param_4 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00036a0a;" goto statement_identifier ;) })) }))) (switch_statement "switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" switch (parenthesized_expression "(param_3)" ( identifier )) (compound_statement "{\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" { (case_statement "case 7:" case number_literal :) (case_statement "case 0x14:\n    pcStack_30 = "-";\n    break;" case number_literal : (expression_statement "pcStack_30 = "-";" (assignment_expression "pcStack_30 = "-"" identifier = (string_literal ""-"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n    pcStack_30 = "~";\n    break;" case number_literal : (expression_statement "pcStack_30 = "~";" (assignment_expression "pcStack_30 = "~"" identifier = (string_literal ""~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n    pcStack_30 = "!";\n    break;" case number_literal : (expression_statement "pcStack_30 = "!";" (assignment_expression "pcStack_30 = "!"" identifier = (string_literal ""!"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n    pcStack_30 = "*";\n    break;" case number_literal : (expression_statement "pcStack_30 = "*";" (assignment_expression "pcStack_30 = "*"" identifier = (string_literal ""*"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n    pcStack_30 = "/";\n    break;" case number_literal : (expression_statement "pcStack_30 = "/";" (assignment_expression "pcStack_30 = "/"" identifier = (string_literal ""/"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n    pcStack_30 = "%";\n    break;" case number_literal : (expression_statement "pcStack_30 = "%";" (assignment_expression "pcStack_30 = "%"" identifier = (string_literal ""%"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n    pcStack_30 = "<<";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<<";" (assignment_expression "pcStack_30 = "<<"" identifier = (string_literal ""<<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xe:\n    pcStack_30 = ">>";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">>";" (assignment_expression "pcStack_30 = ">>"" identifier = (string_literal "">>"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xf:\n    pcStack_30 = "|";\n    break;" case number_literal : (expression_statement "pcStack_30 = "|";" (assignment_expression "pcStack_30 = "|"" identifier = (string_literal ""|"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x10:\n    pcStack_30 = "|~";\n    break;" case number_literal : (expression_statement "pcStack_30 = "|~";" (assignment_expression "pcStack_30 = "|~"" identifier = (string_literal ""|~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x11:\n    pcStack_30 = "^";\n    break;" case number_literal : (expression_statement "pcStack_30 = "^";" (assignment_expression "pcStack_30 = "^"" identifier = (string_literal ""^"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x12:\n    pcStack_30 = "&";\n    break;" case number_literal : (expression_statement "pcStack_30 = "&";" (assignment_expression "pcStack_30 = "&"" identifier = (string_literal ""&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x13:\n    pcStack_30 = "+";\n    break;" case number_literal : (expression_statement "pcStack_30 = "+";" (assignment_expression "pcStack_30 = "+"" identifier = (string_literal ""+"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x15:\n    pcStack_30 = "==";\n    break;" case number_literal : (expression_statement "pcStack_30 = "==";" (assignment_expression "pcStack_30 = "=="" identifier = (string_literal ""=="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x16:\n    pcStack_30 = "!=";\n    break;" case number_literal : (expression_statement "pcStack_30 = "!=";" (assignment_expression "pcStack_30 = "!="" identifier = (string_literal ""!="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x17:\n    pcStack_30 = "<";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<";" (assignment_expression "pcStack_30 = "<"" identifier = (string_literal ""<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x18:\n    pcStack_30 = "<=";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<=";" (assignment_expression "pcStack_30 = "<="" identifier = (string_literal ""<="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x19:\n    pcStack_30 = ">=";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">=";" (assignment_expression "pcStack_30 = ">="" identifier = (string_literal "">="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1a:\n    pcStack_30 = ">";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">";" (assignment_expression "pcStack_30 = ">"" identifier = (string_literal "">"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1b:\n    pcStack_30 = "&&";\n    break;" case number_literal : (expression_statement "pcStack_30 = "&&";" (assignment_expression "pcStack_30 = "&&"" identifier = (string_literal ""&&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:\n    pcStack_30 = "||";\n    break;" case number_literal : (expression_statement "pcStack_30 = "||";" (assignment_expression "pcStack_30 = "||"" identifier = (string_literal ""||"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "default:\n                    /* WARNING: Subroutine does not return */\n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" default : comment (expression_statement "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" (call_expression "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" identifier (argument_list "("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" ( (string_literal ""../../gas/symbols.c"" " string_content ") , number_literal , (string_literal ""report_op_error"" " string_content ") , identifier ))) ;)) })) (expression_statement "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);" (assignment_expression "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20)" identifier = (call_expression "FUN_000214d0(param_1,&uStack_24,auStack_20)" identifier (argument_list "(param_1,&uStack_24,auStack_20)" ( identifier , (pointer_expression "&uStack_24" & identifier) , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" { (expression_statement "pcVar11 = (char *)*puVar9;" (assignment_expression "pcVar11 = (char *)*puVar9" identifier = (cast_expression "(char *)*puVar9" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar9" * identifier))) ;) (if_statement "if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" if (parenthesized_expression "(param_2 == (byte *)0x0)" ( (binary_expression "param_2 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }" { (expression_statement "pcVar12 = "invalid operand (%s section) for `%s\'";" (assignment_expression "pcVar12 = "invalid operand (%s section) for `%s\'"" identifier = (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ")) ;) (expression_statement "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "pcVar10 = pcVar11;" (assignment_expression "pcVar10 = pcVar11" identifier = identifier) ;) (expression_statement "pcVar11 = pcStack_30;" (assignment_expression "pcVar11 = pcStack_30" identifier = identifier) ;) }) (else_clause "else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" else (compound_statement "{\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" { (expression_statement "pcVar10 = (char *)*puVar8;" (assignment_expression "pcVar10 = (char *)*puVar8" identifier = (cast_expression "(char *)*puVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar8" * identifier))) ;) (expression_statement "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\'",5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "pcVar12 = pcStack_30;" (assignment_expression "pcVar12 = pcStack_30" identifier = identifier) ;) }))) (expression_statement "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);" (call_expression "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" identifier (argument_list "(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" ( identifier , (subscript_expression "auStack_20[0]" identifier [ number_literal ]) , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "puVar6 = *(undefined4 **)(param_1 + 4);" (assignment_expression "puVar6 = *(undefined4 **)(param_1 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 4)" * (cast_expression "(undefined4 **)(param_1 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" { (if_statement "if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" if (parenthesized_expression "(DAT_000776d0 != puVar6)" ( (binary_expression "DAT_000776d0 != puVar6" identifier != identifier) )) (compound_statement "{\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" { (expression_statement "uVar4 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar4 = *(undefined4 *)(param_1 + 8)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 8)" * (cast_expression "(undefined4 *)(param_1 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" identifier = (pointer_expression "*puVar9" * identifier)) ;) (goto_statement "goto joined_r0x00036c49;" goto statement_identifier ;) })) (expression_statement "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);" (assignment_expression "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_1 + 0xc) + 4)" ( (binary_expression "*(int *)(param_1 + 0xc) + 4" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) })) (expression_statement "uVar4 = puVar6[1];" (assignment_expression "uVar4 = puVar6[1]" identifier = (subscript_expression "puVar6[1]" identifier [ number_literal ])) ;) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" identifier = (pointer_expression "*puVar9" * identifier)) ;) (labeled_statement "joined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" statement_identifier : (if_statement "if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" if (parenthesized_expression "(param_2 == (byte *)0x0)" ( (binary_expression "param_2 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" { (expression_statement "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4)" identifier (argument_list "(uVar7,uVar1,pcStack_30,uVar4)" ( identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) }))) (expression_statement "uVar7 = *puVar8;" (assignment_expression "uVar7 = *puVar8" identifier = (pointer_expression "*puVar8" * identifier)) ;) (expression_statement "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4)" identifier (argument_list "(uVar5,uVar7,uVar1,pcStack_30,uVar4)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 report_op_error(symbolS *symp,symbolS *left,operatorT op,symbolS *right)\n\n{\n  symbolS *psVar1;\n  int iVar2;\n  char *format;\n  char *pcVar3;\n  segT paVar4;\n  char *pcVar5;\n  segT paVar6;\n  segT paVar7;\n  char *pcVar8;\n  char *local_30;\n  char *file;\n  uint line;\n  undefined4 uStack_14;\n  \n  paVar6 = (segT)0x0;\n  uStack_14 = 0x369af;\n  if (left != (symbolS *)0x0) {\n    paVar6 = (segT)left->bsym;\n    if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }\n    paVar6 = (segT)paVar6->flags;\n  }\nLAB_000369ce:\n  paVar7 = (segT)right->bsym;\n  if (((uint)right->sy_flags & 1) == 0) {\nLAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;\n  }\n  else if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }\n  switch(op) {\n  case O_uminus:\n  case O_subtract:\n    local_30 = "-";\n    break;\n  case O_bit_not:\n    local_30 = "~";\n    break;\n  case O_logical_not:\n    local_30 = "!";\n    break;\n  case O_multiply:\n    local_30 = "*";\n    break;\n  case O_divide:\n    local_30 = "/";\n    break;\n  case O_modulus:\n    local_30 = "%";\n    break;\n  case O_left_shift:\n    local_30 = "<<";\n    break;\n  case O_right_shift:\n    local_30 = ">>";\n    break;\n  case O_bit_inclusive_or:\n    local_30 = "|";\n    break;\n  case O_bit_or_not:\n    local_30 = "|~";\n    break;\n  case O_bit_exclusive_or:\n    local_30 = "^";\n    break;\n  case O_bit_and:\n    local_30 = "&";\n    break;\n  case O_add:\n    local_30 = "+";\n    break;\n  case O_eq:\n    local_30 = "==";\n    break;\n  case O_ne:\n    local_30 = "!=";\n    break;\n  case O_lt:\n    local_30 = "<";\n    break;\n  case O_le:\n    local_30 = "<=";\n    break;\n  case O_ge:\n    local_30 = ">=";\n    break;\n  case O_gt:\n    local_30 = ">";\n    break;\n  case O_logical_and:\n    local_30 = "&&";\n    break;\n  case O_logical_or:\n    local_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");\n  }\n  iVar2 = expr_symbol_where(symp,&file,&line);\n  if (iVar2 != 0) {\n    pcVar8 = paVar7->name;\n    if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }\n    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);\n    return;\n  }\n  paVar4 = (segT)symp->bsym;\n  if (((uint)symp->sy_flags & 1) != 0) {\n    if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }\n    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;\n  }\n  psVar1 = (symbolS *)paVar4->id;\n  pcVar8 = paVar7->name;\njoined_r0x00036c49:\n  if (left == (symbolS *)0x0) {\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }\n  pcVar5 = paVar6->name;\n  pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5);\n  as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1);\n  return;\n}\n\n" comment (function_definition "void __regparm3 report_op_error(symbolS *symp,symbolS *left,operatorT op,symbolS *right)\n\n{\n  symbolS *psVar1;\n  int iVar2;\n  char *format;\n  char *pcVar3;\n  segT paVar4;\n  char *pcVar5;\n  segT paVar6;\n  segT paVar7;\n  char *pcVar8;\n  char *local_30;\n  char *file;\n  uint line;\n  undefined4 uStack_14;\n  \n  paVar6 = (segT)0x0;\n  uStack_14 = 0x369af;\n  if (left != (symbolS *)0x0) {\n    paVar6 = (segT)left->bsym;\n    if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }\n    paVar6 = (segT)paVar6->flags;\n  }\nLAB_000369ce:\n  paVar7 = (segT)right->bsym;\n  if (((uint)right->sy_flags & 1) == 0) {\nLAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;\n  }\n  else if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }\n  switch(op) {\n  case O_uminus:\n  case O_subtract:\n    local_30 = "-";\n    break;\n  case O_bit_not:\n    local_30 = "~";\n    break;\n  case O_logical_not:\n    local_30 = "!";\n    break;\n  case O_multiply:\n    local_30 = "*";\n    break;\n  case O_divide:\n    local_30 = "/";\n    break;\n  case O_modulus:\n    local_30 = "%";\n    break;\n  case O_left_shift:\n    local_30 = "<<";\n    break;\n  case O_right_shift:\n    local_30 = ">>";\n    break;\n  case O_bit_inclusive_or:\n    local_30 = "|";\n    break;\n  case O_bit_or_not:\n    local_30 = "|~";\n    break;\n  case O_bit_exclusive_or:\n    local_30 = "^";\n    break;\n  case O_bit_and:\n    local_30 = "&";\n    break;\n  case O_add:\n    local_30 = "+";\n    break;\n  case O_eq:\n    local_30 = "==";\n    break;\n  case O_ne:\n    local_30 = "!=";\n    break;\n  case O_lt:\n    local_30 = "<";\n    break;\n  case O_le:\n    local_30 = "<=";\n    break;\n  case O_ge:\n    local_30 = ">=";\n    break;\n  case O_gt:\n    local_30 = ">";\n    break;\n  case O_logical_and:\n    local_30 = "&&";\n    break;\n  case O_logical_or:\n    local_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");\n  }\n  iVar2 = expr_symbol_where(symp,&file,&line);\n  if (iVar2 != 0) {\n    pcVar8 = paVar7->name;\n    if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }\n    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);\n    return;\n  }\n  paVar4 = (segT)symp->bsym;\n  if (((uint)symp->sy_flags & 1) != 0) {\n    if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }\n    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;\n  }\n  psVar1 = (symbolS *)paVar4->id;\n  pcVar8 = paVar7->name;\njoined_r0x00036c49:\n  if (left == (symbolS *)0x0) {\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }\n  pcVar5 = paVar6->name;\n  pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5);\n  as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1);\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "report_op_error(symbolS *symp,symbolS *left,operatorT op,symbolS *right)" identifier (parameter_list "(symbolS *symp,symbolS *left,operatorT op,symbolS *right)" ( (parameter_declaration "symbolS *symp" type_identifier (pointer_declarator "*symp" * identifier)) , (parameter_declaration "symbolS *left" type_identifier (pointer_declarator "*left" * identifier)) , (parameter_declaration "operatorT op" type_identifier identifier) , (parameter_declaration "symbolS *right" type_identifier (pointer_declarator "*right" * identifier)) ))) (compound_statement "{\n  symbolS *psVar1;\n  int iVar2;\n  char *format;\n  char *pcVar3;\n  segT paVar4;\n  char *pcVar5;\n  segT paVar6;\n  segT paVar7;\n  char *pcVar8;\n  char *local_30;\n  char *file;\n  uint line;\n  undefined4 uStack_14;\n  \n  paVar6 = (segT)0x0;\n  uStack_14 = 0x369af;\n  if (left != (symbolS *)0x0) {\n    paVar6 = (segT)left->bsym;\n    if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }\n    paVar6 = (segT)paVar6->flags;\n  }\nLAB_000369ce:\n  paVar7 = (segT)right->bsym;\n  if (((uint)right->sy_flags & 1) == 0) {\nLAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;\n  }\n  else if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }\n  switch(op) {\n  case O_uminus:\n  case O_subtract:\n    local_30 = "-";\n    break;\n  case O_bit_not:\n    local_30 = "~";\n    break;\n  case O_logical_not:\n    local_30 = "!";\n    break;\n  case O_multiply:\n    local_30 = "*";\n    break;\n  case O_divide:\n    local_30 = "/";\n    break;\n  case O_modulus:\n    local_30 = "%";\n    break;\n  case O_left_shift:\n    local_30 = "<<";\n    break;\n  case O_right_shift:\n    local_30 = ">>";\n    break;\n  case O_bit_inclusive_or:\n    local_30 = "|";\n    break;\n  case O_bit_or_not:\n    local_30 = "|~";\n    break;\n  case O_bit_exclusive_or:\n    local_30 = "^";\n    break;\n  case O_bit_and:\n    local_30 = "&";\n    break;\n  case O_add:\n    local_30 = "+";\n    break;\n  case O_eq:\n    local_30 = "==";\n    break;\n  case O_ne:\n    local_30 = "!=";\n    break;\n  case O_lt:\n    local_30 = "<";\n    break;\n  case O_le:\n    local_30 = "<=";\n    break;\n  case O_ge:\n    local_30 = ">=";\n    break;\n  case O_gt:\n    local_30 = ">";\n    break;\n  case O_logical_and:\n    local_30 = "&&";\n    break;\n  case O_logical_or:\n    local_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");\n  }\n  iVar2 = expr_symbol_where(symp,&file,&line);\n  if (iVar2 != 0) {\n    pcVar8 = paVar7->name;\n    if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }\n    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);\n    return;\n  }\n  paVar4 = (segT)symp->bsym;\n  if (((uint)symp->sy_flags & 1) != 0) {\n    if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }\n    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;\n  }\n  psVar1 = (symbolS *)paVar4->id;\n  pcVar8 = paVar7->name;\njoined_r0x00036c49:\n  if (left == (symbolS *)0x0) {\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }\n  pcVar5 = paVar6->name;\n  pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5);\n  as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1);\n  return;\n}" { (declaration "symbolS *psVar1;" type_identifier (pointer_declarator "*psVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "char *pcVar3;" primitive_type (pointer_declarator "*pcVar3" * identifier) ;) (declaration "segT paVar4;" type_identifier identifier ;) (declaration "char *pcVar5;" primitive_type (pointer_declarator "*pcVar5" * identifier) ;) (declaration "segT paVar6;" type_identifier identifier ;) (declaration "segT paVar7;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *local_30;" primitive_type (pointer_declarator "*local_30" * identifier) ;) (declaration "char *file;" primitive_type (pointer_declarator "*file" * identifier) ;) (declaration "uint line;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "paVar6 = (segT)0x0;" (assignment_expression "paVar6 = (segT)0x0" identifier = (cast_expression "(segT)0x0" ( (type_descriptor "segT" type_identifier) ) number_literal)) ;) (expression_statement "uStack_14 = 0x369af;" (assignment_expression "uStack_14 = 0x369af" identifier = number_literal) ;) (if_statement "if (left != (symbolS *)0x0) {\n    paVar6 = (segT)left->bsym;\n    if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }\n    paVar6 = (segT)paVar6->flags;\n  }" if (parenthesized_expression "(left != (symbolS *)0x0)" ( (binary_expression "left != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    paVar6 = (segT)left->bsym;\n    if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }\n    paVar6 = (segT)paVar6->flags;\n  }" { (expression_statement "paVar6 = (segT)left->bsym;" (assignment_expression "paVar6 = (segT)left->bsym" identifier = (cast_expression "(segT)left->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "left->bsym" identifier -> field_identifier))) ;) (if_statement "if (((uint)left->sy_flags & 1) != 0) {\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }" if (parenthesized_expression "(((uint)left->sy_flags & 1) != 0)" ( (binary_expression "((uint)left->sy_flags & 1) != 0" (parenthesized_expression "((uint)left->sy_flags & 1)" ( (binary_expression "(uint)left->sy_flags & 1" (cast_expression "(uint)left->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "left->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\n      if (reg_section != paVar6) goto LAB_000369ce;\n      paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;\n    }" { (if_statement "if (reg_section != paVar6) goto LAB_000369ce;" if (parenthesized_expression "(reg_section != paVar6)" ( (binary_expression "reg_section != paVar6" identifier != identifier) )) (goto_statement "goto LAB_000369ce;" goto statement_identifier ;)) (expression_statement "paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym;" (assignment_expression "paVar6 = (segT)((left->sy_value).X_op_symbol)->bsym" identifier = (field_expression "(segT)((left->sy_value).X_op_symbol)->bsym" (call_expression "(segT)((left->sy_value).X_op_symbol)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "((left->sy_value).X_op_symbol)" ( (field_expression "(left->sy_value).X_op_symbol" (parenthesized_expression "(left->sy_value)" ( (field_expression "left->sy_value" identifier -> field_identifier) )) . field_identifier) ))) -> field_identifier)) ;) })) (expression_statement "paVar6 = (segT)paVar6->flags;" (assignment_expression "paVar6 = (segT)paVar6->flags" identifier = (cast_expression "(segT)paVar6->flags" ( (type_descriptor "segT" type_identifier) ) (field_expression "paVar6->flags" identifier -> field_identifier))) ;) })) (labeled_statement "LAB_000369ce:\n  paVar7 = (segT)right->bsym;" statement_identifier : (expression_statement "paVar7 = (segT)right->bsym;" (assignment_expression "paVar7 = (segT)right->bsym" identifier = (cast_expression "(segT)right->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "right->bsym" identifier -> field_identifier))) ;)) (if_statement "if (((uint)right->sy_flags & 1) == 0) {\nLAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;\n  }\n  else if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }" if (parenthesized_expression "(((uint)right->sy_flags & 1) == 0)" ( (binary_expression "((uint)right->sy_flags & 1) == 0" (parenthesized_expression "((uint)right->sy_flags & 1)" ( (binary_expression "(uint)right->sy_flags & 1" (cast_expression "(uint)right->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "right->sy_flags" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;\n  }" { (labeled_statement "LAB_00036a0a:\n    paVar7 = (segT)paVar7->flags;" statement_identifier : (expression_statement "paVar7 = (segT)paVar7->flags;" (assignment_expression "paVar7 = (segT)paVar7->flags" identifier = (cast_expression "(segT)paVar7->flags" ( (type_descriptor "segT" type_identifier) ) (field_expression "paVar7->flags" identifier -> field_identifier))) ;)) }) (else_clause "else if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }" else (if_statement "if (reg_section == paVar7) {\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }" if (parenthesized_expression "(reg_section == paVar7)" ( (binary_expression "reg_section == paVar7" identifier == identifier) )) (compound_statement "{\n    paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;\n    goto LAB_00036a0a;\n  }" { (expression_statement "paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym;" (assignment_expression "paVar7 = (segT)((right->sy_value).X_op_symbol)->bsym" identifier = (field_expression "(segT)((right->sy_value).X_op_symbol)->bsym" (call_expression "(segT)((right->sy_value).X_op_symbol)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "((right->sy_value).X_op_symbol)" ( (field_expression "(right->sy_value).X_op_symbol" (parenthesized_expression "(right->sy_value)" ( (field_expression "right->sy_value" identifier -> field_identifier) )) . field_identifier) ))) -> field_identifier)) ;) (goto_statement "goto LAB_00036a0a;" goto statement_identifier ;) })))) (switch_statement "switch(op) {\n  case O_uminus:\n  case O_subtract:\n    local_30 = "-";\n    break;\n  case O_bit_not:\n    local_30 = "~";\n    break;\n  case O_logical_not:\n    local_30 = "!";\n    break;\n  case O_multiply:\n    local_30 = "*";\n    break;\n  case O_divide:\n    local_30 = "/";\n    break;\n  case O_modulus:\n    local_30 = "%";\n    break;\n  case O_left_shift:\n    local_30 = "<<";\n    break;\n  case O_right_shift:\n    local_30 = ">>";\n    break;\n  case O_bit_inclusive_or:\n    local_30 = "|";\n    break;\n  case O_bit_or_not:\n    local_30 = "|~";\n    break;\n  case O_bit_exclusive_or:\n    local_30 = "^";\n    break;\n  case O_bit_and:\n    local_30 = "&";\n    break;\n  case O_add:\n    local_30 = "+";\n    break;\n  case O_eq:\n    local_30 = "==";\n    break;\n  case O_ne:\n    local_30 = "!=";\n    break;\n  case O_lt:\n    local_30 = "<";\n    break;\n  case O_le:\n    local_30 = "<=";\n    break;\n  case O_ge:\n    local_30 = ">=";\n    break;\n  case O_gt:\n    local_30 = ">";\n    break;\n  case O_logical_and:\n    local_30 = "&&";\n    break;\n  case O_logical_or:\n    local_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");\n  }" switch (parenthesized_expression "(op)" ( identifier )) (compound_statement "{\n  case O_uminus:\n  case O_subtract:\n    local_30 = "-";\n    break;\n  case O_bit_not:\n    local_30 = "~";\n    break;\n  case O_logical_not:\n    local_30 = "!";\n    break;\n  case O_multiply:\n    local_30 = "*";\n    break;\n  case O_divide:\n    local_30 = "/";\n    break;\n  case O_modulus:\n    local_30 = "%";\n    break;\n  case O_left_shift:\n    local_30 = "<<";\n    break;\n  case O_right_shift:\n    local_30 = ">>";\n    break;\n  case O_bit_inclusive_or:\n    local_30 = "|";\n    break;\n  case O_bit_or_not:\n    local_30 = "|~";\n    break;\n  case O_bit_exclusive_or:\n    local_30 = "^";\n    break;\n  case O_bit_and:\n    local_30 = "&";\n    break;\n  case O_add:\n    local_30 = "+";\n    break;\n  case O_eq:\n    local_30 = "==";\n    break;\n  case O_ne:\n    local_30 = "!=";\n    break;\n  case O_lt:\n    local_30 = "<";\n    break;\n  case O_le:\n    local_30 = "<=";\n    break;\n  case O_ge:\n    local_30 = ">=";\n    break;\n  case O_gt:\n    local_30 = ">";\n    break;\n  case O_logical_and:\n    local_30 = "&&";\n    break;\n  case O_logical_or:\n    local_30 = "||";\n    break;\n  default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");\n  }" { (case_statement "case O_uminus:" case identifier :) (case_statement "case O_subtract:\n    local_30 = "-";\n    break;" case identifier : (expression_statement "local_30 = "-";" (assignment_expression "local_30 = "-"" identifier = (string_literal ""-"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_bit_not:\n    local_30 = "~";\n    break;" case identifier : (expression_statement "local_30 = "~";" (assignment_expression "local_30 = "~"" identifier = (string_literal ""~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_logical_not:\n    local_30 = "!";\n    break;" case identifier : (expression_statement "local_30 = "!";" (assignment_expression "local_30 = "!"" identifier = (string_literal ""!"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_multiply:\n    local_30 = "*";\n    break;" case identifier : (expression_statement "local_30 = "*";" (assignment_expression "local_30 = "*"" identifier = (string_literal ""*"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_divide:\n    local_30 = "/";\n    break;" case identifier : (expression_statement "local_30 = "/";" (assignment_expression "local_30 = "/"" identifier = (string_literal ""/"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_modulus:\n    local_30 = "%";\n    break;" case identifier : (expression_statement "local_30 = "%";" (assignment_expression "local_30 = "%"" identifier = (string_literal ""%"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_left_shift:\n    local_30 = "<<";\n    break;" case identifier : (expression_statement "local_30 = "<<";" (assignment_expression "local_30 = "<<"" identifier = (string_literal ""<<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_right_shift:\n    local_30 = ">>";\n    break;" case identifier : (expression_statement "local_30 = ">>";" (assignment_expression "local_30 = ">>"" identifier = (string_literal "">>"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_bit_inclusive_or:\n    local_30 = "|";\n    break;" case identifier : (expression_statement "local_30 = "|";" (assignment_expression "local_30 = "|"" identifier = (string_literal ""|"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_bit_or_not:\n    local_30 = "|~";\n    break;" case identifier : (expression_statement "local_30 = "|~";" (assignment_expression "local_30 = "|~"" identifier = (string_literal ""|~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_bit_exclusive_or:\n    local_30 = "^";\n    break;" case identifier : (expression_statement "local_30 = "^";" (assignment_expression "local_30 = "^"" identifier = (string_literal ""^"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_bit_and:\n    local_30 = "&";\n    break;" case identifier : (expression_statement "local_30 = "&";" (assignment_expression "local_30 = "&"" identifier = (string_literal ""&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_add:\n    local_30 = "+";\n    break;" case identifier : (expression_statement "local_30 = "+";" (assignment_expression "local_30 = "+"" identifier = (string_literal ""+"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_eq:\n    local_30 = "==";\n    break;" case identifier : (expression_statement "local_30 = "==";" (assignment_expression "local_30 = "=="" identifier = (string_literal ""=="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_ne:\n    local_30 = "!=";\n    break;" case identifier : (expression_statement "local_30 = "!=";" (assignment_expression "local_30 = "!="" identifier = (string_literal ""!="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_lt:\n    local_30 = "<";\n    break;" case identifier : (expression_statement "local_30 = "<";" (assignment_expression "local_30 = "<"" identifier = (string_literal ""<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_le:\n    local_30 = "<=";\n    break;" case identifier : (expression_statement "local_30 = "<=";" (assignment_expression "local_30 = "<="" identifier = (string_literal ""<="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_ge:\n    local_30 = ">=";\n    break;" case identifier : (expression_statement "local_30 = ">=";" (assignment_expression "local_30 = ">="" identifier = (string_literal "">="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_gt:\n    local_30 = ">";\n    break;" case identifier : (expression_statement "local_30 = ">";" (assignment_expression "local_30 = ">"" identifier = (string_literal "">"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_logical_and:\n    local_30 = "&&";\n    break;" case identifier : (expression_statement "local_30 = "&&";" (assignment_expression "local_30 = "&&"" identifier = (string_literal ""&&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case O_logical_or:\n    local_30 = "||";\n    break;" case identifier : (expression_statement "local_30 = "||";" (assignment_expression "local_30 = "||"" identifier = (string_literal ""||"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "default:\n                    /* WARNING: Subroutine does not return */\n    as_abort("../../gas/symbols.c",0x3df,"report_op_error");" default : comment (expression_statement "as_abort("../../gas/symbols.c",0x3df,"report_op_error");" (call_expression "as_abort("../../gas/symbols.c",0x3df,"report_op_error")" identifier (argument_list "("../../gas/symbols.c",0x3df,"report_op_error")" ( (string_literal ""../../gas/symbols.c"" " string_content ") , number_literal , (string_literal ""report_op_error"" " string_content ") ))) ;)) })) (expression_statement "iVar2 = expr_symbol_where(symp,&file,&line);" (assignment_expression "iVar2 = expr_symbol_where(symp,&file,&line)" identifier = (call_expression "expr_symbol_where(symp,&file,&line)" identifier (argument_list "(symp,&file,&line)" ( identifier , (pointer_expression "&file" & identifier) , (pointer_expression "&line" & identifier) )))) ;) (if_statement "if (iVar2 != 0) {\n    pcVar8 = paVar7->name;\n    if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }\n    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);\n    return;\n  }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar8 = paVar7->name;\n    if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }\n    as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);\n    return;\n  }" { (expression_statement "pcVar8 = paVar7->name;" (assignment_expression "pcVar8 = paVar7->name" identifier = (field_expression "paVar7->name" identifier -> field_identifier)) ;) (if_statement "if (left == (symbolS *)0x0) {\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }\n    else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }" if (parenthesized_expression "(left == (symbolS *)0x0)" ( (binary_expression "left == (symbolS *)0x0" identifier == (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar5 = "invalid operand (%s section) for `%s\'";\n      format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar3 = pcVar8;\n      pcVar8 = local_30;\n    }" { (expression_statement "pcVar5 = "invalid operand (%s section) for `%s\'";" (assignment_expression "pcVar5 = "invalid operand (%s section) for `%s\'"" identifier = (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ")) ;) (expression_statement "format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5);" (assignment_expression "format = (char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier = (cast_expression "(char *)dcgettext(0,"invalid operand (%s section) for `%s\'",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "pcVar3 = pcVar8;" (assignment_expression "pcVar3 = pcVar8" identifier = identifier) ;) (expression_statement "pcVar8 = local_30;" (assignment_expression "pcVar8 = local_30" identifier = identifier) ;) }) (else_clause "else {\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }" else (compound_statement "{\n      pcVar3 = paVar6->name;\n      format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar5 = local_30;\n    }" { (expression_statement "pcVar3 = paVar6->name;" (assignment_expression "pcVar3 = paVar6->name" identifier = (field_expression "paVar6->name" identifier -> field_identifier)) ;) (expression_statement "format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);" (assignment_expression "format = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier = (cast_expression "(char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\'",5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\'"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "pcVar5 = local_30;" (assignment_expression "pcVar5 = local_30" identifier = identifier) ;) }))) (expression_statement "as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5);" (call_expression "as_bad_where(file,line,format,pcVar3,pcVar8,pcVar5)" identifier (argument_list "(file,line,format,pcVar3,pcVar8,pcVar5)" ( identifier , identifier , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "paVar4 = (segT)symp->bsym;" (assignment_expression "paVar4 = (segT)symp->bsym" identifier = (cast_expression "(segT)symp->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "symp->bsym" identifier -> field_identifier))) ;) (if_statement "if (((uint)symp->sy_flags & 1) != 0) {\n    if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }\n    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;\n  }" if (parenthesized_expression "(((uint)symp->sy_flags & 1) != 0)" ( (binary_expression "((uint)symp->sy_flags & 1) != 0" (parenthesized_expression "((uint)symp->sy_flags & 1)" ( (binary_expression "(uint)symp->sy_flags & 1" (cast_expression "(uint)symp->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "symp->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\n    if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }\n    paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;\n  }" { (if_statement "if (reg_section != paVar4) {\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }" if (parenthesized_expression "(reg_section != paVar4)" ( (binary_expression "reg_section != paVar4" identifier != identifier) )) (compound_statement "{\n      psVar1 = (symp->sy_value).X_add_symbol;\n      pcVar8 = paVar7->name;\n      goto joined_r0x00036c49;\n    }" { (expression_statement "psVar1 = (symp->sy_value).X_add_symbol;" (assignment_expression "psVar1 = (symp->sy_value).X_add_symbol" identifier = (field_expression "(symp->sy_value).X_add_symbol" (parenthesized_expression "(symp->sy_value)" ( (field_expression "symp->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (expression_statement "pcVar8 = paVar7->name;" (assignment_expression "pcVar8 = paVar7->name" identifier = (field_expression "paVar7->name" identifier -> field_identifier)) ;) (goto_statement "goto joined_r0x00036c49;" goto statement_identifier ;) })) (expression_statement "paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym;" (assignment_expression "paVar4 = (segT)((symp->sy_value).X_op_symbol)->bsym" identifier = (field_expression "(segT)((symp->sy_value).X_op_symbol)->bsym" (call_expression "(segT)((symp->sy_value).X_op_symbol)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "((symp->sy_value).X_op_symbol)" ( (field_expression "(symp->sy_value).X_op_symbol" (parenthesized_expression "(symp->sy_value)" ( (field_expression "symp->sy_value" identifier -> field_identifier) )) . field_identifier) ))) -> field_identifier)) ;) })) (expression_statement "psVar1 = (symbolS *)paVar4->id;" (assignment_expression "psVar1 = (symbolS *)paVar4->id" identifier = (cast_expression "(symbolS *)paVar4->id" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "paVar4->id" identifier -> field_identifier))) ;) (expression_statement "pcVar8 = paVar7->name;" (assignment_expression "pcVar8 = paVar7->name" identifier = (field_expression "paVar7->name" identifier -> field_identifier)) ;) (labeled_statement "joined_r0x00036c49:\n  if (left == (symbolS *)0x0) {\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }" statement_identifier : (if_statement "if (left == (symbolS *)0x0) {\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }" if (parenthesized_expression "(left == (symbolS *)0x0)" ( (binary_expression "left == (symbolS *)0x0" identifier == (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    as_bad(pcVar5,pcVar8,local_30,psVar1);\n    return;\n  }" { (expression_statement "pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);" (assignment_expression "pcVar5 = (char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier = (cast_expression "(char *)dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar5,pcVar8,local_30,psVar1);" (call_expression "as_bad(pcVar5,pcVar8,local_30,psVar1)" identifier (argument_list "(pcVar5,pcVar8,local_30,psVar1)" ( identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) }))) (expression_statement "pcVar5 = paVar6->name;" (assignment_expression "pcVar5 = paVar6->name" identifier = (field_expression "paVar6->name" identifier -> field_identifier)) ;) (expression_statement "pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5);" (assignment_expression "pcVar3 = (char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5)" identifier = (cast_expression "(char *)dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",\n                             5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1);" (call_expression "as_bad(pcVar3,pcVar5,pcVar8,local_30,psVar1)" identifier (argument_list "(pcVar3,pcVar5,pcVar8,local_30,psVar1)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)\n\n{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}\n\n" (function_definition "void __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)\n\n{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" identifier (parameter_list "(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) , (parameter_declaration "byte *param_4" type_identifier (pointer_declarator "*param_4" * identifier)) ))) (compound_statement "{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "undefined4 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "undefined4 *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (declaration "undefined4 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "char *pcVar11;" primitive_type (pointer_declarator "*pcVar11" * identifier) ;) (declaration "char *pcVar12;" primitive_type (pointer_declarator "*pcVar12" * identifier) ;) (declaration "char *pcStack_30;" primitive_type (pointer_declarator "*pcStack_30" * identifier) ;) (declaration "undefined4 uStack_24;" type_identifier identifier ;) (declaration "undefined4 auStack_20 [3];" type_identifier (array_declarator "auStack_20 [3]" identifier [ number_literal ]) ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "puVar8 = (undefined4 *)0x0;" (assignment_expression "puVar8 = (undefined4 *)0x0" identifier = (cast_expression "(undefined4 *)0x0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_14 = 0x369af;" (assignment_expression "uStack_14 = 0x369af" identifier = number_literal) ;) (if_statement "if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" if (parenthesized_expression "(param_2 != (byte *)0x0)" ( (binary_expression "param_2 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" { (expression_statement "puVar8 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar8 = *(undefined4 **)(param_2 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" if (parenthesized_expression "((*param_2 & 1) != 0)" ( (binary_expression "(*param_2 & 1) != 0" (parenthesized_expression "(*param_2 & 1)" ( (binary_expression "*param_2 & 1" (pointer_expression "*param_2" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" { (if_statement "if (DAT_000776d0 != puVar8) goto LAB_000369ce;" if (parenthesized_expression "(DAT_000776d0 != puVar8)" ( (binary_expression "DAT_000776d0 != puVar8" identifier != identifier) )) (goto_statement "goto LAB_000369ce;" goto statement_identifier ;)) (expression_statement "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" ( (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) })) (expression_statement "puVar8 = (undefined4 *)puVar8[5];" (assignment_expression "puVar8 = (undefined4 *)puVar8[5]" identifier = (cast_expression "(undefined4 *)puVar8[5]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar8[5]" identifier [ number_literal ]))) ;) })) (labeled_statement "LAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);" statement_identifier : (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_4 + 4)" * (cast_expression "(undefined4 **)(param_4 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 4)" ( (binary_expression "param_4 + 4" identifier + number_literal) ))))) ;)) (if_statement "if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" if (parenthesized_expression "((*param_4 & 1) == 0)" ( (binary_expression "(*param_4 & 1) == 0" (parenthesized_expression "(*param_4 & 1)" ( (binary_expression "*param_4 & 1" (pointer_expression "*param_4" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }" { (labeled_statement "LAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];" statement_identifier : (expression_statement "puVar9 = (undefined4 *)puVar9[5];" (assignment_expression "puVar9 = (undefined4 *)puVar9[5]" identifier = (cast_expression "(undefined4 *)puVar9[5]" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar9[5]" identifier [ number_literal ]))) ;)) (expression_statement "pbVar2 = param_4;" (assignment_expression "pbVar2 = param_4" identifier = identifier) ;) }) (else_clause "else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" else (compound_statement "{\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" { (expression_statement "pbVar2 = (byte *)&DAT_000776d0;" (assignment_expression "pbVar2 = (byte *)&DAT_000776d0" identifier = (cast_expression "(byte *)&DAT_000776d0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_000776d0" & identifier))) ;) (if_statement "if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" if (parenthesized_expression "(DAT_000776d0 == puVar9)" ( (binary_expression "DAT_000776d0 == puVar9" identifier == identifier) )) (compound_statement "{\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" { (expression_statement "param_4 = *(byte **)(param_4 + 0xc);" (assignment_expression "param_4 = *(byte **)(param_4 + 0xc)" identifier = (pointer_expression "*(byte **)(param_4 + 0xc)" * (cast_expression "(byte **)(param_4 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 0xc)" ( (binary_expression "param_4 + 0xc" identifier + number_literal) ))))) ;) (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_4 + 4)" * (cast_expression "(undefined4 **)(param_4 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_4 + 4)" ( (binary_expression "param_4 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00036a0a;" goto statement_identifier ;) })) }))) (switch_statement "switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" switch (parenthesized_expression "(param_3)" ( identifier )) (compound_statement "{\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" { (case_statement "case 7:" case number_literal :) (case_statement "case 0x14:\n    pcStack_30 = "-";\n    break;" case number_literal : (expression_statement "pcStack_30 = "-";" (assignment_expression "pcStack_30 = "-"" identifier = (string_literal ""-"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 8:\n    pcStack_30 = "~";\n    break;" case number_literal : (expression_statement "pcStack_30 = "~";" (assignment_expression "pcStack_30 = "~"" identifier = (string_literal ""~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 9:\n    pcStack_30 = "!";\n    break;" case number_literal : (expression_statement "pcStack_30 = "!";" (assignment_expression "pcStack_30 = "!"" identifier = (string_literal ""!"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 10:\n    pcStack_30 = "*";\n    break;" case number_literal : (expression_statement "pcStack_30 = "*";" (assignment_expression "pcStack_30 = "*"" identifier = (string_literal ""*"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n    pcStack_30 = "/";\n    break;" case number_literal : (expression_statement "pcStack_30 = "/";" (assignment_expression "pcStack_30 = "/"" identifier = (string_literal ""/"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n    pcStack_30 = "%";\n    break;" case number_literal : (expression_statement "pcStack_30 = "%";" (assignment_expression "pcStack_30 = "%"" identifier = (string_literal ""%"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n    pcStack_30 = "<<";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<<";" (assignment_expression "pcStack_30 = "<<"" identifier = (string_literal ""<<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xe:\n    pcStack_30 = ">>";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">>";" (assignment_expression "pcStack_30 = ">>"" identifier = (string_literal "">>"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0xf:\n    pcStack_30 = "|";\n    break;" case number_literal : (expression_statement "pcStack_30 = "|";" (assignment_expression "pcStack_30 = "|"" identifier = (string_literal ""|"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x10:\n    pcStack_30 = "|~";\n    break;" case number_literal : (expression_statement "pcStack_30 = "|~";" (assignment_expression "pcStack_30 = "|~"" identifier = (string_literal ""|~"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x11:\n    pcStack_30 = "^";\n    break;" case number_literal : (expression_statement "pcStack_30 = "^";" (assignment_expression "pcStack_30 = "^"" identifier = (string_literal ""^"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x12:\n    pcStack_30 = "&";\n    break;" case number_literal : (expression_statement "pcStack_30 = "&";" (assignment_expression "pcStack_30 = "&"" identifier = (string_literal ""&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x13:\n    pcStack_30 = "+";\n    break;" case number_literal : (expression_statement "pcStack_30 = "+";" (assignment_expression "pcStack_30 = "+"" identifier = (string_literal ""+"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x15:\n    pcStack_30 = "==";\n    break;" case number_literal : (expression_statement "pcStack_30 = "==";" (assignment_expression "pcStack_30 = "=="" identifier = (string_literal ""=="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x16:\n    pcStack_30 = "!=";\n    break;" case number_literal : (expression_statement "pcStack_30 = "!=";" (assignment_expression "pcStack_30 = "!="" identifier = (string_literal ""!="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x17:\n    pcStack_30 = "<";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<";" (assignment_expression "pcStack_30 = "<"" identifier = (string_literal ""<"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x18:\n    pcStack_30 = "<=";\n    break;" case number_literal : (expression_statement "pcStack_30 = "<=";" (assignment_expression "pcStack_30 = "<="" identifier = (string_literal ""<="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x19:\n    pcStack_30 = ">=";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">=";" (assignment_expression "pcStack_30 = ">="" identifier = (string_literal "">="" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1a:\n    pcStack_30 = ">";\n    break;" case number_literal : (expression_statement "pcStack_30 = ">";" (assignment_expression "pcStack_30 = ">"" identifier = (string_literal "">"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1b:\n    pcStack_30 = "&&";\n    break;" case number_literal : (expression_statement "pcStack_30 = "&&";" (assignment_expression "pcStack_30 = "&&"" identifier = (string_literal ""&&"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "case 0x1c:\n    pcStack_30 = "||";\n    break;" case number_literal : (expression_statement "pcStack_30 = "||";" (assignment_expression "pcStack_30 = "||"" identifier = (string_literal ""||"" " string_content ")) ;) (break_statement "break;" break ;)) (case_statement "default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" default : (expression_statement "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" (call_expression "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" identifier (argument_list "("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" ( (string_literal ""../../gas/symbols.c"" " string_content ") , number_literal , (string_literal ""report_op_error"" " string_content ") , identifier ))) ;)) })) (expression_statement "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);" (assignment_expression "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20)" identifier = (call_expression "FUN_000214d0(param_1,&uStack_24,auStack_20)" identifier (argument_list "(param_1,&uStack_24,auStack_20)" ( identifier , (pointer_expression "&uStack_24" & identifier) , identifier )))) ;) (if_statement "if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" { (expression_statement "pcVar11 = (char *)*puVar9;" (assignment_expression "pcVar11 = (char *)*puVar9" identifier = (cast_expression "(char *)*puVar9" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar9" * identifier))) ;) (if_statement "if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" if (parenthesized_expression "(param_2 == (byte *)0x0)" ( (binary_expression "param_2 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }" { (expression_statement "pcVar12 = "invalid operand (%s section) for `%s\'";" (assignment_expression "pcVar12 = "invalid operand (%s section) for `%s\'"" identifier = (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ")) ;) (expression_statement "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "pcVar10 = pcVar11;" (assignment_expression "pcVar10 = pcVar11" identifier = identifier) ;) (expression_statement "pcVar11 = pcStack_30;" (assignment_expression "pcVar11 = pcStack_30" identifier = identifier) ;) }) (else_clause "else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" else (compound_statement "{\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" { (expression_statement "pcVar10 = (char *)*puVar8;" (assignment_expression "pcVar10 = (char *)*puVar8" identifier = (cast_expression "(char *)*puVar8" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar8" * identifier))) ;) (expression_statement "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\'",5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\'"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "pcVar12 = pcStack_30;" (assignment_expression "pcVar12 = pcStack_30" identifier = identifier) ;) }))) (expression_statement "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);" (call_expression "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" identifier (argument_list "(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" ( identifier , (subscript_expression "auStack_20[0]" identifier [ number_literal ]) , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "puVar6 = *(undefined4 **)(param_1 + 4);" (assignment_expression "puVar6 = *(undefined4 **)(param_1 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_1 + 4)" * (cast_expression "(undefined4 **)(param_1 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" { (if_statement "if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" if (parenthesized_expression "(DAT_000776d0 != puVar6)" ( (binary_expression "DAT_000776d0 != puVar6" identifier != identifier) )) (compound_statement "{\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" { (expression_statement "uVar4 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar4 = *(undefined4 *)(param_1 + 8)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 8)" * (cast_expression "(undefined4 *)(param_1 + 8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" identifier = (pointer_expression "*puVar9" * identifier)) ;) (goto_statement "goto joined_r0x00036c49;" goto statement_identifier ;) })) (expression_statement "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);" (assignment_expression "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_1 + 0xc) + 4)" ( (binary_expression "*(int *)(param_1 + 0xc) + 4" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) })) (expression_statement "uVar4 = puVar6[1];" (assignment_expression "uVar4 = puVar6[1]" identifier = (subscript_expression "puVar6[1]" identifier [ number_literal ])) ;) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" identifier = (pointer_expression "*puVar9" * identifier)) ;) (labeled_statement "joined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" statement_identifier : (if_statement "if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" if (parenthesized_expression "(param_2 == (byte *)0x0)" ( (binary_expression "param_2 == (byte *)0x0" identifier == (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" { (expression_statement "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" identifier (argument_list "(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" ( number_literal , (string_literal ""invalid operand (%s section) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4)" identifier (argument_list "(uVar7,uVar1,pcStack_30,uVar4)" ( identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) }))) (expression_statement "uVar7 = *puVar8;" (assignment_expression "uVar7 = *puVar8" identifier = (pointer_expression "*puVar8" * identifier)) ;) (expression_statement "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" identifier = (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" identifier (argument_list "(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" ( number_literal , (string_literal ""invalid operands (%s and %s sections) for `%s\' when setting `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4)" identifier (argument_list "(uVar5,uVar7,uVar1,pcStack_30,uVar4)" ( identifier , identifier , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }))) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (break_statement break ;)) (case_statement default : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;)) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content escape_sequence ")) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , (subscript_expression IDENT [ LIT ]) , IDENT , IDENT , IDENT , IDENT ))) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (return_statement return ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT ))) ;) (return_statement return ;) })))
(function_definition "void __regparm3 FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)\n\n{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" (primitive_type "void") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_000369a0(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" (identifier "FUN_000369a0") (parameter_list "(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)" (( "(") (parameter_declaration "byte *param_1" (type_identifier "byte") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "byte *param_2" (type_identifier "byte") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) (, ",") (parameter_declaration "byte *param_4" (type_identifier "byte") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))) () ")"))) (compound_statement "{\n  undefined4 uVar1;\n  byte *pbVar2;\n  int iVar3;\n  undefined4 uVar4;\n  undefined4 uVar5;\n  undefined4 *puVar6;\n  undefined4 uVar7;\n  undefined4 *puVar8;\n  undefined4 *puVar9;\n  char *pcVar10;\n  char *pcVar11;\n  char *pcVar12;\n  char *pcStack_30;\n  undefined4 uStack_24;\n  undefined4 auStack_20 [3];\n  undefined4 uStack_14;\n  \n  puVar8 = (undefined4 *)0x0;\n  uStack_14 = 0x369af;\n  if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }\nLAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);\n  if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }\n  switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }\n  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);\n  if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }\n  puVar6 = *(undefined4 **)(param_1 + 4);\n  if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }\n  uVar4 = puVar6[1];\n  uVar1 = *puVar9;\njoined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }\n  uVar7 = *puVar8;\n  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);\n  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);\n  return;\n}" ({ "{") (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (declaration "byte *pbVar2;" (type_identifier "byte") (pointer_declarator "*pbVar2" (* "*") (identifier "pbVar2")) (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (declaration "undefined4 uVar5;" (type_identifier "undefined4") (identifier "uVar5") (; ";")) (declaration "undefined4 *puVar6;" (type_identifier "undefined4") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "undefined4 *puVar8;" (type_identifier "undefined4") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (declaration "undefined4 *puVar9;" (type_identifier "undefined4") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "char *pcVar11;" (primitive_type "char") (pointer_declarator "*pcVar11" (* "*") (identifier "pcVar11")) (; ";")) (declaration "char *pcVar12;" (primitive_type "char") (pointer_declarator "*pcVar12" (* "*") (identifier "pcVar12")) (; ";")) (declaration "char *pcStack_30;" (primitive_type "char") (pointer_declarator "*pcStack_30" (* "*") (identifier "pcStack_30")) (; ";")) (declaration "undefined4 uStack_24;" (type_identifier "undefined4") (identifier "uStack_24") (; ";")) (declaration "undefined4 auStack_20 [3];" (type_identifier "undefined4") (array_declarator "auStack_20 [3]" (identifier "auStack_20") ([ "[") (number_literal "3") (] "]")) (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "puVar8 = (undefined4 *)0x0;" (assignment_expression "puVar8 = (undefined4 *)0x0" (identifier "puVar8") (= "=") (cast_expression "(undefined4 *)0x0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "uStack_14 = 0x369af;" (assignment_expression "uStack_14 = 0x369af" (identifier "uStack_14") (= "=") (number_literal "0x369af")) (; ";")) (if_statement "if (param_2 != (byte *)0x0) {\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" (if "if") (parenthesized_expression "(param_2 != (byte *)0x0)" (( "(") (binary_expression "param_2 != (byte *)0x0" (identifier "param_2") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    puVar8 = *(undefined4 **)(param_2 + 4);\n    if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }\n    puVar8 = (undefined4 *)puVar8[5];\n  }" ({ "{") (expression_statement "puVar8 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar8 = *(undefined4 **)(param_2 + 4)" (identifier "puVar8") (= "=") (pointer_expression "*(undefined4 **)(param_2 + 4)" (* "*") (cast_expression "(undefined4 **)(param_2 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((*param_2 & 1) != 0) {\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" (if "if") (parenthesized_expression "((*param_2 & 1) != 0)" (( "(") (binary_expression "(*param_2 & 1) != 0" (parenthesized_expression "(*param_2 & 1)" (( "(") (binary_expression "*param_2 & 1" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_000776d0 != puVar8) goto LAB_000369ce;\n      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n    }" ({ "{") (if_statement "if (DAT_000776d0 != puVar8) goto LAB_000369ce;" (if "if") (parenthesized_expression "(DAT_000776d0 != puVar8)" (( "(") (binary_expression "DAT_000776d0 != puVar8" (identifier "DAT_000776d0") (!= "!=") (identifier "puVar8")) () ")")) (goto_statement "goto LAB_000369ce;" (goto "goto") (statement_identifier "LAB_000369ce") (; ";"))) (expression_statement "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (identifier "puVar8") (= "=") (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (* "*") (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" (( "(") (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" (* "*") (cast_expression "(int *)(param_2 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (} "}"))) (expression_statement "puVar8 = (undefined4 *)puVar8[5];" (assignment_expression "puVar8 = (undefined4 *)puVar8[5]" (identifier "puVar8") (= "=") (cast_expression "(undefined4 *)puVar8[5]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar8[5]" (identifier "puVar8") ([ "[") (number_literal "5") (] "]")))) (; ";")) (} "}"))) (labeled_statement "LAB_000369ce:\n  puVar9 = *(undefined4 **)(param_4 + 4);" (statement_identifier "LAB_000369ce") (: ":") (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" (identifier "puVar9") (= "=") (pointer_expression "*(undefined4 **)(param_4 + 4)" (* "*") (cast_expression "(undefined4 **)(param_4 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_4 + 4)" (( "(") (binary_expression "param_4 + 4" (identifier "param_4") (+ "+") (number_literal "4")) () ")"))))) (; ";"))) (if_statement "if ((*param_4 & 1) == 0) {\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }\n  else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" (if "if") (parenthesized_expression "((*param_4 & 1) == 0)" (( "(") (binary_expression "(*param_4 & 1) == 0" (parenthesized_expression "(*param_4 & 1)" (( "(") (binary_expression "*param_4 & 1" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];\n    pbVar2 = param_4;\n  }" ({ "{") (labeled_statement "LAB_00036a0a:\n    puVar9 = (undefined4 *)puVar9[5];" (statement_identifier "LAB_00036a0a") (: ":") (expression_statement "puVar9 = (undefined4 *)puVar9[5];" (assignment_expression "puVar9 = (undefined4 *)puVar9[5]" (identifier "puVar9") (= "=") (cast_expression "(undefined4 *)puVar9[5]" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar9[5]" (identifier "puVar9") ([ "[") (number_literal "5") (] "]")))) (; ";"))) (expression_statement "pbVar2 = param_4;" (assignment_expression "pbVar2 = param_4" (identifier "pbVar2") (= "=") (identifier "param_4")) (; ";")) (} "}")) (else_clause "else {\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" (else "else") (compound_statement "{\n    pbVar2 = (byte *)&DAT_000776d0;\n    if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }\n  }" ({ "{") (expression_statement "pbVar2 = (byte *)&DAT_000776d0;" (assignment_expression "pbVar2 = (byte *)&DAT_000776d0" (identifier "pbVar2") (= "=") (cast_expression "(byte *)&DAT_000776d0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&DAT_000776d0" (& "&") (identifier "DAT_000776d0")))) (; ";")) (if_statement "if (DAT_000776d0 == puVar9) {\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" (if "if") (parenthesized_expression "(DAT_000776d0 == puVar9)" (( "(") (binary_expression "DAT_000776d0 == puVar9" (identifier "DAT_000776d0") (== "==") (identifier "puVar9")) () ")")) (compound_statement "{\n      param_4 = *(byte **)(param_4 + 0xc);\n      puVar9 = *(undefined4 **)(param_4 + 4);\n      goto LAB_00036a0a;\n    }" ({ "{") (expression_statement "param_4 = *(byte **)(param_4 + 0xc);" (assignment_expression "param_4 = *(byte **)(param_4 + 0xc)" (identifier "param_4") (= "=") (pointer_expression "*(byte **)(param_4 + 0xc)" (* "*") (cast_expression "(byte **)(param_4 + 0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_4 + 0xc)" (( "(") (binary_expression "param_4 + 0xc" (identifier "param_4") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (expression_statement "puVar9 = *(undefined4 **)(param_4 + 4);" (assignment_expression "puVar9 = *(undefined4 **)(param_4 + 4)" (identifier "puVar9") (= "=") (pointer_expression "*(undefined4 **)(param_4 + 4)" (* "*") (cast_expression "(undefined4 **)(param_4 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_4 + 4)" (( "(") (binary_expression "param_4 + 4" (identifier "param_4") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (goto_statement "goto LAB_00036a0a;" (goto "goto") (statement_identifier "LAB_00036a0a") (; ";")) (} "}"))) (} "}")))) (switch_statement "switch(param_3) {\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" (switch "switch") (parenthesized_expression "(param_3)" (( "(") (identifier "param_3") () ")")) (compound_statement "{\n  case 7:\n  case 0x14:\n    pcStack_30 = "-";\n    break;\n  case 8:\n    pcStack_30 = "~";\n    break;\n  case 9:\n    pcStack_30 = "!";\n    break;\n  case 10:\n    pcStack_30 = "*";\n    break;\n  case 0xb:\n    pcStack_30 = "/";\n    break;\n  case 0xc:\n    pcStack_30 = "%";\n    break;\n  case 0xd:\n    pcStack_30 = "<<";\n    break;\n  case 0xe:\n    pcStack_30 = ">>";\n    break;\n  case 0xf:\n    pcStack_30 = "|";\n    break;\n  case 0x10:\n    pcStack_30 = "|~";\n    break;\n  case 0x11:\n    pcStack_30 = "^";\n    break;\n  case 0x12:\n    pcStack_30 = "&";\n    break;\n  case 0x13:\n    pcStack_30 = "+";\n    break;\n  case 0x15:\n    pcStack_30 = "==";\n    break;\n  case 0x16:\n    pcStack_30 = "!=";\n    break;\n  case 0x17:\n    pcStack_30 = "<";\n    break;\n  case 0x18:\n    pcStack_30 = "<=";\n    break;\n  case 0x19:\n    pcStack_30 = ">=";\n    break;\n  case 0x1a:\n    pcStack_30 = ">";\n    break;\n  case 0x1b:\n    pcStack_30 = "&&";\n    break;\n  case 0x1c:\n    pcStack_30 = "||";\n    break;\n  default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);\n  }" ({ "{") (case_statement "case 7:" (case "case") (number_literal "7") (: ":")) (case_statement "case 0x14:\n    pcStack_30 = "-";\n    break;" (case "case") (number_literal "0x14") (: ":") (expression_statement "pcStack_30 = "-";" (assignment_expression "pcStack_30 = "-"" (identifier "pcStack_30") (= "=") (string_literal ""-"" (" """) (string_content "-") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 8:\n    pcStack_30 = "~";\n    break;" (case "case") (number_literal "8") (: ":") (expression_statement "pcStack_30 = "~";" (assignment_expression "pcStack_30 = "~"" (identifier "pcStack_30") (= "=") (string_literal ""~"" (" """) (string_content "~") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 9:\n    pcStack_30 = "!";\n    break;" (case "case") (number_literal "9") (: ":") (expression_statement "pcStack_30 = "!";" (assignment_expression "pcStack_30 = "!"" (identifier "pcStack_30") (= "=") (string_literal ""!"" (" """) (string_content "!") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 10:\n    pcStack_30 = "*";\n    break;" (case "case") (number_literal "10") (: ":") (expression_statement "pcStack_30 = "*";" (assignment_expression "pcStack_30 = "*"" (identifier "pcStack_30") (= "=") (string_literal ""*"" (" """) (string_content "*") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xb:\n    pcStack_30 = "/";\n    break;" (case "case") (number_literal "0xb") (: ":") (expression_statement "pcStack_30 = "/";" (assignment_expression "pcStack_30 = "/"" (identifier "pcStack_30") (= "=") (string_literal ""/"" (" """) (string_content "/") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xc:\n    pcStack_30 = "%";\n    break;" (case "case") (number_literal "0xc") (: ":") (expression_statement "pcStack_30 = "%";" (assignment_expression "pcStack_30 = "%"" (identifier "pcStack_30") (= "=") (string_literal ""%"" (" """) (string_content "%") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xd:\n    pcStack_30 = "<<";\n    break;" (case "case") (number_literal "0xd") (: ":") (expression_statement "pcStack_30 = "<<";" (assignment_expression "pcStack_30 = "<<"" (identifier "pcStack_30") (= "=") (string_literal ""<<"" (" """) (string_content "<<") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xe:\n    pcStack_30 = ">>";\n    break;" (case "case") (number_literal "0xe") (: ":") (expression_statement "pcStack_30 = ">>";" (assignment_expression "pcStack_30 = ">>"" (identifier "pcStack_30") (= "=") (string_literal "">>"" (" """) (string_content ">>") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xf:\n    pcStack_30 = "|";\n    break;" (case "case") (number_literal "0xf") (: ":") (expression_statement "pcStack_30 = "|";" (assignment_expression "pcStack_30 = "|"" (identifier "pcStack_30") (= "=") (string_literal ""|"" (" """) (string_content "|") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x10:\n    pcStack_30 = "|~";\n    break;" (case "case") (number_literal "0x10") (: ":") (expression_statement "pcStack_30 = "|~";" (assignment_expression "pcStack_30 = "|~"" (identifier "pcStack_30") (= "=") (string_literal ""|~"" (" """) (string_content "|~") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x11:\n    pcStack_30 = "^";\n    break;" (case "case") (number_literal "0x11") (: ":") (expression_statement "pcStack_30 = "^";" (assignment_expression "pcStack_30 = "^"" (identifier "pcStack_30") (= "=") (string_literal ""^"" (" """) (string_content "^") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x12:\n    pcStack_30 = "&";\n    break;" (case "case") (number_literal "0x12") (: ":") (expression_statement "pcStack_30 = "&";" (assignment_expression "pcStack_30 = "&"" (identifier "pcStack_30") (= "=") (string_literal ""&"" (" """) (string_content "&") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x13:\n    pcStack_30 = "+";\n    break;" (case "case") (number_literal "0x13") (: ":") (expression_statement "pcStack_30 = "+";" (assignment_expression "pcStack_30 = "+"" (identifier "pcStack_30") (= "=") (string_literal ""+"" (" """) (string_content "+") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x15:\n    pcStack_30 = "==";\n    break;" (case "case") (number_literal "0x15") (: ":") (expression_statement "pcStack_30 = "==";" (assignment_expression "pcStack_30 = "=="" (identifier "pcStack_30") (= "=") (string_literal ""=="" (" """) (string_content "==") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x16:\n    pcStack_30 = "!=";\n    break;" (case "case") (number_literal "0x16") (: ":") (expression_statement "pcStack_30 = "!=";" (assignment_expression "pcStack_30 = "!="" (identifier "pcStack_30") (= "=") (string_literal ""!="" (" """) (string_content "!=") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x17:\n    pcStack_30 = "<";\n    break;" (case "case") (number_literal "0x17") (: ":") (expression_statement "pcStack_30 = "<";" (assignment_expression "pcStack_30 = "<"" (identifier "pcStack_30") (= "=") (string_literal ""<"" (" """) (string_content "<") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x18:\n    pcStack_30 = "<=";\n    break;" (case "case") (number_literal "0x18") (: ":") (expression_statement "pcStack_30 = "<=";" (assignment_expression "pcStack_30 = "<="" (identifier "pcStack_30") (= "=") (string_literal ""<="" (" """) (string_content "<=") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x19:\n    pcStack_30 = ">=";\n    break;" (case "case") (number_literal "0x19") (: ":") (expression_statement "pcStack_30 = ">=";" (assignment_expression "pcStack_30 = ">="" (identifier "pcStack_30") (= "=") (string_literal "">="" (" """) (string_content ">=") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1a:\n    pcStack_30 = ">";\n    break;" (case "case") (number_literal "0x1a") (: ":") (expression_statement "pcStack_30 = ">";" (assignment_expression "pcStack_30 = ">"" (identifier "pcStack_30") (= "=") (string_literal "">"" (" """) (string_content ">") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1b:\n    pcStack_30 = "&&";\n    break;" (case "case") (number_literal "0x1b") (: ":") (expression_statement "pcStack_30 = "&&";" (assignment_expression "pcStack_30 = "&&"" (identifier "pcStack_30") (= "=") (string_literal ""&&"" (" """) (string_content "&&") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0x1c:\n    pcStack_30 = "||";\n    break;" (case "case") (number_literal "0x1c") (: ":") (expression_statement "pcStack_30 = "||";" (assignment_expression "pcStack_30 = "||"" (identifier "pcStack_30") (= "=") (string_literal ""||"" (" """) (string_content "||") (" """))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "default:\n                    \n    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" (default "default") (: ":") (expression_statement "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);" (call_expression "FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" (identifier "FUN_0002be10") (argument_list "("../../gas/symbols.c",0x3df,"report_op_error",pbVar2)" (( "(") (string_literal ""../../gas/symbols.c"" (" """) (string_content "../../gas/symbols.c") (" """)) (, ",") (number_literal "0x3df") (, ",") (string_literal ""report_op_error"" (" """) (string_content "report_op_error") (" """)) (, ",") (identifier "pbVar2") () ")"))) (; ";"))) (} "}"))) (expression_statement "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);" (assignment_expression "iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20)" (identifier "iVar3") (= "=") (call_expression "FUN_000214d0(param_1,&uStack_24,auStack_20)" (identifier "FUN_000214d0") (argument_list "(param_1,&uStack_24,auStack_20)" (( "(") (identifier "param_1") (, ",") (pointer_expression "&uStack_24" (& "&") (identifier "uStack_24")) (, ",") (identifier "auStack_20") () ")")))) (; ";")) (if_statement "if (iVar3 != 0) {\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" (if "if") (parenthesized_expression "(iVar3 != 0)" (( "(") (binary_expression "iVar3 != 0" (identifier "iVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    pcVar11 = (char *)*puVar9;\n    if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }\n    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);\n    return;\n  }" ({ "{") (expression_statement "pcVar11 = (char *)*puVar9;" (assignment_expression "pcVar11 = (char *)*puVar9" (identifier "pcVar11") (= "=") (cast_expression "(char *)*puVar9" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar9" (* "*") (identifier "puVar9")))) (; ";")) (if_statement "if (param_2 == (byte *)0x0) {\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }\n    else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" (if "if") (parenthesized_expression "(param_2 == (byte *)0x0)" (( "(") (binary_expression "param_2 == (byte *)0x0" (identifier "param_2") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      pcVar12 = "invalid operand (%s section) for `%s\'";\n      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);\n      pcVar10 = pcVar11;\n      pcVar11 = pcStack_30;\n    }" ({ "{") (expression_statement "pcVar12 = "invalid operand (%s section) for `%s\'";" (assignment_expression "pcVar12 = "invalid operand (%s section) for `%s\'"" (identifier "pcVar12") (= "=") (string_literal ""invalid operand (%s section) for `%s\'"" (" """) (string_content "invalid operand (%s section) for `%s") (escape_sequence "\'") (" """))) (; ";")) (expression_statement "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5)" (identifier "uVar4") (= "=") (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"invalid operand (%s section) for `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""invalid operand (%s section) for `%s\'"" (" """) (string_content "invalid operand (%s section) for `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "pcVar10 = pcVar11;" (assignment_expression "pcVar10 = pcVar11" (identifier "pcVar10") (= "=") (identifier "pcVar11")) (; ";")) (expression_statement "pcVar11 = pcStack_30;" (assignment_expression "pcVar11 = pcStack_30" (identifier "pcVar11") (= "=") (identifier "pcStack_30")) (; ";")) (} "}")) (else_clause "else {\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" (else "else") (compound_statement "{\n      pcVar10 = (char *)*puVar8;\n      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);\n      pcVar12 = pcStack_30;\n    }" ({ "{") (expression_statement "pcVar10 = (char *)*puVar8;" (assignment_expression "pcVar10 = (char *)*puVar8" (identifier "pcVar10") (= "=") (cast_expression "(char *)*puVar8" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar8" (* "*") (identifier "puVar8")))) (; ";")) (expression_statement "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);" (assignment_expression "uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" (identifier "uVar4") (= "=") (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"invalid operands (%s and %s sections) for `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""invalid operands (%s and %s sections) for `%s\'"" (" """) (string_content "invalid operands (%s and %s sections) for `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "pcVar12 = pcStack_30;" (assignment_expression "pcVar12 = pcStack_30" (identifier "pcVar12") (= "=") (identifier "pcStack_30")) (; ";")) (} "}")))) (expression_statement "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);" (call_expression "FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" (identifier "FUN_0002bd40") (argument_list "(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12)" (( "(") (identifier "uStack_24") (, ",") (subscript_expression "auStack_20[0]" (identifier "auStack_20") ([ "[") (number_literal "0") (] "]")) (, ",") (identifier "uVar4") (, ",") (identifier "pcVar10") (, ",") (identifier "pcVar11") (, ",") (identifier "pcVar12") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "puVar6 = *(undefined4 **)(param_1 + 4);" (assignment_expression "puVar6 = *(undefined4 **)(param_1 + 4)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(param_1 + 4)" (* "*") (cast_expression "(undefined4 **)(param_1 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((*param_1 & 1) != 0) {\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }\n    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);\n  }" ({ "{") (if_statement "if (DAT_000776d0 != puVar6) {\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" (if "if") (parenthesized_expression "(DAT_000776d0 != puVar6)" (( "(") (binary_expression "DAT_000776d0 != puVar6" (identifier "DAT_000776d0") (!= "!=") (identifier "puVar6")) () ")")) (compound_statement "{\n      uVar4 = *(undefined4 *)(param_1 + 8);\n      uVar1 = *puVar9;\n      goto joined_r0x00036c49;\n    }" ({ "{") (expression_statement "uVar4 = *(undefined4 *)(param_1 + 8);" (assignment_expression "uVar4 = *(undefined4 *)(param_1 + 8)" (identifier "uVar4") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 8)" (* "*") (cast_expression "(undefined4 *)(param_1 + 8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" (identifier "uVar1") (= "=") (pointer_expression "*puVar9" (* "*") (identifier "puVar9"))) (; ";")) (goto_statement "goto joined_r0x00036c49;" (goto "goto") (statement_identifier "joined_r0x00036c49") (; ";")) (} "}"))) (expression_statement "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);" (assignment_expression "puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" (identifier "puVar6") (= "=") (pointer_expression "*(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" (* "*") (cast_expression "(undefined4 **)(*(int *)(param_1 + 0xc) + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(param_1 + 0xc) + 4)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) + 4" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (} "}"))) (expression_statement "uVar4 = puVar6[1];" (assignment_expression "uVar4 = puVar6[1]" (identifier "uVar4") (= "=") (subscript_expression "puVar6[1]" (identifier "puVar6") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar1 = *puVar9;" (assignment_expression "uVar1 = *puVar9" (identifier "uVar1") (= "=") (pointer_expression "*puVar9" (* "*") (identifier "puVar9"))) (; ";")) (labeled_statement "joined_r0x00036c49:\n  if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" (statement_identifier "joined_r0x00036c49") (: ":") (if_statement "if (param_2 == (byte *)0x0) {\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" (if "if") (parenthesized_expression "(param_2 == (byte *)0x0)" (( "(") (binary_expression "param_2 == (byte *)0x0" (identifier "param_2") (== "==") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);\n    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);\n    return;\n  }" ({ "{") (expression_statement "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" (identifier "uVar7") (= "=") (call_expression "dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""invalid operand (%s section) for `%s\' when setting `%s\'"" (" """) (string_content "invalid operand (%s section) for `%s") (escape_sequence "\'") (string_content " when setting `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4)" (identifier "FUN_0002bcf0") (argument_list "(uVar7,uVar1,pcStack_30,uVar4)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar1") (, ",") (identifier "pcStack_30") (, ",") (identifier "uVar4") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))) (expression_statement "uVar7 = *puVar8;" (assignment_expression "uVar7 = *puVar8" (identifier "uVar7") (= "=") (pointer_expression "*puVar8" (* "*") (identifier "puVar8"))) (; ";")) (expression_statement "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);" (assignment_expression "uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" (identifier "uVar5") (= "=") (call_expression "dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""invalid operands (%s and %s sections) for `%s\' when setting `%s\'"" (" """) (string_content "invalid operands (%s and %s sections) for `%s") (escape_sequence "\'") (string_content " when setting `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);" (call_expression "FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4)" (identifier "FUN_0002bcf0") (argument_list "(uVar5,uVar7,uVar1,pcStack_30,uVar4)" (( "(") (identifier "uVar5") (, ",") (identifier "uVar7") (, ",") (identifier "uVar1") (, ",") (identifier "pcStack_30") (, ",") (identifier "uVar4") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 function_1(type_1 *symp,type_1 *var_1,type_2 op,type_1 *right)

{
  type_1 *psVar1;
  int var_7;
  char *format;
  char *pcVar3;
  type_3 var_10;
  char *pcVar5;
  type_3 var_3;
  type_3 var_4;
  char *pcVar8;
  char *local_30;
  char *file;
  type_4 line;
  type_5 uStack_14;
  
  var_3 = (type_3)0x0;
  uStack_14 = 0x369af;
  if (var_1 != (type_1 *)0x0) {
    var_3 = (type_3)var_1->bsym;
    if (((type_4)var_1->sy_flags & 1) != 0) {
      if (var_2 != var_3) goto LAB_000369ce;
      var_3 = (type_3)((var_1->sy_value).X_op_symbol)->bsym;
    }
    var_3 = (type_3)var_3->flags;
  }
LAB_000369ce:
  var_4 = (type_3)right->bsym;
  if (((type_4)right->sy_flags & 1) == 0) {
LAB_00036a0a:
    var_4 = (type_3)var_4->flags;
  }
  else if (var_2 == var_4) {
    var_4 = (type_3)((right->sy_value).X_op_symbol)->bsym;
    goto LAB_00036a0a;
  }
  switch(op) {
  case O_uminus:
  case O_subtract:
    local_30 = "-";
    break;
  case O_bit_not:
    local_30 = "~";
    break;
  case O_logical_not:
    local_30 = "!";
    break;
  case O_multiply:
    local_30 = "*";
    break;
  case O_divide:
    local_30 = "/";
    break;
  case O_modulus:
    local_30 = "%";
    break;
  case O_left_shift:
    local_30 = "<<";
    break;
  case O_right_shift:
    local_30 = ">>";
    break;
  case O_bit_inclusive_or:
    local_30 = "|";
    break;
  case O_bit_or_not:
    local_30 = "|~";
    break;
  case O_bit_exclusive_or:
    local_30 = "^";
    break;
  case O_bit_and:
    local_30 = "&";
    break;
  case O_add:
    local_30 = "+";
    break;
  case O_eq:
    local_30 = "==";
    break;
  case O_ne:
    local_30 = "!=";
    break;
  case O_lt:
    local_30 = "<";
    break;
  case O_le:
    local_30 = "<=";
    break;
  case O_ge:
    local_30 = ">=";
    break;
  case O_gt:
    local_30 = ">";
    break;
  case O_logical_and:
    local_30 = "&&";
    break;
  case O_logical_or:
    local_30 = "||";
    break;
  default:
                    /* WARNING: Subroutine does not return */
    var_5("../../gas/symbols.c",0x3df,"report_op_error");
  }
  var_7 = var_6(symp,&file,&line);
  if (var_7 != 0) {
    pcVar8 = var_4->name;
    if (var_1 == (type_1 *)0x0) {
      pcVar5 = "invalid operand (%s section) for `%s\'";
      format = (char *)var_8(0,"invalid operand (%s section) for `%s\'",5);
      pcVar3 = pcVar8;
      pcVar8 = local_30;
    }
    else {
      pcVar3 = var_3->name;
      format = (char *)var_8(0,"invalid operands (%s and %s sections) for `%s\'",5);
      pcVar5 = local_30;
    }
    var_9(file,line,format,pcVar3,pcVar8,pcVar5);
    return;
  }
  var_10 = (type_3)symp->bsym;
  if (((type_4)symp->sy_flags & 1) != 0) {
    if (var_2 != var_10) {
      psVar1 = (symp->sy_value).X_add_symbol;
      pcVar8 = var_4->name;
      goto joined_r0x00036c49;
    }
    var_10 = (type_3)((symp->sy_value).X_op_symbol)->bsym;
  }
  psVar1 = (type_1 *)var_10->id;
  pcVar8 = var_4->name;
joined_r0x00036c49:
  if (var_1 == (type_1 *)0x0) {
    pcVar5 = (char *)var_8(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);
    var_11(pcVar5,pcVar8,local_30,psVar1);
    return;
  }
  pcVar5 = var_3->name;
  pcVar3 = (char *)var_8(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",
                             5);
  var_11(pcVar3,pcVar5,pcVar8,local_30,psVar1);
  return;
}


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

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void __regparm3 MASKED(byte *param_1,byte *param_2,undefined4 param_3,byte *param_4)

{
  undefined4 uVar1;
  byte *pbVar2;
  int iVar3;
  undefined4 uVar4;
  undefined4 uVar5;
  undefined4 *puVar6;
  undefined4 uVar7;
  undefined4 *puVar8;
  undefined4 *puVar9;
  char *pcVar10;
  char *pcVar11;
  char *pcVar12;
  char *pcStack_30;
  undefined4 uStack_24;
  undefined4 auStack_20 [3];
  undefined4 uStack_14;
  
  puVar8 = (undefined4 *)0x0;
  uStack_14 = 0x369af;
  if (param_2 != (byte *)0x0) {
    puVar8 = *(undefined4 **)(param_2 + 4);
    if ((*param_2 & 1) != 0) {
      if (DAT_000776d0 != puVar8) goto LAB_000369ce;
      puVar8 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);
    }
    puVar8 = (undefined4 *)puVar8[5];
  }
LAB_000369ce:
  puVar9 = *(undefined4 **)(param_4 + 4);
  if ((*param_4 & 1) == 0) {
LAB_00036a0a:
    puVar9 = (undefined4 *)puVar9[5];
    pbVar2 = param_4;
  }
  else {
    pbVar2 = (byte *)&DAT_000776d0;
    if (DAT_000776d0 == puVar9) {
      param_4 = *(byte **)(param_4 + 0xc);
      puVar9 = *(undefined4 **)(param_4 + 4);
      goto LAB_00036a0a;
    }
  }
  switch(param_3) {
  case 7:
  case 0x14:
    pcStack_30 = "-";
    break;
  case 8:
    pcStack_30 = "~";
    break;
  case 9:
    pcStack_30 = "!";
    break;
  case 10:
    pcStack_30 = "*";
    break;
  case 0xb:
    pcStack_30 = "/";
    break;
  case 0xc:
    pcStack_30 = "%";
    break;
  case 0xd:
    pcStack_30 = "<<";
    break;
  case 0xe:
    pcStack_30 = ">>";
    break;
  case 0xf:
    pcStack_30 = "|";
    break;
  case 0x10:
    pcStack_30 = "|~";
    break;
  case 0x11:
    pcStack_30 = "^";
    break;
  case 0x12:
    pcStack_30 = "&";
    break;
  case 0x13:
    pcStack_30 = "+";
    break;
  case 0x15:
    pcStack_30 = "==";
    break;
  case 0x16:
    pcStack_30 = "!=";
    break;
  case 0x17:
    pcStack_30 = "<";
    break;
  case 0x18:
    pcStack_30 = "<=";
    break;
  case 0x19:
    pcStack_30 = ">=";
    break;
  case 0x1a:
    pcStack_30 = ">";
    break;
  case 0x1b:
    pcStack_30 = "&&";
    break;
  case 0x1c:
    pcStack_30 = "||";
    break;
  default:
                    /* WARNING: Subroutine does not return */
    FUN_0002be10("../../gas/symbols.c",0x3df,"report_op_error",pbVar2);
  }
  iVar3 = FUN_000214d0(param_1,&uStack_24,auStack_20);
  if (iVar3 != 0) {
    pcVar11 = (char *)*puVar9;
    if (param_2 == (byte *)0x0) {
      pcVar12 = "invalid operand (%s section) for `%s\'";
      uVar4 = dcgettext(0,"invalid operand (%s section) for `%s\'",5);
      pcVar10 = pcVar11;
      pcVar11 = pcStack_30;
    }
    else {
      pcVar10 = (char *)*puVar8;
      uVar4 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\'",5);
      pcVar12 = pcStack_30;
    }
    FUN_0002bd40(uStack_24,auStack_20[0],uVar4,pcVar10,pcVar11,pcVar12);
    return;
  }
  puVar6 = *(undefined4 **)(param_1 + 4);
  if ((*param_1 & 1) != 0) {
    if (DAT_000776d0 != puVar6) {
      uVar4 = *(undefined4 *)(param_1 + 8);
      uVar1 = *puVar9;
      goto joined_r0x00036c49;
    }
    puVar6 = *(undefined4 **)(*(int *)(param_1 + 0xc) + 4);
  }
  uVar4 = puVar6[1];
  uVar1 = *puVar9;
joined_r0x00036c49:
  if (param_2 == (byte *)0x0) {
    uVar7 = dcgettext(0,"invalid operand (%s section) for `%s\' when setting `%s\'",5);
    FUN_0002bcf0(uVar7,uVar1,pcStack_30,uVar4);
    return;
  }
  uVar7 = *puVar8;
  uVar5 = dcgettext(0,"invalid operands (%s and %s sections) for `%s\' when setting `%s\'",5);
  FUN_0002bcf0(uVar5,uVar7,uVar1,pcStack_30,uVar4);
  return;
}

