
bfd_boolean
parse_coff_symbol(bfd *abfd,coff_types *types,asymbol *sym,long coff_symno,internal_syment *psyment,
                 void *dhandle,debug_type type,bfd_boolean within_function)

{
  int iVar1;
  bfd_boolean bVar2;
  debug_type_conflict *ppdVar3;
  debug_type_conflict pdVar4;
  byte bVar5;
  
  bVar5 = (byte)coff_symno;
  if (bVar5 != 10) {
    if (bVar5 < 0xb) {
      if (bVar5 == 3) {
        bVar2 = debug_record_variable
                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,
                           ((int)type != 0) + DEBUG_STATIC,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
        return (uint)(bVar2 != 0);
      }
      if (3 < bVar5) {
        if (bVar5 == 4) {
          bVar2 = debug_record_variable
                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,
                             DEBUG_REGISTER,
                             (long)&(types->basic[3][1].u.kindirect)->slot +
                             (long)&types->basic[1]->kind);
          return (uint)(bVar2 != 0);
        }
        if (bVar5 != 9) {
          return 1;
        }
        iVar1 = debug_record_parameter
                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,
                           DEBUG_PARM_STACK,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
LAB_00116fde:
        return (uint)(iVar1 != 0);
      }
      if (bVar5 == 1) {
        bVar2 = debug_record_variable
                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
        return (uint)(bVar2 != 0);
      }
      if (bVar5 != 2) {
        return 1;
      }
LAB_0011709d:
      bVar2 = debug_record_variable
                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,
                         (long)&(types->basic[3][1].u.kindirect)->slot +
                         (long)&types->basic[1]->kind);
      return (uint)(bVar2 != 0);
    }
    if (bVar5 != 0xf) {
      if (0xf < bVar5) {
        if (bVar5 == 0x11) {
          iVar1 = debug_record_parameter
                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,
                             DEBUG_PARM_REG,
                             (long)&(types->basic[3][1].u.kindirect)->slot +
                             (long)&types->basic[1]->kind);
          goto LAB_00116fde;
        }
        if (bVar5 != 0x7f) {
          return 1;
        }
        goto LAB_0011709d;
      }
      if (bVar5 != 0xc) {
        if (bVar5 != 0xd) {
          return 1;
        }
        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);
        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);
      }
    }
  }
  pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);
  if (pdVar4 != (debug_type_conflict)0x0) {
    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);
    *ppdVar3 = pdVar4;
    return 1;
  }
  return 0;
}



bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5
                 ,undefined8 param_6,int param_7)

{
  int iVar1;
  long *plVar2;
  long lVar3;
  
  if (param_4 != 10) {
    if (param_4 < 0xb) {
      if (param_4 == 3) {
        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
        return iVar1 != 0;
      }
      if (3 < param_4) {
        if (param_4 == 4) {
          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,
                               *(long *)(param_2 + 0x10) +
                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));
          return iVar1 != 0;
        }
        if (param_4 != 9) {
          return true;
        }
        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
LAB_00116fde:
        return iVar1 != 0;
      }
      if (param_4 == 1) {
        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
        return iVar1 != 0;
      }
      if (param_4 != 2) {
        return true;
      }
LAB_0011709d:
      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,
                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));
      return iVar1 != 0;
    }
    if (param_4 != 0xf) {
      if (0xf < param_4) {
        if (param_4 == 0x11) {
          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,
                               *(long *)(param_2 + 0x10) +
                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));
          goto LAB_00116fde;
        }
        if (param_4 != 0x7f) {
          return true;
        }
        goto LAB_0011709d;
      }
      if (param_4 != 0xc) {
        if (param_4 != 0xd) {
          return true;
        }
        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);
        return lVar3 != 0;
      }
    }
  }
  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);
  if (lVar3 != 0) {
    plVar2 = (long *)FUN_00116e50(param_1,param_3);
    *plVar2 = lVar3;
    return true;
  }
  return false;
}


PUSH R12
PUSH RBP
MOV RBP,RDX
PUSH RBX
MOV RBX,RDI
MOV RDI,R8
CMP CL,0xa
JZ 0x00117028
JA 0x00116fe8
CMP CL,0x3
JZ 0x00117138
JBE 0x00117060
CMP CL,0x4
JZ 0x00117108
CMP CL,0x9
JNZ 0x00117050
MOV RAX,qword ptr [RSI + 0x20]
MOV R8,qword ptr [RSI + 0x10]
MOV ECX,0x1
MOV RDX,R9
MOV RSI,qword ptr [RSI + 0x8]
ADD R8,qword ptr [RAX + 0x28]
CALL 0x0010edb0
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
POP RBX
POP RBP
POP R12
RET
CMP CL,0xf
JZ 0x00117028
JBE 0x001170c8
CMP CL,0x11
JNZ 0x00117098
MOV RAX,qword ptr [RSI + 0x20]
MOV R8,qword ptr [RSI + 0x10]
MOV ECX,0x2
MOV RDX,R9
MOV RSI,qword ptr [RSI + 0x8]
ADD R8,qword ptr [RAX + 0x28]
CALL 0x0010edb0
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
JMP 0x00116fde
MOV RSI,qword ptr [RSI + 0x8]
MOV RDX,R9
CALL 0x0010fbe0
MOV R12,RAX
XOR EAX,EAX
TEST R12,R12
JZ 0x00117055
MOV RSI,RBP
MOV RDI,RBX
CALL 0x00116e50
MOV qword ptr [RAX],R12
NOP dword ptr [RAX]
MOV EAX,0x1
POP RBX
POP RBP
POP R12
RET
CMP CL,0x1
JNZ 0x001170f8
MOV RAX,qword ptr [RSI + 0x20]
MOV R8,qword ptr [RSI + 0x10]
MOV ECX,0x4
MOV RDX,R9
MOV RSI,qword ptr [RSI + 0x8]
ADD R8,qword ptr [RAX + 0x28]
CALL 0x0010f350
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
POP RBX
POP RBP
POP R12
RET
CMP CL,0x7f
JNZ 0x00117050
MOV RAX,qword ptr [RSI + 0x20]
MOV R8,qword ptr [RSI + 0x10]
MOV ECX,0x1
MOV RDX,R9
MOV RSI,qword ptr [RSI + 0x8]
ADD R8,qword ptr [RAX + 0x28]
CALL 0x0010f350
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
JMP 0x0011708e
CMP CL,0xc
JZ 0x00117028
CMP CL,0xd
JNZ 0x00117050
MOV RSI,qword ptr [RSI + 0x8]
MOV RDX,R9
CALL 0x0010fb10
POP RBX
POP RBP
TEST RAX,RAX
POP R12
SETNZ AL
MOVZX EAX,AL
RET
CMP CL,0x2
JZ 0x0011709d
JMP 0x00117050
MOV RAX,qword ptr [RSI + 0x20]
MOV R8,qword ptr [RSI + 0x10]
MOV ECX,0x5
MOV RDX,R9
MOV RSI,qword ptr [RSI + 0x8]
ADD R8,qword ptr [RAX + 0x28]
CALL 0x0010f350
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
JMP 0x0011708e
MOV EDX,dword ptr [RSP + 0x20]
MOV RAX,qword ptr [RSI + 0x20]
XOR ECX,ECX
MOV R8,qword ptr [RSI + 0x10]
MOV RSI,qword ptr [RSI + 0x8]
TEST EDX,EDX
MOV RDX,R9
SETNZ CL
ADD R8,qword ptr [RAX + 0x28]
ADD ECX,0x2
CALL 0x0010f350
TEST EAX,EAX
SETNZ AL
MOVZX EAX,AL
JMP 0x0011708e
(translation_unit "bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)\n\n{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}\n\n" (function_definition "bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)\n\n{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" primitive_type (function_declarator "FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" identifier (parameter_list "(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "byte param_4" type_identifier identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "undefined8 param_6" type_identifier identifier) , (parameter_declaration "int param_7" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" if (parenthesized_expression "(param_4 != 10)" ( (binary_expression "param_4 != 10" identifier != number_literal) )) (compound_statement "{\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" { (if_statement "if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" if (parenthesized_expression "(param_4 < 0xb)" ( (binary_expression "param_4 < 0xb" identifier < number_literal) )) (compound_statement "{\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" { (if_statement "if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(param_4 == 3)" ( (binary_expression "param_4 == 3" identifier == number_literal) )) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , (binary_expression "(param_7 != 0) + '\x02'" (parenthesized_expression "(param_7 != 0)" ( (binary_expression "param_7 != 0" identifier != number_literal) )) + (char_literal "'\x02'" ' escape_sequence ')) , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(3 < param_4)" ( (binary_expression "3 < param_4" number_literal < identifier) )) (compound_statement "{\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" { (if_statement "if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" if (parenthesized_expression "(param_4 == 4)" ( (binary_expression "param_4 == 4" identifier == number_literal) )) (compound_statement "{\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 9) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 9)" ( (binary_expression "param_4 != 9" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (labeled_statement "LAB_00116fde:\n        return iVar1 != 0;" statement_identifier : (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;)) })) (if_statement "if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(param_4 == 1)" ( (binary_expression "param_4 == 1" identifier == number_literal) )) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 2) {\n        return true;\n      }" if (parenthesized_expression "(param_4 != 2)" ( (binary_expression "param_4 != 2" identifier != number_literal) )) (compound_statement "{\n        return true;\n      }" { (return_statement "return true;" return true ;) })) (labeled_statement "LAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" statement_identifier : (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;)) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" if (parenthesized_expression "(param_4 != 0xf)" ( (binary_expression "param_4 != 0xf" identifier != number_literal) )) (compound_statement "{\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" { (if_statement "if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" if (parenthesized_expression "(0xf < param_4)" ( (binary_expression "0xf < param_4" number_literal < identifier) )) (compound_statement "{\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" { (if_statement "if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" if (parenthesized_expression "(param_4 == 0x11)" ( (binary_expression "param_4 == 0x11" identifier == number_literal) )) (compound_statement "{\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" { (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (goto_statement "goto LAB_00116fde;" goto statement_identifier ;) })) (if_statement "if (param_4 != 0x7f) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 0x7f)" ( (binary_expression "param_4 != 0x7f" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (goto_statement "goto LAB_0011709d;" goto statement_identifier ;) })) (if_statement "if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" if (parenthesized_expression "(param_4 != 0xc)" ( (binary_expression "param_4 != 0xc" identifier != number_literal) )) (compound_statement "{\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" { (if_statement "if (param_4 != 0xd) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 0xd)" ( (binary_expression "param_4 != 0xd" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (expression_statement "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier = (call_expression "FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier )))) ;) (return_statement "return lVar3 != 0;" return (binary_expression "lVar3 != 0" identifier != number_literal) ;) })) })) })) (expression_statement "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier = (call_expression "FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier )))) ;) (if_statement "if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" if (parenthesized_expression "(lVar3 != 0)" ( (binary_expression "lVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" { (expression_statement "plVar2 = (long *)FUN_00116e50(param_1,param_3);" (assignment_expression "plVar2 = (long *)FUN_00116e50(param_1,param_3)" identifier = (cast_expression "(long *)FUN_00116e50(param_1,param_3)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116e50(param_1,param_3)" identifier (argument_list "(param_1,param_3)" ( identifier , identifier ))))) ;) (expression_statement "*plVar2 = lVar3;" (assignment_expression "*plVar2 = lVar3" (pointer_expression "*plVar2" * identifier) = identifier) ;) (return_statement "return true;" return true ;) })) (return_statement "return false;" return false ;) })))
(translation_unit "bfd_boolean\nparse_coff_symbol(bfd *abfd,coff_types *types,asymbol *sym,long coff_symno,internal_syment *psyment,\n                 void *dhandle,debug_type type,bfd_boolean within_function)\n\n{\n  int iVar1;\n  bfd_boolean bVar2;\n  debug_type_conflict *ppdVar3;\n  debug_type_conflict pdVar4;\n  byte bVar5;\n  \n  bVar5 = (byte)coff_symno;\n  if (bVar5 != 10) {\n    if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }\n    if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }\n  }\n  pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n  if (pdVar4 != (debug_type_conflict)0x0) {\n    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);\n    *ppdVar3 = pdVar4;\n    return 1;\n  }\n  return 0;\n}\n\n" (function_definition "bfd_boolean\nparse_coff_symbol(bfd *abfd,coff_types *types,asymbol *sym,long coff_symno,internal_syment *psyment,\n                 void *dhandle,debug_type type,bfd_boolean within_function)\n\n{\n  int iVar1;\n  bfd_boolean bVar2;\n  debug_type_conflict *ppdVar3;\n  debug_type_conflict pdVar4;\n  byte bVar5;\n  \n  bVar5 = (byte)coff_symno;\n  if (bVar5 != 10) {\n    if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }\n    if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }\n  }\n  pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n  if (pdVar4 != (debug_type_conflict)0x0) {\n    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);\n    *ppdVar3 = pdVar4;\n    return 1;\n  }\n  return 0;\n}" type_identifier (function_declarator "parse_coff_symbol(bfd *abfd,coff_types *types,asymbol *sym,long coff_symno,internal_syment *psyment,\n                 void *dhandle,debug_type type,bfd_boolean within_function)" identifier (parameter_list "(bfd *abfd,coff_types *types,asymbol *sym,long coff_symno,internal_syment *psyment,\n                 void *dhandle,debug_type type,bfd_boolean within_function)" ( (parameter_declaration "bfd *abfd" type_identifier (pointer_declarator "*abfd" * identifier)) , (parameter_declaration "coff_types *types" type_identifier (pointer_declarator "*types" * identifier)) , (parameter_declaration "asymbol *sym" type_identifier (pointer_declarator "*sym" * identifier)) , (parameter_declaration "long coff_symno" (sized_type_specifier "long" long) identifier) , (parameter_declaration "internal_syment *psyment" type_identifier (pointer_declarator "*psyment" * identifier)) , (parameter_declaration "void *dhandle" primitive_type (pointer_declarator "*dhandle" * identifier)) , (parameter_declaration "debug_type type" type_identifier identifier) , (parameter_declaration "bfd_boolean within_function" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  bfd_boolean bVar2;\n  debug_type_conflict *ppdVar3;\n  debug_type_conflict pdVar4;\n  byte bVar5;\n  \n  bVar5 = (byte)coff_symno;\n  if (bVar5 != 10) {\n    if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }\n    if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }\n  }\n  pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n  if (pdVar4 != (debug_type_conflict)0x0) {\n    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);\n    *ppdVar3 = pdVar4;\n    return 1;\n  }\n  return 0;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "bfd_boolean bVar2;" type_identifier identifier ;) (declaration "debug_type_conflict *ppdVar3;" type_identifier (pointer_declarator "*ppdVar3" * identifier) ;) (declaration "debug_type_conflict pdVar4;" type_identifier identifier ;) (declaration "byte bVar5;" type_identifier identifier ;) (expression_statement "bVar5 = (byte)coff_symno;" (assignment_expression "bVar5 = (byte)coff_symno" identifier = (cast_expression "(byte)coff_symno" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (bVar5 != 10) {\n    if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }\n    if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }\n  }" if (parenthesized_expression "(bVar5 != 10)" ( (binary_expression "bVar5 != 10" identifier != number_literal) )) (compound_statement "{\n    if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }\n    if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }\n  }" { (if_statement "if (bVar5 < 0xb) {\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }" if (parenthesized_expression "(bVar5 < 0xb)" ( (binary_expression "bVar5 < 0xb" identifier < number_literal) )) (compound_statement "{\n      if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }\n      if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }\n      if (bVar5 != 2) {\n        return 1;\n      }\nLAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);\n      return (uint)(bVar2 != 0);\n    }" { (if_statement "if (bVar5 == 3) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }" if (parenthesized_expression "(bVar5 == 3)" ( (binary_expression "bVar5 == 3" identifier == number_literal) )) (compound_statement "{\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }" { (expression_statement "bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);" (assignment_expression "bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           ((int)type != 0) + DEBUG_STATIC,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , (binary_expression "((int)type != 0) + DEBUG_STATIC" (parenthesized_expression "((int)type != 0)" ( (binary_expression "(int)type != 0" (cast_expression "(int)type" ( (type_descriptor "int" primitive_type) ) identifier) != number_literal) )) + identifier) , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;) (return_statement "return (uint)(bVar2 != 0);" return (call_expression "(uint)(bVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar2 != 0)" ( (binary_expression "bVar2 != 0" identifier != number_literal) ))) ;) })) (if_statement "if (3 < bVar5) {\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }" if (parenthesized_expression "(3 < bVar5)" ( (binary_expression "3 < bVar5" number_literal < identifier) )) (compound_statement "{\n        if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }\n        if (bVar5 != 9) {\n          return 1;\n        }\n        iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\nLAB_00116fde:\n        return (uint)(iVar1 != 0);\n      }" { (if_statement "if (bVar5 == 4) {\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }" if (parenthesized_expression "(bVar5 == 4)" ( (binary_expression "bVar5 == 4" identifier == number_literal) )) (compound_statement "{\n          bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          return (uint)(bVar2 != 0);\n        }" { (expression_statement "bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);" (assignment_expression "bVar2 = debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_variable\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_REGISTER,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , identifier , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;) (return_statement "return (uint)(bVar2 != 0);" return (call_expression "(uint)(bVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar2 != 0)" ( (binary_expression "bVar2 != 0" identifier != number_literal) ))) ;) })) (if_statement "if (bVar5 != 9) {\n          return 1;\n        }" if (parenthesized_expression "(bVar5 != 9)" ( (binary_expression "bVar5 != 9" identifier != number_literal) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);" (assignment_expression "iVar1 = debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_parameter\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                           DEBUG_PARM_STACK,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , identifier , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;) (labeled_statement "LAB_00116fde:\n        return (uint)(iVar1 != 0);" statement_identifier : (return_statement "return (uint)(iVar1 != 0);" return (call_expression "(uint)(iVar1 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) ))) ;)) })) (if_statement "if (bVar5 == 1) {\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }" if (parenthesized_expression "(bVar5 == 1)" ( (binary_expression "bVar5 == 1" identifier == number_literal) )) (compound_statement "{\n        bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);\n        return (uint)(bVar2 != 0);\n      }" { (expression_statement "bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind);" (assignment_expression "bVar2 = debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_variable\n                          (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_LOCAL,\n                           (long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , identifier , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                           (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;) (return_statement "return (uint)(bVar2 != 0);" return (call_expression "(uint)(bVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar2 != 0)" ( (binary_expression "bVar2 != 0" identifier != number_literal) ))) ;) })) (if_statement "if (bVar5 != 2) {\n        return 1;\n      }" if (parenthesized_expression "(bVar5 != 2)" ( (binary_expression "bVar5 != 2" identifier != number_literal) )) (compound_statement "{\n        return 1;\n      }" { (return_statement "return 1;" return number_literal ;) })) (labeled_statement "LAB_0011709d:\n      bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);" statement_identifier : (expression_statement "bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind);" (assignment_expression "bVar2 = debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_variable\n                        (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,DEBUG_GLOBAL,\n                         (long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , identifier , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                         (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;)) (return_statement "return (uint)(bVar2 != 0);" return (call_expression "(uint)(bVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar2 != 0)" ( (binary_expression "bVar2 != 0" identifier != number_literal) ))) ;) })) (if_statement "if (bVar5 != 0xf) {\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }" if (parenthesized_expression "(bVar5 != 0xf)" ( (binary_expression "bVar5 != 0xf" identifier != number_literal) )) (compound_statement "{\n      if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }\n      if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }\n    }" { (if_statement "if (0xf < bVar5) {\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }" if (parenthesized_expression "(0xf < bVar5)" ( (binary_expression "0xf < bVar5" number_literal < identifier) )) (compound_statement "{\n        if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }\n        if (bVar5 != 0x7f) {\n          return 1;\n        }\n        goto LAB_0011709d;\n      }" { (if_statement "if (bVar5 == 0x11) {\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }" if (parenthesized_expression "(bVar5 == 0x11)" ( (binary_expression "bVar5 == 0x11" identifier == number_literal) )) (compound_statement "{\n          iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);\n          goto LAB_00116fde;\n        }" { (expression_statement "iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind);" (assignment_expression "iVar1 = debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" identifier = (call_expression "debug_record_parameter\n                            (psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle,\n                             DEBUG_PARM_REG,\n                             (long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) , identifier , (binary_expression "(long)&(types->basic[3][1].u.kindirect)->slot +\n                             (long)&types->basic[1]->kind" (cast_expression "(long)&(types->basic[3][1].u.kindirect)->slot" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&(types->basic[3][1].u.kindirect)->slot" & (field_expression "(types->basic[3][1].u.kindirect)->slot" (parenthesized_expression "(types->basic[3][1].u.kindirect)" ( (field_expression "types->basic[3][1].u.kindirect" (field_expression "types->basic[3][1].u" (subscript_expression "types->basic[3][1]" (subscript_expression "types->basic[3]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) [ number_literal ]) . field_identifier) . field_identifier) )) -> field_identifier))) + (cast_expression "(long)&types->basic[1]->kind" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&types->basic[1]->kind" & (field_expression "types->basic[1]->kind" (subscript_expression "types->basic[1]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ]) -> field_identifier)))) )))) ;) (goto_statement "goto LAB_00116fde;" goto statement_identifier ;) })) (if_statement "if (bVar5 != 0x7f) {\n          return 1;\n        }" if (parenthesized_expression "(bVar5 != 0x7f)" ( (binary_expression "bVar5 != 0x7f" identifier != number_literal) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) (goto_statement "goto LAB_0011709d;" goto statement_identifier ;) })) (if_statement "if (bVar5 != 0xc) {\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }" if (parenthesized_expression "(bVar5 != 0xc)" ( (binary_expression "bVar5 != 0xc" identifier != number_literal) )) (compound_statement "{\n        if (bVar5 != 0xd) {\n          return 1;\n        }\n        pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);\n        return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);\n      }" { (if_statement "if (bVar5 != 0xd) {\n          return 1;\n        }" if (parenthesized_expression "(bVar5 != 0xd)" ( (binary_expression "bVar5 != 0xd" identifier != number_literal) )) (compound_statement "{\n          return 1;\n        }" { (return_statement "return 1;" return number_literal ;) })) (expression_statement "pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);" (assignment_expression "pdVar4 = debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" identifier = (call_expression "debug_name_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) )))) ;) (return_statement "return (bfd_boolean)(pdVar4 != (debug_type_conflict)0x0);" return (call_expression "(bfd_boolean)(pdVar4 != (debug_type_conflict)0x0)" (parenthesized_expression "(bfd_boolean)" ( identifier )) (argument_list "(pdVar4 != (debug_type_conflict)0x0)" ( (binary_expression "pdVar4 != (debug_type_conflict)0x0" identifier != (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) ))) ;) })) })) })) (expression_statement "pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle);" (assignment_expression "pdVar4 = debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" identifier = (call_expression "debug_tag_type(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" identifier (argument_list "(psyment,(char *)types->basic[0],(debug_type_conflict)dhandle)" ( identifier , (cast_expression "(char *)types->basic[0]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "types->basic[0]" (field_expression "types->basic" identifier -> field_identifier) [ number_literal ])) , (cast_expression "(debug_type_conflict)dhandle" ( (type_descriptor "debug_type_conflict" type_identifier) ) identifier) )))) ;) (if_statement "if (pdVar4 != (debug_type_conflict)0x0) {\n    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);\n    *ppdVar3 = pdVar4;\n    return 1;\n  }" if (parenthesized_expression "(pdVar4 != (debug_type_conflict)0x0)" ( (binary_expression "pdVar4 != (debug_type_conflict)0x0" identifier != (cast_expression "(debug_type_conflict)0x0" ( (type_descriptor "debug_type_conflict" type_identifier) ) number_literal)) )) (compound_statement "{\n    ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);\n    *ppdVar3 = pdVar4;\n    return 1;\n  }" { (expression_statement "ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym);" (assignment_expression "ppdVar3 = coff_get_slot((coff_types *)abfd,(long)sym)" identifier = (call_expression "coff_get_slot((coff_types *)abfd,(long)sym)" identifier (argument_list "((coff_types *)abfd,(long)sym)" ( (cast_expression "(coff_types *)abfd" ( (type_descriptor "coff_types *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(long)sym" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) )))) ;) (expression_statement "*ppdVar3 = pdVar4;" (assignment_expression "*ppdVar3 = pdVar4" (pointer_expression "*ppdVar3" * identifier) = identifier) ;) (return_statement "return 1;" return number_literal ;) })) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)\n\n{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}\n\n" (function_definition "bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)\n\n{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" primitive_type (function_declarator "FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" identifier (parameter_list "(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "long param_2" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "byte param_4" type_identifier identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "undefined8 param_6" type_identifier identifier) , (parameter_declaration "int param_7" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "long *plVar2;" (sized_type_specifier "long" long) (pointer_declarator "*plVar2" * identifier) ;) (declaration "long lVar3;" (sized_type_specifier "long" long) identifier ;) (if_statement "if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" if (parenthesized_expression "(param_4 != 10)" ( (binary_expression "param_4 != 10" identifier != number_literal) )) (compound_statement "{\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" { (if_statement "if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" if (parenthesized_expression "(param_4 < 0xb)" ( (binary_expression "param_4 < 0xb" identifier < number_literal) )) (compound_statement "{\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" { (if_statement "if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(param_4 == 3)" ( (binary_expression "param_4 == 3" identifier == number_literal) )) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , (binary_expression "(param_7 != 0) + '\x02'" (parenthesized_expression "(param_7 != 0)" ( (binary_expression "param_7 != 0" identifier != number_literal) )) + (char_literal "'\x02'" ' escape_sequence ')) , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(3 < param_4)" ( (binary_expression "3 < param_4" number_literal < identifier) )) (compound_statement "{\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" { (if_statement "if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" if (parenthesized_expression "(param_4 == 4)" ( (binary_expression "param_4 == 4" identifier == number_literal) )) (compound_statement "{\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 9) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 9)" ( (binary_expression "param_4 != 9" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (labeled_statement "LAB_00116fde:\n        return iVar1 != 0;" statement_identifier : (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;)) })) (if_statement "if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" if (parenthesized_expression "(param_4 == 1)" ( (binary_expression "param_4 == 1" identifier == number_literal) )) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" { (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 2) {\n        return true;\n      }" if (parenthesized_expression "(param_4 != 2)" ( (binary_expression "param_4 != 2" identifier != number_literal) )) (compound_statement "{\n        return true;\n      }" { (return_statement "return true;" return true ;) })) (labeled_statement "LAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" statement_identifier : (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;)) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" if (parenthesized_expression "(param_4 != 0xf)" ( (binary_expression "param_4 != 0xf" identifier != number_literal) )) (compound_statement "{\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" { (if_statement "if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" if (parenthesized_expression "(0xf < param_4)" ( (binary_expression "0xf < param_4" number_literal < identifier) )) (compound_statement "{\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" { (if_statement "if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" if (parenthesized_expression "(param_4 == 0x11)" ( (binary_expression "param_4 == 0x11" identifier == number_literal) )) (compound_statement "{\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" { (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier = (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier , number_literal , (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" * (cast_expression "(long *)(param_2 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x10)" ( (binary_expression "param_2 + 0x10" identifier + number_literal) )))) + (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" * (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" ( (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" * (cast_expression "(long *)(param_2 + 0x20)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0x20)" ( (binary_expression "param_2 + 0x20" identifier + number_literal) )))) + number_literal) ))))) )))) ;) (goto_statement "goto LAB_00116fde;" goto statement_identifier ;) })) (if_statement "if (param_4 != 0x7f) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 0x7f)" ( (binary_expression "param_4 != 0x7f" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (goto_statement "goto LAB_0011709d;" goto statement_identifier ;) })) (if_statement "if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" if (parenthesized_expression "(param_4 != 0xc)" ( (binary_expression "param_4 != 0xc" identifier != number_literal) )) (compound_statement "{\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" { (if_statement "if (param_4 != 0xd) {\n          return true;\n        }" if (parenthesized_expression "(param_4 != 0xd)" ( (binary_expression "param_4 != 0xd" identifier != number_literal) )) (compound_statement "{\n          return true;\n        }" { (return_statement "return true;" return true ;) })) (expression_statement "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier = (call_expression "FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier )))) ;) (return_statement "return lVar3 != 0;" return (binary_expression "lVar3 != 0" identifier != number_literal) ;) })) })) })) (expression_statement "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier = (call_expression "FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" identifier (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" ( identifier , (pointer_expression "*(undefined8 *)(param_2 + 8)" * (cast_expression "(undefined8 *)(param_2 + 8)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) )))) , identifier )))) ;) (if_statement "if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" if (parenthesized_expression "(lVar3 != 0)" ( (binary_expression "lVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" { (expression_statement "plVar2 = (long *)FUN_00116e50(param_1,param_3);" (assignment_expression "plVar2 = (long *)FUN_00116e50(param_1,param_3)" identifier = (cast_expression "(long *)FUN_00116e50(param_1,param_3)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116e50(param_1,param_3)" identifier (argument_list "(param_1,param_3)" ( identifier , identifier ))))) ;) (expression_statement "*plVar2 = lVar3;" (assignment_expression "*plVar2 = lVar3" (pointer_expression "*plVar2" * identifier) = identifier) ;) (return_statement "return true;" return true ;) })) (return_statement "return false;" return false ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) + (char_literal ' escape_sequence ')) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;) (labeled_statement statement_identifier : (return_statement return (binary_expression IDENT != LIT) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return BOOL ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;)) (return_statement return (binary_expression IDENT != LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return BOOL ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return BOOL ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (return_statement return BOOL ;) })) (return_statement return BOOL ;) })))
(function_definition "bool FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)\n\n{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" (primitive_type "bool") (function_declarator "FUN_00116f80(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" (identifier "FUN_00116f80") (parameter_list "(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5\n                 ,undefined8 param_6,int param_7)" (( "(") (parameter_declaration "undefined8 param_1" (type_identifier "undefined8") (identifier "param_1")) (, ",") (parameter_declaration "long param_2" (sized_type_specifier "long" (long "long")) (identifier "param_2")) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) (, ",") (parameter_declaration "byte param_4" (type_identifier "byte") (identifier "param_4")) (, ",") (parameter_declaration "undefined8 param_5" (type_identifier "undefined8") (identifier "param_5")) (, ",") (parameter_declaration "undefined8 param_6" (type_identifier "undefined8") (identifier "param_6")) (, ",") (parameter_declaration "int param_7" (primitive_type "int") (identifier "param_7")) () ")"))) (compound_statement "{\n  int iVar1;\n  long *plVar2;\n  long lVar3;\n  \n  if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }\n  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);\n  if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }\n  return false;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "long *plVar2;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar2" (* "*") (identifier "plVar2")) (; ";")) (declaration "long lVar3;" (sized_type_specifier "long" (long "long")) (identifier "lVar3") (; ";")) (if_statement "if (param_4 != 10) {\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(param_4 != 10)" (( "(") (binary_expression "param_4 != 10" (identifier "param_4") (!= "!=") (number_literal "10")) () ")")) (compound_statement "{\n    if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }\n    if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }\n  }" ({ "{") (if_statement "if (param_4 < 0xb) {\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" (if "if") (parenthesized_expression "(param_4 < 0xb)" (( "(") (binary_expression "param_4 < 0xb" (identifier "param_4") (< "<") (number_literal "0xb")) () ")")) (compound_statement "{\n      if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }\n      if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }\n      if (param_4 != 2) {\n        return true;\n      }\nLAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n      return iVar1 != 0;\n    }" ({ "{") (if_statement "if (param_4 == 3) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" (if "if") (parenthesized_expression "(param_4 == 3)" (( "(") (binary_expression "param_4 == 3" (identifier "param_4") (== "==") (number_literal "3")) () ")")) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" ({ "{") (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "iVar1") (= "=") (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "FUN_0010f350") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (binary_expression "(param_7 != 0) + '\x02'" (parenthesized_expression "(param_7 != 0)" (( "(") (binary_expression "param_7 != 0" (identifier "param_7") (!= "!=") (number_literal "0")) () ")")) (+ "+") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (, ",") (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (3 < param_4) {\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" (if "if") (parenthesized_expression "(3 < param_4)" (( "(") (binary_expression "3 < param_4" (number_literal "3") (< "<") (identifier "param_4")) () ")")) (compound_statement "{\n        if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }\n        if (param_4 != 9) {\n          return true;\n        }\n        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\nLAB_00116fde:\n        return iVar1 != 0;\n      }" ({ "{") (if_statement "if (param_4 == 4) {\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" (if "if") (parenthesized_expression "(param_4 == 4)" (( "(") (binary_expression "param_4 == 4" (identifier "param_4") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          return iVar1 != 0;\n        }" ({ "{") (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "iVar1") (= "=") (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "FUN_0010f350") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,5,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (number_literal "5") (, ",") (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (param_4 != 9) {\n          return true;\n        }" (if "if") (parenthesized_expression "(param_4 != 9)" (( "(") (binary_expression "param_4 != 9" (identifier "param_4") (!= "!=") (number_literal "9")) () ")")) (compound_statement "{\n          return true;\n        }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "iVar1") (= "=") (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "FUN_0010edb0") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (number_literal "1") (, ",") (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";")) (labeled_statement "LAB_00116fde:\n        return iVar1 != 0;" (statement_identifier "LAB_00116fde") (: ":") (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";"))) (} "}"))) (if_statement "if (param_4 == 1) {\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" (if "if") (parenthesized_expression "(param_4 == 1)" (( "(") (binary_expression "param_4 == 1" (identifier "param_4") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );\n        return iVar1 != 0;\n      }" ({ "{") (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            );" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "iVar1") (= "=") (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (identifier "FUN_0010f350") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,4,\n                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)\n                            )" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (number_literal "4") (, ",") (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (param_4 != 2) {\n        return true;\n      }" (if "if") (parenthesized_expression "(param_4 != 2)" (( "(") (binary_expression "param_4 != 2" (identifier "param_4") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n        return true;\n      }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (labeled_statement "LAB_0011709d:\n      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (statement_identifier "LAB_0011709d") (: ":") (expression_statement "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "iVar1") (= "=") (call_expression "FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "FUN_0010f350") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,1,\n                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (number_literal "1") (, ",") (binary_expression "*(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";"))) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (param_4 != 0xf) {\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" (if "if") (parenthesized_expression "(param_4 != 0xf)" (( "(") (binary_expression "param_4 != 0xf" (identifier "param_4") (!= "!=") (number_literal "0xf")) () ")")) (compound_statement "{\n      if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }\n      if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }\n    }" ({ "{") (if_statement "if (0xf < param_4) {\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" (if "if") (parenthesized_expression "(0xf < param_4)" (( "(") (binary_expression "0xf < param_4" (number_literal "0xf") (< "<") (identifier "param_4")) () ")")) (compound_statement "{\n        if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }\n        if (param_4 != 0x7f) {\n          return true;\n        }\n        goto LAB_0011709d;\n      }" ({ "{") (if_statement "if (param_4 == 0x11) {\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" (if "if") (parenthesized_expression "(param_4 == 0x11)" (( "(") (binary_expression "param_4 == 0x11" (identifier "param_4") (== "==") (number_literal "0x11")) () ")")) (compound_statement "{\n          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));\n          goto LAB_00116fde;\n        }" ({ "{") (expression_statement "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));" (assignment_expression "iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "iVar1") (= "=") (call_expression "FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (identifier "FUN_0010edb0") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6,2,\n                               *(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28))" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") (, ",") (number_literal "2") (, ",") (binary_expression "*(long *)(param_2 + 0x10) +\n                               *(long *)(*(long *)(param_2 + 0x20) + 0x28)" (pointer_expression "*(long *)(param_2 + 0x10)" (* "*") (cast_expression "(long *)(param_2 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x10)" (( "(") (binary_expression "param_2 + 0x10" (identifier "param_2") (+ "+") (number_literal "0x10")) () ")")))) (+ "+") (pointer_expression "*(long *)(*(long *)(param_2 + 0x20) + 0x28)" (* "*") (cast_expression "(long *)(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(long *)(param_2 + 0x20) + 0x28)" (( "(") (binary_expression "*(long *)(param_2 + 0x20) + 0x28" (pointer_expression "*(long *)(param_2 + 0x20)" (* "*") (cast_expression "(long *)(param_2 + 0x20)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0x20)" (( "(") (binary_expression "param_2 + 0x20" (identifier "param_2") (+ "+") (number_literal "0x20")) () ")")))) (+ "+") (number_literal "0x28")) () ")"))))) () ")")))) (; ";")) (goto_statement "goto LAB_00116fde;" (goto "goto") (statement_identifier "LAB_00116fde") (; ";")) (} "}"))) (if_statement "if (param_4 != 0x7f) {\n          return true;\n        }" (if "if") (parenthesized_expression "(param_4 != 0x7f)" (( "(") (binary_expression "param_4 != 0x7f" (identifier "param_4") (!= "!=") (number_literal "0x7f")) () ")")) (compound_statement "{\n          return true;\n        }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (goto_statement "goto LAB_0011709d;" (goto "goto") (statement_identifier "LAB_0011709d") (; ";")) (} "}"))) (if_statement "if (param_4 != 0xc) {\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" (if "if") (parenthesized_expression "(param_4 != 0xc)" (( "(") (binary_expression "param_4 != 0xc" (identifier "param_4") (!= "!=") (number_literal "0xc")) () ")")) (compound_statement "{\n        if (param_4 != 0xd) {\n          return true;\n        }\n        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);\n        return lVar3 != 0;\n      }" ({ "{") (if_statement "if (param_4 != 0xd) {\n          return true;\n        }" (if "if") (parenthesized_expression "(param_4 != 0xd)" (( "(") (binary_expression "param_4 != 0xd" (identifier "param_4") (!= "!=") (number_literal "0xd")) () ")")) (compound_statement "{\n          return true;\n        }" ({ "{") (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (expression_statement "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" (identifier "lVar3") (= "=") (call_expression "FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6)" (identifier "FUN_0010fb10") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") () ")")))) (; ";")) (return_statement "return lVar3 != 0;" (return "return") (binary_expression "lVar3 != 0" (identifier "lVar3") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (} "}"))) (} "}"))) (expression_statement "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);" (assignment_expression "lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" (identifier "lVar3") (= "=") (call_expression "FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6)" (identifier "FUN_0010fbe0") (argument_list "(param_5,*(undefined8 *)(param_2 + 8),param_6)" (( "(") (identifier "param_5") (, ",") (pointer_expression "*(undefined8 *)(param_2 + 8)" (* "*") (cast_expression "(undefined8 *)(param_2 + 8)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")")))) (, ",") (identifier "param_6") () ")")))) (; ";")) (if_statement "if (lVar3 != 0) {\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" (if "if") (parenthesized_expression "(lVar3 != 0)" (( "(") (binary_expression "lVar3 != 0" (identifier "lVar3") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    plVar2 = (long *)FUN_00116e50(param_1,param_3);\n    *plVar2 = lVar3;\n    return true;\n  }" ({ "{") (expression_statement "plVar2 = (long *)FUN_00116e50(param_1,param_3);" (assignment_expression "plVar2 = (long *)FUN_00116e50(param_1,param_3)" (identifier "plVar2") (= "=") (cast_expression "(long *)FUN_00116e50(param_1,param_3)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116e50(param_1,param_3)" (identifier "FUN_00116e50") (argument_list "(param_1,param_3)" (( "(") (identifier "param_1") (, ",") (identifier "param_3") () ")"))))) (; ";")) (expression_statement "*plVar2 = lVar3;" (assignment_expression "*plVar2 = lVar3" (pointer_expression "*plVar2" (* "*") (identifier "plVar2")) (= "=") (identifier "lVar3")) (; ";")) (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}"))) (return_statement "return false;" (return "return") (false "false") (; ";")) (} "}")))

type_1
function_1(type_2 *abfd,type_3 *types,type_4 *sym,long coff_symno,type_5 *psyment,
                 void *dhandle,type_6 type,type_1 within_function)

{
  int var_6;
  type_1 var_4;
  type_7 *ppdVar3;
  type_7 var_8;
  type_8 var_1;
  
  var_1 = (type_8)coff_symno;
  if (var_1 != 10) {
    if (var_1 < 0xb) {
      if (var_1 == 3) {
        var_4 = var_2
                          (psyment,(char *)types->basic[0],(type_7)dhandle,
                           ((int)type != 0) + var_3,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
        return (uint)(var_4 != 0);
      }
      if (3 < var_1) {
        if (var_1 == 4) {
          var_4 = var_2
                            (psyment,(char *)types->basic[0],(type_7)dhandle,
                             DEBUG_REGISTER,
                             (long)&(types->basic[3][1].u.kindirect)->slot +
                             (long)&types->basic[1]->kind);
          return (uint)(var_4 != 0);
        }
        if (var_1 != 9) {
          return 1;
        }
        var_6 = var_5
                          (psyment,(char *)types->basic[0],(type_7)dhandle,
                           DEBUG_PARM_STACK,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
LAB_00116fde:
        return (uint)(var_6 != 0);
      }
      if (var_1 == 1) {
        var_4 = var_2
                          (psyment,(char *)types->basic[0],(type_7)dhandle,DEBUG_LOCAL,
                           (long)&(types->basic[3][1].u.kindirect)->slot +
                           (long)&types->basic[1]->kind);
        return (uint)(var_4 != 0);
      }
      if (var_1 != 2) {
        return 1;
      }
LAB_0011709d:
      var_4 = var_2
                        (psyment,(char *)types->basic[0],(type_7)dhandle,DEBUG_GLOBAL,
                         (long)&(types->basic[3][1].u.kindirect)->slot +
                         (long)&types->basic[1]->kind);
      return (uint)(var_4 != 0);
    }
    if (var_1 != 0xf) {
      if (0xf < var_1) {
        if (var_1 == 0x11) {
          var_6 = var_5
                            (psyment,(char *)types->basic[0],(type_7)dhandle,
                             DEBUG_PARM_REG,
                             (long)&(types->basic[3][1].u.kindirect)->slot +
                             (long)&types->basic[1]->kind);
          goto LAB_00116fde;
        }
        if (var_1 != 0x7f) {
          return 1;
        }
        goto LAB_0011709d;
      }
      if (var_1 != 0xc) {
        if (var_1 != 0xd) {
          return 1;
        }
        var_8 = var_7(psyment,(char *)types->basic[0],(type_7)dhandle);
        return (type_1)(var_8 != (type_7)0x0);
      }
    }
  }
  var_8 = var_9(psyment,(char *)types->basic[0],(type_7)dhandle);
  if (var_8 != (type_7)0x0) {
    ppdVar3 = var_10((type_3 *)abfd,(long)sym);
    *ppdVar3 = var_8;
    return 1;
  }
  return 0;
}


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

bool MASKED(undefined8 param_1,long param_2,undefined8 param_3,byte param_4,undefined8 param_5
                 ,undefined8 param_6,int param_7)

{
  int iVar1;
  long *plVar2;
  long lVar3;
  
  if (param_4 != 10) {
    if (param_4 < 0xb) {
      if (param_4 == 3) {
        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,(param_7 != 0) + '\x02',
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
        return iVar1 != 0;
      }
      if (3 < param_4) {
        if (param_4 == 4) {
          iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,5,
                               *(long *)(param_2 + 0x10) +
                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));
          return iVar1 != 0;
        }
        if (param_4 != 9) {
          return true;
        }
        iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,1,
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
LAB_00116fde:
        return iVar1 != 0;
      }
      if (param_4 == 1) {
        iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,4,
                             *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28)
                            );
        return iVar1 != 0;
      }
      if (param_4 != 2) {
        return true;
      }
LAB_0011709d:
      iVar1 = FUN_0010f350(param_5,*(undefined8 *)(param_2 + 8),param_6,1,
                           *(long *)(param_2 + 0x10) + *(long *)(*(long *)(param_2 + 0x20) + 0x28));
      return iVar1 != 0;
    }
    if (param_4 != 0xf) {
      if (0xf < param_4) {
        if (param_4 == 0x11) {
          iVar1 = FUN_0010edb0(param_5,*(undefined8 *)(param_2 + 8),param_6,2,
                               *(long *)(param_2 + 0x10) +
                               *(long *)(*(long *)(param_2 + 0x20) + 0x28));
          goto LAB_00116fde;
        }
        if (param_4 != 0x7f) {
          return true;
        }
        goto LAB_0011709d;
      }
      if (param_4 != 0xc) {
        if (param_4 != 0xd) {
          return true;
        }
        lVar3 = FUN_0010fb10(param_5,*(undefined8 *)(param_2 + 8),param_6);
        return lVar3 != 0;
      }
    }
  }
  lVar3 = FUN_0010fbe0(param_5,*(undefined8 *)(param_2 + 8),param_6);
  if (lVar3 != 0) {
    plVar2 = (long *)FUN_00116e50(param_1,param_3);
    *plVar2 = lVar3;
    return true;
  }
  return false;
}

