{"name": "video_disable", "code": "__int64 __fastcall video_disable ( int * @@a1@@ , int @@a2@@ ) { __int64 @@result@@ ; int @@v3@@ ; unsigned int @@v4@@ ; @@v3@@ = Number ; @@v4@@ = xioctl ( * @@a1@@ , Number , ( __int64 ) & @@v3@@ ) ; if ( @@v4@@ ) { perror ( String ) ; @@result@@ = @@v4@@ ; } else { @@a1@@ [ Number ] = @@a2@@ ; @@result@@ = Number L ; } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "int"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s4"}, {"n": "v3", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}
{"name": "xioctl", "code": "__int64 __fastcall xioctl ( int @@a1@@ , unsigned int @@a2@@ , __int64 @@a3@@ ) { int * v4 ; char * v5 ; unsigned int @@v8@@ ; int @@v9@@ ; @@v9@@ = Number ; do { @@v8@@ = ioctl ( @@a1@@ , ( int ) @@a2@@ , @@a3@@ ) ; if ( ! @@v8@@ ) break ; if ( ! @@v9@@ -- ) break ; } while ( * _errno_location ( ) == Number || * _errno_location ( ) == Number || * _errno_location ( ) == Number ) ; if ( @@v8@@ && @@v9@@ <= Number ) { v4 = _errno_location ( ) ; v5 = strerror ( * v4 ) ; fprintf ( stderr , String , @@a2@@ , Number L , v5 ) ; } return @@v8@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s8"}]} {"name": "close_v4l2", "code": "__int64 __fastcall close_v4l2 ( __int64 @@a1@@ ) { if ( * ( _DWORD * ) ( @@a1@@ + Number ) == Number ) video_disable ( ( int * ) @@a1@@ , Number ) ; if ( * ( _QWORD * ) ( @@a1@@ + Number ) ) free ( * ( void * * ) ( @@a1@@ + Number ) ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; free ( * ( void * * ) ( @@a1@@ + Number ) ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; free ( * ( void * * ) ( @@a1@@ + Number ) ) ; free ( * ( void * * ) ( @@a1@@ + Number ) ) ; free ( * ( void * * ) ( @@a1@@ + Number ) ) ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; * ( _QWORD * ) ( @@a1@@ + Number ) = Number L ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}]} {"name": "setResolution", "code": "__int64 __fastcall setResolution ( int * @@a1@@ , int @@a2@@ , int @@a3@@ ) { __int64 @@result@@ ; int @@i@@ ; @@a1@@ [ Number ] = Number ; if ( ( unsigned int ) video_disable ( @@a1@@ , Number ) ) return Number ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) munmap ( * ( void * * ) & @@a1@@ [ Number * @@i@@ + Number ] , ( unsigned int ) @@a1@@ [ Number ] ) ; close ( * @@a1@@ ) ; @@a1@@ [ Number ] = @@a2@@ ; @@a1@@ [ Number ] = @@a3@@ ; if ( ( int ) init_v4l2 ( @@a1@@ ) >= Number ) { video_enable ( @@a1@@ ) ; @@result@@ = Number L ; } else { fwrite ( String , Number , Number , stderr ) ; @@result@@ = Number ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "int"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]}