
/* DWARF original prototype: void add_mapping(Object_merge_map * this, Output_section_data *
   output_data, uint shndx, section_offset_type input_offset, section_size_type length,
   section_offset_type output_offset) */

void __thiscall
gold::Object_merge_map::add_mapping
          (Object_merge_map *this,Output_section_data *output_data,uint shndx,
          section_offset_type input_offset,section_size_type length,
          section_offset_type output_offset)

{
  Input_merge_map *this_00;
  
  this_00 = get_or_make_input_merge_map(this,output_data,shndx);
  Input_merge_map::add_mapping(this_00,input_offset,length,output_offset);
  return;
}



void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)

{
  FUN_001c5010(param_1,param_2,param_3);
  FUN_001c4f10();
  return;
}


PUSH EDI
PUSH ESI
PUSH EBX
MOV EBX,dword ptr [ESP + 0x1c]
MOV ESI,dword ptr [ESP + 0x20]
MOV EDI,dword ptr [ESP + 0x24]
SUB ESP,0x4
PUSH dword ptr [ESP + 0x1c]
PUSH dword ptr [ESP + 0x1c]
PUSH dword ptr [ESP + 0x1c]
CALL 0x001c5010
ADD ESP,0x10
MOV dword ptr [ESP + 0x1c],EDI
MOV dword ptr [ESP + 0x18],ESI
MOV dword ptr [ESP + 0x14],EBX
MOV dword ptr [ESP + 0x10],EAX
POP EBX
POP ESI
POP EDI
JMP 0x001c4f10
(translation_unit "void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}\n\n" (function_definition "void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" primitive_type (function_declarator "FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" { (expression_statement "FUN_001c5010(param_1,param_2,param_3);" (call_expression "FUN_001c5010(param_1,param_2,param_3)" identifier (argument_list "(param_1,param_2,param_3)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_001c4f10();" (call_expression "FUN_001c4f10()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit "/* DWARF original prototype: void add_mapping(Object_merge_map * this, Output_section_data *\n   output_data, uint shndx, section_offset_type input_offset, section_size_type length,\n   section_offset_type output_offset) */\n\nvoid __thiscall\ngold::Object_merge_map::add_mapping\n          (Object_merge_map *this,Output_section_data *output_data,uint shndx,\n          section_offset_type input_offset,section_size_type length,\n          section_offset_type output_offset)\n\n{\n  Input_merge_map *this_00;\n  \n  this_00 = get_or_make_input_merge_map(this,output_data,shndx);\n  Input_merge_map::add_mapping(this_00,input_offset,length,output_offset);\n  return;\n}\n\n" comment (function_definition "void __thiscall\ngold::Object_merge_map::add_mapping\n          (Object_merge_map *this,Output_section_data *output_data,uint shndx,\n          section_offset_type input_offset,section_size_type length,\n          section_offset_type output_offset)\n\n{\n  Input_merge_map *this_00;\n  \n  this_00 = get_or_make_input_merge_map(this,output_data,shndx);\n  Input_merge_map::add_mapping(this_00,input_offset,length,output_offset);\n  return;\n}" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::Object_merge_map::" identifier : : identifier : :) (function_declarator "add_mapping\n          (Object_merge_map *this,Output_section_data *output_data,uint shndx,\n          section_offset_type input_offset,section_size_type length,\n          section_offset_type output_offset)" identifier (parameter_list "(Object_merge_map *this,Output_section_data *output_data,uint shndx,\n          section_offset_type input_offset,section_size_type length,\n          section_offset_type output_offset)" ( (parameter_declaration "Object_merge_map *this" type_identifier (pointer_declarator "*this" * identifier)) , (parameter_declaration "Output_section_data *output_data" type_identifier (pointer_declarator "*output_data" * identifier)) , (parameter_declaration "uint shndx" type_identifier identifier) , (parameter_declaration "section_offset_type input_offset" type_identifier identifier) , (parameter_declaration "section_size_type length" type_identifier identifier) , (parameter_declaration "section_offset_type output_offset" type_identifier identifier) ))) (compound_statement "{\n  Input_merge_map *this_00;\n  \n  this_00 = get_or_make_input_merge_map(this,output_data,shndx);\n  Input_merge_map::add_mapping(this_00,input_offset,length,output_offset);\n  return;\n}" { (declaration "Input_merge_map *this_00;" type_identifier (pointer_declarator "*this_00" * identifier) ;) (expression_statement "this_00 = get_or_make_input_merge_map(this,output_data,shndx);" (assignment_expression "this_00 = get_or_make_input_merge_map(this,output_data,shndx)" identifier = (call_expression "get_or_make_input_merge_map(this,output_data,shndx)" identifier (argument_list "(this,output_data,shndx)" ( identifier , identifier , identifier )))) ;) (labeled_statement "Input_merge_map::add_mapping(this_00,input_offset,length,output_offset);" statement_identifier : (ERROR ":" :) (expression_statement "add_mapping(this_00,input_offset,length,output_offset);" (call_expression "add_mapping(this_00,input_offset,length,output_offset)" identifier (argument_list "(this_00,input_offset,length,output_offset)" ( identifier , identifier , identifier , identifier ))) ;)) (return_statement "return;" return ;) })))
(translation_unit "void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}\n\n" (function_definition "void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" primitive_type (function_declarator "FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)" identifier (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 param_3)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) , (parameter_declaration "undefined4 param_2" type_identifier identifier) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" { (expression_statement "FUN_001c5010(param_1,param_2,param_3);" (call_expression "FUN_001c5010(param_1,param_2,param_3)" identifier (argument_list "(param_1,param_2,param_3)" ( identifier , identifier , identifier ))) ;) (expression_statement "FUN_001c4f10();" (call_expression "FUN_001c4f10()" identifier (argument_list "()" ( ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return ;) })))
(function_definition "void FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)\n\n{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" (primitive_type "void") (function_declarator "FUN_001c5100(undefined4 param_1,undefined4 param_2,undefined4 param_3)" (identifier "FUN_001c5100") (parameter_list "(undefined4 param_1,undefined4 param_2,undefined4 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 "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) () ")"))) (compound_statement "{\n  FUN_001c5010(param_1,param_2,param_3);\n  FUN_001c4f10();\n  return;\n}" ({ "{") (expression_statement "FUN_001c5010(param_1,param_2,param_3);" (call_expression "FUN_001c5010(param_1,param_2,param_3)" (identifier "FUN_001c5010") (argument_list "(param_1,param_2,param_3)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "param_3") () ")"))) (; ";")) (expression_statement "FUN_001c4f10();" (call_expression "FUN_001c4f10()" (identifier "FUN_001c4f10") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* DWARF original prototype: void add_mapping(Object_merge_map * this, Output_section_data *
   output_data, uint shndx, section_offset_type input_offset, section_size_type length,
   section_offset_type output_offset) */

void __thiscall
gold::type_1::function_1
          (type_1 *this,type_2 *output_data,type_3 shndx,
          type_4 input_offset,type_5 length,
          type_4 output_offset)

{
  type_6 *this_00;
  
  this_00 = var_1(this,output_data,shndx);
  Input_merge_map::function_1(this_00,input_offset,length,output_offset);
  return;
}


(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)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (return_statement))))

void MASKED(undefined4 param_1,undefined4 param_2,undefined4 param_3)

{
  FUN_001c5010(param_1,param_2,param_3);
  FUN_001c4f10();
  return;
}

