{"name": "roq_encode_frame", "code": "__int64 __fastcall roq_encode_frame ( __int64 @@a1@@ , __int64 @@a2@@ , int @@a3@@ , __int64 @@a4@@ ) { __int64 @@v5@@ ; @@v5@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@v5@@ + Number ) = @@a2@@ ; * ( _QWORD * ) @@v5@@ = @@a1@@ ; * ( _QWORD * ) ( @@v5@@ + Number ) = @@a4@@ ; if ( * ( _DWORD * ) ( @@a4@@ + Number ) ) * ( _QWORD * ) ( @@v5@@ + Number ) = * ( _DWORD * ) ( @@a4@@ + Number ) - Number ; else * ( _QWORD * ) ( @@v5@@ + Number ) = Number L ; if ( @@a3@@ <= ( Number * ( * ( _DWORD * ) ( @@v5@@ + Number ) * * ( _DWORD * ) ( @@v5@@ + Number ) / Number ) + Number ) / Number + Number ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } if ( * ( _DWORD * ) ( @@v5@@ + Number ) == * ( _DWORD * ) ( @@a1@@ + Number ) ) * ( _DWORD * ) ( @@v5@@ + Number ) = Number ; if ( * ( _DWORD * ) ( @@v5@@ + Number ) ) { if ( ( * ( unsigned int ( __fastcall * * ) ( __int64 , _QWORD ) ) ( @@a1@@ + Number ) ) ( @@a1@@ , * ( _QWORD * ) ( @@v5@@ + Number ) ) || ( * ( unsigned int ( __fastcall * * ) ( __int64 , _QWORD ) ) ( @@a1@@ + Number ) ) ( @@a1@@ , * ( _QWORD * ) ( @@v5@@ + Number ) ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } roq_write_video_info_chunk ( @@v5@@ ) ; * ( _DWORD * ) ( @@v5@@ + Number ) = Number ; } roq_encode_video ( @@v5@@ ) ; return * ( _QWORD * ) ( @@v5@@ + Number ) - @@a2@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "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": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}]}
{"name": "roq_encode_video", "code": "__int64 __fastcall roq_encode_video ( __int64 @@a1@@ ) { __int64 v1 ; double v2 ; __int64 @@v3@@ ; double v4 ; unsigned __int64 v5 ; __int64 result ; __int64 @@v7@@ ; __int64 @@v8@@ ; __int64 @@v9@@ ; _QWORD * @@s@@ ; int @@i@@ ; @@s@@ = * ( _QWORD * * ) ( @@a1@@ + Number ) ; memset ( @@s@@ , Number , Number ) ; create_cel_evals ( @@a1@@ , @@s@@ ) ; generate_new_codebooks ( @@a1@@ , ( __int64 ) @@s@@ ) ; if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) { motion_search ( @@a1@@ , Number ) ; motion_search ( @@a1@@ , Number ) ; } while ( Number ) { for ( @@i@@ = Number ; @@i@@ < * ( _DWORD * ) ( @@a1@@ + Number ) * * ( _DWORD * ) ( @@a1@@ + Number ) / Number ; ++ @@i@@ ) gather_data_for_cel ( Number L * @@i@@ + * @@s@@ , @@a1@@ , ( __int64 ) @@s@@ ) ; if ( * ( ( int * ) @@s@@ + Number ) <= Number ) break ; v1 = * ( _QWORD * ) ( @@a1@@ + Number ) ; if ( v1 < Number ) { @@v3@@ = * ( _QWORD * ) ( @@a1@@ + Number ) & Number L | ( ( unsigned __int64 ) v1 >> Number ) ; v2 = ( double ) ( int ) @@v3@@ + ( double ) ( int ) @@v3@@ ; } else { v2 = ( double ) ( int ) v1 ; } v4 = v2 * Number ; if ( v4 >= Number ) v5 = ( unsigned int ) ( int ) ( v4 - Number ) ^ Number ; else v5 = ( unsigned int ) ( int ) v4 ; * ( _QWORD * ) ( @@a1@@ + Number ) = v5 ; } remap_codebooks ( @@a1@@ , ( __int64 ) @@s@@ ) ; write_codebooks ( @@a1@@ , ( __int64 ) @@s@@ ) ; reconstruct_and_encode_image ( @@a1@@ , ( __int64 ) @@s@@ , * ( unsigned int * ) ( @@a1@@ + Number ) , * ( unsigned int * ) ( @@a1@@ + Number ) , * ( _DWORD * ) ( @@a1@@ + Number ) * * ( _DWORD * ) ( @@a1@@ + Number ) / Number ) ; * ( _QWORD * ) ( * ( _QWORD * ) @@a1@@ + Number L ) = * ( _QWORD * ) ( @@a1@@ + Number ) ; @@v9@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v9@@ ; @@v8@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v8@@ ; @@v7@@ = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = * ( _QWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = @@v7@@ ; av_free ( * @@s@@ ) ; av_free ( @@s@@ [ Number ] ) ; result = @@a1@@ ; ++ * ( _DWORD * ) ( @@a1@@ + Number ) ; return result ; }", "source": [{"n": "v3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "s", "t": {"T": 3, "t": "_QWORD"}, "location": "s24"}, {"n": "v9", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v8", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s40"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}]} {"name": "roq_write_video_info_chunk", "code": "__int64 __fastcall roq_write_video_info_chunk ( __int64 @@a1@@ ) { __int64 @@result@@ ; * * ( _WORD * * ) ( @@a1@@ + Number ) = Number ; * ( _QWORD * ) ( @@a1@@ + Number ) += Number L ; * * ( _DWORD * * ) ( @@a1@@ + Number ) = Number ; * ( _QWORD * ) ( @@a1@@ + Number ) += Number L ; * ( _BYTE * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ++ = Number ; * ( _BYTE * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ++ = Number ; * * ( _WORD * * ) ( @@a1@@ + Number ) = * ( _DWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) += Number L ; * * ( _WORD * * ) ( @@a1@@ + Number ) = * ( _DWORD * ) ( @@a1@@ + Number ) ; * ( _QWORD * ) ( @@a1@@ + Number ) += Number L ; * ( _BYTE * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ++ = Number ; * ( _BYTE * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ++ = Number ; * ( _BYTE * ) ( * ( _QWORD * ) ( @@a1@@ + Number ) ) ++ = Number ; * * ( _BYTE * * ) ( @@a1@@ + Number ) = Number ; @@result@@ = @@a1@@ + Number ; ++ * ( _QWORD * ) ( @@a1@@ + Number ) ; return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}