
/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* std::ostream& std::TEMPNAMEPLACEHOLDERVALUE(std::ostream&, char const*) */

ostream * std::operator<<(ostream *param_1,char *param_2)

{
}



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

int * FUN_00255d50(int *param_1,char *param_2)

{
  size_t sVar1;
  int iVar2;
  undefined4 uVar3;
  
  uVar3 = 0x255d5c;
  if (param_2 != (char *)0x0) {
    sVar1 = strlen(param_2);
    FUN_00255910(param_1,param_2,sVar1,uVar3);
    return param_1;
  }
  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;
  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);
  return param_1;
}


PUSH EDI
PUSH ESI
PUSH EBX
MOV ESI,dword ptr [ESP + 0x14]
CALL 0x0003a210
ADD EBX,0x1be2a4
MOV EDI,dword ptr [ESP + 0x10]
TEST ESI,ESI
JZ 0x00255d90
SUB ESP,0xc
PUSH ESI
CALL 0x0002c330
ADD ESP,0xc
PUSH EAX
PUSH ESI
PUSH EDI
CALL 0x00255910
ADD ESP,0x10
MOV EAX,EDI
POP EBX
POP ESI
POP EDI
RET
MOV EAX,dword ptr [EDI]
SUB ESP,0x8
MOV EDX,dword ptr [EAX + -0xc]
ADD EDX,EDI
MOV EAX,dword ptr [EDX + 0x14]
OR EAX,0x1
PUSH EAX
PUSH EDX
CALL 0x00272070
ADD ESP,0x10
MOV EAX,EDI
POP EBX
POP ESI
POP EDI
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nint * FUN_00255d50(int *param_1,char *param_2)\n\n{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}\n\n" comment (function_definition "int * FUN_00255d50(int *param_1,char *param_2)\n\n{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" primitive_type (pointer_declarator "* FUN_00255d50(int *param_1,char *param_2)" * (function_declarator "FUN_00255d50(int *param_1,char *param_2)" identifier (parameter_list "(int *param_1,char *param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) )))) (compound_statement "{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (expression_statement "uVar3 = 0x255d5c;" (assignment_expression "uVar3 = 0x255d5c" identifier = number_literal) ;) (if_statement "if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" if (parenthesized_expression "(param_2 != (char *)0x0)" ( (binary_expression "param_2 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" { (expression_statement "sVar1 = strlen(param_2);" (assignment_expression "sVar1 = strlen(param_2)" identifier = (call_expression "strlen(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "FUN_00255910(param_1,param_2,sVar1,uVar3);" (call_expression "FUN_00255910(param_1,param_2,sVar1,uVar3)" identifier (argument_list "(param_1,param_2,sVar1,uVar3)" ( identifier , identifier , identifier , identifier ))) ;) (return_statement "return param_1;" return identifier ;) })) (expression_statement "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;" (assignment_expression "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1" identifier = (binary_expression "*(int *)(*param_1 + -0xc) + (int)param_1" (pointer_expression "*(int *)(*param_1 + -0xc)" * (cast_expression "(int *)(*param_1 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_1 + -0xc)" ( (binary_expression "*param_1 + -0xc" (pointer_expression "*param_1" * identifier) + number_literal) )))) + (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);" (call_expression "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1)" identifier (argument_list "(iVar2,*(uint *)(iVar2 + 0x14) | 1)" ( identifier , (binary_expression "*(uint *)(iVar2 + 0x14) | 1" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) | number_literal) ))) ;) (return_statement "return param_1;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention -- yet parameter storage is locked */\n/* std::ostream& std::TEMPNAMEPLACEHOLDERVALUE(std::ostream&, char const*) */\n\nostream * std::operator<<(ostream *param_1,char *param_2)\n\n{\n}\n\n" comment comment comment (ERROR "ostream * std::operator<<(ostream *param_1,char *param_2)" (binary_expression "ostream * std::operator<<(ostream *param_1,char *param_2)" (binary_expression "ostream * std" identifier * identifier) (ERROR "::operator" : : identifier) << (parenthesized_expression "(ostream *param_1,char *param_2)" ( (comma_expression "ostream *param_1,char *param_2" (binary_expression "ostream *param_1" identifier * identifier) , (binary_expression "char *param_2" identifier * identifier)) )))) (compound_statement "{\n}" { }))
(translation_unit "int * FUN_00255d50(int *param_1,char *param_2)\n\n{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}\n\n" (function_definition "int * FUN_00255d50(int *param_1,char *param_2)\n\n{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" primitive_type (pointer_declarator "* FUN_00255d50(int *param_1,char *param_2)" * (function_declarator "FUN_00255d50(int *param_1,char *param_2)" identifier (parameter_list "(int *param_1,char *param_2)" ( (parameter_declaration "int *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "char *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) )))) (compound_statement "{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 uVar3;" type_identifier identifier ;) (expression_statement "uVar3 = 0x255d5c;" (assignment_expression "uVar3 = 0x255d5c" identifier = number_literal) ;) (if_statement "if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" if (parenthesized_expression "(param_2 != (char *)0x0)" ( (binary_expression "param_2 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" { (expression_statement "sVar1 = strlen(param_2);" (assignment_expression "sVar1 = strlen(param_2)" identifier = (call_expression "strlen(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "FUN_00255910(param_1,param_2,sVar1,uVar3);" (call_expression "FUN_00255910(param_1,param_2,sVar1,uVar3)" identifier (argument_list "(param_1,param_2,sVar1,uVar3)" ( identifier , identifier , identifier , identifier ))) ;) (return_statement "return param_1;" return identifier ;) })) (expression_statement "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;" (assignment_expression "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1" identifier = (binary_expression "*(int *)(*param_1 + -0xc) + (int)param_1" (pointer_expression "*(int *)(*param_1 + -0xc)" * (cast_expression "(int *)(*param_1 + -0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*param_1 + -0xc)" ( (binary_expression "*param_1 + -0xc" (pointer_expression "*param_1" * identifier) + number_literal) )))) + (cast_expression "(int)param_1" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);" (call_expression "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1)" identifier (argument_list "(iVar2,*(uint *)(iVar2 + 0x14) | 1)" ( identifier , (binary_expression "*(uint *)(iVar2 + 0x14) | 1" (pointer_expression "*(uint *)(iVar2 + 0x14)" * (cast_expression "(uint *)(iVar2 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) )))) | number_literal) ))) ;) (return_statement "return param_1;" return identifier ;) })))
(translation_unit (function_definition TYPE (pointer_declarator * (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) )))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) + LIT) )))) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) | LIT) ))) ;) (return_statement return IDENT ;) })))
(function_definition "int * FUN_00255d50(int *param_1,char *param_2)\n\n{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" (primitive_type "int") (pointer_declarator "* FUN_00255d50(int *param_1,char *param_2)" (* "*") (function_declarator "FUN_00255d50(int *param_1,char *param_2)" (identifier "FUN_00255d50") (parameter_list "(int *param_1,char *param_2)" (( "(") (parameter_declaration "int *param_1" (primitive_type "int") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "char *param_2" (primitive_type "char") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")")))) (compound_statement "{\n  size_t sVar1;\n  int iVar2;\n  undefined4 uVar3;\n  \n  uVar3 = 0x255d5c;\n  if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }\n  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;\n  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);\n  return param_1;\n}" ({ "{") (declaration "size_t sVar1;" (primitive_type "size_t") (identifier "sVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 uVar3;" (type_identifier "undefined4") (identifier "uVar3") (; ";")) (expression_statement "uVar3 = 0x255d5c;" (assignment_expression "uVar3 = 0x255d5c" (identifier "uVar3") (= "=") (number_literal "0x255d5c")) (; ";")) (if_statement "if (param_2 != (char *)0x0) {\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" (if "if") (parenthesized_expression "(param_2 != (char *)0x0)" (( "(") (binary_expression "param_2 != (char *)0x0" (identifier "param_2") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    sVar1 = strlen(param_2);\n    FUN_00255910(param_1,param_2,sVar1,uVar3);\n    return param_1;\n  }" ({ "{") (expression_statement "sVar1 = strlen(param_2);" (assignment_expression "sVar1 = strlen(param_2)" (identifier "sVar1") (= "=") (call_expression "strlen(param_2)" (identifier "strlen") (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "FUN_00255910(param_1,param_2,sVar1,uVar3);" (call_expression "FUN_00255910(param_1,param_2,sVar1,uVar3)" (identifier "FUN_00255910") (argument_list "(param_1,param_2,sVar1,uVar3)" (( "(") (identifier "param_1") (, ",") (identifier "param_2") (, ",") (identifier "sVar1") (, ",") (identifier "uVar3") () ")"))) (; ";")) (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}"))) (expression_statement "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;" (assignment_expression "iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1" (identifier "iVar2") (= "=") (binary_expression "*(int *)(*param_1 + -0xc) + (int)param_1" (pointer_expression "*(int *)(*param_1 + -0xc)" (* "*") (cast_expression "(int *)(*param_1 + -0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*param_1 + -0xc)" (( "(") (binary_expression "*param_1 + -0xc" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (+ "+") (number_literal "-0xc")) () ")")))) (+ "+") (cast_expression "(int)param_1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_1")))) (; ";")) (expression_statement "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);" (call_expression "FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1)" (identifier "FUN_00272070") (argument_list "(iVar2,*(uint *)(iVar2 + 0x14) | 1)" (( "(") (identifier "iVar2") (, ",") (binary_expression "*(uint *)(iVar2 + 0x14) | 1" (pointer_expression "*(uint *)(iVar2 + 0x14)" (* "*") (cast_expression "(uint *)(iVar2 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")")))) (| "|") (number_literal "1")) () ")"))) (; ";")) (return_statement "return param_1;" (return "return") (identifier "param_1") (; ";")) (} "}")))

/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */
/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* std::ostream& std::TEMPNAMEPLACEHOLDERVALUE(std::ostream&, char const*) */

ostream * std::operator<<(ostream *param_1,char *param_2)

{
}


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

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

int * MASKED(int *param_1,char *param_2)

{
  size_t sVar1;
  int iVar2;
  undefined4 uVar3;
  
  uVar3 = 0x255d5c;
  if (param_2 != (char *)0x0) {
    sVar1 = strlen(param_2);
    FUN_00255910(param_1,param_2,sVar1,uVar3);
    return param_1;
  }
  iVar2 = *(int *)(*param_1 + -0xc) + (int)param_1;
  FUN_00272070(iVar2,*(uint *)(iVar2 + 0x14) | 1);
  return param_1;
}

