{"name": "zipOpenNewFileInZip4_64", "code": "__int64 __fastcall zipOpenNewFileInZip4_64 ( __int64 @@a1@@ , char * @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , unsigned int @@a5@@ , __int64 @@a6@@ , int @@a7@@ , char * @@s@@ , int @@a9@@ , int @@a10@@ , int @@a11@@ , int @@a12@@ , int @@a13@@ , int @@a14@@ , __int64 @@a15@@ , __int64 @@a16@@ , __int64 @@a17@@ , __int64 @@a18@@ , int @@a19@@ ) { __int64 @@v20@@ ; char * @@v25@@ ; char @@v26@@ [ Number ] ; unsigned int @@v27@@ ; unsigned int @@v28@@ ; __int64 @@v29@@ ; unsigned int @@v30@@ ; unsigned int @@i@@ ; unsigned int @@v32@@ ; @@v25@@ = @@a2@@ ; @@v30@@ = Number ; if ( ! @@a1@@ ) return Number L ; if ( @@a9@@ && @@a9@@ != Number ) return Number L ; @@v29@@ = @@a1@@ ; if ( * ( _DWORD * ) ( @@a1@@ + Number ) == Number ) { @@v30@@ = zipCloseFileInZip ( @@a1@@ ) ; if ( @@v30@@ ) return @@v30@@ ; } if ( ! @@a2@@ ) @@v25@@ = String ; if ( @@s@@ ) @@v32@@ = strlen ( @@s@@ ) ; else @@v32@@ = Number ; @@v28@@ = strlen ( @@v25@@ ) ; if ( @@a3@@ ) { if ( * ( _QWORD * ) ( @@a3@@ + Number ) ) * ( _QWORD * ) ( @@v29@@ + Number ) = * ( _QWORD * ) ( @@a3@@ + Number ) ; else * ( _QWORD * ) ( @@v29@@ + Number ) = zip64local_TmzDateToDosDate ( ( _DWORD * ) @@a3@@ ) ; } else { * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; } * ( _QWORD * ) ( @@v29@@ + Number ) = @@a18@@ ; if ( @@a10@@ == Number || @@a10@@ == Number ) * ( _QWORD * ) ( @@v29@@ + Number ) |= Number ; if ( @@a10@@ == Number ) * ( _QWORD * ) ( @@v29@@ + Number ) |= Number ; if ( @@a10@@ == Number ) * ( _QWORD * ) ( @@v29@@ + Number ) |= Number ; if ( @@a15@@ ) * ( _QWORD * ) ( @@v29@@ + Number ) |= Number ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _DWORD * ) ( @@v29@@ + Number ) = @@a9@@ ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _DWORD * ) ( @@v29@@ + Number ) = @@a11@@ ; * ( _QWORD * ) ( @@v29@@ + Number ) = call_ztell64 ( @@v29@@ , * ( _QWORD * ) ( @@v29@@ + Number ) ) ; * ( _QWORD * ) ( @@v29@@ + Number ) = @@a7@@ + @@v28@@ + @@v32@@ + Number ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = malloc ( ( unsigned int ) * ( _QWORD * ) ( @@v29@@ + Number ) + * ( _QWORD * ) ( @@v29@@ + Number ) ) ; * ( _QWORD * ) ( @@v29@@ + Number ) = ( unsigned int ) @@a7@@ ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) , Number , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , @@a17@@ , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( _QWORD * ) ( @@v29@@ + Number ) , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( int * ) ( @@v29@@ + Number ) , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( _QWORD * ) ( @@v29@@ + Number ) , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , @@v28@@ , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , ( unsigned int ) @@a7@@ , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , @@v32@@ , Number ) ; zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; if ( @@a3@@ ) zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( _QWORD * ) ( @@a3@@ + Number ) , Number ) ; else zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; if ( @@a3@@ ) zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( _QWORD * ) ( @@a3@@ + Number ) , Number ) ; else zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number L , Number ) ; if ( * ( _QWORD * ) ( @@v29@@ + Number ) <= Number ) zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , * ( _QWORD * ) ( @@v29@@ + Number ) - * ( _QWORD * ) ( @@v29@@ + Number ) , Number ) ; else zip64local_putValue_inmemory ( * ( _QWORD * ) ( @@v29@@ + Number ) + Number L , Number , Number ) ; for ( @@i@@ = Number ; @@i@@ < @@v28@@ ; ++ @@i@@ ) * ( _BYTE * ) ( * ( _QWORD * ) ( @@v29@@ + Number ) + @@i@@ + Number L ) = @@v25@@ [ @@i@@ ] ; for ( @@i@@ = Number ; @@i@@ < @@a7@@ ; ++ @@i@@ ) * ( _BYTE * ) ( * ( _QWORD * ) ( @@v29@@ + Number ) + @@v28@@ + ( unsigned __int64 ) @@i@@ + Number ) = * ( _BYTE * ) ( @@i@@ + @@a6@@ ) ; for ( @@i@@ = Number ; @@i@@ < @@v32@@ ; ++ @@i@@ ) * ( _BYTE * ) ( * ( _QWORD * ) ( @@v29@@ + Number ) + ( unsigned int ) @@a7@@ + ( unsigned __int64 ) @@v28@@ + @@i@@ + Number ) = @@s@@ [ @@i@@ ] ; if ( ! * ( _QWORD * ) ( @@v29@@ + Number ) ) return Number L ; * ( _DWORD * ) ( @@v29@@ + Number ) = @@a19@@ ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; @@v30@@ = Write_LocalFileHeader ( @@v29@@ , @@v25@@ , @@a5@@ , @@a4@@ ) ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _QWORD * ) ( @@v29@@ + Number ) = @@v29@@ + Number ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; if ( ! @@v30@@ && * ( _DWORD * ) ( @@v29@@ + Number ) == Number && ! * ( _DWORD * ) ( @@v29@@ + Number ) && * ( _DWORD * ) ( @@v29@@ + Number ) == Number ) { * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; * ( _QWORD * ) ( @@v29@@ + Number ) = Number L ; if ( @@a12@@ > Number ) @@a12@@ = - @@a12@@ ; @@v30@@ = deflateInit2_ ( @@v29@@ + Number , ( unsigned int ) @@a10@@ , Number L , ( unsigned int ) @@a12@@ , ( unsigned int ) @@a13@@ , ( unsigned int ) @@a14@@ , String , Number L ) ; if ( ! @@v30@@ ) * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; } * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; if ( ! @@v30@@ ) { if ( @@a15@@ ) { * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; * ( _QWORD * ) ( @@v29@@ + Number ) = get_crc_table ( ) ; @@v27@@ = crypthead ( ( char * ) @@a15@@ , ( __int64 ) @@v26@@ , Number , ( _QWORD * ) ( @@v29@@ + Number ) , * ( _QWORD * ) ( @@v29@@ + Number ) , @@a16@@ ) ; * ( _DWORD * ) ( @@v29@@ + Number ) = @@v27@@ ; @@v20@@ = ( * ( __int64 ( __fastcall * * ) ( _QWORD , _QWORD , char * , _QWORD ) ) ( @@v29@@ + Number ) ) ( * ( _QWORD * ) ( @@v29@@ + Number ) , * ( _QWORD * ) ( @@v29@@ + Number ) , @@v26@@ , @@v27@@ ) ; if ( @@v20@@ != @@v27@@ ) @@v30@@ = Number ; } } if ( ! @@v30@@ ) * ( _DWORD * ) ( @@v29@@ + Number ) = Number ; return @@v30@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "char"}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r72"}, {"n": "v20", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "a6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r80"}, {"n": "a18", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s-104"}, {"n": "a19", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-112"}, {"n": "a7", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-16"}, {"n": "s", "t": {"T": 3, "t": "char"}, "location": "s-24"}, {"n": "a9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-32"}, {"n": "a10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-40"}, {"n": "a11", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-48"}, {"n": "a12", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-56"}, {"n": "a13", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-64"}, {"n": "a14", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-72"}, {"n": "a15", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s-80"}, {"n": "a16", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s-88"}, {"n": "a17", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s-96"}, {"n": "v30", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v29", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v28", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v27", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s32"}, {"n": "v32", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v26", "t": {"T": 2, "n": 12, "s": 1, "t": "char"}, "location": "s44"}, {"n": "v25", "t": {"T": 3, "t": "char"}, "location": "s64"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}