{"name": "silk_resampler_down2_3", "code": "__int64 __fastcall silk_resampler_down2_3 ( _QWORD * @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , int @@a4@@ ) { void * @@v4@@ ; __int64 v5 ; unsigned int v6 ; __int16 v7 ; __int16 * v8 ; __int16 v9 ; __int16 * v10 ; int * v11 ; __int64 v12 ; int * v13 ; int * v14 ; __int64 v15 ; __int64 result ; _QWORD * v17 ; __int64 @@v19@@ ; __int16 * @@v20@@ ; _QWORD * @@v21@@ ; int @@v22@@ ; unsigned int @@v23@@ ; int * @@v24@@ ; int * @@v25@@ ; int @@i@@ ; @@v21@@ = @@a1@@ ; @@v20@@ = ( __int16 * ) @@a2@@ ; @@v19@@ = @@a3@@ ; @@v4@@ = alloca ( Number L ) ; @@v24@@ = ( int * ) ( Number * ( ( ( unsigned __int64 ) & @@v19@@ + Number ) >> Number ) ) ; v5 = @@a1@@ [ Number ] ; * ( _QWORD * ) @@v24@@ = * @@a1@@ ; * ( ( _QWORD * ) & loc_8 + Number * ( ( ( unsigned __int64 ) & @@v19@@ + Number ) >> Number ) ) = v5 ; while ( Number ) { v6 = Number ; if ( @@a4@@ <= Number ) v6 = @@a4@@ ; @@v23@@ = v6 ; silk_resampler_private_AR2 ( @@v21@@ + Number , @@v24@@ + Number , @@v19@@ , silk_Resampler_2_3_COEFS_LQ , v6 ) ; @@v25@@ = @@v24@@ ; for ( @@i@@ = @@v23@@ ; @@i@@ > Number ; @@i@@ -= Number ) { @@v22@@ = ( * @@v25@@ * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; if ( ( ( @@v22@@ >> Number ) + Number ) >> Number > Number ) { v7 = Number ; } else if ( ( ( @@v22@@ >> Number ) + Number ) >> Number < Number ) { v7 = Number ; } else { v7 = ( ( @@v22@@ >> Number ) + Number ) >> Number ; } v8 = @@v20@@ ++ ; * v8 = v7 ; @@v22@@ = ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; @@v22@@ += ( @@v25@@ [ Number ] * ( __int64 ) silk_Resampler_2_3_COEFS_LQ [ Number ] ) >> Number ; if ( ( ( @@v22@@ >> Number ) + Number ) >> Number > Number ) { v9 = Number ; } else if ( ( ( @@v22@@ >> Number ) + Number ) >> Number < Number ) { v9 = Number ; } else { v9 = ( ( @@v22@@ >> Number ) + Number ) >> Number ; } v10 = @@v20@@ ++ ; * v10 = v9 ; @@v25@@ += Number ; } @@v19@@ += Number L * ( int ) @@v23@@ ; @@a4@@ -= @@v23@@ ; if ( @@a4@@ <= Number ) break ; v11 = & @@v24@@ [ @@v23@@ ] ; v12 = * ( ( _QWORD * ) v11 + Number ) ; v13 = @@v24@@ ; * ( _QWORD * ) @@v24@@ = * ( _QWORD * ) v11 ; * ( ( _QWORD * ) v13 + Number ) = v12 ; } v14 = & @@v24@@ [ @@v23@@ ] ; v15 = * ( ( _QWORD * ) v14 + Number ) ; result = * ( _QWORD * ) v14 ; v17 = @@v21@@ ; * @@v21@@ = result ; v17 [ Number ] = v15 ; return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "v4", "t": {"T": 3, "t": "void"}, "location": "r40"}, {"n": "a1", "t": {"T": 3, "t": "_QWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v25", "t": {"T": 3, "t": "int"}, "location": "s16"}, {"n": "v24", "t": {"T": 3, "t": "int"}, "location": "s24"}, {"n": "v23", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v22", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "v21", "t": {"T": 3, "t": "_QWORD"}, "location": "s40"}, {"n": "v20", "t": {"T": 3, "t": "__int16"}, "location": "s48"}, {"n": "v19", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s56"}]}