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

bfd_boolean __regparm3 symbol_warning(char *warning,char *symbol,bfd *abfd)

{
  int iVar1;
  char *fmt;
  warning_callback_info cinfo;
  
  iVar1 = bfd_generic_link_read_symbols(abfd);
  if (iVar1 == 0) {
    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);
    einfo(fmt,abfd);
  }
  cinfo.asymbols = abfd->outsymbols;
  cinfo.found = 0;
  cinfo.warning = warning;
  cinfo.symbol = symbol;
  bfd_map_over_sections(abfd,warning_find_reloc,&cinfo);
  return cinfo.found;
}



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

undefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)

{
  int iVar1;
  undefined4 uVar2;
  undefined4 local_2c [2];
  undefined4 local_24;
  undefined4 local_20;
  undefined4 uStack_14;
  
  uStack_14 = 0x2e5bf;
  iVar1 = bfd_generic_link_read_symbols(param_3);
  if (iVar1 == 0) {
    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);
    FUN_00034d20(uVar2,param_3);
  }
  local_20 = *(undefined4 *)(param_3 + 0x78);
  local_2c[0] = 0;
  local_24 = param_2;
  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);
  return local_2c[0];
}


PUSH EBP
MOV EBP,ECX
PUSH EDI
MOV EDI,EAX
PUSH ESI
MOV ESI,EDX
PUSH EBX
CALL 0x00017b80
ADD EBX,0x19fa41
SUB ESP,0x28
PUSH ECX
CALL 0x00016180
ADD ESP,0x10
TEST EAX,EAX
JZ 0x0002e610
MOV EAX,dword ptr [EBP + 0x78]
MOV dword ptr [ESP + 0x4],EDI
SUB ESP,0x4
MOV dword ptr [ESP + 0xc],ESI
MOV dword ptr [ESP + 0x4],0x0
MOV dword ptr [ESP + 0x10],EAX
LEA EAX,[ESP + 0x4]
PUSH EAX
LEA EAX,[EBX + 0xffe60d00]
PUSH EAX
PUSH EBP
CALL 0x00016c10
MOV EAX,dword ptr [ESP + 0x10]
ADD ESP,0x2c
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0x4
LEA EAX,[EBX + 0xffeae370]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x00016310
POP EDX
POP ECX
PUSH EBP
PUSH EAX
CALL 0x00034d20
ADD ESP,0x10
JMP 0x0002e5d5
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}\n\n" comment (function_definition "undefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,int param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "undefined4 local_2c [2];" type_identifier (array_declarator "local_2c [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x2e5bf;" (assignment_expression "uStack_14 = 0x2e5bf" identifier = number_literal) ;) (expression_statement "iVar1 = bfd_generic_link_read_symbols(param_3);" (assignment_expression "iVar1 = bfd_generic_link_read_symbols(param_3)" identifier = (call_expression "bfd_generic_link_read_symbols(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" { (expression_statement "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);" (assignment_expression "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier (argument_list "(0,"%F%P: %pB: could not read symbols: %E\n",5)" ( number_literal , (string_literal ""%F%P: %pB: could not read symbols: %E\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_00034d20(uVar2,param_3);" (call_expression "FUN_00034d20(uVar2,param_3)" identifier (argument_list "(uVar2,param_3)" ( identifier , identifier ))) ;) })) (expression_statement "local_20 = *(undefined4 *)(param_3 + 0x78);" (assignment_expression "local_20 = *(undefined4 *)(param_3 + 0x78)" identifier = (pointer_expression "*(undefined4 *)(param_3 + 0x78)" * (cast_expression "(undefined4 *)(param_3 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x78)" ( (binary_expression "param_3 + 0x78" identifier + number_literal) ))))) ;) (expression_statement "local_2c[0] = 0;" (assignment_expression "local_2c[0] = 0" (subscript_expression "local_2c[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_24 = param_2;" (assignment_expression "local_24 = param_2" identifier = identifier) ;) (expression_statement "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);" (call_expression "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c)" identifier (argument_list "(param_3,FUN_0002ed00,local_2c)" ( identifier , identifier , identifier ))) ;) (return_statement "return local_2c[0];" return (subscript_expression "local_2c[0]" identifier [ number_literal ]) ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nbfd_boolean __regparm3 symbol_warning(char *warning,char *symbol,bfd *abfd)\n\n{\n  int iVar1;\n  char *fmt;\n  warning_callback_info cinfo;\n  \n  iVar1 = bfd_generic_link_read_symbols(abfd);\n  if (iVar1 == 0) {\n    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    einfo(fmt,abfd);\n  }\n  cinfo.asymbols = abfd->outsymbols;\n  cinfo.found = 0;\n  cinfo.warning = warning;\n  cinfo.symbol = symbol;\n  bfd_map_over_sections(abfd,warning_find_reloc,&cinfo);\n  return cinfo.found;\n}\n\n" comment (function_definition "bfd_boolean __regparm3 symbol_warning(char *warning,char *symbol,bfd *abfd)\n\n{\n  int iVar1;\n  char *fmt;\n  warning_callback_info cinfo;\n  \n  iVar1 = bfd_generic_link_read_symbols(abfd);\n  if (iVar1 == 0) {\n    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    einfo(fmt,abfd);\n  }\n  cinfo.asymbols = abfd->outsymbols;\n  cinfo.found = 0;\n  cinfo.warning = warning;\n  cinfo.symbol = symbol;\n  bfd_map_over_sections(abfd,warning_find_reloc,&cinfo);\n  return cinfo.found;\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "symbol_warning(char *warning,char *symbol,bfd *abfd)" identifier (parameter_list "(char *warning,char *symbol,bfd *abfd)" ( (parameter_declaration "char *warning" primitive_type (pointer_declarator "*warning" * identifier)) , (parameter_declaration "char *symbol" primitive_type (pointer_declarator "*symbol" * identifier)) , (parameter_declaration "bfd *abfd" type_identifier (pointer_declarator "*abfd" * identifier)) ))) (compound_statement "{\n  int iVar1;\n  char *fmt;\n  warning_callback_info cinfo;\n  \n  iVar1 = bfd_generic_link_read_symbols(abfd);\n  if (iVar1 == 0) {\n    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    einfo(fmt,abfd);\n  }\n  cinfo.asymbols = abfd->outsymbols;\n  cinfo.found = 0;\n  cinfo.warning = warning;\n  cinfo.symbol = symbol;\n  bfd_map_over_sections(abfd,warning_find_reloc,&cinfo);\n  return cinfo.found;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "char *fmt;" primitive_type (pointer_declarator "*fmt" * identifier) ;) (declaration "warning_callback_info cinfo;" type_identifier identifier ;) (expression_statement "iVar1 = bfd_generic_link_read_symbols(abfd);" (assignment_expression "iVar1 = bfd_generic_link_read_symbols(abfd)" identifier = (call_expression "bfd_generic_link_read_symbols(abfd)" identifier (argument_list "(abfd)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    einfo(fmt,abfd);\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    einfo(fmt,abfd);\n  }" { (expression_statement "fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);" (assignment_expression "fmt = (char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier (argument_list "(0,"%F%P: %pB: could not read symbols: %E\n",5)" ( number_literal , (string_literal ""%F%P: %pB: could not read symbols: %E\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "einfo(fmt,abfd);" (call_expression "einfo(fmt,abfd)" identifier (argument_list "(fmt,abfd)" ( identifier , identifier ))) ;) })) (expression_statement "cinfo.asymbols = abfd->outsymbols;" (assignment_expression "cinfo.asymbols = abfd->outsymbols" (field_expression "cinfo.asymbols" identifier . field_identifier) = (field_expression "abfd->outsymbols" identifier -> field_identifier)) ;) (expression_statement "cinfo.found = 0;" (assignment_expression "cinfo.found = 0" (field_expression "cinfo.found" identifier . field_identifier) = number_literal) ;) (expression_statement "cinfo.warning = warning;" (assignment_expression "cinfo.warning = warning" (field_expression "cinfo.warning" identifier . field_identifier) = identifier) ;) (expression_statement "cinfo.symbol = symbol;" (assignment_expression "cinfo.symbol = symbol" (field_expression "cinfo.symbol" identifier . field_identifier) = identifier) ;) (expression_statement "bfd_map_over_sections(abfd,warning_find_reloc,&cinfo);" (call_expression "bfd_map_over_sections(abfd,warning_find_reloc,&cinfo)" identifier (argument_list "(abfd,warning_find_reloc,&cinfo)" ( identifier , identifier , (pointer_expression "&cinfo" & identifier) ))) ;) (return_statement "return cinfo.found;" return (field_expression "cinfo.found" identifier . field_identifier) ;) })))
(translation_unit "undefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}\n\n" (function_definition "undefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" type_identifier (ERROR "__regparm3" identifier) (function_declarator "FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,int param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "undefined4 local_2c [2];" type_identifier (array_declarator "local_2c [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x2e5bf;" (assignment_expression "uStack_14 = 0x2e5bf" identifier = number_literal) ;) (expression_statement "iVar1 = bfd_generic_link_read_symbols(param_3);" (assignment_expression "iVar1 = bfd_generic_link_read_symbols(param_3)" identifier = (call_expression "bfd_generic_link_read_symbols(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;) (if_statement "if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" if (parenthesized_expression "(iVar1 == 0)" ( (binary_expression "iVar1 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" { (expression_statement "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);" (assignment_expression "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier = (call_expression "dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" identifier (argument_list "(0,"%F%P: %pB: could not read symbols: %E\n",5)" ( number_literal , (string_literal ""%F%P: %pB: could not read symbols: %E\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_00034d20(uVar2,param_3);" (call_expression "FUN_00034d20(uVar2,param_3)" identifier (argument_list "(uVar2,param_3)" ( identifier , identifier ))) ;) })) (expression_statement "local_20 = *(undefined4 *)(param_3 + 0x78);" (assignment_expression "local_20 = *(undefined4 *)(param_3 + 0x78)" identifier = (pointer_expression "*(undefined4 *)(param_3 + 0x78)" * (cast_expression "(undefined4 *)(param_3 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_3 + 0x78)" ( (binary_expression "param_3 + 0x78" identifier + number_literal) ))))) ;) (expression_statement "local_2c[0] = 0;" (assignment_expression "local_2c[0] = 0" (subscript_expression "local_2c[0]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "local_24 = param_2;" (assignment_expression "local_24 = param_2" identifier = identifier) ;) (expression_statement "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);" (call_expression "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c)" identifier (argument_list "(param_3,FUN_0002ed00,local_2c)" ( identifier , identifier , identifier ))) ;) (return_statement "return local_2c[0];" return (subscript_expression "local_2c[0]" identifier [ number_literal ]) ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (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 ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (return_statement return (subscript_expression IDENT [ LIT ]) ;) })))
(function_definition "undefined4 __regparm3 FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)\n\n{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" (type_identifier "undefined4") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_0002e5b0(undefined4 param_1,undefined4 param_2,int param_3)" (identifier "FUN_0002e5b0") (parameter_list "(undefined4 param_1,undefined4 param_2,int param_3)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) (, ",") (parameter_declaration "undefined4 param_2" (type_identifier "undefined4") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) () ")"))) (compound_statement "{\n  int iVar1;\n  undefined4 uVar2;\n  undefined4 local_2c [2];\n  undefined4 local_24;\n  undefined4 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x2e5bf;\n  iVar1 = bfd_generic_link_read_symbols(param_3);\n  if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }\n  local_20 = *(undefined4 *)(param_3 + 0x78);\n  local_2c[0] = 0;\n  local_24 = param_2;\n  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);\n  return local_2c[0];\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "undefined4 local_2c [2];" (type_identifier "undefined4") (array_declarator "local_2c [2]" (identifier "local_2c") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined4 local_24;" (type_identifier "undefined4") (identifier "local_24") (; ";")) (declaration "undefined4 local_20;" (type_identifier "undefined4") (identifier "local_20") (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "uStack_14 = 0x2e5bf;" (assignment_expression "uStack_14 = 0x2e5bf" (identifier "uStack_14") (= "=") (number_literal "0x2e5bf")) (; ";")) (expression_statement "iVar1 = bfd_generic_link_read_symbols(param_3);" (assignment_expression "iVar1 = bfd_generic_link_read_symbols(param_3)" (identifier "iVar1") (= "=") (call_expression "bfd_generic_link_read_symbols(param_3)" (identifier "bfd_generic_link_read_symbols") (argument_list "(param_3)" (( "(") (identifier "param_3") () ")")))) (; ";")) (if_statement "if (iVar1 == 0) {\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" (if "if") (parenthesized_expression "(iVar1 == 0)" (( "(") (binary_expression "iVar1 == 0" (identifier "iVar1") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);\n    FUN_00034d20(uVar2,param_3);\n  }" ({ "{") (expression_statement "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);" (assignment_expression "uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" (identifier "uVar2") (= "=") (call_expression "dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5)" (identifier "dcgettext") (argument_list "(0,"%F%P: %pB: could not read symbols: %E\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""%F%P: %pB: could not read symbols: %E\n"" (" """) (string_content "%F%P: %pB: could not read symbols: %E") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_00034d20(uVar2,param_3);" (call_expression "FUN_00034d20(uVar2,param_3)" (identifier "FUN_00034d20") (argument_list "(uVar2,param_3)" (( "(") (identifier "uVar2") (, ",") (identifier "param_3") () ")"))) (; ";")) (} "}"))) (expression_statement "local_20 = *(undefined4 *)(param_3 + 0x78);" (assignment_expression "local_20 = *(undefined4 *)(param_3 + 0x78)" (identifier "local_20") (= "=") (pointer_expression "*(undefined4 *)(param_3 + 0x78)" (* "*") (cast_expression "(undefined4 *)(param_3 + 0x78)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_3 + 0x78)" (( "(") (binary_expression "param_3 + 0x78" (identifier "param_3") (+ "+") (number_literal "0x78")) () ")"))))) (; ";")) (expression_statement "local_2c[0] = 0;" (assignment_expression "local_2c[0] = 0" (subscript_expression "local_2c[0]" (identifier "local_2c") ([ "[") (number_literal "0") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "local_24 = param_2;" (assignment_expression "local_24 = param_2" (identifier "local_24") (= "=") (identifier "param_2")) (; ";")) (expression_statement "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);" (call_expression "bfd_map_over_sections(param_3,FUN_0002ed00,local_2c)" (identifier "bfd_map_over_sections") (argument_list "(param_3,FUN_0002ed00,local_2c)" (( "(") (identifier "param_3") (, ",") (identifier "FUN_0002ed00") (, ",") (identifier "local_2c") () ")"))) (; ";")) (return_statement "return local_2c[0];" (return "return") (subscript_expression "local_2c[0]" (identifier "local_2c") ([ "[") (number_literal "0") (] "]")) (; ";")) (} "}")))

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

type_1 __regparm3 function_1(char *warning,char *symbol,type_2 *abfd)

{
  int var_2;
  char *fmt;
  type_3 cinfo;
  
  var_2 = var_1(abfd);
  if (var_2 == 0) {
    fmt = (char *)var_3(0,"%F%P: %pB: could not read symbols: %E\n",5);
    var_4(fmt,abfd);
  }
  cinfo.asymbols = abfd->outsymbols;
  cinfo.found = 0;
  cinfo.warning = warning;
  cinfo.symbol = symbol;
  var_5(abfd,warning_find_reloc,&cinfo);
  return cinfo.found;
}


(translation_unit (function_definition type: (type_identifier) (ERROR (identifier)) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (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 (number_literal) (string_literal (string_content) (escape_sequence)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (return_statement (subscript_expression argument: (identifier) index: (number_literal))))))

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

undefined4 __regparm3 MASKED(undefined4 param_1,undefined4 param_2,int param_3)

{
  int iVar1;
  undefined4 uVar2;
  undefined4 local_2c [2];
  undefined4 local_24;
  undefined4 local_20;
  undefined4 uStack_14;
  
  uStack_14 = 0x2e5bf;
  iVar1 = bfd_generic_link_read_symbols(param_3);
  if (iVar1 == 0) {
    uVar2 = dcgettext(0,"%F%P: %pB: could not read symbols: %E\n",5);
    FUN_00034d20(uVar2,param_3);
  }
  local_20 = *(undefined4 *)(param_3 + 0x78);
  local_2c[0] = 0;
  local_24 = param_2;
  bfd_map_over_sections(param_3,FUN_0002ed00,local_2c);
  return local_2c[0];
}

