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

bfd_boolean __regparm3 need_plt32_p(symbolS *s)

{
  int iVar1;
  
  if (object_64bit == 0) {
    return 0;
  }
  iVar1 = S_IS_WEAK(s);
  if (iVar1 == 0) {
    iVar1 = S_IS_DEFINED(s);
    if (iVar1 != 0) {
      iVar1 = S_IS_EXTERNAL(s);
      return (uint)(iVar1 != 0);
    }
  }
  return 1;
}



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

bool __regparm3 FUN_00047710(undefined4 param_1)

{
  int iVar1;
  
  if (DAT_00088f08 == 0) {
    return false;
  }
  iVar1 = FUN_00038580(param_1);
  if (iVar1 == 0) {
    iVar1 = FUN_000386c0(param_1);
    if (iVar1 != 0) {
      iVar1 = FUN_00038510(param_1);
      return iVar1 != 0;
    }
  }
  return true;
}


PUSH ESI
PUSH EBX
CALL 0x00016000
ADD EBX,0x388e9
SUB ESP,0x4
MOV EDX,dword ptr [EBX + 0x8f08]
TEST EDX,EDX
JNZ 0x00047738
ADD ESP,0x4
XOR EAX,EAX
POP EBX
POP ESI
RET
SUB ESP,0xc
MOV ESI,EAX
PUSH EAX
CALL 0x00038580
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x0004775a
SUB ESP,0xc
PUSH ESI
CALL 0x000386c0
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00047768
ADD ESP,0x4
MOV EAX,0x1
POP EBX
POP ESI
RET
SUB ESP,0xc
PUSH ESI
CALL 0x00038510
ADD ESP,0x10
TEST EAX,EAX
SETNZ AL
ADD ESP,0x4
MOVZX EAX,AL
POP EBX
POP ESI
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbool __regparm3 FUN_00047710(undefined4 param_1)\n\n{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}\n\n" comment (function_definition "bool __regparm3 FUN_00047710(undefined4 param_1)\n\n{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00047710(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (DAT_00088f08 == 0) {\n    return false;\n  }" if (parenthesized_expression "(DAT_00088f08 == 0)" ( (binary_expression "DAT_00088f08 == 0" identifier == number_literal) )) (compound_statement "{\n    return false;\n  }" { (return_statement "return false;" return false ;) })) (expression_statement "iVar1 = FUN_00038580(param_1);" (assignment_expression "iVar1 = FUN_00038580(param_1)" identifier = (call_expression "FUN_00038580(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" { (expression_statement "iVar1 = FUN_000386c0(param_1);" (assignment_expression "iVar1 = FUN_000386c0(param_1)" identifier = (call_expression "FUN_000386c0(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }" { (expression_statement "iVar1 = FUN_00038510(param_1);" (assignment_expression "iVar1 = FUN_00038510(param_1)" identifier = (call_expression "FUN_00038510(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) })) (return_statement "return true;" return true ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbfd_boolean __regparm3 need_plt32_p(symbolS *s)\n\n{\n  int iVar1;\n  \n  if (object_64bit == 0) {\n    return 0;\n  }\n  iVar1 = S_IS_WEAK(s);\n  if (iVar1 == 0) {\n    iVar1 = S_IS_DEFINED(s);\n    if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }\n  }\n  return 1;\n}\n\n" comment (function_definition "bfd_boolean __regparm3 need_plt32_p(symbolS *s)\n\n{\n  int iVar1;\n  \n  if (object_64bit == 0) {\n    return 0;\n  }\n  iVar1 = S_IS_WEAK(s);\n  if (iVar1 == 0) {\n    iVar1 = S_IS_DEFINED(s);\n    if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }\n  }\n  return 1;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "need_plt32_p(symbolS *s)" identifier (parameter_list "(symbolS *s)" ( (parameter_declaration "symbolS *s" type_identifier (pointer_declarator "*s" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  \n  if (object_64bit == 0) {\n    return 0;\n  }\n  iVar1 = S_IS_WEAK(s);\n  if (iVar1 == 0) {\n    iVar1 = S_IS_DEFINED(s);\n    if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }\n  }\n  return 1;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (object_64bit == 0) {\n    return 0;\n  }" if (parenthesized_expression "(object_64bit == 0)" ( (binary_expression "object_64bit == 0" identifier == number_literal) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "iVar1 = S_IS_WEAK(s);" (assignment_expression "iVar1 = S_IS_WEAK(s)" identifier = (call_expression "S_IS_WEAK(s)" identifier (argument_list "(s)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = S_IS_DEFINED(s);\n    if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = S_IS_DEFINED(s);\n    if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }\n  }" { (expression_statement "iVar1 = S_IS_DEFINED(s);" (assignment_expression "iVar1 = S_IS_DEFINED(s)" identifier = (call_expression "S_IS_DEFINED(s)" identifier (argument_list "(s)" ( identifier )))) ;) (if_statement "if (iVar1 != 0) {\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar1 = S_IS_EXTERNAL(s);\n      return (uint)(iVar1 != 0);\n    }" { (expression_statement "iVar1 = S_IS_EXTERNAL(s);" (assignment_expression "iVar1 = S_IS_EXTERNAL(s)" identifier = (call_expression "S_IS_EXTERNAL(s)" identifier (argument_list "(s)" ( 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) ))) ;) })) })) (return_statement "return 1;" return number_literal ;) })))
(translation_unit "bool __regparm3 FUN_00047710(undefined4 param_1)\n\n{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}\n\n" (function_definition "bool __regparm3 FUN_00047710(undefined4 param_1)\n\n{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00047710(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (DAT_00088f08 == 0) {\n    return false;\n  }" if (parenthesized_expression "(DAT_00088f08 == 0)" ( (binary_expression "DAT_00088f08 == 0" identifier == number_literal) )) (compound_statement "{\n    return false;\n  }" { (return_statement "return false;" return false ;) })) (expression_statement "iVar1 = FUN_00038580(param_1);" (assignment_expression "iVar1 = FUN_00038580(param_1)" identifier = (call_expression "FUN_00038580(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" { (expression_statement "iVar1 = FUN_000386c0(param_1);" (assignment_expression "iVar1 = FUN_000386c0(param_1)" identifier = (call_expression "FUN_000386c0(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (if_statement "if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }" if (parenthesized_expression "(iVar1 != 0)" ( (binary_expression "iVar1 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }" { (expression_statement "iVar1 = FUN_00038510(param_1);" (assignment_expression "iVar1 = FUN_00038510(param_1)" identifier = (call_expression "FUN_00038510(param_1)" identifier (argument_list "(param_1)" ( identifier )))) ;) (return_statement "return iVar1 != 0;" return (binary_expression "iVar1 != 0" identifier != number_literal) ;) })) })) (return_statement "return true;" return true ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (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 )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (return_statement return (binary_expression IDENT != LIT) ;) })) })) (return_statement return BOOL ;) })))
(function_definition "bool __regparm3 FUN_00047710(undefined4 param_1)\n\n{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" (primitive_type "bool") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00047710(undefined4 param_1)" (identifier "FUN_00047710") (parameter_list "(undefined4 param_1)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) () ")"))) (compound_statement "{\n  int iVar1;\n  \n  if (DAT_00088f08 == 0) {\n    return false;\n  }\n  iVar1 = FUN_00038580(param_1);\n  if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }\n  return true;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (if_statement "if (DAT_00088f08 == 0) {\n    return false;\n  }" (if "if") (parenthesized_expression "(DAT_00088f08 == 0)" (( "(") (binary_expression "DAT_00088f08 == 0" (identifier "DAT_00088f08") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return false;\n  }" ({ "{") (return_statement "return false;" (return "return") (false "false") (; ";")) (} "}"))) (expression_statement "iVar1 = FUN_00038580(param_1);" (assignment_expression "iVar1 = FUN_00038580(param_1)" (identifier "iVar1") (= "=") (call_expression "FUN_00038580(param_1)" (identifier "FUN_00038580") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar1 == 0) {\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" (if "if") (parenthesized_expression "(iVar1 == 0)" (( "(") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar1 = FUN_000386c0(param_1);\n    if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\n      return iVar1 != 0;\n    }\n  }" ({ "{") (expression_statement "iVar1 = FUN_000386c0(param_1);" (assignment_expression "iVar1 = FUN_000386c0(param_1)" (identifier "iVar1") (= "=") (call_expression "FUN_000386c0(param_1)" (identifier "FUN_000386c0") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (if_statement "if (iVar1 != 0) {\n      iVar1 = FUN_00038510(param_1);\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_00038510(param_1);\n      return iVar1 != 0;\n    }" ({ "{") (expression_statement "iVar1 = FUN_00038510(param_1);" (assignment_expression "iVar1 = FUN_00038510(param_1)" (identifier "iVar1") (= "=") (call_expression "FUN_00038510(param_1)" (identifier "FUN_00038510") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")")))) (; ";")) (return_statement "return iVar1 != 0;" (return "return") (binary_expression "iVar1 != 0" (identifier "iVar1") (!= "!=") (number_literal "0")) (; ";")) (} "}"))) (} "}"))) (return_statement "return true;" (return "return") (true "true") (; ";")) (} "}")))

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

type_1 __regparm3 function_1(type_2 *s)

{
  int var_3;
  
  if (var_1 == 0) {
    return 0;
  }
  var_3 = var_2(s);
  if (var_3 == 0) {
    var_3 = var_4(s);
    if (var_3 != 0) {
      var_3 = var_5(s);
      return (uint)(var_3 != 0);
    }
  }
  return 1;
}


(translation_unit (function_definition type: (primitive_type) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (return_statement (false)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (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))))) (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))))) (return_statement (binary_expression left: (identifier) right: (number_literal))))))) (return_statement (true)))))

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

bool __regparm3 MASKED(undefined4 param_1)

{
  int iVar1;
  
  if (DAT_00088f08 == 0) {
    return false;
  }
  iVar1 = FUN_00038580(param_1);
  if (iVar1 == 0) {
    iVar1 = FUN_000386c0(param_1);
    if (iVar1 != 0) {
      iVar1 = FUN_00038510(param_1);
      return iVar1 != 0;
    }
  }
  return true;
}

