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

void obj_elf_ident(int ignore)

{
  segT secptr;
  subsegT subseg;
  char *pcVar1;
  
  subseg = now_subseg;
  secptr = now_seg;
  if (obj_elf_ident::comment_section == (segT)0x0) {
    obj_elf_ident::comment_section = subseg_new(".comment",0);
    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);
    obj_elf_ident::comment_section->entsize = 1;
    pcVar1 = frag_more(1);
    *pcVar1 = '\0';
  }
  else {
    subseg_set(obj_elf_ident::comment_section,0);
  }
  stringer(9);
  subseg_set(secptr,subseg);
  return;
}



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

void FUN_00044c30(void)

{
  undefined4 uVar1;
  undefined4 uVar2;
  undefined1 *puVar3;
  
  uVar2 = DAT_00072dcc;
  uVar1 = DAT_00072cdc;
  if (DAT_00072bc0 == 0) {
    DAT_00072bc0 = FUN_00034840(".comment",0);
    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);
    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;
    puVar3 = (undefined1 *)FUN_00023660(1);
    *puVar3 = 0;
  }
  else {
    FUN_000348a0(DAT_00072bc0,0);
  }
  FUN_000315c0(9);
  FUN_000348a0(uVar1,uVar2);
  return;
}


PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x000160b0
ADD EBX,0x253c8
LEA EAX,[EBX + 0x8cdc]
MOV ESI,dword ptr [EAX]
LEA EAX,[EBX + 0x8dcc]
MOV EDI,dword ptr [EAX]
MOV EAX,dword ptr [EBX + 0x8bc0]
TEST EAX,EAX
JZ 0x00044c80
SUB ESP,0x8
PUSH 0x0
PUSH EAX
CALL 0x000348a0
ADD ESP,0x10
SUB ESP,0xc
PUSH 0x9
CALL 0x000315c0
POP EAX
POP EDX
PUSH EDI
PUSH ESI
CALL 0x000348a0
ADD ESP,0x10
POP EBX
POP ESI
POP EDI
RET
SUB ESP,0x8
LEA EAX,[EBX + 0xfffe8f4e]
PUSH 0x0
PUSH EAX
CALL 0x00034840
ADD ESP,0xc
PUSH 0x1800108
MOV dword ptr [EBX + 0x8bc0],EAX
PUSH EAX
LEA EAX,[EBX + 0x8e64]
PUSH dword ptr [EAX]
CALL 0x00014780
MOV EAX,dword ptr [EBX + 0x8bc0]
MOV dword ptr [EAX + 0x78],0x1
MOV dword ptr [ESP],0x1
CALL 0x00023660
ADD ESP,0x10
MOV byte ptr [EAX],0x0
JMP 0x00044c66
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_00044c30(void)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}\n\n" comment (function_definition "void FUN_00044c30(void)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" primitive_type (function_declarator "FUN_00044c30(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "undefined1 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (expression_statement "uVar2 = DAT_00072dcc;" (assignment_expression "uVar2 = DAT_00072dcc" identifier = identifier) ;) (expression_statement "uVar1 = DAT_00072cdc;" (assignment_expression "uVar1 = DAT_00072cdc" identifier = identifier) ;) (if_statement "if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" if (parenthesized_expression "(DAT_00072bc0 == 0)" ( (binary_expression "DAT_00072bc0 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }" { (expression_statement "DAT_00072bc0 = FUN_00034840(".comment",0);" (assignment_expression "DAT_00072bc0 = FUN_00034840(".comment",0)" identifier = (call_expression "FUN_00034840(".comment",0)" identifier (argument_list "(".comment",0)" ( (string_literal "".comment"" " string_content ") , number_literal )))) ;) (expression_statement "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);" (call_expression "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108)" identifier (argument_list "(DAT_00072e64,DAT_00072bc0,0x1800108)" ( identifier , identifier , number_literal ))) ;) (expression_statement "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1;" (assignment_expression "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1" (pointer_expression "*(undefined4 *)(DAT_00072bc0 + 0x78)" * (cast_expression "(undefined4 *)(DAT_00072bc0 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00072bc0 + 0x78)" ( (binary_expression "DAT_00072bc0 + 0x78" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar3 = (undefined1 *)FUN_00023660(1);" (assignment_expression "puVar3 = (undefined1 *)FUN_00023660(1)" identifier = (cast_expression "(undefined1 *)FUN_00023660(1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00023660(1)" identifier (argument_list "(1)" ( number_literal ))))) ;) (expression_statement "*puVar3 = 0;" (assignment_expression "*puVar3 = 0" (pointer_expression "*puVar3" * identifier) = number_literal) ;) }) (else_clause "else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" else (compound_statement "{\n    FUN_000348a0(DAT_00072bc0,0);\n  }" { (expression_statement "FUN_000348a0(DAT_00072bc0,0);" (call_expression "FUN_000348a0(DAT_00072bc0,0)" identifier (argument_list "(DAT_00072bc0,0)" ( identifier , number_literal ))) ;) }))) (expression_statement "FUN_000315c0(9);" (call_expression "FUN_000315c0(9)" identifier (argument_list "(9)" ( number_literal ))) ;) (expression_statement "FUN_000348a0(uVar1,uVar2);" (call_expression "FUN_000348a0(uVar1,uVar2)" identifier (argument_list "(uVar1,uVar2)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nvoid obj_elf_ident(int ignore)\n\n{\n  segT secptr;\n  subsegT subseg;\n  char *pcVar1;\n  \n  subseg = now_subseg;\n  secptr = now_seg;\n  if (obj_elf_ident::comment_section == (segT)0x0) {\n    obj_elf_ident::comment_section = subseg_new(".comment",0);\n    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);\n    obj_elf_ident::comment_section->entsize = 1;\n    pcVar1 = frag_more(1);\n    *pcVar1 = '\0';\n  }\n  else {\n    subseg_set(obj_elf_ident::comment_section,0);\n  }\n  stringer(9);\n  subseg_set(secptr,subseg);\n  return;\n}\n\n" comment comment (function_definition "void obj_elf_ident(int ignore)\n\n{\n  segT secptr;\n  subsegT subseg;\n  char *pcVar1;\n  \n  subseg = now_subseg;\n  secptr = now_seg;\n  if (obj_elf_ident::comment_section == (segT)0x0) {\n    obj_elf_ident::comment_section = subseg_new(".comment",0);\n    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);\n    obj_elf_ident::comment_section->entsize = 1;\n    pcVar1 = frag_more(1);\n    *pcVar1 = '\0';\n  }\n  else {\n    subseg_set(obj_elf_ident::comment_section,0);\n  }\n  stringer(9);\n  subseg_set(secptr,subseg);\n  return;\n}" primitive_type (function_declarator "obj_elf_ident(int ignore)" identifier (parameter_list "(int ignore)" ( (parameter_declaration "int ignore" primitive_type identifier) ))) (compound_statement "{\n  segT secptr;\n  subsegT subseg;\n  char *pcVar1;\n  \n  subseg = now_subseg;\n  secptr = now_seg;\n  if (obj_elf_ident::comment_section == (segT)0x0) {\n    obj_elf_ident::comment_section = subseg_new(".comment",0);\n    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);\n    obj_elf_ident::comment_section->entsize = 1;\n    pcVar1 = frag_more(1);\n    *pcVar1 = '\0';\n  }\n  else {\n    subseg_set(obj_elf_ident::comment_section,0);\n  }\n  stringer(9);\n  subseg_set(secptr,subseg);\n  return;\n}" { (declaration "segT secptr;" type_identifier identifier ;) (declaration "subsegT subseg;" type_identifier identifier ;) (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (expression_statement "subseg = now_subseg;" (assignment_expression "subseg = now_subseg" identifier = identifier) ;) (expression_statement "secptr = now_seg;" (assignment_expression "secptr = now_seg" identifier = identifier) ;) (if_statement "if (obj_elf_ident::comment_section == (segT)0x0) {\n    obj_elf_ident::comment_section = subseg_new(".comment",0);\n    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);\n    obj_elf_ident::comment_section->entsize = 1;\n    pcVar1 = frag_more(1);\n    *pcVar1 = '\0';\n  }\n  else {\n    subseg_set(obj_elf_ident::comment_section,0);\n  }" if (parenthesized_expression "(obj_elf_ident::comment_section == (segT)0x0)" ( (ERROR "obj_elf_ident::" identifier : :) (binary_expression "comment_section == (segT)0x0" identifier == (cast_expression "(segT)0x0" ( (type_descriptor "segT" type_identifier) ) number_literal)) )) (compound_statement "{\n    obj_elf_ident::comment_section = subseg_new(".comment",0);\n    bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);\n    obj_elf_ident::comment_section->entsize = 1;\n    pcVar1 = frag_more(1);\n    *pcVar1 = '\0';\n  }" { (labeled_statement "obj_elf_ident::comment_section = subseg_new(".comment",0);" statement_identifier : (ERROR ":" :) (expression_statement "comment_section = subseg_new(".comment",0);" (assignment_expression "comment_section = subseg_new(".comment",0)" identifier = (call_expression "subseg_new(".comment",0)" identifier (argument_list "(".comment",0)" ( (string_literal "".comment"" " string_content ") , number_literal )))) ;)) (expression_statement "bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108);" (call_expression "bfd_set_section_flags(stdoutput,obj_elf_ident::comment_section,0x1800108)" identifier (argument_list "(stdoutput,obj_elf_ident::comment_section,0x1800108)" ( identifier , (ERROR "obj_elf_ident::" identifier : :) identifier , number_literal ))) ;) (labeled_statement "obj_elf_ident::comment_section->entsize = 1;" statement_identifier : (ERROR ":" :) (expression_statement "comment_section->entsize = 1;" (assignment_expression "comment_section->entsize = 1" (field_expression "comment_section->entsize" identifier -> field_identifier) = number_literal) ;)) (expression_statement "pcVar1 = frag_more(1);" (assignment_expression "pcVar1 = frag_more(1)" identifier = (call_expression "frag_more(1)" identifier (argument_list "(1)" ( number_literal )))) ;) (expression_statement "*pcVar1 = '\0';" (assignment_expression "*pcVar1 = '\0'" (pointer_expression "*pcVar1" * identifier) = (char_literal "'\0'" ' escape_sequence ')) ;) }) (else_clause "else {\n    subseg_set(obj_elf_ident::comment_section,0);\n  }" else (compound_statement "{\n    subseg_set(obj_elf_ident::comment_section,0);\n  }" { (labeled_statement "subseg_set(obj_elf_ident::comment_section,0);" statement_identifier (ERROR "(obj_elf_ident:" ( (type_descriptor "obj_elf_ident" type_identifier) :) : (expression_statement "comment_section,0);" (comma_expression "comment_section,0" identifier , number_literal) (ERROR ")" )) ;)) }))) (expression_statement "stringer(9);" (call_expression "stringer(9)" identifier (argument_list "(9)" ( number_literal ))) ;) (expression_statement "subseg_set(secptr,subseg);" (call_expression "subseg_set(secptr,subseg)" identifier (argument_list "(secptr,subseg)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00044c30(void)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}\n\n" (function_definition "void FUN_00044c30(void)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" primitive_type (function_declarator "FUN_00044c30(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" { (declaration "undefined4 uVar1;" type_identifier identifier ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "undefined1 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (expression_statement "uVar2 = DAT_00072dcc;" (assignment_expression "uVar2 = DAT_00072dcc" identifier = identifier) ;) (expression_statement "uVar1 = DAT_00072cdc;" (assignment_expression "uVar1 = DAT_00072cdc" identifier = identifier) ;) (if_statement "if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" if (parenthesized_expression "(DAT_00072bc0 == 0)" ( (binary_expression "DAT_00072bc0 == 0" identifier == number_literal) )) (compound_statement "{\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }" { (expression_statement "DAT_00072bc0 = FUN_00034840(".comment",0);" (assignment_expression "DAT_00072bc0 = FUN_00034840(".comment",0)" identifier = (call_expression "FUN_00034840(".comment",0)" identifier (argument_list "(".comment",0)" ( (string_literal "".comment"" " string_content ") , number_literal )))) ;) (expression_statement "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);" (call_expression "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108)" identifier (argument_list "(DAT_00072e64,DAT_00072bc0,0x1800108)" ( identifier , identifier , number_literal ))) ;) (expression_statement "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1;" (assignment_expression "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1" (pointer_expression "*(undefined4 *)(DAT_00072bc0 + 0x78)" * (cast_expression "(undefined4 *)(DAT_00072bc0 + 0x78)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_00072bc0 + 0x78)" ( (binary_expression "DAT_00072bc0 + 0x78" identifier + number_literal) )))) = number_literal) ;) (expression_statement "puVar3 = (undefined1 *)FUN_00023660(1);" (assignment_expression "puVar3 = (undefined1 *)FUN_00023660(1)" identifier = (cast_expression "(undefined1 *)FUN_00023660(1)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00023660(1)" identifier (argument_list "(1)" ( number_literal ))))) ;) (expression_statement "*puVar3 = 0;" (assignment_expression "*puVar3 = 0" (pointer_expression "*puVar3" * identifier) = number_literal) ;) }) (else_clause "else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" else (compound_statement "{\n    FUN_000348a0(DAT_00072bc0,0);\n  }" { (expression_statement "FUN_000348a0(DAT_00072bc0,0);" (call_expression "FUN_000348a0(DAT_00072bc0,0)" identifier (argument_list "(DAT_00072bc0,0)" ( identifier , number_literal ))) ;) }))) (expression_statement "FUN_000315c0(9);" (call_expression "FUN_000315c0(9)" identifier (argument_list "(9)" ( number_literal ))) ;) (expression_statement "FUN_000348a0(uVar1,uVar2);" (call_expression "FUN_000348a0(uVar1,uVar2)" identifier (argument_list "(uVar1,uVar2)" ( identifier , identifier ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (return_statement return ;) })))
(function_definition "void FUN_00044c30(void)\n\n{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00044c30(void)" (identifier "FUN_00044c30") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  undefined4 uVar1;\n  undefined4 uVar2;\n  undefined1 *puVar3;\n  \n  uVar2 = DAT_00072dcc;\n  uVar1 = DAT_00072cdc;\n  if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }\n  FUN_000315c0(9);\n  FUN_000348a0(uVar1,uVar2);\n  return;\n}" ({ "{") (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "undefined1 *puVar3;" (type_identifier "undefined1") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (expression_statement "uVar2 = DAT_00072dcc;" (assignment_expression "uVar2 = DAT_00072dcc" (identifier "uVar2") (= "=") (identifier "DAT_00072dcc")) (; ";")) (expression_statement "uVar1 = DAT_00072cdc;" (assignment_expression "uVar1 = DAT_00072cdc" (identifier "uVar1") (= "=") (identifier "DAT_00072cdc")) (; ";")) (if_statement "if (DAT_00072bc0 == 0) {\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }\n  else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" (if "if") (parenthesized_expression "(DAT_00072bc0 == 0)" (( "(") (binary_expression "DAT_00072bc0 == 0" (identifier "DAT_00072bc0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    DAT_00072bc0 = FUN_00034840(".comment",0);\n    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);\n    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;\n    puVar3 = (undefined1 *)FUN_00023660(1);\n    *puVar3 = 0;\n  }" ({ "{") (expression_statement "DAT_00072bc0 = FUN_00034840(".comment",0);" (assignment_expression "DAT_00072bc0 = FUN_00034840(".comment",0)" (identifier "DAT_00072bc0") (= "=") (call_expression "FUN_00034840(".comment",0)" (identifier "FUN_00034840") (argument_list "(".comment",0)" (( "(") (string_literal "".comment"" (" """) (string_content ".comment") (" """)) (, ",") (number_literal "0") () ")")))) (; ";")) (expression_statement "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);" (call_expression "bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108)" (identifier "bfd_set_section_flags") (argument_list "(DAT_00072e64,DAT_00072bc0,0x1800108)" (( "(") (identifier "DAT_00072e64") (, ",") (identifier "DAT_00072bc0") (, ",") (number_literal "0x1800108") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1;" (assignment_expression "*(undefined4 *)(DAT_00072bc0 + 0x78) = 1" (pointer_expression "*(undefined4 *)(DAT_00072bc0 + 0x78)" (* "*") (cast_expression "(undefined4 *)(DAT_00072bc0 + 0x78)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_00072bc0 + 0x78)" (( "(") (binary_expression "DAT_00072bc0 + 0x78" (identifier "DAT_00072bc0") (+ "+") (number_literal "0x78")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar3 = (undefined1 *)FUN_00023660(1);" (assignment_expression "puVar3 = (undefined1 *)FUN_00023660(1)" (identifier "puVar3") (= "=") (cast_expression "(undefined1 *)FUN_00023660(1)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00023660(1)" (identifier "FUN_00023660") (argument_list "(1)" (( "(") (number_literal "1") () ")"))))) (; ";")) (expression_statement "*puVar3 = 0;" (assignment_expression "*puVar3 = 0" (pointer_expression "*puVar3" (* "*") (identifier "puVar3")) (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n    FUN_000348a0(DAT_00072bc0,0);\n  }" (else "else") (compound_statement "{\n    FUN_000348a0(DAT_00072bc0,0);\n  }" ({ "{") (expression_statement "FUN_000348a0(DAT_00072bc0,0);" (call_expression "FUN_000348a0(DAT_00072bc0,0)" (identifier "FUN_000348a0") (argument_list "(DAT_00072bc0,0)" (( "(") (identifier "DAT_00072bc0") (, ",") (number_literal "0") () ")"))) (; ";")) (} "}")))) (expression_statement "FUN_000315c0(9);" (call_expression "FUN_000315c0(9)" (identifier "FUN_000315c0") (argument_list "(9)" (( "(") (number_literal "9") () ")"))) (; ";")) (expression_statement "FUN_000348a0(uVar1,uVar2);" (call_expression "FUN_000348a0(uVar1,uVar2)" (identifier "FUN_000348a0") (argument_list "(uVar1,uVar2)" (( "(") (identifier "uVar1") (, ",") (identifier "uVar2") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

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

void function_1(int ignore)

{
  type_1 secptr;
  type_2 subseg;
  char *pcVar1;
  
  subseg = now_subseg;
  secptr = now_seg;
  if (function_1::var_1 == (type_1)0x0) {
    obj_elf_ident::var_1 = var_2(".comment",0);
    var_3(stdoutput,function_1::var_1,0x1800108);
    obj_elf_ident::var_1->entsize = 1;
    pcVar1 = var_4(1);
    *pcVar1 = '\0';
  }
  else {
    subseg_set(function_1::var_1,0);
  }
  var_5(9);
  var_6(secptr,subseg);
  return;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type)))) body: (compound_statement (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (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 (string_literal (string_content)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (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))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (return_statement))))

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

void MASKED(void)

{
  undefined4 uVar1;
  undefined4 uVar2;
  undefined1 *puVar3;
  
  uVar2 = DAT_00072dcc;
  uVar1 = DAT_00072cdc;
  if (DAT_00072bc0 == 0) {
    DAT_00072bc0 = FUN_00034840(".comment",0);
    bfd_set_section_flags(DAT_00072e64,DAT_00072bc0,0x1800108);
    *(undefined4 *)(DAT_00072bc0 + 0x78) = 1;
    puVar3 = (undefined1 *)FUN_00023660(1);
    *puVar3 = 0;
  }
  else {
    FUN_000348a0(DAT_00072bc0,0);
  }
  FUN_000315c0(9);
  FUN_000348a0(uVar1,uVar2);
  return;
}

