
int sqlite3WalDefaultHook(void *pClientData,sqlite3 *db,char *zDb,int nFrame)

{
  if (nFrame < (int)pClientData) {
    return 0;
  }
  sqlite3BeginBenignMalloc();
  sqlite3_wal_checkpoint(db,zDb);
  sqlite3EndBenignMalloc();
  return 0;
}



undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)

{
  if (param_4 < param_1) {
    return 0;
  }
  FUN_0010cba2();
  sqlite3_wal_checkpoint(param_2,param_3);
  FUN_0010cbbb();
  return 0;
}


CMP ECX,EDI
JGE 0x00153d66
MOV EAX,0x0
RET
PUSH RBP
PUSH RBX
SUB RSP,0x8
MOV RBP,RDX
MOV RBX,RSI
CALL 0x0010cba2
MOV RSI,RBP
MOV RDI,RBX
CALL 0x0010c660
CALL 0x0010cbbb
MOV EAX,0x0
ADD RSP,0x8
POP RBX
POP RBP
RET
(translation_unit "undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)\n\n{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}\n\n" (function_definition "undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)\n\n{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" type_identifier (function_declarator "FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" identifier (parameter_list "(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) ))) (compound_statement "{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" { (if_statement "if (param_4 < param_1) {\n    return 0;\n  }" if (parenthesized_expression "(param_4 < param_1)" ( (binary_expression "param_4 < param_1" identifier < identifier) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "FUN_0010cba2();" (call_expression "FUN_0010cba2()" identifier (argument_list "()" ( ))) ;) (expression_statement "sqlite3_wal_checkpoint(param_2,param_3);" (call_expression "sqlite3_wal_checkpoint(param_2,param_3)" identifier (argument_list "(param_2,param_3)" ( identifier , identifier ))) ;) (expression_statement "FUN_0010cbbb();" (call_expression "FUN_0010cbbb()" identifier (argument_list "()" ( ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "int sqlite3WalDefaultHook(void *pClientData,sqlite3 *db,char *zDb,int nFrame)\n\n{\n  if (nFrame < (int)pClientData) {\n    return 0;\n  }\n  sqlite3BeginBenignMalloc();\n  sqlite3_wal_checkpoint(db,zDb);\n  sqlite3EndBenignMalloc();\n  return 0;\n}\n\n" (function_definition "int sqlite3WalDefaultHook(void *pClientData,sqlite3 *db,char *zDb,int nFrame)\n\n{\n  if (nFrame < (int)pClientData) {\n    return 0;\n  }\n  sqlite3BeginBenignMalloc();\n  sqlite3_wal_checkpoint(db,zDb);\n  sqlite3EndBenignMalloc();\n  return 0;\n}" primitive_type (function_declarator "sqlite3WalDefaultHook(void *pClientData,sqlite3 *db,char *zDb,int nFrame)" identifier (parameter_list "(void *pClientData,sqlite3 *db,char *zDb,int nFrame)" ( (parameter_declaration "void *pClientData" primitive_type (pointer_declarator "*pClientData" * identifier)) , (parameter_declaration "sqlite3 *db" type_identifier (pointer_declarator "*db" * identifier)) , (parameter_declaration "char *zDb" primitive_type (pointer_declarator "*zDb" * identifier)) , (parameter_declaration "int nFrame" primitive_type identifier) ))) (compound_statement "{\n  if (nFrame < (int)pClientData) {\n    return 0;\n  }\n  sqlite3BeginBenignMalloc();\n  sqlite3_wal_checkpoint(db,zDb);\n  sqlite3EndBenignMalloc();\n  return 0;\n}" { (if_statement "if (nFrame < (int)pClientData) {\n    return 0;\n  }" if (parenthesized_expression "(nFrame < (int)pClientData)" ( (binary_expression "nFrame < (int)pClientData" identifier < (cast_expression "(int)pClientData" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "sqlite3BeginBenignMalloc();" (call_expression "sqlite3BeginBenignMalloc()" identifier (argument_list "()" ( ))) ;) (expression_statement "sqlite3_wal_checkpoint(db,zDb);" (call_expression "sqlite3_wal_checkpoint(db,zDb)" identifier (argument_list "(db,zDb)" ( identifier , identifier ))) ;) (expression_statement "sqlite3EndBenignMalloc();" (call_expression "sqlite3EndBenignMalloc()" identifier (argument_list "()" ( ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit "undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)\n\n{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}\n\n" (function_definition "undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)\n\n{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" type_identifier (function_declarator "FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" identifier (parameter_list "(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "undefined8 param_2" type_identifier identifier) , (parameter_declaration "undefined8 param_3" type_identifier identifier) , (parameter_declaration "int param_4" primitive_type identifier) ))) (compound_statement "{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" { (if_statement "if (param_4 < param_1) {\n    return 0;\n  }" if (parenthesized_expression "(param_4 < param_1)" ( (binary_expression "param_4 < param_1" identifier < identifier) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "FUN_0010cba2();" (call_expression "FUN_0010cba2()" identifier (argument_list "()" ( ))) ;) (expression_statement "sqlite3_wal_checkpoint(param_2,param_3);" (call_expression "sqlite3_wal_checkpoint(param_2,param_3)" identifier (argument_list "(param_2,param_3)" ( identifier , identifier ))) ;) (expression_statement "FUN_0010cbbb();" (call_expression "FUN_0010cbbb()" identifier (argument_list "()" ( ))) ;) (return_statement "return 0;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (return_statement return LIT ;) })))
(function_definition "undefined8 FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)\n\n{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" (type_identifier "undefined8") (function_declarator "FUN_00153d5c(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" (identifier "FUN_00153d5c") (parameter_list "(int param_1,undefined8 param_2,undefined8 param_3,int param_4)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "undefined8 param_2" (type_identifier "undefined8") (identifier "param_2")) (, ",") (parameter_declaration "undefined8 param_3" (type_identifier "undefined8") (identifier "param_3")) (, ",") (parameter_declaration "int param_4" (primitive_type "int") (identifier "param_4")) () ")"))) (compound_statement "{\n  if (param_4 < param_1) {\n    return 0;\n  }\n  FUN_0010cba2();\n  sqlite3_wal_checkpoint(param_2,param_3);\n  FUN_0010cbbb();\n  return 0;\n}" ({ "{") (if_statement "if (param_4 < param_1) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(param_4 < param_1)" (( "(") (binary_expression "param_4 < param_1" (identifier "param_4") (< "<") (identifier "param_1")) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "FUN_0010cba2();" (call_expression "FUN_0010cba2()" (identifier "FUN_0010cba2") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "sqlite3_wal_checkpoint(param_2,param_3);" (call_expression "sqlite3_wal_checkpoint(param_2,param_3)" (identifier "sqlite3_wal_checkpoint") (argument_list "(param_2,param_3)" (( "(") (identifier "param_2") (, ",") (identifier "param_3") () ")"))) (; ";")) (expression_statement "FUN_0010cbbb();" (call_expression "FUN_0010cbbb()" (identifier "FUN_0010cbbb") (argument_list "()" (( "(") () ")"))) (; ";")) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}")))

int function_1(void *pClientData,type_1 *db,char *zDb,int var_1)

{
  if (var_1 < (int)pClientData) {
    return 0;
  }
  var_2();
  var_3(db,zDb);
  var_4();
  return 0;
}


(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (primitive_type) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (type_identifier) declarator: (identifier)) (parameter_declaration type: (primitive_type) declarator: (identifier)))) body: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (return_statement (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (return_statement (number_literal)))))

undefined8 MASKED(int param_1,undefined8 param_2,undefined8 param_3,int param_4)

{
  if (param_4 < param_1) {
    return 0;
  }
  FUN_0010cba2();
  sqlite3_wal_checkpoint(param_2,param_3);
  FUN_0010cbbb();
  return 0;
}

