@@ -318,58 +318,47 @@ bool parse_disable_token(const char* token) {
318318}
319319
320320void generate_json (const char * output) {
321+ const VM ::vmaware vm (VM ::MULTIPLE );
322+
321323 std::vector<std::string> json;
322324
323325 json.emplace_back (" {" );
324326 json.emplace_back (" \n\t\" is_detected\" : " );
325-
326- if (VM::detect ()) {
327- json.emplace_back (" true," );
328- }
329- else {
330- json.emplace_back (" false," );
331- }
327+ json.emplace_back (vm.is_vm ? " true," : " false," );
332328
333329 json.emplace_back (" \n\t\" brand\" : \" " );
334- json.push_back (VM:: brand() );
330+ json.push_back (vm. brand );
335331 json.emplace_back (" \" ," );
336332
337333 json.emplace_back (" \n\t\" conclusion\" : \" " );
338- json.push_back (VM:: conclusion() );
334+ json.push_back (vm. conclusion );
339335 json.emplace_back (" \" ," );
340336
341337 json.emplace_back (" \n\t\" percentage\" : " );
342- json.push_back (std::to_string (static_cast <int >(VM:: percentage() )));
338+ json.push_back (std::to_string (static_cast <int >(vm. percentage )));
343339 json.emplace_back (" ," );
344340
345341 json.emplace_back (" \n\t\" detected_technique_count\" : " );
346342 json.push_back (std::to_string (VM ::technique_count));
347343 json.emplace_back (" ," );
348344
349345 json.emplace_back (" \n\t\" vm_type\" : \" " );
350- json.push_back (VM:: type() );
346+ json.push_back (vm. type );
351347 json.emplace_back (" \" ," );
352348
353349 json.emplace_back (" \n\t\" is_hardened\" : " );
354-
355- if (VM::is_hardened ()) {
356- json.emplace_back (" true," );
357- } else {
358- json.emplace_back (" false," );
359- }
350+ json.emplace_back (vm.is_hardened ? " true," : " false," );
360351
361352 json.emplace_back (" \n\t\" detected_techniques\" : [" );
362353
363- const auto detected_status = VM::detected_enums ();
364-
365- if (detected_status.empty ()) {
354+ if (vm.detected_techniques .empty ()) {
366355 json.emplace_back (" ]\n }" );
367356 } else {
368- for (size_t i = 0 ; i < detected_status .size (); i++) {
357+ for (size_t i = 0 ; i < vm. detected_techniques .size (); i++) {
369358 json.emplace_back (" \n\t\t\" " );
370- json.push_back (VM::flag_to_string (detected_status [i]));
359+ json.push_back (VM::flag_to_string (vm. detected_techniques [i]));
371360
372- if (i == detected_status .size () - 1 ) {
361+ if (i == vm. detected_techniques .size () - 1 ) {
373362 json.emplace_back (" \" " );
374363 } else {
375364 json.emplace_back (" \" ," );
0 commit comments