{"name": "validate_classifier_crop", "code": "__int64 __fastcall validate_classifier_crop ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ ) { unsigned int v3 ; pthread_t v4 ; __int64 v5 ; clock_t v6 ; float v7 ; unsigned int @@v8@@ ; clock_t v9 ; double @@v10@@ ; double @@v11@@ ; double v12 ; __int64 v13 ; __int64 v14 ; __int64 @@v15@@ ; __int64 result ; __int64 @@v18@@ [ Number ] ; __int64 @@v19@@ ; __int64 @@v20@@ [ Number ] ; __int64 @@v21@@ ; __int64 @@v22@@ ; __int64 @@v23@@ ; __int64 @@v24@@ ; __int64 @@v25@@ ; __int64 @@v26@@ ; __int64 @@v27@@ ; __int64 @@v28@@ [ Number ] ; float * @@v29@@ ; __int64 @@v30@@ ; clock_t @@v31@@ ; unsigned int @@v32@@ ; int @@v33@@ ; int @@v34@@ ; __int64 @@v35@@ ; int * @@v36@@ ; __int64 @@v37@@ ; unsigned int @@v38@@ ; int @@v39@@ ; __int64 @@v40@@ ; __int64 @@v41@@ ; __int64 @@v42@@ ; pthread_t @@th@@ ; float @@v44@@ ; float @@v45@@ ; unsigned int @@i@@ ; @@i@@ = Number ; parse_network_cfg ( @@v28@@ , @@a2@@ ) ; if ( @@a3@@ ) load_weights ( @@v28@@ , @@a3@@ ) ; v3 = time ( Number L ) ; srand ( v3 ) ; @@v42@@ = read_data_cfg ( @@a1@@ ) ; @@v41@@ = option_find_str ( @@v42@@ , String , String ) ; @@v40@@ = option_find_str ( @@v42@@ , String , String ) ; @@v39@@ = option_find_int ( @@v42@@ , String , Number L ) ; @@v38@@ = option_find_int ( @@v42@@ , String , Number L ) ; @@v37@@ = get_labels ( @@v41@@ ) ; @@v36@@ = ( int * ) get_paths ( @@v40@@ ) ; @@v35@@ = list_to_array ( @@v36@@ ) ; @@v34@@ = * @@v36@@ ; free_list ( @@v36@@ ) ; @@v45@@ = Number ; @@v44@@ = Number ; @@v33@@ = @@v34@@ / Number ; @@v32@@ = ( int ) ( @@v34@@ * ( @@i@@ + Number ) ) / ( @@v34@@ / Number ) - ( int ) ( @@v34@@ * @@i@@ ) / ( @@v34@@ / Number ) ; memset ( @@v18@@ , Number , sizeof ( @@v18@@ ) ) ; @@v18@@ [ Number ] = @@v28@@ [ Number ] ; @@v18@@ [ Number ] = @@v35@@ ; LODWORD ( @@v18@@ [ Number ] ) = @@v39@@ ; @@v18@@ [ Number ] = @@v32@@ ; @@v18@@ [ Number ] = @@v37@@ ; @@v18@@ [ Number ] = ( __int64 ) @@v20@@ ; LODWORD ( @@v18@@ [ Number ] ) = Number ; @@th@@ = load_data_in_thread ( & @@v19@@ , String , @@v18@@ ) ; for ( @@i@@ = Number ; ; ++ @@i@@ ) { result = @@i@@ ; if ( ( int ) @@i@@ > @@v33@@ ) break ; @@v31@@ = clock ( ) ; v4 = @@th@@ ; pthread_join ( @@th@@ , Number L ) ; @@v20@@ [ Number ] = @@v20@@ [ Number ] ; @@v21@@ = @@v20@@ [ Number ] ; @@v22@@ = @@v20@@ [ Number ] ; @@v23@@ = @@v20@@ [ Number ] ; @@v24@@ = @@v20@@ [ Number ] ; @@v25@@ = @@v20@@ [ Number ] ; @@v26@@ = @@v20@@ [ Number ] ; @@v27@@ = @@v20@@ [ Number ] ; @@v32@@ = ( int ) ( @@v34@@ * ( @@i@@ + Number ) ) / @@v33@@ - ( int ) ( @@v34@@ * @@i@@ ) / @@v33@@ ; v5 = Number L * ( ( int ) ( @@v34@@ * @@i@@ ) / @@v33@@ ) ; @@v30@@ = v5 + @@v35@@ ; if ( @@i@@ != @@v33@@ ) { @@v18@@ [ Number ] = @@v30@@ ; @@th@@ = load_data_in_thread ( v4 , Number L , v5 ) ; } v6 = clock ( ) ; v7 = sec ( v6 - @@v31@@ ) ; printf ( String , ( unsigned int ) @@v21@@ , v7 ) ; @@v31@@ = clock ( ) ; @@v29@@ = ( float * ) network_accuracies ( @@v38@@ ) ; @@v45@@ = * @@v29@@ + @@v45@@ ; @@v44@@ = @@v29@@ [ Number ] + @@v44@@ ; @@v8@@ = @@v21@@ ; v9 = clock ( ) ; @@v10@@ = sec ( v9 - @@v31@@ ) ; @@v11@@ = ( float ) ( @@v44@@ / ( float ) ( int ) @@i@@ ) ; v12 = ( float ) ( @@v45@@ / ( float ) ( int ) @@i@@ ) ; v13 = @@i@@ ; printf ( String , @@i@@ , v12 , @@v38@@ , @@v11@@ , @@v10@@ , @@v8@@ ) ; free_data ( String , v13 , v12 , v14 , @@v11@@ , @@v10@@ , @@v15@@ ) ; } return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "v15", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "v8", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r32"}, {"n": "v10", "t": {"T": 1, "n": "double", "s": 8}, "location": "r528"}, {"n": "v11", "t": {"T": 1, "n": "double", "s": 8}, "location": "r544"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v34", "t": {"T": 1, "n": "int", "s": 4}, "location": "s100"}, {"n": "v33", "t": {"T": 1, "n": "int", "s": 4}, "location": "s104"}, {"n": "v32", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s108"}, {"n": "v31", "t": {"T": 1, "n": "clock_t", "s": 8}, "location": "s120"}, {"n": "v30", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s128"}, {"n": "v29", "t": {"T": 3, "t": "float"}, "location": "s136"}, {"n": "i", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s20"}, {"n": "v45", "t": {"T": 1, "n": "float", "s": 4}, "location": "s24"}, {"n": "v44", "t": {"T": 1, "n": "float", "s": 4}, "location": "s28"}, {"n": "th", "t": {"T": 1, "n": "pthread_t", "s": 8}, "location": "s40"}, {"n": "v28", "t": {"T": 2, "n": 19, "s": 8, "t": "__int64"}, "location": "s400"}, {"n": "v27", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s408"}, {"n": "v26", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s416"}, {"n": "v25", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s424"}, {"n": "v24", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s432"}, {"n": "v23", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s440"}, {"n": "v22", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s448"}, {"n": "v21", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s456"}, {"n": "v42", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}, {"n": "v20", "t": {"T": 2, "n": 9, "s": 8, "t": "__int64"}, "location": "s528"}, {"n": "v19", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s536"}, {"n": "v41", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s56"}, {"n": "v40", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s64"}, {"n": "v39", "t": {"T": 1, "n": "int", "s": 4}, "location": "s68"}, {"n": "v18", "t": {"T": 2, "n": 21, "s": 8, "t": "__int64"}, "location": "s704"}, {"n": "v38", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s72"}, {"n": "v37", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s80"}, {"n": "v36", "t": {"T": 3, "t": "int"}, "location": "s88"}, {"n": "v35", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s96"}]}
{"name": "run_classifier", "code": "void __fastcall run_classifier ( int @@a1@@ , __int64 @@a2@@ ) { __int64 v2 ; const char * v3 ; char * v4 ; int v5 ; int v6 ; unsigned int @@v7@@ [ Number ] ; char * @@nptr@@ ; const char * @@v9@@ ; __int64 @@v10@@ ; __int64 @@v11@@ ; __int64 @@v12@@ ; unsigned int @@v13@@ ; int @@v14@@ ; int @@v15@@ ; __int64 @@v16@@ ; __int64 @@v17@@ ; if ( @@a1@@ > Number ) { @@v17@@ = find_char_arg ( ( unsigned int ) @@a1@@ , @@a2@@ , String , Number L ) ; @@v16@@ = read_intlist ( @@v17@@ , @@v7@@ , gpu_index ) ; @@v15@@ = find_int_arg ( ( unsigned int ) @@a1@@ , @@a2@@ , String , Number L ) ; @@v14@@ = find_int_arg ( ( unsigned int ) @@a1@@ , @@a2@@ , String , Number L ) ; @@v13@@ = find_arg ( ( unsigned int ) @@a1@@ , @@a2@@ , String ) ; @@v12@@ = * ( _QWORD * ) ( @@a2@@ + Number ) ; @@v11@@ = * ( _QWORD * ) ( @@a2@@ + Number ) ; if ( @@a1@@ <= Number ) v2 = Number L ; else v2 = * ( _QWORD * ) ( @@a2@@ + Number ) ; @@v10@@ = v2 ; if ( @@a1@@ <= Number ) v3 = Number L ; else v3 = * ( const char * * ) ( @@a2@@ + Number ) ; @@v9@@ = v3 ; if ( @@a1@@ <= Number ) v4 = Number L ; else v4 = * ( char * * ) ( @@a2@@ + Number ) ; @@nptr@@ = v4 ; if ( v4 ) v5 = atoi ( @@nptr@@ ) ; else v5 = Number ; @@v7@@ [ Number ] = v5 ; if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { predict_classifier ( @@v12@@ , @@v11@@ , @@v10@@ , @@v9@@ , @@v14@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { v6 = atoi ( @@nptr@@ ) ; try_classifier ( @@v12@@ , @@v11@@ , @@v10@@ , @@v9@@ , v6 ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { train_classifier ( @@v12@@ , @@v11@@ , @@v10@@ , @@v16@@ , @@v7@@ [ Number ] , @@v13@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { demo_classifier ( ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { gun_classifier ( ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { threat_classifier ( ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { test_classifier ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { label_classifier ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { validate_classifier_single ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { validate_classifier_multi ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { validate_classifier_10 ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { validate_classifier_crop ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } else if ( ! strcmp ( * ( const char * * ) ( @@a2@@ + Number ) , String ) ) { validate_classifier_full ( @@v12@@ , @@v11@@ , @@v10@@ ) ; } } else { fprintf ( stderr , String , * ( const char * * ) @@a2@@ , * ( const char * * ) ( @@a2@@ + Number ) ) ; } }", "source": [{"n": "a1", "t": {"T": 1, "n": "int", "s": 4}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v16", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v15", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}, {"n": "v14", "t": {"T": 1, "n": "int", "s": 4}, "location": "s24"}, {"n": "v13", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s28"}, {"n": "v12", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s40"}, {"n": "v11", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s48"}, {"n": "v10", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s56"}, {"n": "v9", "t": {"T": 3, "t": "const char"}, "location": "s64"}, {"n": "nptr", "t": {"T": 3, "t": "char"}, "location": "s72"}, {"n": "v17", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s8"}, {"n": "v7", "t": {"T": 2, "n": 2, "s": 4, "t": "unsigned int"}, "location": "s80"}]}