
void fatal(char *format,...)

{
  char in_AL;
  char cVar1;
  undefined8 in_RCX;
  undefined8 in_RDX;
  undefined8 extraout_RDX;
  undefined8 in_RSI;
  __va_list_tag *args_00;
  char *format_00;
  undefined8 in_R8;
  undefined8 in_R9;
  undefined8 in_XMM0_Qa;
  undefined8 extraout_XMM0_Qa;
  undefined8 in_XMM1_Qa;
  undefined8 extraout_XMM1_Qa;
  undefined8 in_XMM2_Qa;
  undefined8 in_XMM3_Qa;
  undefined8 in_XMM4_Qa;
  undefined8 in_XMM5_Qa;
  undefined8 in_XMM6_Qa;
  undefined8 in_XMM7_Qa;
  __va_list_tag _Stack_1a8;
  undefined1 auStack_190 [8];
  __va_list_tag *p_Stack_188;
  undefined8 uStack_180;
  undefined8 uStack_178;
  undefined8 uStack_170;
  undefined8 uStack_168;
  undefined8 uStack_160;
  undefined8 uStack_150;
  undefined8 uStack_140;
  undefined8 uStack_130;
  undefined8 uStack_120;
  undefined8 uStack_110;
  undefined8 uStack_100;
  undefined8 uStack_f0;
  undefined8 uStack_e0;
  va_list args;
  undefined1 local_b8 [8];
  undefined8 local_b0;
  undefined8 local_a8;
  undefined8 local_a0;
  undefined8 local_98;
  undefined8 local_90;
  undefined8 local_88;
  undefined8 local_78;
  undefined8 local_68;
  undefined8 local_58;
  undefined8 local_48;
  undefined8 local_38;
  undefined8 local_28;
  undefined8 local_18;
  
  if (in_AL != '\0') {
    local_88 = in_XMM0_Qa;
    local_78 = in_XMM1_Qa;
    local_68 = in_XMM2_Qa;
    local_58 = in_XMM3_Qa;
    local_48 = in_XMM4_Qa;
    local_38 = in_XMM5_Qa;
    local_28 = in_XMM6_Qa;
    local_18 = in_XMM7_Qa;
  }
  args[0].overflow_arg_area = &stack0x00000008;
  args_00 = args;
  args[0].gp_offset = 8;
  args[0].reg_save_area = local_b8;
  args[0].fp_offset = 0x30;
  uStack_e0 = 0x102e2c;
  local_b0 = in_RSI;
  local_a8 = in_RDX;
  local_a0 = in_RCX;
  local_98 = in_R8;
  local_90 = in_R9;
  report(format,args_00);
  format_00 = (char *)0x1;
  uStack_e0 = 0x102e36;
  cVar1 = xexit();
  if (cVar1 != '\0') {
    uStack_160 = extraout_XMM0_Qa;
    uStack_150 = extraout_XMM1_Qa;
    uStack_140 = in_XMM2_Qa;
    uStack_130 = in_XMM3_Qa;
    uStack_120 = in_XMM4_Qa;
    uStack_110 = in_XMM5_Qa;
    uStack_100 = in_XMM6_Qa;
    uStack_f0 = in_XMM7_Qa;
  }
  _Stack_1a8.overflow_arg_area = args;
  _Stack_1a8.gp_offset = 8;
  _Stack_1a8.reg_save_area = auStack_190;
  _Stack_1a8.fp_offset = 0x30;
  p_Stack_188 = args_00;
  uStack_180 = extraout_RDX;
  uStack_178 = in_RCX;
  uStack_170 = in_R8;
  uStack_168 = in_R9;
  report(format_00,&_Stack_1a8);
  return;
}



void FUN_00102da0(void)

{
  FUN_00102d40();
  xexit(1);
  FUN_00102d40();
  return;
}


SUB RSP,0xd8
MOV qword ptr [RSP + 0x28],RSI
MOV qword ptr [RSP + 0x30],RDX
MOV qword ptr [RSP + 0x38],RCX
MOV qword ptr [RSP + 0x40],R8
MOV qword ptr [RSP + 0x48],R9
TEST AL,AL
JZ 0x00102dfb
MOVAPS xmmword ptr [RSP + 0x50],XMM0
MOVAPS xmmword ptr [RSP + 0x60],XMM1
MOVAPS xmmword ptr [RSP + 0x70],XMM2
MOVAPS xmmword ptr [RSP + 0x80],XMM3
MOVAPS xmmword ptr [RSP + 0x90],XMM4
MOVAPS xmmword ptr [RSP + 0xa0],XMM5
MOVAPS xmmword ptr [RSP + 0xb0],XMM6
MOVAPS xmmword ptr [RSP + 0xc0],XMM7
LEA RAX,[RSP + 0xe0]
LEA RSI,[RSP + 0x8]
MOV dword ptr [RSP + 0x8],0x8
MOV qword ptr [RSP + 0x10],RAX
LEA RAX,[RSP + 0x20]
MOV dword ptr [RSP + 0xc],0x30
MOV qword ptr [RSP + 0x18],RAX
CALL 0x00102d40
MOV EDI,0x1
CALL 0x00102380
NOP word ptr CS:[RAX + RAX*0x1]
(translation_unit "void FUN_00102da0(void)\n\n{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}\n\n" (function_definition "void FUN_00102da0(void)\n\n{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" primitive_type (function_declarator "FUN_00102da0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" { (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" identifier (argument_list "()" ( ))) ;) (expression_statement "xexit(1);" (call_expression "xexit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void fatal(char *format,...)\n\n{\n  char in_AL;\n  char cVar1;\n  undefined8 in_RCX;\n  undefined8 in_RDX;\n  undefined8 extraout_RDX;\n  undefined8 in_RSI;\n  __va_list_tag *args_00;\n  char *format_00;\n  undefined8 in_R8;\n  undefined8 in_R9;\n  undefined8 in_XMM0_Qa;\n  undefined8 extraout_XMM0_Qa;\n  undefined8 in_XMM1_Qa;\n  undefined8 extraout_XMM1_Qa;\n  undefined8 in_XMM2_Qa;\n  undefined8 in_XMM3_Qa;\n  undefined8 in_XMM4_Qa;\n  undefined8 in_XMM5_Qa;\n  undefined8 in_XMM6_Qa;\n  undefined8 in_XMM7_Qa;\n  __va_list_tag _Stack_1a8;\n  undefined1 auStack_190 [8];\n  __va_list_tag *p_Stack_188;\n  undefined8 uStack_180;\n  undefined8 uStack_178;\n  undefined8 uStack_170;\n  undefined8 uStack_168;\n  undefined8 uStack_160;\n  undefined8 uStack_150;\n  undefined8 uStack_140;\n  undefined8 uStack_130;\n  undefined8 uStack_120;\n  undefined8 uStack_110;\n  undefined8 uStack_100;\n  undefined8 uStack_f0;\n  undefined8 uStack_e0;\n  va_list args;\n  undefined1 local_b8 [8];\n  undefined8 local_b0;\n  undefined8 local_a8;\n  undefined8 local_a0;\n  undefined8 local_98;\n  undefined8 local_90;\n  undefined8 local_88;\n  undefined8 local_78;\n  undefined8 local_68;\n  undefined8 local_58;\n  undefined8 local_48;\n  undefined8 local_38;\n  undefined8 local_28;\n  undefined8 local_18;\n  \n  if (in_AL != '\0') {\n    local_88 = in_XMM0_Qa;\n    local_78 = in_XMM1_Qa;\n    local_68 = in_XMM2_Qa;\n    local_58 = in_XMM3_Qa;\n    local_48 = in_XMM4_Qa;\n    local_38 = in_XMM5_Qa;\n    local_28 = in_XMM6_Qa;\n    local_18 = in_XMM7_Qa;\n  }\n  args[0].overflow_arg_area = &stack0x00000008;\n  args_00 = args;\n  args[0].gp_offset = 8;\n  args[0].reg_save_area = local_b8;\n  args[0].fp_offset = 0x30;\n  uStack_e0 = 0x102e2c;\n  local_b0 = in_RSI;\n  local_a8 = in_RDX;\n  local_a0 = in_RCX;\n  local_98 = in_R8;\n  local_90 = in_R9;\n  report(format,args_00);\n  format_00 = (char *)0x1;\n  uStack_e0 = 0x102e36;\n  cVar1 = xexit();\n  if (cVar1 != '\0') {\n    uStack_160 = extraout_XMM0_Qa;\n    uStack_150 = extraout_XMM1_Qa;\n    uStack_140 = in_XMM2_Qa;\n    uStack_130 = in_XMM3_Qa;\n    uStack_120 = in_XMM4_Qa;\n    uStack_110 = in_XMM5_Qa;\n    uStack_100 = in_XMM6_Qa;\n    uStack_f0 = in_XMM7_Qa;\n  }\n  _Stack_1a8.overflow_arg_area = args;\n  _Stack_1a8.gp_offset = 8;\n  _Stack_1a8.reg_save_area = auStack_190;\n  _Stack_1a8.fp_offset = 0x30;\n  p_Stack_188 = args_00;\n  uStack_180 = extraout_RDX;\n  uStack_178 = in_RCX;\n  uStack_170 = in_R8;\n  uStack_168 = in_R9;\n  report(format_00,&_Stack_1a8);\n  return;\n}\n\n" (function_definition "void fatal(char *format,...)\n\n{\n  char in_AL;\n  char cVar1;\n  undefined8 in_RCX;\n  undefined8 in_RDX;\n  undefined8 extraout_RDX;\n  undefined8 in_RSI;\n  __va_list_tag *args_00;\n  char *format_00;\n  undefined8 in_R8;\n  undefined8 in_R9;\n  undefined8 in_XMM0_Qa;\n  undefined8 extraout_XMM0_Qa;\n  undefined8 in_XMM1_Qa;\n  undefined8 extraout_XMM1_Qa;\n  undefined8 in_XMM2_Qa;\n  undefined8 in_XMM3_Qa;\n  undefined8 in_XMM4_Qa;\n  undefined8 in_XMM5_Qa;\n  undefined8 in_XMM6_Qa;\n  undefined8 in_XMM7_Qa;\n  __va_list_tag _Stack_1a8;\n  undefined1 auStack_190 [8];\n  __va_list_tag *p_Stack_188;\n  undefined8 uStack_180;\n  undefined8 uStack_178;\n  undefined8 uStack_170;\n  undefined8 uStack_168;\n  undefined8 uStack_160;\n  undefined8 uStack_150;\n  undefined8 uStack_140;\n  undefined8 uStack_130;\n  undefined8 uStack_120;\n  undefined8 uStack_110;\n  undefined8 uStack_100;\n  undefined8 uStack_f0;\n  undefined8 uStack_e0;\n  va_list args;\n  undefined1 local_b8 [8];\n  undefined8 local_b0;\n  undefined8 local_a8;\n  undefined8 local_a0;\n  undefined8 local_98;\n  undefined8 local_90;\n  undefined8 local_88;\n  undefined8 local_78;\n  undefined8 local_68;\n  undefined8 local_58;\n  undefined8 local_48;\n  undefined8 local_38;\n  undefined8 local_28;\n  undefined8 local_18;\n  \n  if (in_AL != '\0') {\n    local_88 = in_XMM0_Qa;\n    local_78 = in_XMM1_Qa;\n    local_68 = in_XMM2_Qa;\n    local_58 = in_XMM3_Qa;\n    local_48 = in_XMM4_Qa;\n    local_38 = in_XMM5_Qa;\n    local_28 = in_XMM6_Qa;\n    local_18 = in_XMM7_Qa;\n  }\n  args[0].overflow_arg_area = &stack0x00000008;\n  args_00 = args;\n  args[0].gp_offset = 8;\n  args[0].reg_save_area = local_b8;\n  args[0].fp_offset = 0x30;\n  uStack_e0 = 0x102e2c;\n  local_b0 = in_RSI;\n  local_a8 = in_RDX;\n  local_a0 = in_RCX;\n  local_98 = in_R8;\n  local_90 = in_R9;\n  report(format,args_00);\n  format_00 = (char *)0x1;\n  uStack_e0 = 0x102e36;\n  cVar1 = xexit();\n  if (cVar1 != '\0') {\n    uStack_160 = extraout_XMM0_Qa;\n    uStack_150 = extraout_XMM1_Qa;\n    uStack_140 = in_XMM2_Qa;\n    uStack_130 = in_XMM3_Qa;\n    uStack_120 = in_XMM4_Qa;\n    uStack_110 = in_XMM5_Qa;\n    uStack_100 = in_XMM6_Qa;\n    uStack_f0 = in_XMM7_Qa;\n  }\n  _Stack_1a8.overflow_arg_area = args;\n  _Stack_1a8.gp_offset = 8;\n  _Stack_1a8.reg_save_area = auStack_190;\n  _Stack_1a8.fp_offset = 0x30;\n  p_Stack_188 = args_00;\n  uStack_180 = extraout_RDX;\n  uStack_178 = in_RCX;\n  uStack_170 = in_R8;\n  uStack_168 = in_R9;\n  report(format_00,&_Stack_1a8);\n  return;\n}" primitive_type (function_declarator "fatal(char *format,...)" identifier (parameter_list "(char *format,...)" ( (parameter_declaration "char *format" primitive_type (pointer_declarator "*format" * identifier)) , (variadic_parameter "..." ...) ))) (compound_statement "{\n  char in_AL;\n  char cVar1;\n  undefined8 in_RCX;\n  undefined8 in_RDX;\n  undefined8 extraout_RDX;\n  undefined8 in_RSI;\n  __va_list_tag *args_00;\n  char *format_00;\n  undefined8 in_R8;\n  undefined8 in_R9;\n  undefined8 in_XMM0_Qa;\n  undefined8 extraout_XMM0_Qa;\n  undefined8 in_XMM1_Qa;\n  undefined8 extraout_XMM1_Qa;\n  undefined8 in_XMM2_Qa;\n  undefined8 in_XMM3_Qa;\n  undefined8 in_XMM4_Qa;\n  undefined8 in_XMM5_Qa;\n  undefined8 in_XMM6_Qa;\n  undefined8 in_XMM7_Qa;\n  __va_list_tag _Stack_1a8;\n  undefined1 auStack_190 [8];\n  __va_list_tag *p_Stack_188;\n  undefined8 uStack_180;\n  undefined8 uStack_178;\n  undefined8 uStack_170;\n  undefined8 uStack_168;\n  undefined8 uStack_160;\n  undefined8 uStack_150;\n  undefined8 uStack_140;\n  undefined8 uStack_130;\n  undefined8 uStack_120;\n  undefined8 uStack_110;\n  undefined8 uStack_100;\n  undefined8 uStack_f0;\n  undefined8 uStack_e0;\n  va_list args;\n  undefined1 local_b8 [8];\n  undefined8 local_b0;\n  undefined8 local_a8;\n  undefined8 local_a0;\n  undefined8 local_98;\n  undefined8 local_90;\n  undefined8 local_88;\n  undefined8 local_78;\n  undefined8 local_68;\n  undefined8 local_58;\n  undefined8 local_48;\n  undefined8 local_38;\n  undefined8 local_28;\n  undefined8 local_18;\n  \n  if (in_AL != '\0') {\n    local_88 = in_XMM0_Qa;\n    local_78 = in_XMM1_Qa;\n    local_68 = in_XMM2_Qa;\n    local_58 = in_XMM3_Qa;\n    local_48 = in_XMM4_Qa;\n    local_38 = in_XMM5_Qa;\n    local_28 = in_XMM6_Qa;\n    local_18 = in_XMM7_Qa;\n  }\n  args[0].overflow_arg_area = &stack0x00000008;\n  args_00 = args;\n  args[0].gp_offset = 8;\n  args[0].reg_save_area = local_b8;\n  args[0].fp_offset = 0x30;\n  uStack_e0 = 0x102e2c;\n  local_b0 = in_RSI;\n  local_a8 = in_RDX;\n  local_a0 = in_RCX;\n  local_98 = in_R8;\n  local_90 = in_R9;\n  report(format,args_00);\n  format_00 = (char *)0x1;\n  uStack_e0 = 0x102e36;\n  cVar1 = xexit();\n  if (cVar1 != '\0') {\n    uStack_160 = extraout_XMM0_Qa;\n    uStack_150 = extraout_XMM1_Qa;\n    uStack_140 = in_XMM2_Qa;\n    uStack_130 = in_XMM3_Qa;\n    uStack_120 = in_XMM4_Qa;\n    uStack_110 = in_XMM5_Qa;\n    uStack_100 = in_XMM6_Qa;\n    uStack_f0 = in_XMM7_Qa;\n  }\n  _Stack_1a8.overflow_arg_area = args;\n  _Stack_1a8.gp_offset = 8;\n  _Stack_1a8.reg_save_area = auStack_190;\n  _Stack_1a8.fp_offset = 0x30;\n  p_Stack_188 = args_00;\n  uStack_180 = extraout_RDX;\n  uStack_178 = in_RCX;\n  uStack_170 = in_R8;\n  uStack_168 = in_R9;\n  report(format_00,&_Stack_1a8);\n  return;\n}" { (declaration "char in_AL;" primitive_type identifier ;) (declaration "char cVar1;" primitive_type identifier ;) (declaration "undefined8 in_RCX;" type_identifier identifier ;) (declaration "undefined8 in_RDX;" type_identifier identifier ;) (declaration "undefined8 extraout_RDX;" type_identifier identifier ;) (declaration "undefined8 in_RSI;" type_identifier identifier ;) (declaration "__va_list_tag *args_00;" type_identifier (pointer_declarator "*args_00" * identifier) ;) (declaration "char *format_00;" primitive_type (pointer_declarator "*format_00" * identifier) ;) (declaration "undefined8 in_R8;" type_identifier identifier ;) (declaration "undefined8 in_R9;" type_identifier identifier ;) (declaration "undefined8 in_XMM0_Qa;" type_identifier identifier ;) (declaration "undefined8 extraout_XMM0_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM1_Qa;" type_identifier identifier ;) (declaration "undefined8 extraout_XMM1_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM2_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM3_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM4_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM5_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM6_Qa;" type_identifier identifier ;) (declaration "undefined8 in_XMM7_Qa;" type_identifier identifier ;) (declaration "__va_list_tag _Stack_1a8;" type_identifier identifier ;) (declaration "undefined1 auStack_190 [8];" type_identifier (array_declarator "auStack_190 [8]" identifier [ number_literal ]) ;) (declaration "__va_list_tag *p_Stack_188;" type_identifier (pointer_declarator "*p_Stack_188" * identifier) ;) (declaration "undefined8 uStack_180;" type_identifier identifier ;) (declaration "undefined8 uStack_178;" type_identifier identifier ;) (declaration "undefined8 uStack_170;" type_identifier identifier ;) (declaration "undefined8 uStack_168;" type_identifier identifier ;) (declaration "undefined8 uStack_160;" type_identifier identifier ;) (declaration "undefined8 uStack_150;" type_identifier identifier ;) (declaration "undefined8 uStack_140;" type_identifier identifier ;) (declaration "undefined8 uStack_130;" type_identifier identifier ;) (declaration "undefined8 uStack_120;" type_identifier identifier ;) (declaration "undefined8 uStack_110;" type_identifier identifier ;) (declaration "undefined8 uStack_100;" type_identifier identifier ;) (declaration "undefined8 uStack_f0;" type_identifier identifier ;) (declaration "undefined8 uStack_e0;" type_identifier identifier ;) (declaration "va_list args;" type_identifier identifier ;) (declaration "undefined1 local_b8 [8];" type_identifier (array_declarator "local_b8 [8]" identifier [ number_literal ]) ;) (declaration "undefined8 local_b0;" type_identifier identifier ;) (declaration "undefined8 local_a8;" type_identifier identifier ;) (declaration "undefined8 local_a0;" type_identifier identifier ;) (declaration "undefined8 local_98;" type_identifier identifier ;) (declaration "undefined8 local_90;" type_identifier identifier ;) (declaration "undefined8 local_88;" type_identifier identifier ;) (declaration "undefined8 local_78;" type_identifier identifier ;) (declaration "undefined8 local_68;" type_identifier identifier ;) (declaration "undefined8 local_58;" type_identifier identifier ;) (declaration "undefined8 local_48;" type_identifier identifier ;) (declaration "undefined8 local_38;" type_identifier identifier ;) (declaration "undefined8 local_28;" type_identifier identifier ;) (declaration "undefined8 local_18;" type_identifier identifier ;) (if_statement "if (in_AL != '\0') {\n    local_88 = in_XMM0_Qa;\n    local_78 = in_XMM1_Qa;\n    local_68 = in_XMM2_Qa;\n    local_58 = in_XMM3_Qa;\n    local_48 = in_XMM4_Qa;\n    local_38 = in_XMM5_Qa;\n    local_28 = in_XMM6_Qa;\n    local_18 = in_XMM7_Qa;\n  }" if (parenthesized_expression "(in_AL != '\0')" ( (binary_expression "in_AL != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    local_88 = in_XMM0_Qa;\n    local_78 = in_XMM1_Qa;\n    local_68 = in_XMM2_Qa;\n    local_58 = in_XMM3_Qa;\n    local_48 = in_XMM4_Qa;\n    local_38 = in_XMM5_Qa;\n    local_28 = in_XMM6_Qa;\n    local_18 = in_XMM7_Qa;\n  }" { (expression_statement "local_88 = in_XMM0_Qa;" (assignment_expression "local_88 = in_XMM0_Qa" identifier = identifier) ;) (expression_statement "local_78 = in_XMM1_Qa;" (assignment_expression "local_78 = in_XMM1_Qa" identifier = identifier) ;) (expression_statement "local_68 = in_XMM2_Qa;" (assignment_expression "local_68 = in_XMM2_Qa" identifier = identifier) ;) (expression_statement "local_58 = in_XMM3_Qa;" (assignment_expression "local_58 = in_XMM3_Qa" identifier = identifier) ;) (expression_statement "local_48 = in_XMM4_Qa;" (assignment_expression "local_48 = in_XMM4_Qa" identifier = identifier) ;) (expression_statement "local_38 = in_XMM5_Qa;" (assignment_expression "local_38 = in_XMM5_Qa" identifier = identifier) ;) (expression_statement "local_28 = in_XMM6_Qa;" (assignment_expression "local_28 = in_XMM6_Qa" identifier = identifier) ;) (expression_statement "local_18 = in_XMM7_Qa;" (assignment_expression "local_18 = in_XMM7_Qa" identifier = identifier) ;) })) (expression_statement "args[0].overflow_arg_area = &stack0x00000008;" (assignment_expression "args[0].overflow_arg_area = &stack0x00000008" (field_expression "args[0].overflow_arg_area" (subscript_expression "args[0]" identifier [ number_literal ]) . field_identifier) = (pointer_expression "&stack0x00000008" & identifier)) ;) (expression_statement "args_00 = args;" (assignment_expression "args_00 = args" identifier = identifier) ;) (expression_statement "args[0].gp_offset = 8;" (assignment_expression "args[0].gp_offset = 8" (field_expression "args[0].gp_offset" (subscript_expression "args[0]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "args[0].reg_save_area = local_b8;" (assignment_expression "args[0].reg_save_area = local_b8" (field_expression "args[0].reg_save_area" (subscript_expression "args[0]" identifier [ number_literal ]) . field_identifier) = identifier) ;) (expression_statement "args[0].fp_offset = 0x30;" (assignment_expression "args[0].fp_offset = 0x30" (field_expression "args[0].fp_offset" (subscript_expression "args[0]" identifier [ number_literal ]) . field_identifier) = number_literal) ;) (expression_statement "uStack_e0 = 0x102e2c;" (assignment_expression "uStack_e0 = 0x102e2c" identifier = number_literal) ;) (expression_statement "local_b0 = in_RSI;" (assignment_expression "local_b0 = in_RSI" identifier = identifier) ;) (expression_statement "local_a8 = in_RDX;" (assignment_expression "local_a8 = in_RDX" identifier = identifier) ;) (expression_statement "local_a0 = in_RCX;" (assignment_expression "local_a0 = in_RCX" identifier = identifier) ;) (expression_statement "local_98 = in_R8;" (assignment_expression "local_98 = in_R8" identifier = identifier) ;) (expression_statement "local_90 = in_R9;" (assignment_expression "local_90 = in_R9" identifier = identifier) ;) (expression_statement "report(format,args_00);" (call_expression "report(format,args_00)" identifier (argument_list "(format,args_00)" ( identifier , identifier ))) ;) (expression_statement "format_00 = (char *)0x1;" (assignment_expression "format_00 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "uStack_e0 = 0x102e36;" (assignment_expression "uStack_e0 = 0x102e36" identifier = number_literal) ;) (expression_statement "cVar1 = xexit();" (assignment_expression "cVar1 = xexit()" identifier = (call_expression "xexit()" identifier (argument_list "()" ( )))) ;) (if_statement "if (cVar1 != '\0') {\n    uStack_160 = extraout_XMM0_Qa;\n    uStack_150 = extraout_XMM1_Qa;\n    uStack_140 = in_XMM2_Qa;\n    uStack_130 = in_XMM3_Qa;\n    uStack_120 = in_XMM4_Qa;\n    uStack_110 = in_XMM5_Qa;\n    uStack_100 = in_XMM6_Qa;\n    uStack_f0 = in_XMM7_Qa;\n  }" if (parenthesized_expression "(cVar1 != '\0')" ( (binary_expression "cVar1 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    uStack_160 = extraout_XMM0_Qa;\n    uStack_150 = extraout_XMM1_Qa;\n    uStack_140 = in_XMM2_Qa;\n    uStack_130 = in_XMM3_Qa;\n    uStack_120 = in_XMM4_Qa;\n    uStack_110 = in_XMM5_Qa;\n    uStack_100 = in_XMM6_Qa;\n    uStack_f0 = in_XMM7_Qa;\n  }" { (expression_statement "uStack_160 = extraout_XMM0_Qa;" (assignment_expression "uStack_160 = extraout_XMM0_Qa" identifier = identifier) ;) (expression_statement "uStack_150 = extraout_XMM1_Qa;" (assignment_expression "uStack_150 = extraout_XMM1_Qa" identifier = identifier) ;) (expression_statement "uStack_140 = in_XMM2_Qa;" (assignment_expression "uStack_140 = in_XMM2_Qa" identifier = identifier) ;) (expression_statement "uStack_130 = in_XMM3_Qa;" (assignment_expression "uStack_130 = in_XMM3_Qa" identifier = identifier) ;) (expression_statement "uStack_120 = in_XMM4_Qa;" (assignment_expression "uStack_120 = in_XMM4_Qa" identifier = identifier) ;) (expression_statement "uStack_110 = in_XMM5_Qa;" (assignment_expression "uStack_110 = in_XMM5_Qa" identifier = identifier) ;) (expression_statement "uStack_100 = in_XMM6_Qa;" (assignment_expression "uStack_100 = in_XMM6_Qa" identifier = identifier) ;) (expression_statement "uStack_f0 = in_XMM7_Qa;" (assignment_expression "uStack_f0 = in_XMM7_Qa" identifier = identifier) ;) })) (expression_statement "_Stack_1a8.overflow_arg_area = args;" (assignment_expression "_Stack_1a8.overflow_arg_area = args" (field_expression "_Stack_1a8.overflow_arg_area" identifier . field_identifier) = identifier) ;) (expression_statement "_Stack_1a8.gp_offset = 8;" (assignment_expression "_Stack_1a8.gp_offset = 8" (field_expression "_Stack_1a8.gp_offset" identifier . field_identifier) = number_literal) ;) (expression_statement "_Stack_1a8.reg_save_area = auStack_190;" (assignment_expression "_Stack_1a8.reg_save_area = auStack_190" (field_expression "_Stack_1a8.reg_save_area" identifier . field_identifier) = identifier) ;) (expression_statement "_Stack_1a8.fp_offset = 0x30;" (assignment_expression "_Stack_1a8.fp_offset = 0x30" (field_expression "_Stack_1a8.fp_offset" identifier . field_identifier) = number_literal) ;) (expression_statement "p_Stack_188 = args_00;" (assignment_expression "p_Stack_188 = args_00" identifier = identifier) ;) (expression_statement "uStack_180 = extraout_RDX;" (assignment_expression "uStack_180 = extraout_RDX" identifier = identifier) ;) (expression_statement "uStack_178 = in_RCX;" (assignment_expression "uStack_178 = in_RCX" identifier = identifier) ;) (expression_statement "uStack_170 = in_R8;" (assignment_expression "uStack_170 = in_R8" identifier = identifier) ;) (expression_statement "uStack_168 = in_R9;" (assignment_expression "uStack_168 = in_R9" identifier = identifier) ;) (expression_statement "report(format_00,&_Stack_1a8);" (call_expression "report(format_00,&_Stack_1a8)" identifier (argument_list "(format_00,&_Stack_1a8)" ( identifier , (pointer_expression "&_Stack_1a8" & identifier) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00102da0(void)\n\n{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}\n\n" (function_definition "void FUN_00102da0(void)\n\n{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" primitive_type (function_declarator "FUN_00102da0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" { (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" identifier (argument_list "()" ( ))) ;) (expression_statement "xexit(1);" (call_expression "xexit(1)" identifier (argument_list "(1)" ( number_literal ))) ;) (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return ;) })))
(function_definition "void FUN_00102da0(void)\n\n{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00102da0(void)" (identifier "FUN_00102da0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  FUN_00102d40();\n  xexit(1);\n  FUN_00102d40();\n  return;\n}" ({ "{") (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" (identifier "FUN_00102d40") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "xexit(1);" (call_expression "xexit(1)" (identifier "xexit") (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (expression_statement "FUN_00102d40();" (call_expression "FUN_00102d40()" (identifier "FUN_00102d40") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(char *format,...)

{
  char var_1;
  char var_4;
  type_1 in_RCX;
  type_1 in_RDX;
  type_1 extraout_RDX;
  type_1 in_RSI;
  type_2 *args_00;
  char *format_00;
  type_1 in_R8;
  type_1 in_R9;
  type_1 in_XMM0_Qa;
  type_1 extraout_XMM0_Qa;
  type_1 in_XMM1_Qa;
  type_1 extraout_XMM1_Qa;
  type_1 in_XMM2_Qa;
  type_1 in_XMM3_Qa;
  type_1 in_XMM4_Qa;
  type_1 in_XMM5_Qa;
  type_1 in_XMM6_Qa;
  type_1 in_XMM7_Qa;
  type_2 _Stack_1a8;
  type_3 auStack_190 [8];
  type_2 *p_Stack_188;
  type_1 uStack_180;
  type_1 uStack_178;
  type_1 uStack_170;
  type_1 uStack_168;
  type_1 uStack_160;
  type_1 uStack_150;
  type_1 uStack_140;
  type_1 uStack_130;
  type_1 uStack_120;
  type_1 uStack_110;
  type_1 uStack_100;
  type_1 uStack_f0;
  type_1 uStack_e0;
  type_4 args;
  type_3 local_b8 [8];
  type_1 local_b0;
  type_1 local_a8;
  type_1 local_a0;
  type_1 local_98;
  type_1 local_90;
  type_1 local_88;
  type_1 local_78;
  type_1 local_68;
  type_1 local_58;
  type_1 local_48;
  type_1 local_38;
  type_1 local_28;
  type_1 local_18;
  
  if (var_1 != '\0') {
    local_88 = in_XMM0_Qa;
    local_78 = in_XMM1_Qa;
    local_68 = in_XMM2_Qa;
    local_58 = in_XMM3_Qa;
    local_48 = in_XMM4_Qa;
    local_38 = in_XMM5_Qa;
    local_28 = in_XMM6_Qa;
    local_18 = in_XMM7_Qa;
  }
  args[0].overflow_arg_area = &stack0x00000008;
  args_00 = args;
  args[0].gp_offset = 8;
  args[0].reg_save_area = local_b8;
  args[0].fp_offset = 0x30;
  uStack_e0 = 0x102e2c;
  local_b0 = in_RSI;
  local_a8 = in_RDX;
  local_a0 = in_RCX;
  local_98 = in_R8;
  local_90 = in_R9;
  var_2(format,args_00);
  format_00 = (char *)0x1;
  uStack_e0 = 0x102e36;
  var_4 = var_3();
  if (var_4 != '\0') {
    uStack_160 = extraout_XMM0_Qa;
    uStack_150 = extraout_XMM1_Qa;
    uStack_140 = in_XMM2_Qa;
    uStack_130 = in_XMM3_Qa;
    uStack_120 = in_XMM4_Qa;
    uStack_110 = in_XMM5_Qa;
    uStack_100 = in_XMM6_Qa;
    uStack_f0 = in_XMM7_Qa;
  }
  _Stack_1a8.overflow_arg_area = args;
  _Stack_1a8.gp_offset = 8;
  _Stack_1a8.reg_save_area = auStack_190;
  _Stack_1a8.fp_offset = 0x30;
  p_Stack_188 = args_00;
  uStack_180 = extraout_RDX;
  uStack_178 = in_RCX;
  uStack_170 = in_R8;
  uStack_168 = in_R9;
  var_2(format_00,&_Stack_1a8);
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (return_statement))))

void MASKED(void)

{
  FUN_00102d40();
  xexit(1);
  FUN_00102d40();
  return;
}

