{"name": "Write_LocalFileHeader", "code": "__int64 __fastcall Write_LocalFileHeader ( __int64 @@a1@@ , const char * @@a2@@ , unsigned int @@a3@@ , __int64 @@a4@@ ) { unsigned int @@v7@@ ; unsigned int @@v8@@ ; unsigned int @@v9@@ ; @@v7@@ = strlen ( @@a2@@ ) ; @@v8@@ = @@a3@@ ; @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; if ( ! @@v9@@ ) { if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; else @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; } if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) , Number ) ; if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , * ( int * ) ( @@a1@@ + Number ) , Number ) ; if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) , Number ) ; if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number L , Number ) ; if ( ! @@v9@@ ) { if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; else @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number L , Number ) ; } if ( ! @@v9@@ ) { if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; else @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number L , Number ) ; } if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , @@v7@@ , Number ) ; if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) @@v8@@ = @@a3@@ + Number ; if ( ! @@v9@@ ) @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , @@v8@@ , Number ) ; if ( ! @@v9@@ && @@v7@@ && ( * ( __int64 ( __fastcall * * ) ( _QWORD , _QWORD , const char * , _QWORD ) ) ( @@a1@@ + Number ) ) ( * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) , @@a2@@ , @@v7@@ ) != @@v7@@ ) { @@v9@@ = Number ; } if ( ! @@v9@@ && @@a3@@ && ( * ( __int64 ( __fastcall * * ) ( _QWORD , _QWORD , __int64 , _QWORD ) ) ( @@a1@@ + Number ) ) ( * ( _QWORD * ) ( @@a1@@ + Number ) , * ( _QWORD * ) ( @@a1@@ + Number ) , @@a4@@ , @@a3@@ ) != @@a3@@ ) { @@v9@@ = Number ; } if ( ! @@v9@@ && * ( _DWORD * ) ( @@a1@@ + Number ) ) { * ( _QWORD * ) ( @@a1@@ + Number ) = call_ztell64 ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) ) ; zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number , Number ) ; zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number L , Number ) ; @@v9@@ = zip64local_putValue ( @@a1@@ , * ( _QWORD * ) ( @@a1@@ + Number ) , Number L , Number ) ; } return @@v9@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "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": "const char"}, "location": "r64"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v9", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}