
/* DWARF original prototype: void add_output_section_relative(Output_data_reloc<4,_true,_32,_false>
   * this, Output_section * os, uint type, Output_data * od, Sized_relobj<32,_false> * relobj, uint
   shndx, Address address, Addend addend) */

void __thiscall
gold::Output_data_reloc<4,_true,_32,_false>::add_output_section_relative
          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,
          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)

{
  Output_reloc_type OStack_48;
  
  Output_reloc<9,_true,_32,_false>::Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true);
  OStack_48.addend_ = addend;
  Output_data_reloc_base<4,_true,_32,_false>::add
            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48);
  return;
}



void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,
                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)

{
  undefined1 auStack_48 [32];
  undefined4 local_28;
  
  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);
  local_28 = param_8;
  FUN_001c1470(param_1,param_4,auStack_48);
  return;
}


PUSH R12
MOV R12,RCX
MOV RCX,R8
MOV R8D,R9D
PUSH RBP
MOV RBP,RDI
PUSH RBX
SUB RSP,0x30
MOV RBX,RSP
SUB RSP,0x8
PUSH 0x1
MOV R9D,dword ptr [RSP + 0x60]
MOV RDI,RBX
CALL 0x003d7780
MOV EAX,dword ptr [RSP + 0x68]
MOV RSI,R12
MOV RDI,RBP
MOV dword ptr [RSP + 0x30],EAX
POP RAX
POP RDX
MOV RDX,RBX
CALL 0x001c1470
ADD RSP,0x30
POP RBX
POP RBP
POP R12
RET
(translation_unit "void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)\n\n{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}\n\n" (function_definition "void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)\n\n{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" primitive_type (function_declarator "FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" identifier (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "undefined4 param_6" type_identifier identifier) , (parameter_declaration "undefined4 param_7" type_identifier identifier) , (parameter_declaration "undefined4 param_8" type_identifier identifier) ))) (compound_statement "{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" { (declaration "undefined1 auStack_48 [32];" type_identifier (array_declarator "auStack_48 [32]" identifier [ number_literal ]) ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (expression_statement "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);" (call_expression "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" identifier (argument_list "(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" ( identifier , identifier , identifier , identifier , identifier , identifier , number_literal ))) ;) (expression_statement "local_28 = param_8;" (assignment_expression "local_28 = param_8" identifier = identifier) ;) (expression_statement "FUN_001c1470(param_1,param_4,auStack_48);" (call_expression "FUN_001c1470(param_1,param_4,auStack_48)" identifier (argument_list "(param_1,param_4,auStack_48)" ( identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "/* DWARF original prototype: void add_output_section_relative(Output_data_reloc<4,_true,_32,_false>\n   * this, Output_section * os, uint type, Output_data * od, Sized_relobj<32,_false> * relobj, uint\n   shndx, Address address, Addend addend) */\n\nvoid __thiscall\ngold::Output_data_reloc<4,_true,_32,_false>::add_output_section_relative\n          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,\n          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)\n\n{\n  Output_reloc_type OStack_48;\n  \n  Output_reloc<9,_true,_32,_false>::Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true);\n  OStack_48.addend_ = addend;\n  Output_data_reloc_base<4,_true,_32,_false>::add\n            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48);\n  return;\n}\n\n" comment (declaration "void __thiscall\ngold::Output_data_reloc<4,_true,_32,_false>::add_output_section_relative\n          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,\n          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)\n\n{\n  Output_reloc_type OStack_48;" primitive_type (ms_call_modifier "__thiscall" __thiscall) (ERROR "gold::" identifier : :) identifier (ERROR "<4" < number_literal) , identifier , identifier , (ERROR "_false>::add_output_section_relative\n          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,\n          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)\n\n{\n  Output_reloc_type" identifier > : : (function_declarator "add_output_section_relative\n          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,\n          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)" identifier (parameter_list "(Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,\n          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)" ( (parameter_declaration "Output_data_reloc" type_identifier) (ERROR "<4" < number_literal) , (parameter_declaration "_true" type_identifier) , (parameter_declaration "_32" type_identifier) , (parameter_declaration "_false> *this" type_identifier (ERROR ">" >) (pointer_declarator "*this" * identifier)) , (parameter_declaration "Output_section *os" type_identifier (pointer_declarator "*os" * identifier)) , (parameter_declaration "uint type" type_identifier identifier) , (parameter_declaration "Output_data *od" type_identifier (pointer_declarator "*od" * identifier)) , (parameter_declaration "Sized_relobj" type_identifier) (ERROR "<32" < number_literal) , (parameter_declaration "_false> *relobj" type_identifier (ERROR ">" >) (pointer_declarator "*relobj" * identifier)) , (parameter_declaration "uint shndx" type_identifier identifier) , (parameter_declaration "Address address" type_identifier identifier) , (parameter_declaration "Addend addend" type_identifier identifier) ))) { identifier) identifier ;) (expression_statement "Output_reloc<9,_true,_32,_false>::Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true);" (update_expression "Output_reloc<9,_true,_32,_false>::Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true)" (binary_expression "Output_reloc<9,_true,_32,_false>::Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true)" (binary_expression "Output_reloc<9" identifier < number_literal) (ERROR ",_true,_32,_false" , identifier , identifier , identifier) > (ERROR "::" : :) (call_expression "Output_reloc(&OStack_48.rel_,os,type,relobj,shndx,address,true)" identifier (argument_list "(&OStack_48.rel_,os,type,relobj,shndx,address,true)" ( (pointer_expression "&OStack_48.rel_" & (field_expression "OStack_48.rel_" identifier . field_identifier)) , identifier , identifier , identifier , identifier , identifier , true )))) --) ;) (expression_statement "OStack_48.addend_ = addend;" (assignment_expression "OStack_48.addend_ = addend" (field_expression "OStack_48.addend_" identifier . field_identifier) = identifier) ;) (expression_statement "Output_data_reloc_base<4,_true,_32,_false>::add\n            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48);" (update_expression "Output_data_reloc_base<4,_true,_32,_false>::add\n            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48)" (binary_expression "Output_data_reloc_base<4,_true,_32,_false>::add\n            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48)" (binary_expression "Output_data_reloc_base<4" identifier < number_literal) (ERROR ",_true,_32,_false" , identifier , identifier , identifier) > (ERROR "::" : :) (call_expression "add\n            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48)" identifier (argument_list "(&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48)" ( (binary_expression "&this->super_Output_data_reloc_base<4" (pointer_expression "&this->super_Output_data_reloc_base" & (field_expression "this->super_Output_data_reloc_base" identifier -> field_identifier)) < number_literal) , identifier , identifier , identifier (ERROR ">" >) , identifier , (pointer_expression "&OStack_48" & identifier) )))) --) ;) (return_statement "return;" return ;) (ERROR "}" }))
(translation_unit "void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)\n\n{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}\n\n" (function_definition "void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)\n\n{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" primitive_type (function_declarator "FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" identifier (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" ( (parameter_declaration "undefined8 param_1" type_identifier identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "undefined8 param_4" type_identifier identifier) , (parameter_declaration "undefined8 param_5" type_identifier identifier) , (parameter_declaration "undefined4 param_6" type_identifier identifier) , (parameter_declaration "undefined4 param_7" type_identifier identifier) , (parameter_declaration "undefined4 param_8" type_identifier identifier) ))) (compound_statement "{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" { (declaration "undefined1 auStack_48 [32];" type_identifier (array_declarator "auStack_48 [32]" identifier [ number_literal ]) ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (expression_statement "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);" (call_expression "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" identifier (argument_list "(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" ( identifier , identifier , identifier , identifier , identifier , identifier , number_literal ))) ;) (expression_statement "local_28 = param_8;" (assignment_expression "local_28 = param_8" identifier = identifier) ;) (expression_statement "FUN_001c1470(param_1,param_4,auStack_48);" (call_expression "FUN_001c1470(param_1,param_4,auStack_48)" identifier (argument_list "(param_1,param_4,auStack_48)" ( identifier , identifier , identifier ))) ;) (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) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (return_statement return ;) })))
(function_definition "void FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)\n\n{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_003f5770(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" (identifier "FUN_003f5770") (parameter_list "(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,\n                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)" (( "(") (parameter_declaration "undefined8 param_1" (type_identifier "undefined8") (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) (, ",") (parameter_declaration "undefined8 param_4" (type_identifier "undefined8") (identifier "param_4")) (, ",") (parameter_declaration "undefined8 param_5" (type_identifier "undefined8") (identifier "param_5")) (, ",") (parameter_declaration "undefined4 param_6" (type_identifier "undefined4") (identifier "param_6")) (, ",") (parameter_declaration "undefined4 param_7" (type_identifier "undefined4") (identifier "param_7")) (, ",") (parameter_declaration "undefined4 param_8" (type_identifier "undefined4") (identifier "param_8")) () ")"))) (compound_statement "{\n  undefined1 auStack_48 [32];\n  undefined4 local_28;\n  \n  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);\n  local_28 = param_8;\n  FUN_001c1470(param_1,param_4,auStack_48);\n  return;\n}" ({ "{") (declaration "undefined1 auStack_48 [32];" (type_identifier "undefined1") (array_declarator "auStack_48 [32]" (identifier "auStack_48") ([ "[") (number_literal "32") (] "]")) (; ";")) (declaration "undefined4 local_28;" (type_identifier "undefined4") (identifier "local_28") (; ";")) (expression_statement "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);" (call_expression "FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" (identifier "FUN_003d7780") (argument_list "(auStack_48,param_2,param_3,param_5,param_6,param_7,1)" (( "(") (identifier "auStack_48") (, ",") (identifier "param_2") (, ",") (identifier "param_3") (, ",") (identifier "param_5") (, ",") (identifier "param_6") (, ",") (identifier "param_7") (, ",") (number_literal "1") () ")"))) (; ";")) (expression_statement "local_28 = param_8;" (assignment_expression "local_28 = param_8" (identifier "local_28") (= "=") (identifier "param_8")) (; ";")) (expression_statement "FUN_001c1470(param_1,param_4,auStack_48);" (call_expression "FUN_001c1470(param_1,param_4,auStack_48)" (identifier "FUN_001c1470") (argument_list "(param_1,param_4,auStack_48)" (( "(") (identifier "param_1") (, ",") (identifier "param_4") (, ",") (identifier "auStack_48") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* DWARF original prototype: void add_output_section_relative(Output_data_reloc<4,_true,_32,_false>
   * this, Output_section * os, uint type, Output_data * od, Sized_relobj<32,_false> * relobj, uint
   shndx, Address address, Addend addend) */

void __thiscall
gold::Output_data_reloc<4,_true,_32,_false>::add_output_section_relative
          (Output_data_reloc<4,_true,_32,_false> *this,Output_section *os,uint type,Output_data *od,
          Sized_relobj<32,_false> *relobj,uint shndx,Address address,Addend addend)

{
  Output_reloc_type OStack_48;
  
  var_1<9,_true,_32,_false>::var_1(&OStack_48.rel_,os,type,relobj,shndx,address,true);
  OStack_48.addend_ = addend;
  var_2<4,_true,_32,_false>::var_3
            (&this->super_Output_data_reloc_base<4,_true,_32,_false>,od,&OStack_48);
  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)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)))) body: (compound_statement (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier) (identifier) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (return_statement))))

void MASKED(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4,
                 undefined8 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)

{
  undefined1 auStack_48 [32];
  undefined4 local_28;
  
  FUN_003d7780(auStack_48,param_2,param_3,param_5,param_6,param_7,1);
  local_28 = param_8;
  FUN_001c1470(param_1,param_4,auStack_48);
  return;
}

