static int fcn_print_verbose(RzCore *core, RzAnalysisFunction *fcn, bool use_color) {
	char *name = rz_core_analysis_fcn_name(core, fcn);
	int ebbs = 0;
	int addrwidth = 8;
	const char *color = "";
	const char *color_end = "";
	if (use_color) {
		color_end = Color_RESET;
		if (strstr(name, "sym.imp.")) {
			color = Color_YELLOW;
		} else if (strstr(name, "sym.")) {
			color = Color_GREEN;
		} else if (strstr(name, "sub.")) {
			color = Color_MAGENTA;
		}
	}

	if (core->analysis->bits == 64) {
		addrwidth = 16;
	}

	rz_cons_printf(FCN_LIST_VERBOSE_ENTRY, color,
		addrwidth, fcn->addr,
		rz_analysis_function_realsize(fcn),
		rz_list_length(fcn->bbs),
		rz_analysis_function_count_edges(fcn, &ebbs),
		rz_analysis_function_complexity(fcn),
		rz_analysis_function_cost(fcn),
		addrwidth, rz_analysis_function_min_addr(fcn),
		rz_analysis_function_linear_size(fcn),
		addrwidth, rz_analysis_function_max_addr(fcn),
		fcn->meta.numcallrefs,
		rz_analysis_var_count(core->analysis, fcn, 's', 0) +
			rz_analysis_var_count(core->analysis, fcn, 'b', 0) +
			rz_analysis_var_count(core->analysis, fcn, 'r', 0),
		rz_analysis_var_count(core->analysis, fcn, 's', 1) +
			rz_analysis_var_count(core->analysis, fcn, 'b', 1) +
			rz_analysis_var_count(core->analysis, fcn, 'r', 1),
		fcn->meta.numrefs,
		fcn->maxstack,
		name,
		color_end);
	free(name);
	return 0;
}
static int fcn_print_verbose(RzCore *core, RzAnalysisFunction *fcn, bool use_color) {
	char *name = rz_core_analysis_fcn_name(core, fcn);
	int ebbs = 0;
	int addrwidth = 8;
	const char *color = "";
	const char *color_end = "";
	if (use_color) {
		color_end = Color_RESET;
		if (strstr(name, "sym.imp.")) {
			color = Color_YELLOW;
		} else if (strstr(name, "sym.")) {
			color = Color_GREEN;
		} else if (strstr(name, "sub.")) {
			color = Color_MAGENTA;
		}
	}

	if (core->analysis->bits == 64) {
		addrwidth = 16;
	}

	rz_cons_printf(FCN_LIST_VERBOSE_ENTRY, color,
		addrwidth, fcn->addr,
		rz_analysis_function_realsize(fcn),
		rz_list_length(fcn->bbs),
		rz_analysis_function_count_edges(fcn, &ebbs),
		rz_analysis_function_complexity(fcn),
		rz_analysis_function_cost(fcn),
		addrwidth, rz_analysis_function_min_addr(fcn),
		rz_analysis_function_linear_size(fcn),
		addrwidth, rz_analysis_function_max_addr(fcn),
		fcn->meta.numcallrefs,
		rz_analysis_var_count(core->analysis, fcn, 's', 0) +
			rz_analysis_var_count(core->analysis, fcn, 'b', 0) +
			rz_analysis_var_count(core->analysis, fcn, 'r', 0),
		rz_analysis_var_count(core->analysis, fcn, 's', 1) +
			rz_analysis_var_count(core->analysis, fcn, 'b', 1) +
			rz_analysis_var_count(core->analysis, fcn, 'r', 1),
		fcn->meta.numrefs,
		fcn->maxstack,
		name,
		color_end);
	free(name);
	return 0;
}