{"name": "crc", "code": "__int64 __fastcall crc ( int @@a1@@ , unsigned int * @@a2@@ , _QWORD * @@a3@@ ) { int @@i@@ ; char @@buf@@ [ Number ] ; char * @@j@@ ; __int64 @@v9@@ ; int @@v10@@ ; unsigned int @@v11@@ ; @@v9@@ = Number L ; @@v11@@ = Number ; crc_total = ~ crc_total ; for ( @@i@@ = read ( @@a1@@ , @@buf@@ , Number ) ; ; @@i@@ = read ( @@a1@@ , @@buf@@ , Number ) ) { @@v10@@ = @@i@@ ; if ( @@i@@ <= Number ) break ; @@v9@@ += @@v10@@ ; for ( @@j@@ = @@buf@@ ; @@v10@@ -- ; ++ @@j@@ ) { @@v11@@ = ( @@v11@@ << Number ) ^ crctab [ HIBYTE ( @@v11@@ ) ^ ( unsigned __int8 ) * @@j@@ ] ; crc_total = ( crc_total << Number ) ^ crctab [ HIBYTE ( crc_total ) ^ ( unsigned __int8 ) * @@j@@ ] ; } } if ( @@v10@@ < Number ) return Number L ; * @@a3@@ = @@v9@@ ; while ( @@v9@@ ) { @@v11@@ = ( @@v11@@ << Number ) ^ crctab [ HIBYTE ( @@v11@@ ) ^ ( unsigned __int64 ) ( unsigned __int8 ) @@v9@@ ] ; crc_total = ( crc_total << Number ) ^ crctab [ HIBYTE ( crc_total ) ^ ( unsigned __int64 ) ( unsigned __int8 ) @@v9@@ ] ; @@v9@@ >>= Number ; } * @@a2@@ = ~ @@v11@@ ; crc_total = ~ crc_total ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "_QWORD"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "unsigned int"}, "location": "r64"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "v9", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "buf", "t": {"T": 2, "n": 16392, "s": 1, "t": "char"}, "location": "s16416"}, {"n": "j", "t": {"T": 3, "t": "char"}, "location": "s24"}, {"n": "v11", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}