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

char * __regparm3 get_file_type(uint e_type)

{
  char *pcVar1;
  
  switch(e_type) {
  case 0:
    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);
    return pcVar1;
  case 1:
    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);
    return pcVar1;
  case 2:
    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);
    return pcVar1;
  case 3:
    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);
    return pcVar1;
  case 4:
    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);
    return pcVar1;
  }
  if (e_type - 0xff00 < 0x100) {
    pcVar1 = "Processor Specific: (%x)";
  }
  else if (e_type - 0xfe00 < 0x100) {
    pcVar1 = "OS Specific: (%x)";
  }
  else {
    pcVar1 = "<unknown>: %x";
  }
  pcVar1 = (char *)dcgettext(0,pcVar1,5);
  snprintf(get_file_type::buff,0x20,pcVar1,e_type);
  return get_file_type::buff;
}



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

undefined * __regparm3 FUN_0001c2b0(int param_1)

{
  undefined *puVar1;
  char *pcVar2;
  
  switch(param_1) {
  case 0:
    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);
    return puVar1;
  case 1:
    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);
    return puVar1;
  case 2:
    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);
    return puVar1;
  case 3:
    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);
    return puVar1;
  case 4:
    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);
    return puVar1;
  }
  if (param_1 - 0xff00U < 0x100) {
    pcVar2 = "Processor Specific: (%x)";
  }
  else if (param_1 - 0xfe00U < 0x100) {
    pcVar2 = "OS Specific: (%x)";
  }
  else {
    pcVar2 = "<unknown>: %x";
  }
  pcVar2 = (char *)dcgettext(0,pcVar2,5);
  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);
  return &DAT_000b5be0;
}


PUSH ESI
MOV ESI,EAX
PUSH EBX
CALL 0x00013f70
ADD EBX,0x97d47
SUB ESP,0x4
CMP EAX,0x4
JA 0x0001c380
MOV EAX,dword ptr [EBX + EAX*0x4 + 0xfffd810c]
ADD EAX,EBX
JMP EAX
LEA EAX,[EAX + 0xffff0100]
CMP EAX,0xff
JBE 0x0001c3e0
LEA EAX,[ESI + 0xffff0200]
CMP EAX,0xff
JA 0x0001c3d0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc2113]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000130f0
PUSH ESI
LEA ESI,[EBX + 0x1be0]
PUSH EAX
PUSH 0x20
PUSH ESI
CALL 0x000132c0
ADD ESP,0x20
MOV EAX,ESI
ADD ESP,0x4
POP EBX
POP ESI
RET
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc2125]
PUSH 0x5
JMP 0x0001c3a5
SUB ESP,0x4
LEA EAX,[EBX + 0xfffc20fa]
PUSH 0x5
JMP 0x0001c3a5
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nundefined * __regparm3 FUN_0001c2b0(int param_1)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  \n  switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }\n  if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }\n  pcVar2 = (char *)dcgettext(0,pcVar2,5);\n  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);\n  return &DAT_000b5be0;\n}\n\n" comment (ERROR "undefined * __regparm3 FUN_0001c2b0(int param_1)" (binary_expression "undefined * __regparm3 FUN_0001c2b0(int param_1)" identifier * (ERROR "__regparm3" identifier) (call_expression "FUN_0001c2b0(int param_1)" identifier (argument_list "(int param_1)" ( (ERROR "int" identifier) identifier ))))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  \n  switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }\n  if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }\n  pcVar2 = (char *)dcgettext(0,pcVar2,5);\n  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);\n  return &DAT_000b5be0;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (switch_statement "switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" switch (parenthesized_expression "(param_1)" ( identifier )) (compound_statement "{\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" { (case_statement "case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"NONE (None)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"NONE (None)",5)" identifier (argument_list "(0,"NONE (None)",5)" ( number_literal , (string_literal ""NONE (None)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"REL (Relocatable file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"REL (Relocatable file)",5)" identifier (argument_list "(0,"REL (Relocatable file)",5)" ( number_literal , (string_literal ""REL (Relocatable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"EXEC (Executable file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"EXEC (Executable file)",5)" identifier (argument_list "(0,"EXEC (Executable file)",5)" ( number_literal , (string_literal ""EXEC (Executable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"DYN (Shared object file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"DYN (Shared object file)",5)" identifier (argument_list "(0,"DYN (Shared object file)",5)" ( number_literal , (string_literal ""DYN (Shared object file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"CORE (Core file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CORE (Core file)",5)" identifier (argument_list "(0,"CORE (Core file)",5)" ( number_literal , (string_literal ""CORE (Core file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) })) (if_statement "if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" if (parenthesized_expression "(param_1 - 0xff00U < 0x100)" ( (binary_expression "param_1 - 0xff00U < 0x100" (binary_expression "param_1 - 0xff00U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar2 = "Processor Specific: (%x)";\n  }" { (expression_statement "pcVar2 = "Processor Specific: (%x)";" (assignment_expression "pcVar2 = "Processor Specific: (%x)"" identifier = (string_literal ""Processor Specific: (%x)"" " string_content ")) ;) }) (else_clause "else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" else (if_statement "if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" if (parenthesized_expression "(param_1 - 0xfe00U < 0x100)" ( (binary_expression "param_1 - 0xfe00U < 0x100" (binary_expression "param_1 - 0xfe00U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar2 = "OS Specific: (%x)";\n  }" { (expression_statement "pcVar2 = "OS Specific: (%x)";" (assignment_expression "pcVar2 = "OS Specific: (%x)"" identifier = (string_literal ""OS Specific: (%x)"" " string_content ")) ;) }) (else_clause "else {\n    pcVar2 = "<unknown>: %x";\n  }" else (compound_statement "{\n    pcVar2 = "<unknown>: %x";\n  }" { (expression_statement "pcVar2 = "<unknown>: %x";" (assignment_expression "pcVar2 = "<unknown>: %x"" identifier = (string_literal ""<unknown>: %x"" " string_content ")) ;) }))))) (expression_statement "pcVar2 = (char *)dcgettext(0,pcVar2,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,pcVar2,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar2,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar2,5)" identifier (argument_list "(0,pcVar2,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);" (call_expression "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1)" identifier (argument_list "(&DAT_000b5be0,0x20,pcVar2,param_1)" ( (pointer_expression "&DAT_000b5be0" & identifier) , number_literal , identifier , identifier ))) ;) (return_statement "return &DAT_000b5be0;" return (pointer_expression "&DAT_000b5be0" & identifier) ;) }))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nchar * __regparm3 get_file_type(uint e_type)\n\n{\n  char *pcVar1;\n  \n  switch(e_type) {\n  case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;\n  case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;\n  case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;\n  case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;\n  case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;\n  }\n  if (e_type - 0xff00 < 0x100) {\n    pcVar1 = "Processor Specific: (%x)";\n  }\n  else if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }\n  pcVar1 = (char *)dcgettext(0,pcVar1,5);\n  snprintf(get_file_type::buff,0x20,pcVar1,e_type);\n  return get_file_type::buff;\n}\n\n" comment (function_definition "char * __regparm3 get_file_type(uint e_type)\n\n{\n  char *pcVar1;\n  \n  switch(e_type) {\n  case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;\n  case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;\n  case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;\n  case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;\n  case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;\n  }\n  if (e_type - 0xff00 < 0x100) {\n    pcVar1 = "Processor Specific: (%x)";\n  }\n  else if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }\n  pcVar1 = (char *)dcgettext(0,pcVar1,5);\n  snprintf(get_file_type::buff,0x20,pcVar1,e_type);\n  return get_file_type::buff;\n}" primitive_type (pointer_declarator "* __regparm3 get_file_type(uint e_type)" * (ERROR "__regparm3" identifier) (function_declarator "get_file_type(uint e_type)" identifier (parameter_list "(uint e_type)" ( (parameter_declaration "uint e_type" type_identifier identifier) )))) (compound_statement "{\n  char *pcVar1;\n  \n  switch(e_type) {\n  case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;\n  case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;\n  case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;\n  case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;\n  case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;\n  }\n  if (e_type - 0xff00 < 0x100) {\n    pcVar1 = "Processor Specific: (%x)";\n  }\n  else if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }\n  pcVar1 = (char *)dcgettext(0,pcVar1,5);\n  snprintf(get_file_type::buff,0x20,pcVar1,e_type);\n  return get_file_type::buff;\n}" { (declaration "char *pcVar1;" primitive_type (pointer_declarator "*pcVar1" * identifier) ;) (switch_statement "switch(e_type) {\n  case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;\n  case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;\n  case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;\n  case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;\n  case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;\n  }" switch (parenthesized_expression "(e_type)" ( identifier )) (compound_statement "{\n  case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;\n  case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;\n  case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;\n  case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;\n  case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;\n  }" { (case_statement "case 0:\n    pcVar1 = (char *)dcgettext(0,"NONE (None)",5);\n    return pcVar1;" case number_literal : (expression_statement "pcVar1 = (char *)dcgettext(0,"NONE (None)",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"NONE (None)",5)" identifier = (cast_expression "(char *)dcgettext(0,"NONE (None)",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"NONE (None)",5)" identifier (argument_list "(0,"NONE (None)",5)" ( number_literal , (string_literal ""NONE (None)"" " string_content ") , number_literal ))))) ;) (return_statement "return pcVar1;" return identifier ;)) (case_statement "case 1:\n    pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);\n    return pcVar1;" case number_literal : (expression_statement "pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"REL (Relocatable file)",5)" identifier = (cast_expression "(char *)dcgettext(0,"REL (Relocatable file)",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"REL (Relocatable file)",5)" identifier (argument_list "(0,"REL (Relocatable file)",5)" ( number_literal , (string_literal ""REL (Relocatable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return pcVar1;" return identifier ;)) (case_statement "case 2:\n    pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);\n    return pcVar1;" case number_literal : (expression_statement "pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"EXEC (Executable file)",5)" identifier = (cast_expression "(char *)dcgettext(0,"EXEC (Executable file)",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"EXEC (Executable file)",5)" identifier (argument_list "(0,"EXEC (Executable file)",5)" ( number_literal , (string_literal ""EXEC (Executable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return pcVar1;" return identifier ;)) (case_statement "case 3:\n    pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);\n    return pcVar1;" case number_literal : (expression_statement "pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"DYN (Shared object file)",5)" identifier = (cast_expression "(char *)dcgettext(0,"DYN (Shared object file)",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"DYN (Shared object file)",5)" identifier (argument_list "(0,"DYN (Shared object file)",5)" ( number_literal , (string_literal ""DYN (Shared object file)"" " string_content ") , number_literal ))))) ;) (return_statement "return pcVar1;" return identifier ;)) (case_statement "case 4:\n    pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);\n    return pcVar1;" case number_literal : (expression_statement "pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,"CORE (Core file)",5)" identifier = (cast_expression "(char *)dcgettext(0,"CORE (Core file)",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CORE (Core file)",5)" identifier (argument_list "(0,"CORE (Core file)",5)" ( number_literal , (string_literal ""CORE (Core file)"" " string_content ") , number_literal ))))) ;) (return_statement "return pcVar1;" return identifier ;)) })) (if_statement "if (e_type - 0xff00 < 0x100) {\n    pcVar1 = "Processor Specific: (%x)";\n  }\n  else if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }" if (parenthesized_expression "(e_type - 0xff00 < 0x100)" ( (binary_expression "e_type - 0xff00 < 0x100" (binary_expression "e_type - 0xff00" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar1 = "Processor Specific: (%x)";\n  }" { (expression_statement "pcVar1 = "Processor Specific: (%x)";" (assignment_expression "pcVar1 = "Processor Specific: (%x)"" identifier = (string_literal ""Processor Specific: (%x)"" " string_content ")) ;) }) (else_clause "else if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }" else (if_statement "if (e_type - 0xfe00 < 0x100) {\n    pcVar1 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar1 = "<unknown>: %x";\n  }" if (parenthesized_expression "(e_type - 0xfe00 < 0x100)" ( (binary_expression "e_type - 0xfe00 < 0x100" (binary_expression "e_type - 0xfe00" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar1 = "OS Specific: (%x)";\n  }" { (expression_statement "pcVar1 = "OS Specific: (%x)";" (assignment_expression "pcVar1 = "OS Specific: (%x)"" identifier = (string_literal ""OS Specific: (%x)"" " string_content ")) ;) }) (else_clause "else {\n    pcVar1 = "<unknown>: %x";\n  }" else (compound_statement "{\n    pcVar1 = "<unknown>: %x";\n  }" { (expression_statement "pcVar1 = "<unknown>: %x";" (assignment_expression "pcVar1 = "<unknown>: %x"" identifier = (string_literal ""<unknown>: %x"" " string_content ")) ;) }))))) (expression_statement "pcVar1 = (char *)dcgettext(0,pcVar1,5);" (assignment_expression "pcVar1 = (char *)dcgettext(0,pcVar1,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar1,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar1,5)" identifier (argument_list "(0,pcVar1,5)" ( number_literal , identifier , number_literal ))))) ;) (labeled_statement "snprintf(get_file_type::buff,0x20,pcVar1,e_type);" statement_identifier (ERROR "(get_file_type:" ( (type_descriptor "get_file_type" type_identifier) :) : (expression_statement "buff,0x20,pcVar1,e_type);" (comma_expression "buff,0x20,pcVar1,e_type" identifier , (comma_expression "0x20,pcVar1,e_type" number_literal , (comma_expression "pcVar1,e_type" identifier , identifier))) (ERROR ")" )) ;)) (return_statement "return get_file_type::buff;" return identifier (ERROR "::buff" : : identifier) ;) })))
(translation_unit "undefined * __regparm3 FUN_0001c2b0(int param_1)\n\n{\n  undefined *puVar1;\n  char *pcVar2;\n  \n  switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }\n  if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }\n  pcVar2 = (char *)dcgettext(0,pcVar2,5);\n  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);\n  return &DAT_000b5be0;\n}\n\n" (ERROR "undefined * __regparm3 FUN_0001c2b0(int param_1)" (binary_expression "undefined * __regparm3 FUN_0001c2b0(int param_1)" identifier * (ERROR "__regparm3" identifier) (call_expression "FUN_0001c2b0(int param_1)" identifier (argument_list "(int param_1)" ( (ERROR "int" identifier) identifier ))))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  \n  switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }\n  if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }\n  pcVar2 = (char *)dcgettext(0,pcVar2,5);\n  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);\n  return &DAT_000b5be0;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (switch_statement "switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" switch (parenthesized_expression "(param_1)" ( identifier )) (compound_statement "{\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" { (case_statement "case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"NONE (None)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"NONE (None)",5)" identifier (argument_list "(0,"NONE (None)",5)" ( number_literal , (string_literal ""NONE (None)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"REL (Relocatable file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"REL (Relocatable file)",5)" identifier (argument_list "(0,"REL (Relocatable file)",5)" ( number_literal , (string_literal ""REL (Relocatable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"EXEC (Executable file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"EXEC (Executable file)",5)" identifier (argument_list "(0,"EXEC (Executable file)",5)" ( number_literal , (string_literal ""EXEC (Executable file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"DYN (Shared object file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"DYN (Shared object file)",5)" identifier (argument_list "(0,"DYN (Shared object file)",5)" ( number_literal , (string_literal ""DYN (Shared object file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) (case_statement "case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;" case number_literal : (expression_statement "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5)" identifier = (cast_expression "(undefined *)dcgettext(0,"CORE (Core file)",5)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"CORE (Core file)",5)" identifier (argument_list "(0,"CORE (Core file)",5)" ( number_literal , (string_literal ""CORE (Core file)"" " string_content ") , number_literal ))))) ;) (return_statement "return puVar1;" return identifier ;)) })) (if_statement "if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" if (parenthesized_expression "(param_1 - 0xff00U < 0x100)" ( (binary_expression "param_1 - 0xff00U < 0x100" (binary_expression "param_1 - 0xff00U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar2 = "Processor Specific: (%x)";\n  }" { (expression_statement "pcVar2 = "Processor Specific: (%x)";" (assignment_expression "pcVar2 = "Processor Specific: (%x)"" identifier = (string_literal ""Processor Specific: (%x)"" " string_content ")) ;) }) (else_clause "else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" else (if_statement "if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" if (parenthesized_expression "(param_1 - 0xfe00U < 0x100)" ( (binary_expression "param_1 - 0xfe00U < 0x100" (binary_expression "param_1 - 0xfe00U" identifier - number_literal) < number_literal) )) (compound_statement "{\n    pcVar2 = "OS Specific: (%x)";\n  }" { (expression_statement "pcVar2 = "OS Specific: (%x)";" (assignment_expression "pcVar2 = "OS Specific: (%x)"" identifier = (string_literal ""OS Specific: (%x)"" " string_content ")) ;) }) (else_clause "else {\n    pcVar2 = "<unknown>: %x";\n  }" else (compound_statement "{\n    pcVar2 = "<unknown>: %x";\n  }" { (expression_statement "pcVar2 = "<unknown>: %x";" (assignment_expression "pcVar2 = "<unknown>: %x"" identifier = (string_literal ""<unknown>: %x"" " string_content ")) ;) }))))) (expression_statement "pcVar2 = (char *)dcgettext(0,pcVar2,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,pcVar2,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar2,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar2,5)" identifier (argument_list "(0,pcVar2,5)" ( number_literal , identifier , number_literal ))))) ;) (expression_statement "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);" (call_expression "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1)" identifier (argument_list "(&DAT_000b5be0,0x20,pcVar2,param_1)" ( (pointer_expression "&DAT_000b5be0" & identifier) , number_literal , identifier , identifier ))) ;) (return_statement "return &DAT_000b5be0;" return (pointer_expression "&DAT_000b5be0" & identifier) ;) }))
(translation_unit (ERROR (binary_expression IDENT * (ERROR IDENT) (call_expression IDENT (argument_list ( (ERROR IDENT) IDENT ))))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (return_statement return IDENT ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (return_statement return IDENT ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (return_statement return IDENT ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (return_statement return IDENT ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT ))))) ;) (return_statement return IDENT ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }))))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , IDENT , IDENT ))) ;) (return_statement return (pointer_expression & IDENT) ;) }))
(ERROR "undefined * __regparm3 FUN_0001c2b0(int param_1)" (binary_expression "undefined * __regparm3 FUN_0001c2b0(int param_1)" (identifier "undefined") (* "*") (ERROR "__regparm3" (identifier "__regparm3")) (call_expression "FUN_0001c2b0(int param_1)" (identifier "FUN_0001c2b0") (argument_list "(int param_1)" (( "(") (ERROR "int" (identifier "int")) (identifier "param_1") () ")"))))) (compound_statement "{\n  undefined *puVar1;\n  char *pcVar2;\n  \n  switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }\n  if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }\n  pcVar2 = (char *)dcgettext(0,pcVar2,5);\n  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);\n  return &DAT_000b5be0;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "char *pcVar2;" (primitive_type "char") (pointer_declarator "*pcVar2" (* "*") (identifier "pcVar2")) (; ";")) (switch_statement "switch(param_1) {\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" (switch "switch") (parenthesized_expression "(param_1)" (( "(") (identifier "param_1") () ")")) (compound_statement "{\n  case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;\n  case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;\n  case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;\n  case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;\n  case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;\n  }" ({ "{") (case_statement "case 0:\n    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);\n    return puVar1;" (case "case") (number_literal "0") (: ":") (expression_statement "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"NONE (None)",5)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)dcgettext(0,"NONE (None)",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"NONE (None)",5)" (identifier "dcgettext") (argument_list "(0,"NONE (None)",5)" (( "(") (number_literal "0") (, ",") (string_literal ""NONE (None)"" (" """) (string_content "NONE (None)") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";"))) (case_statement "case 1:\n    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);\n    return puVar1;" (case "case") (number_literal "1") (: ":") (expression_statement "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)dcgettext(0,"REL (Relocatable file)",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"REL (Relocatable file)",5)" (identifier "dcgettext") (argument_list "(0,"REL (Relocatable file)",5)" (( "(") (number_literal "0") (, ",") (string_literal ""REL (Relocatable file)"" (" """) (string_content "REL (Relocatable file)") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";"))) (case_statement "case 2:\n    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);\n    return puVar1;" (case "case") (number_literal "2") (: ":") (expression_statement "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)dcgettext(0,"EXEC (Executable file)",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"EXEC (Executable file)",5)" (identifier "dcgettext") (argument_list "(0,"EXEC (Executable file)",5)" (( "(") (number_literal "0") (, ",") (string_literal ""EXEC (Executable file)"" (" """) (string_content "EXEC (Executable file)") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";"))) (case_statement "case 3:\n    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);\n    return puVar1;" (case "case") (number_literal "3") (: ":") (expression_statement "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)dcgettext(0,"DYN (Shared object file)",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"DYN (Shared object file)",5)" (identifier "dcgettext") (argument_list "(0,"DYN (Shared object file)",5)" (( "(") (number_literal "0") (, ",") (string_literal ""DYN (Shared object file)"" (" """) (string_content "DYN (Shared object file)") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";"))) (case_statement "case 4:\n    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);\n    return puVar1;" (case "case") (number_literal "4") (: ":") (expression_statement "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);" (assignment_expression "puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)dcgettext(0,"CORE (Core file)",5)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,"CORE (Core file)",5)" (identifier "dcgettext") (argument_list "(0,"CORE (Core file)",5)" (( "(") (number_literal "0") (, ",") (string_literal ""CORE (Core file)"" (" """) (string_content "CORE (Core file)") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (return_statement "return puVar1;" (return "return") (identifier "puVar1") (; ";"))) (} "}"))) (if_statement "if (param_1 - 0xff00U < 0x100) {\n    pcVar2 = "Processor Specific: (%x)";\n  }\n  else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" (if "if") (parenthesized_expression "(param_1 - 0xff00U < 0x100)" (( "(") (binary_expression "param_1 - 0xff00U < 0x100" (binary_expression "param_1 - 0xff00U" (identifier "param_1") (- "-") (number_literal "0xff00U")) (< "<") (number_literal "0x100")) () ")")) (compound_statement "{\n    pcVar2 = "Processor Specific: (%x)";\n  }" ({ "{") (expression_statement "pcVar2 = "Processor Specific: (%x)";" (assignment_expression "pcVar2 = "Processor Specific: (%x)"" (identifier "pcVar2") (= "=") (string_literal ""Processor Specific: (%x)"" (" """) (string_content "Processor Specific: (%x)") (" """))) (; ";")) (} "}")) (else_clause "else if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" (else "else") (if_statement "if (param_1 - 0xfe00U < 0x100) {\n    pcVar2 = "OS Specific: (%x)";\n  }\n  else {\n    pcVar2 = "<unknown>: %x";\n  }" (if "if") (parenthesized_expression "(param_1 - 0xfe00U < 0x100)" (( "(") (binary_expression "param_1 - 0xfe00U < 0x100" (binary_expression "param_1 - 0xfe00U" (identifier "param_1") (- "-") (number_literal "0xfe00U")) (< "<") (number_literal "0x100")) () ")")) (compound_statement "{\n    pcVar2 = "OS Specific: (%x)";\n  }" ({ "{") (expression_statement "pcVar2 = "OS Specific: (%x)";" (assignment_expression "pcVar2 = "OS Specific: (%x)"" (identifier "pcVar2") (= "=") (string_literal ""OS Specific: (%x)"" (" """) (string_content "OS Specific: (%x)") (" """))) (; ";")) (} "}")) (else_clause "else {\n    pcVar2 = "<unknown>: %x";\n  }" (else "else") (compound_statement "{\n    pcVar2 = "<unknown>: %x";\n  }" ({ "{") (expression_statement "pcVar2 = "<unknown>: %x";" (assignment_expression "pcVar2 = "<unknown>: %x"" (identifier "pcVar2") (= "=") (string_literal ""<unknown>: %x"" (" """) (string_content "<unknown>: %x") (" """))) (; ";")) (} "}")))))) (expression_statement "pcVar2 = (char *)dcgettext(0,pcVar2,5);" (assignment_expression "pcVar2 = (char *)dcgettext(0,pcVar2,5)" (identifier "pcVar2") (= "=") (cast_expression "(char *)dcgettext(0,pcVar2,5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext(0,pcVar2,5)" (identifier "dcgettext") (argument_list "(0,pcVar2,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar2") (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);" (call_expression "snprintf(&DAT_000b5be0,0x20,pcVar2,param_1)" (identifier "snprintf") (argument_list "(&DAT_000b5be0,0x20,pcVar2,param_1)" (( "(") (pointer_expression "&DAT_000b5be0" (& "&") (identifier "DAT_000b5be0")) (, ",") (number_literal "0x20") (, ",") (identifier "pcVar2") (, ",") (identifier "param_1") () ")"))) (; ";")) (return_statement "return &DAT_000b5be0;" (return "return") (pointer_expression "&DAT_000b5be0" (& "&") (identifier "DAT_000b5be0")) (; ";")) (} "}"))

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

char * __regparm3 function_1(type_1 var_2)

{
  char *pcVar1;
  
  switch(var_2) {
  case 0:
    pcVar1 = (char *)var_1(0,"NONE (None)",5);
    return pcVar1;
  case 1:
    pcVar1 = (char *)var_1(0,"REL (Relocatable file)",5);
    return pcVar1;
  case 2:
    pcVar1 = (char *)var_1(0,"EXEC (Executable file)",5);
    return pcVar1;
  case 3:
    pcVar1 = (char *)var_1(0,"DYN (Shared object file)",5);
    return pcVar1;
  case 4:
    pcVar1 = (char *)var_1(0,"CORE (Core file)",5);
    return pcVar1;
  }
  if (var_2 - 0xff00 < 0x100) {
    pcVar1 = "Processor Specific: (%x)";
  }
  else if (var_2 - 0xfe00 < 0x100) {
    pcVar1 = "OS Specific: (%x)";
  }
  else {
    pcVar1 = "<unknown>: %x";
  }
  pcVar1 = (char *)var_1(0,pcVar1,5);
  snprintf(function_1::buff,0x20,pcVar1,var_2);
  return function_1::buff;
}


(translation_unit (ERROR (binary_expression left: (identifier) (ERROR (identifier)) right: (call_expression function: (identifier) arguments: (argument_list (ERROR (identifier)) (identifier))))) (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (switch_statement condition: (parenthesized_expression (identifier)) body: (compound_statement (case_statement value: (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) (string_literal (string_content)) (number_literal)))))) (return_statement (identifier))) (case_statement value: (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) (string_literal (string_content)) (number_literal)))))) (return_statement (identifier))) (case_statement value: (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) (string_literal (string_content)) (number_literal)))))) (return_statement (identifier))) (case_statement value: (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) (string_literal (string_content)) (number_literal)))))) (return_statement (identifier))) (case_statement value: (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) (string_literal (string_content)) (number_literal)))))) (return_statement (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (binary_expression left: (identifier) right: (number_literal)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (string_literal (string_content))))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier) (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (identifier) (identifier)))) (return_statement (pointer_expression argument: (identifier)))))

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

undefined * __regparm3 MASKED(int param_1)

{
  undefined *puVar1;
  char *pcVar2;
  
  switch(param_1) {
  case 0:
    puVar1 = (undefined *)dcgettext(0,"NONE (None)",5);
    return puVar1;
  case 1:
    puVar1 = (undefined *)dcgettext(0,"REL (Relocatable file)",5);
    return puVar1;
  case 2:
    puVar1 = (undefined *)dcgettext(0,"EXEC (Executable file)",5);
    return puVar1;
  case 3:
    puVar1 = (undefined *)dcgettext(0,"DYN (Shared object file)",5);
    return puVar1;
  case 4:
    puVar1 = (undefined *)dcgettext(0,"CORE (Core file)",5);
    return puVar1;
  }
  if (param_1 - 0xff00U < 0x100) {
    pcVar2 = "Processor Specific: (%x)";
  }
  else if (param_1 - 0xfe00U < 0x100) {
    pcVar2 = "OS Specific: (%x)";
  }
  else {
    pcVar2 = "<unknown>: %x";
  }
  pcVar2 = (char *)dcgettext(0,pcVar2,5);
  snprintf(&DAT_000b5be0,0x20,pcVar2,param_1);
  return &DAT_000b5be0;
}

