{"name": "syncsearch", "code": "__int64 __fastcall syncsearch ( unsigned int * @@a1@@ , __int64 @@a2@@ , unsigned int @@a3@@ ) { int v3 ; unsigned int @@i@@ ; unsigned int @@v7@@ ; @@v7@@ = * @@a1@@ ; for ( @@i@@ = Number ; @@i@@ < @@a3@@ && @@v7@@ <= Number ; ++ @@i@@ ) { if ( @@v7@@ > Number ) v3 = Number ; else v3 = Number ; if ( v3 == * ( unsigned __int8 * ) ( @@i@@ + @@a2@@ ) ) { ++ @@v7@@ ; } else if ( * ( _BYTE * ) ( @@i@@ + @@a2@@ ) ) { @@v7@@ = Number ; } else { @@v7@@ = Number - @@v7@@ ; } } * @@a1@@ = @@v7@@ ; return @@i@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "unsigned int"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]}
{"name": "inflateSync", "code": "__int64 __fastcall inflateSync ( __int64 @@a1@@ ) { __int64 @@v2@@ ; unsigned int @@v3@@ ; char @@v4@@ [ Number ] ; __int64 @@v5@@ ; __int64 @@v6@@ ; __int64 @@v7@@ ; unsigned int @@v8@@ ; if ( ! @@a1@@ || ! * ( _QWORD * ) ( @@a1@@ + Number ) ) return Number L ; @@v7@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; if ( ! * ( _DWORD * ) ( @@a1@@ + Number ) && * ( _DWORD * ) ( @@v7@@ + Number ) <= Number ) return Number L ; if ( * ( _DWORD * ) @@v7@@ != Number ) { * ( _DWORD * ) @@v7@@ = Number ; * ( _QWORD * ) ( @@v7@@ + Number ) <<= * ( _BYTE * ) ( @@v7@@ + Number ) & Number ; * ( _DWORD * ) ( @@v7@@ + Number ) &= Number ; @@v8@@ = Number ; while ( * ( _DWORD * ) ( @@v7@@ + Number ) > Number ) { @@v2@@ = * ( _QWORD * ) ( @@v7@@ + Number ) ; @@v3@@ = @@v8@@ ++ ; @@v4@@ [ @@v3@@ ] = @@v2@@ ; * ( _QWORD * ) ( @@v7@@ + Number ) >>= Number ; * ( _DWORD * ) ( @@v7@@ + Number ) -= Number ; } * ( _DWORD * ) ( @@v7@@ + Number ) = Number ; syncsearch ( ( unsigned int * ) ( @@v7@@ + Number ) , ( __int64 ) @@v4@@ , @@v8@@ ) ; } @@v8@@ = syncsearch ( ( unsigned int * ) ( @@v7@@ + Number ) , * ( _QWORD * ) @@a1@@ , * ( _DWORD * ) ( @@a1@@ + Number ) ) ; * ( _DWORD * ) ( @@a1@@ + Number ) -= @@v8@@ ; * ( _QWORD * ) @@a1@@ += @@v8@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) += @@v8@@ ; if ( * ( _DWORD * ) ( @@v7@@ + Number ) != Number ) return Number L ; @@v6@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; @@v5@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; inflateReset ( ( _QWORD * ) @@a1@@ ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v6@@ ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v5@@ ; * ( _DWORD * ) @@v7@@ = Number ; return Number L ; }", "source": [{"n": "v2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r8"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v6", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v4", "t": {"T": 2, "n": 4, "s": 1, "t": "char"}, "location": "s36"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}]}