{"name": "parse_optgroup", "code": "__int64 __fastcall parse_optgroup ( __int64 @@a1@@ , const char * * * @@a2@@ ) { int @@v3@@ ; const char * * @@v4@@ ; int @@i@@ ; av_log ( Number L , Number L , String , * * @@a2@@ , ( const char * ) @@a2@@ [ Number ] ) ; for ( @@i@@ = Number ; @@i@@ < * ( ( _DWORD * ) @@a2@@ + Number ) ; ++ @@i@@ ) { @@v4@@ = & @@a2@@ [ Number ] [ Number * @@i@@ ] ; if ( * ( ( _DWORD * ) * @@a2@@ + Number ) && ( ( _DWORD ) ( * @@a2@@ ) [ Number ] & * ( ( _DWORD * ) * @@v4@@ + Number ) ) == Number ) { av_log ( Number L , Number L , String String , @@v4@@ [ Number ] , * ( ( const char * * ) * @@v4@@ + Number ) , * * @@a2@@ , ( const char * ) @@a2@@ [ Number ] ) ; return Number L ; } av_log ( Number L , Number L , String , @@v4@@ [ Number ] , * ( ( const char * * ) * @@v4@@ + Number ) , @@v4@@ [ Number ] ) ; @@v3@@ = write_option ( @@a1@@ , ( __int64 ) * @@v4@@ , @@v4@@ [ Number ] , @@v4@@ [ Number ] ) ; if ( @@v3@@ < Number ) return ( unsigned int ) @@v3@@ ; } av_log ( Number L , Number L , String ) ; return Number L ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "const char **"}, "location": "r64"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v4", "t": {"T": 3, "t": "const char *"}, "location": "s24"}, {"n": "v3", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}]}
{"name": "write_option", "code": "__int64 __fastcall write_option ( __int64 @@a1@@ , __int64 @@a2@@ , const char * @@a3@@ , const char * @@a4@@ ) { __int64 * v4 ; void * v5 ; float @@v7@@ ; const char * v8 ; __int64 @@v11@@ [ Number ] ; __int64 @@v12@@ ; signed int @@v13@@ ; __int64 @@v14@@ ; int * @@v15@@ ; char * @@v16@@ ; __int64 * @@v17@@ ; __int64 * @@v18@@ ; if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) v4 = ( __int64 * ) ( * ( _QWORD * ) ( @@a2@@ + Number ) + @@a1@@ ) ; else v4 = * ( __int64 * * ) ( @@a2@@ + Number ) ; @@v18@@ = v4 ; if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { @@v17@@ = @@v18@@ ; @@v16@@ = strchr ( @@a3@@ , Number ) ; @@v15@@ = ( int * ) ( @@v18@@ + Number ) ; * @@v18@@ = grow_array ( * @@v18@@ , Number L , @@v18@@ + Number , ( unsigned int ) ( * ( ( _DWORD * ) @@v18@@ + Number ) + Number ) ) ; if ( @@v16@@ ) v5 = @@v16@@ + Number ; else v5 = & unk_6A4B ; @@v14@@ = av_strdup ( v5 ) ; if ( ! @@v14@@ ) return Number L ; * ( _QWORD * ) ( Number L * * @@v15@@ - Number + * @@v17@@ ) = @@v14@@ ; @@v18@@ = ( __int64 * ) ( * @@v17@@ + Number L * * @@v15@@ - Number + Number ) ; } if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { @@v12@@ = av_strdup ( @@a4@@ ) ; av_freep ( @@v18@@ ) ; if ( ! @@v12@@ ) return Number L ; * @@v18@@ = @@v12@@ ; } else if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number || ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { * ( _DWORD * ) @@v18@@ = ( int ) parse_number_or_die ( ( __int64 ) @@a3@@ , ( __int64 ) @@a4@@ , Number , Number , Number ) ; } else if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { * @@v18@@ = ( unsigned int ) ( int ) parse_number_or_die ( ( __int64 ) @@a3@@ , ( __int64 ) @@a4@@ , Number , Number , Number ) ; } else if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { * @@v18@@ = parse_time_or_die ( @@a3@@ , @@a4@@ , Number ) ; } else if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { @@v7@@ = parse_number_or_die ( ( __int64 ) @@a3@@ , ( __int64 ) @@a4@@ , Number , - INFINITY , INFINITY ) ; * ( float * ) @@v18@@ = @@v7@@ ; } else if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) { * ( double * ) @@v18@@ = parse_number_or_die ( ( __int64 ) @@a3@@ , ( __int64 ) @@a4@@ , Number , - INFINITY , INFINITY ) ; } else if ( * ( _QWORD * ) ( @@a2@@ + Number ) ) { @@v13@@ = ( * ( __int64 ( __fastcall * * ) ( __int64 , const char * , const char * ) ) ( @@a2@@ + Number ) ) ( @@a1@@ , @@a3@@ , @@a4@@ ) ; if ( @@v13@@ < Number ) { @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; @@v11@@ [ Number ] = Number L ; v8 = ( const char * ) av_make_error_string ( ( __int64 ) @@v11@@ , Number L , @@v13@@ ) ; av_log ( Number L , Number L , String , @@a4@@ , @@a3@@ , v8 ) ; return ( unsigned int ) @@v13@@ ; } } if ( ( * ( _DWORD * ) ( @@a2@@ + Number ) & Number ) != Number ) exit_program ( Number ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "const char"}, "location": "r16"}, {"n": "a4", "t": {"T": 3, "t": "const char"}, "location": "r24"}, {"n": "v7", "t": {"T": 1, "n": "float", "s": 4}, "location": "r496"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v11", "t": {"T": 2, "n": 9, "s": 8, "t": "__int64"}, "location": "s136"}, {"n": "v18", "t": {"T": 3, "t": "__int64"}, "location": "s16"}, {"n": "v17", "t": {"T": 3, "t": "__int64"}, "location": "s24"}, {"n": "v16", "t": {"T": 3, "t": "char"}, "location": "s32"}, {"n": "v15", "t": {"T": 3, "t": "int"}, "location": "s40"}, {"n": "v14", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}, {"n": "v13", "t": {"T": 1, "n": "signed int", "s": 4}, "location": "s52"}, {"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s64"}]}