{"name": "audio_run_out", "code": "unsigned __int64 audio_run_out ( ) { __int64 v0 ; int v1 ; int v2 ; int v3 ; _BOOL4 v4 ; __int64 v5 ; __int64 v6 ; int v7 ; __int64 v8 ; __int64 v9 ; int v10 ; int v11 ; int v12 ; __int64 v13 ; int v14 ; __int64 v15 ; __int64 v16 ; __int64 v17 ; _BOOL4 v18 ; unsigned int @@v20@@ ; int @@v21@@ ; unsigned int @@v22@@ ; int @@v23@@ ; unsigned int @@v24@@ ; unsigned int @@v25@@ ; _DWORD * @@v26@@ ; __int64 @@i@@ ; __int64 @@j@@ ; __int64 @@v29@@ ; unsigned __int64 @@v30@@ ; @@v30@@ = __readfsqword ( Number ) ; @@v26@@ = Number L ; while ( Number ) { @@v26@@ = audio_pcm_hw_find_any_enabled_out ( ( __int64 ) @@v26@@ ) ; if ( ! @@v26@@ ) break ; @@v22@@ = audio_pcm_hw_get_live_out ( ( __int64 ) @@v26@@ , & @@v20@@ ) ; if ( ! @@v20@@ ) @@v22@@ = Number ; v4 = ( @@v22@@ & Number ) != Number || ( signed int ) @@v22@@ > @@v26@@ [ Number ] ; v5 = v4 ; if ( ( unsigned int ) audio_bug ( ( int ) String , v4 , v0 , v1 , v2 , v3 ) ) { AUD_log ( String , String , @@v22@@ , ( unsigned int ) @@v26@@ [ Number ] , v8 , v9 ) ; } else if ( ! @@v26@@ [ Number ] || @@v20@@ ) { if ( @@v22@@ ) { @@v24@@ = @@v26@@ [ Number ] ; @@v21@@ = ( * ( __int64 ( __fastcall * * ) ( _DWORD * , _QWORD ) ) ( * ( ( _QWORD * ) @@v26@@ + Number ) + Number L ) ) ( @@v26@@ , @@v22@@ ) ; if ( ( unsigned int ) audio_bug ( ( int ) String , @@v26@@ [ Number ] >= @@v26@@ [ Number ] , ( unsigned int ) @@v26@@ [ Number ] , v10 , v11 , v12 ) ) { AUD_log ( String , String , ( unsigned int ) @@v26@@ [ Number ] , ( unsigned int ) @@v26@@ [ Number ] , ( unsigned int ) @@v21@@ , v16 ) ; @@v26@@ [ Number ] = Number ; } if ( @@v21@@ ) { * ( ( _QWORD * ) @@v26@@ + Number ) += @@v21@@ ; audio_capture_mix_and_clear ( ( __int64 ) @@v26@@ , @@v24@@ , @@v21@@ , @@v24@@ , v15 , v16 ) ; } @@v23@@ = Number ; for ( @@i@@ = * ( ( _QWORD * ) @@v26@@ + Number ) ; @@i@@ ; @@i@@ = * ( _QWORD * ) ( @@i@@ + Number ) ) { if ( * ( _DWORD * ) ( @@i@@ + Number ) || ! * ( _DWORD * ) ( @@i@@ + Number ) ) { v17 = @@v21@@ > * ( _DWORD * ) ( @@i@@ + Number ) ; if ( ( unsigned int ) audio_bug ( ( int ) String , v17 , v13 , v14 , v15 , v16 ) ) { v17 = ( __int64 ) String ; AUD_log ( String , String , ( unsigned int ) @@v21@@ , * ( unsigned int * ) ( @@i@@ + Number ) , v15 , v16 ) ; @@v21@@ = * ( _DWORD * ) ( @@i@@ + Number ) ; } v13 = ( unsigned int ) ( * ( _DWORD * ) ( @@i@@ + Number ) - @@v21@@ ) ; * ( _DWORD * ) ( @@i@@ + Number ) = v13 ; if ( ! * ( _DWORD * ) ( @@i@@ + Number ) ) { * ( _DWORD * ) ( @@i@@ + Number ) = Number ; v18 = ! * ( _DWORD * ) ( @@i@@ + Number ) && ! * ( _QWORD * ) ( @@i@@ + Number ) ; @@v23@@ |= v18 ; } if ( * ( _DWORD * ) ( @@i@@ + Number ) ) { @@v25@@ = audio_get_free ( @@i@@ , v17 , v13 , v14 , v15 , v16 ) ; if ( ( int ) @@v25@@ > Number ) ( * ( void ( __fastcall * * ) ( _QWORD , _QWORD ) ) ( @@i@@ + Number ) ) ( * ( _QWORD * ) ( @@i@@ + Number ) , @@v25@@ ) ; } } } if ( @@v23@@ ) { for ( @@i@@ = * ( ( _QWORD * ) @@v26@@ + Number ) ; @@i@@ ; @@i@@ = @@v29@@ ) { @@v29@@ = * ( _QWORD * ) ( @@i@@ + Number ) ; if ( ! * ( _DWORD * ) ( @@i@@ + Number ) && ! * ( _QWORD * ) ( @@i@@ + Number ) ) audio_close_out ( @@i@@ ) ; } } } else { for ( @@i@@ = * ( ( _QWORD * ) @@v26@@ + Number ) ; @@i@@ ; @@i@@ = * ( _QWORD * ) ( @@i@@ + Number ) ) { if ( * ( _DWORD * ) ( @@i@@ + Number ) ) { @@v25@@ = audio_get_free ( @@i@@ , v5 , v6 , v7 , v8 , v9 ) ; if ( ( int ) @@v25@@ > Number ) { v5 = @@v25@@ ; ( * ( void ( __fastcall * * ) ( _QWORD , _QWORD ) ) ( @@i@@ + Number ) ) ( * ( _QWORD * ) ( @@i@@ + Number ) , @@v25@@ ) ; } } } } } else { * @@v26@@ = Number ; @@v26@@ [ Number ] = Number ; ( * ( void ( __fastcall * * ) ( _DWORD * , __int64 ) ) ( * ( ( _QWORD * ) @@v26@@ + Number ) + Number L ) ) ( @@v26@@ , Number L ) ; for ( @@j@@ = * ( ( _QWORD * ) @@v26@@ + Number ) ; @@j@@ ; @@j@@ = * ( _QWORD * ) ( @@j@@ + Number ) ) { * ( _DWORD * ) ( @@j@@ + Number ) = Number ; audio_recalc_and_notify_capture ( * ( _QWORD * ) ( @@j@@ + Number ) ) ; } } } return __readfsqword ( Number ) ^ @@v30@@ ; }", "source": [{"n": "v29", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "j", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "i", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s32"}, {"n": "v26", "t": {"T": 3, "t": "_DWORD"}, "location": "s40"}, {"n": "v25", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s44"}, {"n": "v24", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s48"}, {"n": "v23", "t": {"T": 1, "n": "int", "s": 4}, "location": "s52"}, {"n": "v22", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s56"}, {"n": "v21", "t": {"T": 1, "n": "int", "s": 4}, "location": "s60"}, {"n": "v20", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s64"}, {"n": "v30", "t": {"T": 1, "n": "unsigned __int64", "s": 8}, "location": "s8"}]}