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

void file_write(void)

{
}



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

int __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)

{
  int __fd;
  int iVar1;
  
  if (param_1 == (char *)0x0) {
    FUN_0009c4e0("No current filename");
    return -2;
  }
  __fd = open64(param_1,0x41,0x1b6,param_2);
  iVar1 = -1;
  if (-1 < __fd) {
    iVar1 = FUN_0001ac14();
    ftruncate64(__fd,(longlong)iVar1);
    if ((param_3 - param_2) + 1 != iVar1) {
      iVar1 = 0;
    }
    close(__fd);
  }
  return iVar1;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
SUB ESP,0x1c
CALL 0x00017640
ADD EBX,0x34038
TEST EAX,EAX
JNZ 0x0009ca13
SUB ESP,0xc
LEA EAX,[EBX + 0xffffc59f]
PUSH EAX
CALL 0x0009c4e0
ADD ESP,0x10
MOV EDI,0xfffffffe
MOV EAX,EDI
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV EBP,ECX
MOV dword ptr [ESP + 0xc],EDX
PUSH EDX
PUSH 0x1b6
PUSH 0x41
PUSH EAX
CALL 0x00016170
MOV ESI,EAX
ADD ESP,0x10
MOV EDI,0xffffffff
TEST EAX,EAX
JS 0x0009ca66
MOV EDX,dword ptr [ESP + 0xc]
SUB EBP,EDX
INC EBP
MOV ECX,EBP
CALL 0x0001ac14
MOV EDI,EAX
PUSH EAX
MOV EAX,EDI
CDQ
PUSH EDX
PUSH EDI
PUSH ESI
CALL 0x00016f60
ADD ESP,0x10
CMP EBP,EDI
JZ 0x0009ca5a
XOR EDI,EDI
SUB ESP,0xc
PUSH ESI
CALL 0x000174d0
ADD ESP,0x10
MOV EAX,EDI
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nint __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)\n\n{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}\n\n" comment (function_definition "int __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)\n\n{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_0009c9dc(char *param_1,int param_2,int param_3)" identifier (parameter_list "(char *param_1,int param_2,int param_3)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" { (declaration "int __fd;" primitive_type identifier ;) (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" if (parenthesized_expression "(param_1 == (char *)0x0)" ( (binary_expression "param_1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" { (expression_statement "FUN_0009c4e0("No current filename");" (call_expression "FUN_0009c4e0("No current filename")" identifier (argument_list "("No current filename")" ( (string_literal ""No current filename"" " string_content ") ))) ;) (return_statement "return -2;" return number_literal ;) })) (expression_statement "__fd = open64(param_1,0x41,0x1b6,param_2);" (assignment_expression "__fd = open64(param_1,0x41,0x1b6,param_2)" identifier = (call_expression "open64(param_1,0x41,0x1b6,param_2)" identifier (argument_list "(param_1,0x41,0x1b6,param_2)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" identifier = number_literal) ;) (if_statement "if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" if (parenthesized_expression "(-1 < __fd)" ( (binary_expression "-1 < __fd" number_literal < identifier) )) (compound_statement "{\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" { (expression_statement "iVar1 = FUN_0001ac14();" (assignment_expression "iVar1 = FUN_0001ac14()" identifier = (call_expression "FUN_0001ac14()" identifier (argument_list "()" ( )))) ;) (expression_statement "ftruncate64(__fd,(longlong)iVar1);" (call_expression "ftruncate64(__fd,(longlong)iVar1)" identifier (argument_list "(__fd,(longlong)iVar1)" ( identifier , (cast_expression "(longlong)iVar1" ( (type_descriptor "longlong" type_identifier) ) identifier) ))) ;) (if_statement "if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }" if (parenthesized_expression "((param_3 - param_2) + 1 != iVar1)" ( (binary_expression "(param_3 - param_2) + 1 != iVar1" (binary_expression "(param_3 - param_2) + 1" (parenthesized_expression "(param_3 - param_2)" ( (binary_expression "param_3 - param_2" identifier - identifier) )) + number_literal) != identifier) )) (compound_statement "{\n      iVar1 = 0;\n    }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) })) (expression_statement "close(__fd);" (call_expression "close(__fd)" identifier (argument_list "(__fd)" ( identifier ))) ;) })) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid file_write(void)\n\n{\n}\n\n" comment (function_definition "void file_write(void)\n\n{\n}" primitive_type (function_declarator "file_write(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n}" { })))
(translation_unit "int __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)\n\n{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}\n\n" (function_definition "int __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)\n\n{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" primitive_type (ERROR "__regparm3" identifier) (function_declarator "FUN_0009c9dc(char *param_1,int param_2,int param_3)" identifier (parameter_list "(char *param_1,int param_2,int param_3)" ( (parameter_declaration "char *param_1" primitive_type (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "int param_2" primitive_type identifier) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" { (declaration "int __fd;" primitive_type identifier ;) (declaration "int iVar1;" primitive_type identifier ;) (if_statement "if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" if (parenthesized_expression "(param_1 == (char *)0x0)" ( (binary_expression "param_1 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" { (expression_statement "FUN_0009c4e0("No current filename");" (call_expression "FUN_0009c4e0("No current filename")" identifier (argument_list "("No current filename")" ( (string_literal ""No current filename"" " string_content ") ))) ;) (return_statement "return -2;" return number_literal ;) })) (expression_statement "__fd = open64(param_1,0x41,0x1b6,param_2);" (assignment_expression "__fd = open64(param_1,0x41,0x1b6,param_2)" identifier = (call_expression "open64(param_1,0x41,0x1b6,param_2)" identifier (argument_list "(param_1,0x41,0x1b6,param_2)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" identifier = number_literal) ;) (if_statement "if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" if (parenthesized_expression "(-1 < __fd)" ( (binary_expression "-1 < __fd" number_literal < identifier) )) (compound_statement "{\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" { (expression_statement "iVar1 = FUN_0001ac14();" (assignment_expression "iVar1 = FUN_0001ac14()" identifier = (call_expression "FUN_0001ac14()" identifier (argument_list "()" ( )))) ;) (expression_statement "ftruncate64(__fd,(longlong)iVar1);" (call_expression "ftruncate64(__fd,(longlong)iVar1)" identifier (argument_list "(__fd,(longlong)iVar1)" ( identifier , (cast_expression "(longlong)iVar1" ( (type_descriptor "longlong" type_identifier) ) identifier) ))) ;) (if_statement "if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }" if (parenthesized_expression "((param_3 - param_2) + 1 != iVar1)" ( (binary_expression "(param_3 - param_2) + 1 != iVar1" (binary_expression "(param_3 - param_2) + 1" (parenthesized_expression "(param_3 - param_2)" ( (binary_expression "param_3 - param_2" identifier - identifier) )) + number_literal) != identifier) )) (compound_statement "{\n      iVar1 = 0;\n    }" { (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" identifier = number_literal) ;) })) (expression_statement "close(__fd);" (call_expression "close(__fd)" identifier (argument_list "(__fd)" ( identifier ))) ;) })) (return_statement "return iVar1;" return identifier ;) })))
(translation_unit (function_definition TYPE (ERROR IDENT) (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") ))) ;) (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + LIT) != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (return_statement return IDENT ;) })))
(function_definition "int __regparm3 FUN_0009c9dc(char *param_1,int param_2,int param_3)\n\n{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" (primitive_type "int") (ERROR "__regparm3" (identifier "__regparm3")) (function_declarator "FUN_0009c9dc(char *param_1,int param_2,int param_3)" (identifier "FUN_0009c9dc") (parameter_list "(char *param_1,int param_2,int param_3)" (( "(") (parameter_declaration "char *param_1" (primitive_type "char") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "int param_2" (primitive_type "int") (identifier "param_2")) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) () ")"))) (compound_statement "{\n  int __fd;\n  int iVar1;\n  \n  if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }\n  __fd = open64(param_1,0x41,0x1b6,param_2);\n  iVar1 = -1;\n  if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }\n  return iVar1;\n}" ({ "{") (declaration "int __fd;" (primitive_type "int") (identifier "__fd") (; ";")) (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (if_statement "if (param_1 == (char *)0x0) {\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" (if "if") (parenthesized_expression "(param_1 == (char *)0x0)" (( "(") (binary_expression "param_1 == (char *)0x0" (identifier "param_1") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    FUN_0009c4e0("No current filename");\n    return -2;\n  }" ({ "{") (expression_statement "FUN_0009c4e0("No current filename");" (call_expression "FUN_0009c4e0("No current filename")" (identifier "FUN_0009c4e0") (argument_list "("No current filename")" (( "(") (string_literal ""No current filename"" (" """) (string_content "No current filename") (" """)) () ")"))) (; ";")) (return_statement "return -2;" (return "return") (number_literal "-2") (; ";")) (} "}"))) (expression_statement "__fd = open64(param_1,0x41,0x1b6,param_2);" (assignment_expression "__fd = open64(param_1,0x41,0x1b6,param_2)" (identifier "__fd") (= "=") (call_expression "open64(param_1,0x41,0x1b6,param_2)" (identifier "open64") (argument_list "(param_1,0x41,0x1b6,param_2)" (( "(") (identifier "param_1") (, ",") (number_literal "0x41") (, ",") (number_literal "0x1b6") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "iVar1 = -1;" (assignment_expression "iVar1 = -1" (identifier "iVar1") (= "=") (number_literal "-1")) (; ";")) (if_statement "if (-1 < __fd) {\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" (if "if") (parenthesized_expression "(-1 < __fd)" (( "(") (binary_expression "-1 < __fd" (number_literal "-1") (< "<") (identifier "__fd")) () ")")) (compound_statement "{\n    iVar1 = FUN_0001ac14();\n    ftruncate64(__fd,(longlong)iVar1);\n    if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }\n    close(__fd);\n  }" ({ "{") (expression_statement "iVar1 = FUN_0001ac14();" (assignment_expression "iVar1 = FUN_0001ac14()" (identifier "iVar1") (= "=") (call_expression "FUN_0001ac14()" (identifier "FUN_0001ac14") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "ftruncate64(__fd,(longlong)iVar1);" (call_expression "ftruncate64(__fd,(longlong)iVar1)" (identifier "ftruncate64") (argument_list "(__fd,(longlong)iVar1)" (( "(") (identifier "__fd") (, ",") (cast_expression "(longlong)iVar1" (( "(") (type_descriptor "longlong" (type_identifier "longlong")) () ")") (identifier "iVar1")) () ")"))) (; ";")) (if_statement "if ((param_3 - param_2) + 1 != iVar1) {\n      iVar1 = 0;\n    }" (if "if") (parenthesized_expression "((param_3 - param_2) + 1 != iVar1)" (( "(") (binary_expression "(param_3 - param_2) + 1 != iVar1" (binary_expression "(param_3 - param_2) + 1" (parenthesized_expression "(param_3 - param_2)" (( "(") (binary_expression "param_3 - param_2" (identifier "param_3") (- "-") (identifier "param_2")) () ")")) (+ "+") (number_literal "1")) (!= "!=") (identifier "iVar1")) () ")")) (compound_statement "{\n      iVar1 = 0;\n    }" ({ "{") (expression_statement "iVar1 = 0;" (assignment_expression "iVar1 = 0" (identifier "iVar1") (= "=") (number_literal "0")) (; ";")) (} "}"))) (expression_statement "close(__fd);" (call_expression "close(__fd)" (identifier "close") (argument_list "(__fd)" (( "(") (identifier "__fd") () ")"))) (; ";")) (} "}"))) (return_statement "return iVar1;" (return "return") (identifier "iVar1") (; ";")) (} "}")))

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

void function_1(void)

{
}


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

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

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

{
  int __fd;
  int iVar1;
  
  if (param_1 == (char *)0x0) {
    FUN_0009c4e0("No current filename");
    return -2;
  }
  __fd = open64(param_1,0x41,0x1b6,param_2);
  iVar1 = -1;
  if (-1 < __fd) {
    iVar1 = FUN_0001ac14();
    ftruncate64(__fd,(longlong)iVar1);
    if ((param_3 - param_2) + 1 != iVar1) {
      iVar1 = 0;
    }
    close(__fd);
  }
  return iVar1;
}

