
int zipfileReadData(FILE *pFile,u8 *aRead,int nRead,i64 iOff,char **pzErrmsg)

{
  size_t sVar1;
  char *pcVar2;
  bool bVar3;
  
  fseek((FILE *)pFile,iOff,0);
  sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile);
  bVar3 = nRead != (int)sVar1;
  if (bVar3) {
    pcVar2 = sqlite3_mprintf("error in fread()");
    *pzErrmsg = pcVar2;
  }
  return (uint)bVar3;
}



bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)

{
  size_t sVar1;
  undefined8 uVar2;
  bool bVar3;
  
  fseek(param_1,param_4,0);
  sVar1 = fread(param_2,1,(long)param_3,param_1);
  bVar3 = param_3 != (int)sVar1;
  if (bVar3) {
    uVar2 = FUN_001776d2("error in fread()");
    *param_5 = uVar2;
  }
  return bVar3;
}


PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x8
MOV RBP,RDI
MOV R12,RSI
MOV EBX,EDX
MOV R13,R8
MOV EDX,0x0
MOV RSI,RCX
CALL 0x0010e110
MOVSXD RDX,EBX
MOV RCX,RBP
MOV ESI,0x1
MOV RDI,R12
CALL 0x0010e460
MOV EDX,0x0
CMP EBX,EAX
JNZ 0x00111878
MOV EAX,EDX
ADD RSP,0x8
POP RBX
POP RBP
POP R12
POP R13
RET
LEA RDI,[0x1eb060]
MOV EAX,0x0
CALL 0x001776d2
MOV qword ptr [R13],RAX
MOV EDX,0x1
JMP 0x0011186b
(translation_unit "bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)\n\n{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}\n\n" (function_definition "bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)\n\n{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" primitive_type (function_declarator "FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" identifier (parameter_list "(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "void *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "long param_4" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "undefined8 uVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (expression_statement "fseek(param_1,param_4,0);" (call_expression "fseek(param_1,param_4,0)" identifier (argument_list "(param_1,param_4,0)" ( identifier , identifier , number_literal ))) ;) (expression_statement "sVar1 = fread(param_2,1,(long)param_3,param_1);" (assignment_expression "sVar1 = fread(param_2,1,(long)param_3,param_1)" identifier = (call_expression "fread(param_2,1,(long)param_3,param_1)" identifier (argument_list "(param_2,1,(long)param_3,param_1)" ( identifier , number_literal , (cast_expression "(long)param_3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , identifier )))) ;) (expression_statement "bVar3 = param_3 != (int)sVar1;" (assignment_expression "bVar3 = param_3 != (int)sVar1" identifier = (binary_expression "param_3 != (int)sVar1" identifier != (cast_expression "(int)sVar1" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" { (expression_statement "uVar2 = FUN_001776d2("error in fread()");" (assignment_expression "uVar2 = FUN_001776d2("error in fread()")" identifier = (call_expression "FUN_001776d2("error in fread()")" identifier (argument_list "("error in fread()")" ( (string_literal ""error in fread()"" " string_content ") )))) ;) (expression_statement "*param_5 = uVar2;" (assignment_expression "*param_5 = uVar2" (pointer_expression "*param_5" * identifier) = identifier) ;) })) (return_statement "return bVar3;" return identifier ;) })))
(translation_unit "int zipfileReadData(FILE *pFile,u8 *aRead,int nRead,i64 iOff,char **pzErrmsg)\n\n{\n  size_t sVar1;\n  char *pcVar2;\n  bool bVar3;\n  \n  fseek((FILE *)pFile,iOff,0);\n  sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile);\n  bVar3 = nRead != (int)sVar1;\n  if (bVar3) {\n    pcVar2 = sqlite3_mprintf("error in fread()");\n    *pzErrmsg = pcVar2;\n  }\n  return (uint)bVar3;\n}\n\n" (function_definition "int zipfileReadData(FILE *pFile,u8 *aRead,int nRead,i64 iOff,char **pzErrmsg)\n\n{\n  size_t sVar1;\n  char *pcVar2;\n  bool bVar3;\n  \n  fseek((FILE *)pFile,iOff,0);\n  sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile);\n  bVar3 = nRead != (int)sVar1;\n  if (bVar3) {\n    pcVar2 = sqlite3_mprintf("error in fread()");\n    *pzErrmsg = pcVar2;\n  }\n  return (uint)bVar3;\n}" primitive_type (function_declarator "zipfileReadData(FILE *pFile,u8 *aRead,int nRead,i64 iOff,char **pzErrmsg)" identifier (parameter_list "(FILE *pFile,u8 *aRead,int nRead,i64 iOff,char **pzErrmsg)" ( (parameter_declaration "FILE *pFile" type_identifier (pointer_declarator "*pFile" * identifier)) , (parameter_declaration "u8 *aRead" type_identifier (pointer_declarator "*aRead" * identifier)) , (parameter_declaration "int nRead" primitive_type identifier) , (parameter_declaration "i64 iOff" type_identifier identifier) , (parameter_declaration "char **pzErrmsg" primitive_type (pointer_declarator "**pzErrmsg" * (pointer_declarator "*pzErrmsg" * identifier))) ))) (compound_statement "{\n  size_t sVar1;\n  char *pcVar2;\n  bool bVar3;\n  \n  fseek((FILE *)pFile,iOff,0);\n  sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile);\n  bVar3 = nRead != (int)sVar1;\n  if (bVar3) {\n    pcVar2 = sqlite3_mprintf("error in fread()");\n    *pzErrmsg = pcVar2;\n  }\n  return (uint)bVar3;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "char *pcVar2;" primitive_type (pointer_declarator "*pcVar2" * identifier) ;) (declaration "bool bVar3;" primitive_type identifier ;) (expression_statement "fseek((FILE *)pFile,iOff,0);" (call_expression "fseek((FILE *)pFile,iOff,0)" identifier (argument_list "((FILE *)pFile,iOff,0)" ( (cast_expression "(FILE *)pFile" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier , number_literal ))) ;) (expression_statement "sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile);" (assignment_expression "sVar1 = fread(aRead,1,(long)nRead,(FILE *)pFile)" identifier = (call_expression "fread(aRead,1,(long)nRead,(FILE *)pFile)" identifier (argument_list "(aRead,1,(long)nRead,(FILE *)pFile)" ( identifier , number_literal , (cast_expression "(long)nRead" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , (cast_expression "(FILE *)pFile" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) )))) ;) (expression_statement "bVar3 = nRead != (int)sVar1;" (assignment_expression "bVar3 = nRead != (int)sVar1" identifier = (binary_expression "nRead != (int)sVar1" identifier != (cast_expression "(int)sVar1" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (bVar3) {\n    pcVar2 = sqlite3_mprintf("error in fread()");\n    *pzErrmsg = pcVar2;\n  }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n    pcVar2 = sqlite3_mprintf("error in fread()");\n    *pzErrmsg = pcVar2;\n  }" { (expression_statement "pcVar2 = sqlite3_mprintf("error in fread()");" (assignment_expression "pcVar2 = sqlite3_mprintf("error in fread()")" identifier = (call_expression "sqlite3_mprintf("error in fread()")" identifier (argument_list "("error in fread()")" ( (string_literal ""error in fread()"" " string_content ") )))) ;) (expression_statement "*pzErrmsg = pcVar2;" (assignment_expression "*pzErrmsg = pcVar2" (pointer_expression "*pzErrmsg" * identifier) = identifier) ;) })) (return_statement "return (uint)bVar3;" return (cast_expression "(uint)bVar3" ( (type_descriptor "uint" type_identifier) ) identifier) ;) })))
(translation_unit "bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)\n\n{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}\n\n" (function_definition "bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)\n\n{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" primitive_type (function_declarator "FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" identifier (parameter_list "(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "void *param_2" primitive_type (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "int param_3" primitive_type identifier) , (parameter_declaration "long param_4" (sized_type_specifier "long" long) identifier) , (parameter_declaration "undefined8 *param_5" type_identifier (pointer_declarator "*param_5" * identifier)) ))) (compound_statement "{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" { (declaration "size_t sVar1;" primitive_type identifier ;) (declaration "undefined8 uVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (expression_statement "fseek(param_1,param_4,0);" (call_expression "fseek(param_1,param_4,0)" identifier (argument_list "(param_1,param_4,0)" ( identifier , identifier , number_literal ))) ;) (expression_statement "sVar1 = fread(param_2,1,(long)param_3,param_1);" (assignment_expression "sVar1 = fread(param_2,1,(long)param_3,param_1)" identifier = (call_expression "fread(param_2,1,(long)param_3,param_1)" identifier (argument_list "(param_2,1,(long)param_3,param_1)" ( identifier , number_literal , (cast_expression "(long)param_3" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) , identifier )))) ;) (expression_statement "bVar3 = param_3 != (int)sVar1;" (assignment_expression "bVar3 = param_3 != (int)sVar1" identifier = (binary_expression "param_3 != (int)sVar1" identifier != (cast_expression "(int)sVar1" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (if_statement "if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" if (parenthesized_expression "(bVar3)" ( identifier )) (compound_statement "{\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" { (expression_statement "uVar2 = FUN_001776d2("error in fread()");" (assignment_expression "uVar2 = FUN_001776d2("error in fread()")" identifier = (call_expression "FUN_001776d2("error in fread()")" identifier (argument_list "("error in fread()")" ( (string_literal ""error in fread()"" " string_content ") )))) ;) (expression_statement "*param_5 = uVar2;" (assignment_expression "*param_5 = uVar2" (pointer_expression "*param_5" * identifier) = identifier) ;) })) (return_statement "return bVar3;" return identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) , (parameter_declaration (sized_type_specifier long) IDENT) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (string_literal " string_content ") )))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) })) (return_statement return IDENT ;) })))
(function_definition "bool FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)\n\n{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" (primitive_type "bool") (function_declarator "FUN_0011182d(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" (identifier "FUN_0011182d") (parameter_list "(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)" (( "(") (parameter_declaration "FILE *param_1" (type_identifier "FILE") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "void *param_2" (primitive_type "void") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) (, ",") (parameter_declaration "long param_4" (sized_type_specifier "long" (long "long")) (identifier "param_4")) (, ",") (parameter_declaration "undefined8 *param_5" (type_identifier "undefined8") (pointer_declarator "*param_5" (* "*") (identifier "param_5"))) () ")"))) (compound_statement "{\n  size_t sVar1;\n  undefined8 uVar2;\n  bool bVar3;\n  \n  fseek(param_1,param_4,0);\n  sVar1 = fread(param_2,1,(long)param_3,param_1);\n  bVar3 = param_3 != (int)sVar1;\n  if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }\n  return bVar3;\n}" ({ "{") (declaration "size_t sVar1;" (primitive_type "size_t") (identifier "sVar1") (; ";")) (declaration "undefined8 uVar2;" (type_identifier "undefined8") (identifier "uVar2") (; ";")) (declaration "bool bVar3;" (primitive_type "bool") (identifier "bVar3") (; ";")) (expression_statement "fseek(param_1,param_4,0);" (call_expression "fseek(param_1,param_4,0)" (identifier "fseek") (argument_list "(param_1,param_4,0)" (( "(") (identifier "param_1") (, ",") (identifier "param_4") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "sVar1 = fread(param_2,1,(long)param_3,param_1);" (assignment_expression "sVar1 = fread(param_2,1,(long)param_3,param_1)" (identifier "sVar1") (= "=") (call_expression "fread(param_2,1,(long)param_3,param_1)" (identifier "fread") (argument_list "(param_2,1,(long)param_3,param_1)" (( "(") (identifier "param_2") (, ",") (number_literal "1") (, ",") (cast_expression "(long)param_3" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "param_3")) (, ",") (identifier "param_1") () ")")))) (; ";")) (expression_statement "bVar3 = param_3 != (int)sVar1;" (assignment_expression "bVar3 = param_3 != (int)sVar1" (identifier "bVar3") (= "=") (binary_expression "param_3 != (int)sVar1" (identifier "param_3") (!= "!=") (cast_expression "(int)sVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar1")))) (; ";")) (if_statement "if (bVar3) {\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" (if "if") (parenthesized_expression "(bVar3)" (( "(") (identifier "bVar3") () ")")) (compound_statement "{\n    uVar2 = FUN_001776d2("error in fread()");\n    *param_5 = uVar2;\n  }" ({ "{") (expression_statement "uVar2 = FUN_001776d2("error in fread()");" (assignment_expression "uVar2 = FUN_001776d2("error in fread()")" (identifier "uVar2") (= "=") (call_expression "FUN_001776d2("error in fread()")" (identifier "FUN_001776d2") (argument_list "("error in fread()")" (( "(") (string_literal ""error in fread()"" (" """) (string_content "error in fread()") (" """)) () ")")))) (; ";")) (expression_statement "*param_5 = uVar2;" (assignment_expression "*param_5 = uVar2" (pointer_expression "*param_5" (* "*") (identifier "param_5")) (= "=") (identifier "uVar2")) (; ";")) (} "}"))) (return_statement "return bVar3;" (return "return") (identifier "bVar3") (; ";")) (} "}")))

int function_1(type_1 *pFile,type_2 *aRead,int var_3,type_3 iOff,char **pzErrmsg)

{
  size_t sVar1;
  char *pcVar2;
  bool bVar3;
  
  var_1((type_1 *)pFile,iOff,0);
  sVar1 = var_2(aRead,1,(long)var_3,(type_1 *)pFile);
  bVar3 = var_3 != (int)sVar1;
  if (bVar3) {
    pcVar2 = var_4("error in fread()");
    *pzErrmsg = pcVar2;
  }
  return (type_4)bVar3;
}


(translation_unit (function_definition type: (primitive_type) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (sized_type_specifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal) (cast_expression type: (type_descriptor type: (sized_type_specifier)) value: (identifier)) (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (if_statement condition: (parenthesized_expression (identifier)) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (string_literal (string_content)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))))) (return_statement (identifier)))))

bool MASKED(FILE *param_1,void *param_2,int param_3,long param_4,undefined8 *param_5)

{
  size_t sVar1;
  undefined8 uVar2;
  bool bVar3;
  
  fseek(param_1,param_4,0);
  sVar1 = fread(param_2,1,(long)param_3,param_1);
  bVar3 = param_3 != (int)sVar1;
  if (bVar3) {
    uVar2 = FUN_001776d2("error in fread()");
    *param_5 = uVar2;
  }
  return bVar3;
}

