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

void __regparm3 execute_env_file(char *env_file)

{
  char *fname;
  
  fname = expand_string_unsplit_to_string(env_file,1);
  if (fname != (char *)0x0) {
    if (*fname != '\0') {
      maybe_execute_file(fname,1);
    }
    free(fname);
  }
  return;
}



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

void __regparm3 FUN_00032640(undefined4 param_1)

{
  char *__ptr;
  undefined4 uVar1;
  
  uVar1 = 0x32647;
  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);
  if (__ptr != (char *)0x0) {
    if (*__ptr != '\0') {
      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);
    }
    free(__ptr);
  }
  return;
}


PUSH ESI
PUSH EBX
CALL 0x00031ed0
ADD EBX,0x1179b9
SUB ESP,0xc
PUSH 0x1
PUSH EAX
CALL 0x00076400
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00032672
CMP byte ptr [EAX],0x0
MOV ESI,EAX
JNZ 0x00032678
SUB ESP,0xc
PUSH ESI
CALL 0x0002f200
ADD ESP,0x10
ADD ESP,0x4
POP EBX
POP ESI
RET
PUSH EAX
PUSH EAX
PUSH 0x1
PUSH ESI
CALL 0x0009ff60
ADD ESP,0x10
JMP 0x00032666
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 FUN_00032640(undefined4 param_1)\n\n{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}\n\n" comment (function_definition "void __regparm3 FUN_00032640(undefined4 param_1)\n\n{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00032640(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" { (declaration "char *__ptr;" primitive_type (pointer_declarator "*__ptr" * identifier) ;) (declaration "undefined4 uVar1;" type_identifier identifier ;) (expression_statement "uVar1 = 0x32647;" (assignment_expression "uVar1 = 0x32647" identifier = number_literal) ;) (expression_statement "__ptr = (char *)expand_string_unsplit_to_string(param_1,1);" (assignment_expression "__ptr = (char *)expand_string_unsplit_to_string(param_1,1)" identifier = (cast_expression "(char *)expand_string_unsplit_to_string(param_1,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "expand_string_unsplit_to_string(param_1,1)" identifier (argument_list "(param_1,1)" ( identifier , number_literal ))))) ;) (if_statement "if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" if (parenthesized_expression "(__ptr != (char *)0x0)" ( (binary_expression "__ptr != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" { (if_statement "if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" if (parenthesized_expression "(*__ptr != '\0')" ( (binary_expression "*__ptr != '\0'" (pointer_expression "*__ptr" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" { (expression_statement "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);" (call_expression "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1)" identifier (argument_list "(__ptr,1,__ptr,__ptr,uVar1)" ( identifier , number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid __regparm3 execute_env_file(char *env_file)\n\n{\n  char *fname;\n  \n  fname = expand_string_unsplit_to_string(env_file,1);\n  if (fname != (char *)0x0) {\n    if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }\n    free(fname);\n  }\n  return;\n}\n\n" comment (function_definition "void __regparm3 execute_env_file(char *env_file)\n\n{\n  char *fname;\n  \n  fname = expand_string_unsplit_to_string(env_file,1);\n  if (fname != (char *)0x0) {\n    if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }\n    free(fname);\n  }\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "execute_env_file(char *env_file)" identifier (parameter_list "(char *env_file)" ( (parameter_declaration "char *env_file" primitive_type (pointer_declarator "*env_file" * identifier)) ))) (compound_statement "{\n  char *fname;\n  \n  fname = expand_string_unsplit_to_string(env_file,1);\n  if (fname != (char *)0x0) {\n    if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }\n    free(fname);\n  }\n  return;\n}" { (declaration "char *fname;" primitive_type (pointer_declarator "*fname" * identifier) ;) (expression_statement "fname = expand_string_unsplit_to_string(env_file,1);" (assignment_expression "fname = expand_string_unsplit_to_string(env_file,1)" identifier = (call_expression "expand_string_unsplit_to_string(env_file,1)" identifier (argument_list "(env_file,1)" ( identifier , number_literal )))) ;) (if_statement "if (fname != (char *)0x0) {\n    if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }\n    free(fname);\n  }" if (parenthesized_expression "(fname != (char *)0x0)" ( (binary_expression "fname != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }\n    free(fname);\n  }" { (if_statement "if (*fname != '\0') {\n      maybe_execute_file(fname,1);\n    }" if (parenthesized_expression "(*fname != '\0')" ( (binary_expression "*fname != '\0'" (pointer_expression "*fname" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      maybe_execute_file(fname,1);\n    }" { (expression_statement "maybe_execute_file(fname,1);" (call_expression "maybe_execute_file(fname,1)" identifier (argument_list "(fname,1)" ( identifier , number_literal ))) ;) })) (expression_statement "free(fname);" (call_expression "free(fname)" identifier (argument_list "(fname)" ( identifier ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void __regparm3 FUN_00032640(undefined4 param_1)\n\n{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}\n\n" (function_definition "void __regparm3 FUN_00032640(undefined4 param_1)\n\n{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_00032640(undefined4 param_1)" identifier (parameter_list "(undefined4 param_1)" ( (parameter_declaration "undefined4 param_1" type_identifier identifier) ))) (compound_statement "{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" { (declaration "char *__ptr;" primitive_type (pointer_declarator "*__ptr" * identifier) ;) (declaration "undefined4 uVar1;" type_identifier identifier ;) (expression_statement "uVar1 = 0x32647;" (assignment_expression "uVar1 = 0x32647" identifier = number_literal) ;) (expression_statement "__ptr = (char *)expand_string_unsplit_to_string(param_1,1);" (assignment_expression "__ptr = (char *)expand_string_unsplit_to_string(param_1,1)" identifier = (cast_expression "(char *)expand_string_unsplit_to_string(param_1,1)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "expand_string_unsplit_to_string(param_1,1)" identifier (argument_list "(param_1,1)" ( identifier , number_literal ))))) ;) (if_statement "if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" if (parenthesized_expression "(__ptr != (char *)0x0)" ( (binary_expression "__ptr != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" { (if_statement "if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" if (parenthesized_expression "(*__ptr != '\0')" ( (binary_expression "*__ptr != '\0'" (pointer_expression "*__ptr" * identifier) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" { (expression_statement "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);" (call_expression "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1)" identifier (argument_list "(__ptr,1,__ptr,__ptr,uVar1)" ( identifier , number_literal , identifier , identifier , identifier ))) ;) })) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (return_statement return ;) })))
(function_definition "void __regparm3 FUN_00032640(undefined4 param_1)\n\n{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" (primitive_type "void") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_00032640(undefined4 param_1)" (identifier "FUN_00032640") (parameter_list "(undefined4 param_1)" (( "(") (parameter_declaration "undefined4 param_1" (type_identifier "undefined4") (identifier "param_1")) () ")"))) (compound_statement "{\n  char *__ptr;\n  undefined4 uVar1;\n  \n  uVar1 = 0x32647;\n  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);\n  if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }\n  return;\n}" ({ "{") (declaration "char *__ptr;" (primitive_type "char") (pointer_declarator "*__ptr" (* "*") (identifier "__ptr")) (; ";")) (declaration "undefined4 uVar1;" (type_identifier "undefined4") (identifier "uVar1") (; ";")) (expression_statement "uVar1 = 0x32647;" (assignment_expression "uVar1 = 0x32647" (identifier "uVar1") (= "=") (number_literal "0x32647")) (; ";")) (expression_statement "__ptr = (char *)expand_string_unsplit_to_string(param_1,1);" (assignment_expression "__ptr = (char *)expand_string_unsplit_to_string(param_1,1)" (identifier "__ptr") (= "=") (cast_expression "(char *)expand_string_unsplit_to_string(param_1,1)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "expand_string_unsplit_to_string(param_1,1)" (identifier "expand_string_unsplit_to_string") (argument_list "(param_1,1)" (( "(") (identifier "param_1") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (__ptr != (char *)0x0) {\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" (if "if") (parenthesized_expression "(__ptr != (char *)0x0)" (( "(") (binary_expression "__ptr != (char *)0x0" (identifier "__ptr") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }\n    free(__ptr);\n  }" ({ "{") (if_statement "if (*__ptr != '\0') {\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" (if "if") (parenthesized_expression "(*__ptr != '\0')" (( "(") (binary_expression "*__ptr != '\0'" (pointer_expression "*__ptr" (* "*") (identifier "__ptr")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);\n    }" ({ "{") (expression_statement "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);" (call_expression "maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1)" (identifier "maybe_execute_file") (argument_list "(__ptr,1,__ptr,__ptr,uVar1)" (( "(") (identifier "__ptr") (, ",") (number_literal "1") (, ",") (identifier "__ptr") (, ",") (identifier "__ptr") (, ",") (identifier "uVar1") () ")"))) (; ";")) (} "}"))) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" (identifier "free") (argument_list "(__ptr)" (( "(") (identifier "__ptr") () ")"))) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

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

void __regparm3 function_1(char *env_file)

{
  char *var_2;
  
  var_2 = var_1(env_file,1);
  if (var_2 != (char *)0x0) {
    if (*var_2 != '\0') {
      var_3(var_2,1);
    }
    var_4(var_2);
  }
  return;
}


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

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

void __regparm3 MASKED(undefined4 param_1)

{
  char *__ptr;
  undefined4 uVar1;
  
  uVar1 = 0x32647;
  __ptr = (char *)expand_string_unsplit_to_string(param_1,1);
  if (__ptr != (char *)0x0) {
    if (*__ptr != '\0') {
      maybe_execute_file(__ptr,1,__ptr,__ptr,uVar1);
    }
    free(__ptr);
  }
  return;
}

