{"name": "parse_loglevel", "code": "__int64 __fastcall parse_loglevel ( int @@a1@@ , __int64 @@a2@@ , const char * * @@a3@@ ) { int v3 ; __int64 @@result@@ ; char * @@v6@@ ; int @@i@@ ; int v8 ; int v9 ; v8 = locate_option ( @@a1@@ , @@a2@@ , @@a3@@ , String ) ; if ( ! v8 ) v8 = locate_option ( @@a1@@ , @@a2@@ , @@a3@@ , String ) ; if ( v8 && * ( _QWORD * ) ( Number * ( v8 + Number L ) + @@a2@@ ) ) opt_loglevel ( Number L , String , * ( _QWORD * ) ( Number * ( v8 + Number L ) + @@a2@@ ) ) ; v9 = locate_option ( @@a1@@ , @@a2@@ , @@a3@@ , String ) ; @@v6@@ = getenv ( String ) ; if ( @@v6@@ || v9 ) { init_report ( @@v6@@ ) ; if ( report_file ) { fwrite ( String , Number , Number , report_file ) ; for ( @@i@@ = Number ; @@i@@ < @@a1@@ ; ++ @@i@@ ) { dump_argument ( * ( const char * * ) ( Number L * @@i@@ + @@a2@@ ) ) ; if ( @@i@@ >= @@a1@@ - Number ) v3 = Number ; else v3 = Number ; fputc ( v3 , report_file ) ; } fflush ( report_file ) ; } } @@result@@ = locate_option ( @@a1@@ , @@a2@@ , @@a3@@ , String ) ; if ( ( _DWORD ) @@result@@ ) hide_banner = Number ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 3, "t": "const char *"}, "location": "r16"}, {"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s16"}, {"n": "v6", "t": {"T": 3, "t": "char"}, "location": "s24"}]}
{"name": "locate_option", "code": "__int64 __fastcall locate_option ( int @@a1@@ , __int64 @@a2@@ , const char * * @@a3@@ , const char * @@a4@@ ) { _BYTE * @@v4@@ ; char * @@s1@@ ; int @@i@@ ; const char * * @@v10@@ ; for ( @@i@@ = Number ; @@i@@ < @@a1@@ ; ++ @@i@@ ) { @@v4@@ = * ( _BYTE * * ) ( Number L * @@i@@ + @@a2@@ ) ; @@s1@@ = @@v4@@ + Number ; if ( * @@v4@@ == Number ) { @@v10@@ = find_option ( @@a3@@ , @@s1@@ ) ; if ( ! * @@v10@@ && * @@s1@@ == Number && @@s1@@ [ Number ] == Number ) @@v10@@ = find_option ( @@a3@@ , @@s1@@ + Number ) ; if ( ! * @@v10@@ && ! strcmp ( @@s1@@ , @@a4@@ ) || * @@v10@@ && ! strcmp ( @@a4@@ , * @@v10@@ ) ) return ( unsigned int ) @@i@@ ; if ( ! * @@v10@@ || ( ( _DWORD ) @@v10@@ [ Number ] & Number ) != Number ) ++ @@i@@ ; } } 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": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v4", "t": {"T": 3, "t": "_BYTE"}, "location": "r8"}, {"n": "v10", "t": {"T": 3, "t": "const char *"}, "location": "s16"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "s1", "t": {"T": 3, "t": "char"}, "location": "s32"}]} {"name": "dump_argument", "code": "int __fastcall dump_argument ( const char * @@a1@@ ) { const char * i ; unsigned __int8 * j ; for ( i = @@a1@@ ; * i && ( * i > Number && * i <= Number || * i > Number && * i <= Number || * i == Number || * i > Number && * i <= Number ) ; ++ i ) ; if ( ! * i ) return fputs ( @@a1@@ , report_file ) ; fputc ( Number , report_file ) ; for ( j = ( unsigned __int8 * ) @@a1@@ ; * j ; ++ j ) { if ( * j == Number || * j == Number || * j == Number || * j == Number ) { fprintf ( report_file , String , * j ) ; } else if ( * j > Number && * j <= Number ) { fputc ( * j , report_file ) ; } else { fprintf ( report_file , String , * j ) ; } } return fputc ( Number , report_file ) ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "const char"}, "location": "r56"}]} {"name": "opt_loglevel", "code": "__int64 __fastcall opt_loglevel ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { __int64 @@v3@@ ; char * @@endptr@@ [ Number ] ; int @@v7@@ [ Number ] ; const char * @@v8@@ ; int @@v9@@ ; const char * @@v10@@ ; int @@v11@@ ; const char * @@v12@@ ; int @@v13@@ ; const char * @@v14@@ ; int @@v15@@ ; const char * @@v16@@ ; int @@v17@@ ; const char * @@v18@@ ; int @@v19@@ ; const char * @@v20@@ ; int @@v21@@ ; unsigned int @@v22@@ ; unsigned int @@i@@ ; unsigned int @@v24@@ ; char @@v25@@ [ Number ] ; @@endptr@@ [ Number ] = String ; @@v7@@ [ Number ] = Number ; @@v8@@ = String ; @@v9@@ = Number ; @@v10@@ = String ; @@v11@@ = Number ; @@v12@@ = String ; @@v13@@ = Number ; @@v14@@ = String ; @@v15@@ = Number ; @@v16@@ = String ; @@v17@@ = Number ; @@v18@@ = String ; @@v19@@ = Number ; @@v20@@ = String ; @@v21@@ = Number ; @@v24@@ = av_log_get_flags ( ) ; @@endptr@@ [ Number ] = strstr ( ( const char * ) @@a3@@ , String ) ; if ( @@endptr@@ [ Number ] ) @@v24@@ &= Number ; else @@v24@@ |= Number ; av_log_set_flags ( @@v24@@ ) ; if ( ( char * ) @@a3@@ == @@endptr@@ [ Number ] ) { if ( * ( _BYTE * ) ( @@a3@@ + Number ) == Number ) @@v3@@ = Number L ; else @@v3@@ = Number L ; @@a3@@ += @@v3@@ ; } if ( @@endptr@@ [ Number ] && ! * ( _BYTE * ) @@a3@@ ) return Number L ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { if ( ! strcmp ( * ( const char * * ) & @@v25@@ [ Number * @@i@@ - Number ] , ( const char * ) @@a3@@ ) ) { av_log_set_level ( ( unsigned int ) @@v7@@ [ Number * @@i@@ ] ) ; return Number L ; } } @@v22@@ = strtol ( ( const char * ) @@a3@@ , @@endptr@@ , Number ) ; if ( * @@endptr@@ [ Number ] ) { av_log ( Number L , Number L , String , ( const char * ) @@a3@@ ) ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) av_log ( Number L , Number L , String , * ( const char * * ) & @@v25@@ [ Number * @@i@@ - Number ] ) ; exit_program ( Number ) ; } av_log_set_level ( @@v22@@ ) ; return Number L ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "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": "__int64", "s": 8}, "location": "r8"}, {"n": "v12", "t": {"T": 3, "t": "const char"}, "location": "s104"}, {"n": "v11", "t": {"T": 1, "n": "int", "s": 4}, "location": "s112"}, {"n": "v24", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s12"}, {"n": "v10", "t": {"T": 3, "t": "const char"}, "location": "s120"}, {"n": "v9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s128"}, {"n": "v8", "t": {"T": 3, "t": "const char"}, "location": "s136"}, {"n": "v7", "t": {"T": 2, "n": 2, "s": 4, "t": "int"}, "location": "s144"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s16"}, {"n": "endptr", "t": {"T": 2, "n": 2, "s": 8, "t": "char *"}, "location": "s160"}, {"n": "v22", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v21", "t": {"T": 1, "n": "int", "s": 4}, "location": "s32"}, {"n": "v20", "t": {"T": 3, "t": "const char"}, "location": "s40"}, {"n": "v19", "t": {"T": 1, "n": "int", "s": 4}, "location": "s48"}, {"n": "v18", "t": {"T": 3, "t": "const char"}, "location": "s56"}, {"n": "v17", "t": {"T": 1, "n": "int", "s": 4}, "location": "s64"}, {"n": "v16", "t": {"T": 3, "t": "const char"}, "location": "s72"}, {"n": "v25", "t": {"T": 2, "n": 8, "s": 1, "t": "char"}, "location": "s8"}, {"n": "v15", "t": {"T": 1, "n": "int", "s": 4}, "location": "s80"}, {"n": "v14", "t": {"T": 3, "t": "const char"}, "location": "s88"}, {"n": "v13", "t": {"T": 1, "n": "int", "s": 4}, "location": "s96"}]} {"name": "init_report", "code": "__int64 __fastcall init_report ( _BYTE * @@a1@@ ) { __int64 result ; const char * v2 ; char * @@v3@@ ; int * v4 ; char * v5 ; _BYTE * @@v6@@ ; __int64 @@v7@@ [ Number ] ; char * @@endptr@@ ; char * @@filename@@ [ Number ] ; time_t @@timer@@ ; char * @@nptr@@ ; char * @@s1@@ ; unsigned int @@v13@@ ; signed int @@v14@@ ; struct tm * @@v15@@ ; int @@v16@@ ; char * @@v17@@ ; @@v6@@ = @@a1@@ ; @@v17@@ = Number L ; @@v16@@ = Number ; if ( report_file ) return Number L ; time ( & @@timer@@ ) ; @@v15@@ = localtime ( & @@timer@@ ) ; while ( @@v6@@ && * @@v6@@ ) { @@v14@@ = av_opt_get_key_value ( & @@v6@@ , String , String , Number L , & @@s1@@ , & @@nptr@@ ) ; if ( @@v14@@ < Number ) { if ( @@v16@@ ) { @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; @@v7@@ [ Number ] = Number L ; v2 = ( const char * ) av_make_error_string ( ( __int64 ) @@v7@@ , Number L , @@v14@@ ) ; av_log ( Number L , Number L , String , v2 ) ; } break ; } if ( * @@v6@@ ) ++ @@v6@@ ; ++ @@v16@@ ; if ( ! strcmp ( @@s1@@ , String ) ) { av_free ( @@v17@@ ) ; @@v17@@ = @@nptr@@ ; @@nptr@@ = Number L ; } else if ( ! strcmp ( @@s1@@ , String ) ) { report_file_level = strtol ( @@nptr@@ , & @@endptr@@ , Number ) ; if ( * @@endptr@@ ) { av_log ( Number L , Number L , String ) ; exit_program ( Number ) ; } } else { av_log ( Number L , Number L , String , @@s1@@ ) ; } av_free ( @@nptr@@ ) ; av_free ( @@s1@@ ) ; } av_bprint_init ( @@filename@@ , Number L , Number L ) ; @@v3@@ = ( char * ) av_x_if_null ( ( __int64 ) @@v17@@ , ( __int64 ) String ) ; expand_filename_template ( ( __int64 ) @@filename@@ , @@v3@@ , ( unsigned int * ) @@v15@@ ) ; av_free ( @@v17@@ ) ; if ( av_bprint_is_complete ( ( __int64 ) @@filename@@ ) ) { report_file = fopen64 ( @@filename@@ [ Number ] , String ) ; if ( report_file ) { av_log_set_callback ( log_callback_report ) ; av_log ( Number L , Number L , String , ( const char * ) & program_name , ( unsigned int ) ( @@v15@@ -> tm_year + Number ) , ( unsigned int ) ( @@v15@@ -> tm_mon + Number ) , ( unsigned int ) @@v15@@ -> tm_mday , ( unsigned int ) @@v15@@ -> tm_hour , ( unsigned int ) @@v15@@ -> tm_min , ( unsigned int ) @@v15@@ -> tm_sec , @@filename@@ [ Number ] ) ; av_bprint_finalize ( @@filename@@ , Number L ) ; result = Number L ; } else { @@v13@@ = - * _errno_location ( ) ; v4 = _errno_location ( ) ; v5 = strerror ( * v4 ) ; av_log ( Number L , Number L , String , @@filename@@ [ Number ] , v5 ) ; result = @@v13@@ ; } } else { av_log ( Number L , Number L , String ) ; result = Number L ; } return result ; }", "source": [{"n": "a1", "t": {"T": 3, "t": "_BYTE"}, "location": "r56"}, {"n": "v3", "t": {"T": 3, "t": "char"}, "location": "r64"}, {"n": "filename", "t": {"T": 2, "n": 129, "s": 8, "t": "char *"}, "location": "s1096"}, {"n": "endptr", "t": {"T": 3, "t": "char"}, "location": "s1104"}, {"n": "v7", "t": {"T": 2, "n": 9, "s": 8, "t": "__int64"}, "location": "s1176"}, {"n": "v6", "t": {"T": 3, "t": "_BYTE"}, "location": "s1184"}, {"n": "v17", "t": {"T": 3, "t": "char"}, "location": "s16"}, {"n": "v16", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v15", "t": {"T": 3, "t": "struct tm"}, "location": "s32"}, {"n": "v14", "t": {"T": 1, "n": "signed int", "s": 4}, "location": "s36"}, {"n": "v13", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s40"}, {"n": "s1", "t": {"T": 3, "t": "char"}, "location": "s48"}, {"n": "nptr", "t": {"T": 3, "t": "char"}, "location": "s56"}, {"n": "timer", "t": {"T": 1, "n": "time_t", "s": 8}, "location": "s64"}]}