{"name": "show_bits", "code": "__int64 __fastcall show_bits ( __int64 @@a1@@ , char @@a2@@ ) { unsigned int @@v3@@ ; unsigned int @@v4@@ ; @@v4@@ = * ( _DWORD * ) ( @@a1@@ + Number ) ; @@v3@@ = * ( _DWORD * ) ( ( @@v4@@ >> Number ) + * ( _QWORD * ) @@a1@@ ) ; return ( unsigned int ) NEG_USR32 ( ( HIBYTE ( @@v3@@ ) | ( unsigned __int16 ) ( HIWORD ( @@v3@@ ) << Number ) | ( ( ( unsigned __int16 ) ( ( _WORD ) @@v3@@ << Number ) | BYTE1 ( @@v3@@ ) ) << Number ) ) << ( @@v4@@ & Number ) , @@a2@@ ) ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "char", "s": 1}, "location": "r64"}, {"n": "v4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}]}
{"name": "NEG_USR32", "code": "__int64 __fastcall NEG_USR32 ( unsigned int @@a1@@ , char @@a2@@ ) { return @@a1@@ >> - @@a2@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "char", "s": 1}, "location": "r64"}]} {"name": "show_bits_long", "code": "__int64 __fastcall show_bits_long ( __int64 * @@a1@@ , int @@a2@@ ) { __int64 v3 ; __int64 v4 ; __int64 @@v5@@ [ Number ] ; if ( @@a2@@ <= Number ) return show_bits ( ( __int64 ) @@a1@@ , @@a2@@ ) ; v3 = @@a1@@ [ Number ] ; @@v5@@ [ Number ] = * @@a1@@ ; @@v5@@ [ Number ] = v3 ; v4 = @@a1@@ [ Number ] ; @@v5@@ [ Number ] = @@a1@@ [ Number ] ; @@v5@@ [ Number ] = v4 ; return get_bits_long ( ( __int64 ) @@v5@@ , @@a2@@ ) ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "__int64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "int", "s": 4}, "location": "r64"}, {"n": "v5", "t": {"T": 2, "n": 4, "s": 8, "t": "__int64"}, "location": "s32"}]} {"name": "ff_vc1_decode_sequence_header", "code": "__int64 __fastcall ff_vc1_decode_sequence_header ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 * @@a3@@ ) { unsigned int @@v3@@ ; int @@v6@@ ; unsigned int @@v7@@ ; unsigned int @@v8@@ ; @@v3@@ = show_bits_long ( @@a3@@ , Number ) ; av_log ( @@a1@@ , Number L , String , @@v3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) == Number ) av_log ( @@a1@@ , Number L , String ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) == Number ) { * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_vc1_adv_progressive_8x4_zz ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_vc1_adv_progressive_4x8_zz ; return decode_sequence_header_adv ( @@a2@@ , @@a3@@ ) ; } * ( _DWORD * ) ( @@a2@@ + Number ) = Number ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_wmv2_scantableA ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_wmv2_scantableB ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) == Number && ! * ( _DWORD * ) ( @@a2@@ + Number ) ) av_log ( @@a1@@ , Number L , String ) ; if ( * ( int * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) > Number ) * ( _DWORD * ) ( @@a2@@ + Number ) = Number ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( ! * ( _DWORD * ) ( @@a2@@ + Number ) ) { * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct_8 ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct84_add ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct48_add ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct44_add ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct_add_8 ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct84_add ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct48_add ; * ( _QWORD * ) ( @@a2@@ + Number ) = & ff_simple_idct44_add ; } * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( ! * ( _DWORD * ) ( @@a2@@ + Number ) && ! * ( _DWORD * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( ! * ( _DWORD * ) ( @@a2@@ + Number ) && * ( _DWORD * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) && ! * ( _DWORD * ) ( @@a2@@ + Number ) ) av_log ( @@a1@@ , Number L , String ) ; * ( _DWORD * ) ( @@a1@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = * ( _DWORD * ) ( @@a1@@ + Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) { @@v8@@ = get_bits ( ( __int64 ) @@a3@@ , Number ) ; @@v7@@ = get_bits ( ( __int64 ) @@a3@@ , Number ) ; @@v6@@ = ff_set_dimensions ( * ( _QWORD * ) ( @@a2@@ + Number ) , @@v8@@ , @@v7@@ ) ; if ( @@v6@@ < Number ) { av_log ( @@a1@@ , Number L , String , @@v8@@ , @@v7@@ ) ; return ( unsigned int ) @@v6@@ ; } skip_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( ( unsigned int ) get_bits1 ( ( __int64 ) @@a3@@ ) ) { av_log ( @@a1@@ , Number L , String ) ; return Number ; } skip_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = Number ; } else { * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; } if ( ! * ( _DWORD * ) ( @@a2@@ + Number ) ) av_log ( @@a1@@ , Number L , String ) ; if ( ! * ( _DWORD * ) ( @@a2@@ + Number ) ) skip_bits ( ( __int64 ) @@a3@@ , Number ) ; av_log ( @@a1@@ , Number L , String String String String String , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a1@@ + Number ) ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "__int64"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r8"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s60"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s64"}, {"n": "v6", "t": {"T": 1, "n": "int", "s": 4}, "location": "s68"}]} {"name": "ff_vc1_decode_entry_point", "code": "__int64 __fastcall ff_vc1_decode_entry_point ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 * @@a3@@ ) { unsigned int v3 ; __int64 result ; int @@v6@@ ; unsigned int @@v7@@ ; unsigned int @@v8@@ ; int @@i@@ ; v3 = show_bits_long ( @@a3@@ , Number ) ; av_log ( @@a1@@ , Number L , String , v3 ) ; * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( int * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + Number L ) > Number ) * ( _DWORD * ) ( @@a2@@ + Number ) = Number ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) { for ( @@i@@ = Number ; @@i@@ < * ( _DWORD * ) ( @@a2@@ + Number ) ; ++ @@i@@ ) skip_bits ( ( __int64 ) @@a3@@ , Number ) ; } if ( ( unsigned int ) get_bits1 ( ( __int64 ) @@a3@@ ) ) { @@v8@@ = Number * ( get_bits ( ( __int64 ) @@a3@@ , Number ) + Number ) ; @@v7@@ = Number * ( get_bits ( ( __int64 ) @@a3@@ , Number ) + Number ) ; } else { @@v8@@ = * ( _DWORD * ) ( @@a2@@ + Number ) ; @@v7@@ = * ( _DWORD * ) ( @@a2@@ + Number ) ; } @@v6@@ = ff_set_dimensions ( @@a1@@ , @@v8@@ , @@v7@@ ) ; if ( @@v6@@ >= Number ) { if ( * ( _DWORD * ) ( @@a2@@ + Number ) ) * ( _DWORD * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _BYTE * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; } * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits1 ( ( __int64 ) @@a3@@ ) ; if ( * ( _BYTE * ) ( @@a2@@ + Number ) ) { av_log ( @@a1@@ , Number L , String ) ; * ( _BYTE * ) ( @@a2@@ + Number ) = get_bits ( ( __int64 ) @@a3@@ , Number ) ; } av_log ( @@a1@@ , Number L , String String String String , * ( unsigned __int8 * ) ( @@a2@@ + Number ) , * ( unsigned __int8 * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) , * ( unsigned int * ) ( @@a2@@ + Number ) ) ; result = Number L ; } else { av_log ( @@a1@@ , Number L , String , @@v8@@ , @@v7@@ ) ; result = ( unsigned int ) @@v6@@ ; } return result ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "__int64"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s32"}, {"n": "v7", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s36"}, {"n": "v6", "t": {"T": 1, "n": "int", "s": 4}, "location": "s40"}]}