{"name": "dv_assemble_frame", "code": "__int64 __fastcall dv_assemble_frame ( __int64 @@a1@@ , __int64 @@a2@@ , const void * @@a3@@ , unsigned int @@a4@@ , void * * @@a5@@ , __m128 @@a6@@ , __m128 @@a7@@ , __m128 @@a8@@ , __m128 @@a9@@ , double @@a10@@ , double @@a11@@ , __m128 @@a12@@ , __m128 @@a13@@ ) { __int64 v13 ; __int64 @@v14@@ ; __m128 v15 ; __m128 v16 ; int @@v17@@ ; __int64 v18 ; double v19 ; double v20 ; int @@v25@@ ; int i ; int j ; * @@a5@@ = ( void * ) ( @@a1@@ + Number ) ; @@v25@@ = Number * dv_audio_frame_size ( * ( _QWORD * ) @@a1@@ , * ( _DWORD * ) ( @@a1@@ + Number ) ) ; @@v17@@ = * ( _DWORD * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) ; if ( @@v17@@ ) { if ( @@v17@@ == Number ) { for ( i = Number ; i < * ( _DWORD * ) ( @@a1@@ + Number ) && @@a2@@ != * ( _QWORD * ) ( @@a1@@ + Number * ( i + Number L ) ) ; ++ i ) ; if ( ( int ) ( @@a4@@ + av_fifo_size ( * ( _QWORD * ) ( @@a1@@ + Number * ( i + Number L ) ) ) ) > Number ) av_log ( * ( _QWORD * ) ( @@a2@@ + Number ) , Number L , String , * ( unsigned int * ) ( @@a1@@ + Number ) ) ; av_fifo_generic_write ( * ( _QWORD * ) ( @@a1@@ + Number * ( i + Number L ) ) , @@a3@@ , @@a4@@ , Number L ) ; * ( _DWORD * ) ( @@a1@@ + Number ) |= ( @@v25@@ <= ( int ) av_fifo_size ( * ( _QWORD * ) ( @@a1@@ + Number * ( i + Number L ) ) ) ) << i ; } } else { if ( * ( _DWORD * ) ( @@a1@@ + Number ) ) av_log ( * ( _QWORD * ) ( @@a2@@ + Number ) , Number L , String , * ( unsigned int * ) ( @@a1@@ + Number ) ) ; memcpy ( * @@a5@@ , @@a3@@ , * ( int * ) ( * ( _QWORD * ) @@a1@@ + Number L ) ) ; * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; } if ( * ( _DWORD * ) ( @@a1@@ + Number ) != Number ) return Number L ; v18 = * ( unsigned int * ) ( @@a1@@ + Number ) ; if ( * ( _DWORD * ) ( @@a1@@ + Number ) + Number != Number << v18 ) return Number L ; dv_inject_metadata ( ( int * ) @@a1@@ , ( unsigned __int64 ) * @@a5@@ , @@a6@@ , @@a7@@ , @@a8@@ , @@a9@@ , v15 , v16 , @@a12@@ , @@a13@@ , ( __int64 ) * @@a5@@ , v18 , v13 , @@v14@@ ) ; * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; for ( j = Number ; j < * ( _DWORD * ) ( @@a1@@ + Number ) ; ++ j ) { dv_inject_audio ( @@a1@@ , j , ( __int64 ) * @@a5@@ , @@a6@@ , @@a7@@ , @@a8@@ , @@a9@@ , v19 , v20 , @@a12@@ , @@a13@@ ) ; av_fifo_drain ( * ( _QWORD * ) ( @@a1@@ + Number * ( j + Number L ) ) , ( unsigned int ) @@v25@@ ) ; * ( _DWORD * ) ( @@a1@@ + Number ) |= ( @@v25@@ <= ( int ) av_fifo_size ( * ( _QWORD * ) ( @@a1@@ + Number * ( j + Number L ) ) ) ) << j ; } * ( _DWORD * ) ( @@a1@@ + Number ) = Number ; ++ * ( _DWORD * ) ( @@a1@@ + Number ) ; return * ( unsigned int * ) ( * ( _QWORD * ) @@a1@@ + Number L ) ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "const void"}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r24"}, {"n": "a6", "t": {"T": 8}, "location": "r496"}, {"n": "a7", "t": {"T": 8}, "location": "r512"}, {"n": "a8", "t": {"T": 8}, "location": "r528"}, {"n": "a9", "t": {"T": 8}, "location": "r544"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a10", "t": {"T": 1, "n": "double", "s": 8}, "location": "r560"}, {"n": "a11", "t": {"T": 1, "n": "double", "s": 8}, "location": "r576"}, {"n": "a12", "t": {"T": 8}, "location": "r592"}, {"n": "a13", "t": {"T": 8}, "location": "r608"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 3, "t": "void *"}, "location": "r72"}, {"n": "v17", "t": {"T": 1, "n": "int", "s": 4}, "location": "r8"}, {"n": "v14", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r80"}, {"n": "v25", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}]}