
/* WARNING: Unknown calling convention */

int gmon_io_write_vma(FILE *ofp,bfd_vma val)

{
  gmon_ptr_size gVar1;
  int iVar2;
  undefined4 unaff_EBX;
  undefined4 in_stack_fffffff4;
  
  gVar1 = gmon_get_ptr_size();
  if (gVar1 == ptr_32bit) {
    iVar2 = gmon_io_write_32(ofp,(uint)val);
    return (uint)(iVar2 != 0);
  }
  if (gVar1 == ptr_64bit) {
    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));
    return (uint)(iVar2 != 0);
  }
  return 0;
}



bool FUN_00019e30(undefined4 param_1,undefined4 param_2)

{
  int iVar1;
  
  iVar1 = FUN_00019b70();
  if (iVar1 == 0) {
    iVar1 = FUN_00019de0(param_1,param_2);
    return iVar1 != 0;
  }
  if (iVar1 == 1) {
    iVar1 = FUN_00019c10();
    return iVar1 != 0;
  }
  return false;
}


PUSH ESI
PUSH EBX
SUB ESP,0x4
MOV EBX,dword ptr [ESP + 0x14]
MOV ESI,dword ptr [ESP + 0x18]
CALL 0x00019b70
TEST EAX,EAX
JZ 0x00019e80
CMP EAX,0x1
JNZ 0x00019e70
MOV EAX,dword ptr [ESP + 0x10]
MOV EDX,EBX
MOV ECX,ESI
CALL 0x00019c10
TEST EAX,EAX
SETNZ AL
ADD ESP,0x4
MOVZX EAX,AL
POP EBX
POP ESI
RET
ADD ESP,0x4
XOR EAX,EAX
POP EBX
POP ESI
RET
SUB ESP,0x8
PUSH EBX
PUSH dword ptr [ESP + 0x1c]
CALL 0x00019de0
ADD ESP,0x10
TEST EAX,EAX
SETNZ AL
ADD ESP,0x4
MOVZX EAX,AL
POP EBX
POP ESI
RET
(translation_unit "bool FUN_00019e30(undefined4 param_1,undefined4 param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}\n\n" (function_definition "bool FUN_00019e30(undefined4 param_1,undefined4 param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" primitive_type (function_declarator "FUN_00019e30(undefined4 param_1,undefined4 param_2)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (expression_statement "iVar1 = FUN_00019b70();" (assignment_expression "iVar1 = FUN_00019b70()" identifier = (call_expression "FUN_00019b70()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" { (expression_statement "iVar1 = FUN_00019de0(param_1,param_2);" (assignment_expression "iVar1 = FUN_00019de0(param_1,param_2)" identifier = (call_expression "FUN_00019de0(param_1,param_2)" identifier (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" if (parenthesized_expression "(iVar1 == 1)" ( (binary_expression "iVar1 == 1" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" { (expression_statement "iVar1 = FUN_00019c10();" (assignment_expression "iVar1 = FUN_00019c10()" identifier = (call_expression "FUN_00019c10()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (return_statement "return false;" return false ;) })))
(translation_unit "/* WARNING: Unknown calling convention */\n\nint gmon_io_write_vma(FILE *ofp,bfd_vma val)\n\n{\n  gmon_ptr_size gVar1;\n  int iVar2;\n  undefined4 unaff_EBX;\n  undefined4 in_stack_fffffff4;\n  \n  gVar1 = gmon_get_ptr_size();\n  if (gVar1 == ptr_32bit) {\n    iVar2 = gmon_io_write_32(ofp,(uint)val);\n    return (uint)(iVar2 != 0);\n  }\n  if (gVar1 == ptr_64bit) {\n    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));\n    return (uint)(iVar2 != 0);\n  }\n  return 0;\n}\n\n" comment (function_definition "int gmon_io_write_vma(FILE *ofp,bfd_vma val)\n\n{\n  gmon_ptr_size gVar1;\n  int iVar2;\n  undefined4 unaff_EBX;\n  undefined4 in_stack_fffffff4;\n  \n  gVar1 = gmon_get_ptr_size();\n  if (gVar1 == ptr_32bit) {\n    iVar2 = gmon_io_write_32(ofp,(uint)val);\n    return (uint)(iVar2 != 0);\n  }\n  if (gVar1 == ptr_64bit) {\n    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));\n    return (uint)(iVar2 != 0);\n  }\n  return 0;\n}" primitive_type (function_declarator "gmon_io_write_vma(FILE *ofp,bfd_vma val)" identifier (parameter_list "(FILE *ofp,bfd_vma val)" ( (parameter_declaration "FILE *ofp" type_identifier (pointer_declarator "*ofp" * identifier)) , (parameter_declaration "bfd_vma val" type_identifier identifier) ))) (compound_statement "{\n  gmon_ptr_size gVar1;\n  int iVar2;\n  undefined4 unaff_EBX;\n  undefined4 in_stack_fffffff4;\n  \n  gVar1 = gmon_get_ptr_size();\n  if (gVar1 == ptr_32bit) {\n    iVar2 = gmon_io_write_32(ofp,(uint)val);\n    return (uint)(iVar2 != 0);\n  }\n  if (gVar1 == ptr_64bit) {\n    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));\n    return (uint)(iVar2 != 0);\n  }\n  return 0;\n}" { (declaration "gmon_ptr_size gVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 unaff_EBX;" type_identifier identifier ;) (declaration "undefined4 in_stack_fffffff4;" type_identifier identifier ;) (expression_statement "gVar1 = gmon_get_ptr_size();" (assignment_expression "gVar1 = gmon_get_ptr_size()" identifier = (call_expression "gmon_get_ptr_size()" identifier (argument_list "()" ( )))) ;) (if_statement "if (gVar1 == ptr_32bit) {\n    iVar2 = gmon_io_write_32(ofp,(uint)val);\n    return (uint)(iVar2 != 0);\n  }" if (parenthesized_expression "(gVar1 == ptr_32bit)" ( (binary_expression "gVar1 == ptr_32bit" identifier == identifier) )) (compound_statement "{\n    iVar2 = gmon_io_write_32(ofp,(uint)val);\n    return (uint)(iVar2 != 0);\n  }" { (expression_statement "iVar2 = gmon_io_write_32(ofp,(uint)val);" (assignment_expression "iVar2 = gmon_io_write_32(ofp,(uint)val)" identifier = (call_expression "gmon_io_write_32(ofp,(uint)val)" identifier (argument_list "(ofp,(uint)val)" ( identifier , (cast_expression "(uint)val" ( (type_descriptor "uint" type_identifier) ) identifier) )))) ;) (return_statement "return (uint)(iVar2 != 0);" return (call_expression "(uint)(iVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) ))) ;) })) (if_statement "if (gVar1 == ptr_64bit) {\n    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));\n    return (uint)(iVar2 != 0);\n  }" if (parenthesized_expression "(gVar1 == ptr_64bit)" ( (binary_expression "gVar1 == ptr_64bit" identifier == identifier) )) (compound_statement "{\n    iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));\n    return (uint)(iVar2 != 0);\n  }" { (expression_statement "iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4));" (assignment_expression "iVar2 = gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4))" identifier = (call_expression "gmon_io_write_64(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4))" identifier (argument_list "(ofp,CONCAT44(unaff_EBX,in_stack_fffffff4))" ( identifier , (call_expression "CONCAT44(unaff_EBX,in_stack_fffffff4)" identifier (argument_list "(unaff_EBX,in_stack_fffffff4)" ( identifier , identifier ))) )))) ;) (return_statement "return (uint)(iVar2 != 0);" return (call_expression "(uint)(iVar2 != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) ))) ;) })) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "bool FUN_00019e30(undefined4 param_1,undefined4 param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}\n\n" (function_definition "bool FUN_00019e30(undefined4 param_1,undefined4 param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" primitive_type (function_declarator "FUN_00019e30(undefined4 param_1,undefined4 param_2)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (expression_statement "iVar1 = FUN_00019b70();" (assignment_expression "iVar1 = FUN_00019b70()" identifier = (call_expression "FUN_00019b70()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" { (expression_statement "iVar1 = FUN_00019de0(param_1,param_2);" (assignment_expression "iVar1 = FUN_00019de0(param_1,param_2)" identifier = (call_expression "FUN_00019de0(param_1,param_2)" identifier (argument_list "(param_1,param_2)" ( identifier , identifier )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (if_statement "if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" if (parenthesized_expression "(iVar1 == 1)" ( (binary_expression "iVar1 == 1" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" { (expression_statement "iVar1 = FUN_00019c10();" (assignment_expression "iVar1 = FUN_00019c10()" identifier = (call_expression "FUN_00019c10()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) (return_statement "return false;" return false ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (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 ( )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) (return_statement return BOOL ;) })))
(function_definition "bool FUN_00019e30(undefined4 param_1,undefined4 param_2)\n\n{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" (primitive_type "bool") (function_declarator "FUN_00019e30(undefined4 param_1,undefined4 param_2)" (identifier "FUN_00019e30") (parameter_list "(undefined4 param_1,undefined4 param_2)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) () ")"))) (compound_statement "{\n  int iVar1;\n  \n  iVar1 = FUN_00019b70();\n  if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }\n  if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }\n  return false;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (expression_statement "iVar1 = FUN_00019b70();" (assignment_expression "iVar1 = FUN_00019b70()" (identifier "iVar1") (= "=") (call_expression "FUN_00019b70()" (identifier "FUN_00019b70") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" (if "if") (parenthesized_expression "(iVar1 == 0)" (( "(") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar1 = FUN_00019de0(param_1,param_2);\n    return iVar1 != 0;\n  }" ({ "{") (expression_statement "iVar1 = FUN_00019de0(param_1,param_2);" (assignment_expression "iVar1 = FUN_00019de0(param_1,param_2)" (identifier "iVar1") (= "=") (call_expression "FUN_00019de0(param_1,param_2)" (identifier "FUN_00019de0") (argument_list "(param_1,param_2)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (if_statement "if (iVar1 == 1) {\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" (if "if") (parenthesized_expression "(iVar1 == 1)" (( "(") (binary_expression "iVar1 == 1" (identifier "iVar1") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n    iVar1 = FUN_00019c10();\n    return iVar1 != 0;\n  }" ({ "{") (expression_statement "iVar1 = FUN_00019c10();" (assignment_expression "iVar1 = FUN_00019c10()" (identifier "iVar1") (= "=") (call_expression "FUN_00019c10()" (identifier "FUN_00019c10") (argument_list "()" (( "(") () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (return_statement "return false;" (return "return") (false "false") (; ";")) (} "}")))

/* WARNING: Unknown calling convention */

int function_1(type_1 *ofp,type_2 val)

{
  type_3 var_2;
  int var_5;
  type_4 unaff_EBX;
  type_4 in_stack_fffffff4;
  
  var_2 = var_1();
  if (var_2 == var_3) {
    var_5 = var_4(ofp,(type_5)val);
    return (type_5)(var_5 != 0);
  }
  if (var_2 == var_6) {
    var_5 = var_7(ofp,var_8(unaff_EBX,in_stack_fffffff4));
    return (type_5)(var_5 != 0);
  }
  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: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (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) (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)))) (return_statement (binary_expression left: (identifier) right: (number_literal))))) (return_statement (false)))))

bool MASKED(undefined4 param_1,undefined4 param_2)

{
  int iVar1;
  
  iVar1 = FUN_00019b70();
  if (iVar1 == 0) {
    iVar1 = FUN_00019de0(param_1,param_2);
    return iVar1 != 0;
  }
  if (iVar1 == 1) {
    iVar1 = FUN_00019c10();
    return iVar1 != 0;
  }
  return false;
}

