// File: /workspace/github_c_makefile_star2_O3/intel[P]pf-bb-config/vrb1/vrb1_cfg_parser.c
// Function: vrb1_handler
static int
vrb1_handler(void *user, const char *section,
	    const char *name, const char *value)
{
	struct vrb1_conf *vrb1_conf = (struct vrb1_conf *) user;
	int ret = 1, index;

	if (!strcmp(section, MODE) && !strcmp(name, PFMODE)) {
		if (!strcmp(value, ZERO))
			vrb1_conf->pf_mode_en = false;
		else if (!strcmp(value, ONE))
			vrb1_conf->pf_mode_en = true;
		else
			ret = 0;
	} else if (!strcmp(section, LLR_SIGN) &&
			!strcmp(name, INPUT_POS_LLR_1_BIT)) {
		if (!strcmp(value, ZERO))
			vrb1_conf->input_pos_llr_1_bit = false;
		else if (!strcmp(value, ONE))
			vrb1_conf->input_pos_llr_1_bit = true;
		else
			ret = 0;
	} else if (!strcmp(section, LLR_SIGN) &&
			!strcmp(name, OUTPUT_POS_LLR_1_BIT)) {
		if (!strcmp(value, ZERO))
			vrb1_conf->output_pos_llr_1_bit = false;
		else if (!strcmp(value, ONE))
			vrb1_conf->output_pos_llr_1_bit = true;
		else
			ret = 0;
	} else if (!strcmp(section, VFBUNDLES) &&
			!strcmp(name, NUMVF_BUNDLES)) {
		ret = parse_number16(value, &vrb1_conf->num_vf_bundles);
	} else if (!strcmp(section, MAXQSIZE) &&
			!strcmp(name, MAX_QUEUE_SIZE)) {
		/* MAX_QUEUE_SIZE is not used. Keep it for parsing purposes */
	} else if (!strcmp(section, QUL4G) && !strcmp(name, NUM_QGROUPS)) {
		ret = parse_number16(value, &vrb1_conf->q_ul_4g.num_qgroups);
	} else if (!strcmp(section, QUL4G) &&
			!strcmp(name, NUM_AQS_PER_GROUPS)) {
		ret = parse_number16(value,
				&vrb1_conf->q_ul_4g.num_aqs_per_groups);
	} else if (!strcmp(section, QUL4G) && !strcmp(name, AQ_DEPTH_LOG2)) {
		ret = parse_number16(value,
				&vrb1_conf->q_ul_4g.aq_depth_log2);
	} else if (!strcmp(section, QDL4G) && !strcmp(name, NUM_QGROUPS)) {
		ret = parse_number16(value, &vrb1_conf->q_dl_4g.num_qgroups);
	} else if (!strcmp(section, QDL4G) &&
			!strcmp(name, NUM_AQS_PER_GROUPS)) {
		ret = parse_number16(value,
				&vrb1_conf->q_dl_4g.num_aqs_per_groups);
	} else if (!strcmp(section, QDL4G) && !strcmp(name, AQ_DEPTH_LOG2)) {
		ret = parse_number16(value,
				&vrb1_conf->q_dl_4g.aq_depth_log2);
	} else if (!strcmp(section, QUL5G) && !strcmp(name, NUM_QGROUPS)) {
		ret = parse_number16(value, &vrb1_conf->q_ul_5g.num_qgroups);
	} else if (!strcmp(section, QUL5G) &&
			!strcmp(name, NUM_AQS_PER_GROUPS)) {
		ret = parse_number16(value,
				&vrb1_conf->q_ul_5g.num_aqs_per_groups);
	} else if (!strcmp(section, QUL5G) && !strcmp(name, AQ_DEPTH_LOG2)) {
		ret = parse_number16(value,
				&vrb1_conf->q_ul_5g.aq_depth_log2);
	} else if (!strcmp(section, QDL5G) && !strcmp(name, NUM_QGROUPS)) {
		ret = parse_number16(value, &vrb1_conf->q_dl_5g.num_qgroups);
	} else if (!strcmp(section, QDL5G) &&
			!strcmp(name, NUM_AQS_PER_GROUPS)) {
		ret = parse_number16(value,
				&vrb1_conf->q_dl_5g.num_aqs_per_groups);
	} else if (!strcmp(section, QDL5G) && !strcmp(name, AQ_DEPTH_LOG2)) {
		ret = parse_number16(value,
				&vrb1_conf->q_dl_5g.aq_depth_log2);
	} else if (!strcmp(section, QFFT) && !strcmp(name, NUM_QGROUPS)) {
		ret = parse_number16(value, &vrb1_conf->q_fft.num_qgroups);
	} else if (!strcmp(section, QFFT) &&
			!strcmp(name, NUM_AQS_PER_GROUPS)) {
		ret = parse_number16(value,
				&vrb1_conf->q_fft.num_aqs_per_groups);
	} else if (!strcmp(section, QFFT) && !strcmp(name, AQ_DEPTH_LOG2)) {
		ret = parse_number16(value,
				&vrb1_conf->q_fft.aq_depth_log2);
	} else if (strstr(section, ARBUL4G) &&
			!strcmp(name, ROUND_ROBIN_WEIGHT)) {
		index = parse_item_no(section, ARBUL4G);
		ret = parse_number16(value,
			&vrb1_conf->arb_ul_4g[index].round_robin_weight);
	} else if (strstr(section, ARBUL4G) && !strcmp(name, GBR_THRSH1)) {
		index = parse_item_no(section, ARBUL4G);
		ret = parse_number32(value,
				&vrb1_conf->arb_ul_4g[index].gbr_threshold1);
	} else if (strstr(section, ARBUL4G) && !strcmp(name, GBR_THRSH2)) {
		index = parse_item_no(section, ARBUL4G);
		ret = parse_number32(value,
				&vrb1_conf->arb_ul_4g[index].gbr_threshold2);
	} else if (strstr(section, ARBDL4G) &&
			!strcmp(name, ROUND_ROBIN_WEIGHT)) {
		index = parse_item_no(section, ARBDL4G);
		ret = parse_number16(value,
			&vrb1_conf->arb_dl_4g[index].round_robin_weight);
	} else if (strstr(section, ARBDL4G) && !strcmp(name, GBR_THRSH1)) {
		index = parse_item_no(section, ARBDL4G);
		ret = parse_number32(value,
				&vrb1_conf->arb_dl_4g[index].gbr_threshold1);
	} else if (strstr(section, ARBDL4G) && !strcmp(name, GBR_THRSH2)) {
		index = parse_item_no(section, ARBDL4G);
		ret = parse_number32(value,
				&vrb1_conf->arb_dl_4g[index].gbr_threshold2);
	} else if (strstr(section, ARBUL5G) &&
			!strcmp(name, ROUND_ROBIN_WEIGHT)) {
		index = parse_item_no(section, ARBUL5G);
		ret = parse_number16(value,
			&vrb1_conf->arb_ul_5g[index].round_robin_weight);
	} else if (strstr(section, ARBUL5G) && !strcmp(name, GBR_THRSH1)) {
		index = parse_item_no(section, ARBUL5G);
		ret = parse_number32(value,
				&vrb1_conf->arb_ul_5g[index].gbr_threshold1);
	} else if (strstr(section, ARBUL5G) && !strcmp(name, GBR_THRSH2)) {
		index = parse_item_no(section, ARBUL5G);
		ret = parse_number32(value,
				&vrb1_conf->arb_ul_5g[index].gbr_threshold2);
	} else if (strstr(section, ARBDL5G) &&
			!strcmp(name, ROUND_ROBIN_WEIGHT)) {
		index = parse_item_no(section, ARBDL5G);
		ret = parse_number16(value,
			&vrb1_conf->arb_dl_5g[index].round_robin_weight);
	} else if (strstr(section, ARBDL5G) && !strcmp(name, GBR_THRSH1)) {
		index = parse_item_no(section, ARBDL5G);
		ret = parse_number32(value,
				&vrb1_conf->arb_dl_5g[index].gbr_threshold1);
	} else if (strstr(section, ARBDL5G) && !strcmp(name, GBR_THRSH2)) {
		index = parse_item_no(section, ARBDL5G);
		ret = parse_number32(value,
				&vrb1_conf->arb_dl_5g[index].gbr_threshold2);
	} else if (strstr(section, ARBFFT) &&
			!strcmp(name, ROUND_ROBIN_WEIGHT)) {
		index = parse_item_no(section, ARBFFT);
		ret = parse_number16(value,
			&vrb1_conf->arb_fft[index].round_robin_weight);
	} else if (strstr(section, ARBFFT) && !strcmp(name, GBR_THRSH1)) {
		index = parse_item_no(section, ARBFFT);
		ret = parse_number32(value,
				&vrb1_conf->arb_fft[index].gbr_threshold1);
	} else if (strstr(section, ARBFFT) && !strcmp(name, GBR_THRSH2)) {
		index = parse_item_no(section, ARBFFT);
		ret = parse_number32(value,
				&vrb1_conf->arb_fft[index].gbr_threshold2);
	} else {
		printf("ERROR: section (%s) or name (%s) is not valid\n",
			section, name);
		ret = 0;
	}

	if (ret != 1)
		printf("ERROR: Conversion of value (%s) failed\n", value);


	return ret;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
movq %rcx, %rbx
movq %rdx, %r12
movq %rsi, %r15
movq %rdi, %r14
leaq 0x8d14(%rip), %rsi      # 0x1bbe3
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12ef2
leaq 0x8d06(%rip), %rsi      # 0x1bbe8
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1324f
leaq 0x8cfa(%rip), %rsi      # 0x1bbf3
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x131a8
leaq 0x8d15(%rip), %rsi      # 0x1bc25
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12f33
leaq 0x8d0c(%rip), %rsi      # 0x1bc2f
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13340
leaq 0x8d04(%rip), %rsi      # 0x1bc3e
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12f5d
leaq 0x8cfa(%rip), %rsi      # 0x1bc47
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1344b
leaq 0x8cf2(%rip), %rsi      # 0x1bc56
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13201
leaq 0x8d0e(%rip), %rsi      # 0x1bc89
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13279
leaq 0x8cfd(%rip), %rsi      # 0x1bc8f
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x132f2
leaq 0x8cec(%rip), %rsi      # 0x1bc95
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13352
leaq 0x9a50(%rip), %rsi      # 0x1ca10
movq %r15, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x133a9
leaq 0x8cc4(%rip), %rsi      # 0x1bc9b
movq %r15, %rdi
callq 0xd420
testq %rax, %rax
je 0x13029
leaq 0x8cb8(%rip), %rsi      # 0x1bca3
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1345b
leaq 0x8cb4(%rip), %rsi      # 0x1bcb6
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13489
leaq 0x8cac(%rip), %rsi      # 0x1bcc5
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13507
leaq 0x8ca4(%rip), %rsi      # 0x1bcd4
movq %r15, %rdi
callq 0xd420
testq %rax, %rax
je 0x13082
leaq 0x8c5f(%rip), %rsi      # 0x1bca3
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x134ab
leaq 0x8c5b(%rip), %rsi      # 0x1bcb6
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13529
leaq 0x8c53(%rip), %rsi      # 0x1bcc5
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13573
leaq 0x8c53(%rip), %rsi      # 0x1bcdc
movq %r15, %rdi
callq 0xd420
testq %rax, %rax
je 0x130db
leaq 0x8c06(%rip), %rsi      # 0x1bca3
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1354e
leaq 0x8c02(%rip), %rsi      # 0x1bcb6
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13598
leaq 0x8bfa(%rip), %rsi      # 0x1bcc5
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x135df
leaq 0x8c02(%rip), %rsi      # 0x1bce4
movq %r15, %rdi
callq 0xd420
testq %rax, %rax
je 0x13134
leaq 0x8bad(%rip), %rsi      # 0x1bca3
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x135bd
leaq 0x8ba9(%rip), %rsi      # 0x1bcb6
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13604
leaq 0x8ba1(%rip), %rsi      # 0x1bcc5
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13651
leaq 0x98da(%rip), %rsi      # 0x1ca15
movq %r15, %rdi
callq 0xd420
testq %rax, %rax
je 0x1318d
leaq 0x8b54(%rip), %rsi      # 0x1bca3
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13629
leaq 0x8b50(%rip), %rsi      # 0x1bcb6
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13673
leaq 0x8b48(%rip), %rsi      # 0x1bcc5
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13695
leaq 0x8b58(%rip), %rdi      # 0x1bcec
xorl %ebp, %ebp
movq %r15, %rsi
movq %r12, %rdx
xorl %eax, %eax
callq 0xd150
jmp 0x134eb
leaq 0x8a4d(%rip), %rsi      # 0x1bbfc
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x132c7
leaq 0x8a4a(%rip), %rsi      # 0x1bc10
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12f09
movzbl (%rbx), %eax
xorl %ebp, %ebp
cmpl $0x31, %eax
je 0x1343c
cmpl $0x30, %eax
jne 0x134eb
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x0, 0x2(%r14)
jmp 0x1344b
leaq 0x8a54(%rip), %rsi      # 0x1bc5c
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13349
leaq 0x8a49(%rip), %rsi      # 0x1bc68
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13407
leaq 0x8a45(%rip), %rsi      # 0x1bc7b
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12f74
addq $0xa, %r14
jmp 0x134d4
movzbl (%rbx), %eax
xorl %ebp, %ebp
cmpl $0x31, %eax
je 0x133f7
cmpl $0x30, %eax
jne 0x134eb
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x0, (%r14)
jmp 0x1344b
leaq 0x89dc(%rip), %rsi      # 0x1bc5c
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x133a0
leaq 0x89d1(%rip), %rsi      # 0x1bc68
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1342a
leaq 0x89cd(%rip), %rsi      # 0x1bc7b
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12f8b
addq $0x10, %r14
jmp 0x134d4
movzbl (%rbx), %eax
xorl %ebp, %ebp
cmpl $0x31, %eax
je 0x13410
cmpl $0x30, %eax
jne 0x134eb
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x0, 0x1(%r14)
jmp 0x1344b
leaq 0x8963(%rip), %rsi      # 0x1bc5c
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13421
leaq 0x8958(%rip), %rsi      # 0x1bc68
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13455
leaq 0x8954(%rip), %rsi      # 0x1bc7b
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12fa2
addq $0x16, %r14
jmp 0x134d4
addq $0x4, %r14
jmp 0x134d4
addq $0x6, %r14
jmp 0x134d4
leaq 0x8903(%rip), %rsi      # 0x1bc5c
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13433
leaq 0x88f8(%rip), %rsi      # 0x1bc68
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x13483
leaq 0x88f4(%rip), %rsi      # 0x1bc7b
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12fb9
addq $0x1c, %r14
jmp 0x134d4
addq $0xc, %r14
jmp 0x134d4
leaq 0x88ac(%rip), %rsi      # 0x1bc5c
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x1347d
leaq 0x88a1(%rip), %rsi      # 0x1bc68
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
je 0x134d0
leaq 0x889d(%rip), %rsi      # 0x1bc7b
movq %r12, %rdi
callq 0xd1f0
testl %eax, %eax
jne 0x12fd0
addq $0x22, %r14
jmp 0x134d4
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x1, (%r14)
jmp 0x1344b
addq $0x8, %r14
jmp 0x134d4
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x1, 0x1(%r14)
jmp 0x1344b
addq $0x12, %r14
jmp 0x134d4
addq $0xe, %r14
jmp 0x134d4
addq $0x18, %r14
jmp 0x134d4
cmpb $0x0, 0x1(%rbx)
jne 0x134eb
movb $0x1, 0x2(%r14)
movl $0x1, %eax
jmp 0x134fe
addq $0x14, %r14
jmp 0x134d4
leaq 0x8839(%rip), %rsi      # 0x1bc9b
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x24, %rsi
jmp 0x13649
addq $0x1e, %r14
jmp 0x134d4
addq $0x1a, %r14
jmp 0x134d4
leaq 0x880b(%rip), %rsi      # 0x1bc9b
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x28, %rsi
jmp 0x136b5
leaq 0x8822(%rip), %rsi      # 0x1bcd4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0xe4, %rsi
jmp 0x13649
addq $0x20, %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x136c2
movl %eax, %ebp
movl $0x1, %eax
cmpl $0x1, %ebp
je 0x134fe
leaq 0x8829(%rip), %rdi      # 0x1bd1b
movq %rbx, %rsi
xorl %eax, %eax
callq 0xd150
movl %ebp, %eax
popq %rbx
popq %r12
popq %r14
popq %r15
popq %rbp
retq
leaq 0x878d(%rip), %rsi      # 0x1bc9b
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x2c, %rsi
jmp 0x136b5
leaq 0x87a4(%rip), %rsi      # 0x1bcd4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0xe8, %rsi
jmp 0x136b5
leaq 0x8787(%rip), %rsi      # 0x1bcdc
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x1a4, %rsi            # imm = 0x1A4
jmp 0x13649
leaq 0x875a(%rip), %rsi      # 0x1bcd4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0xec, %rsi
jmp 0x136b5
leaq 0x873d(%rip), %rsi      # 0x1bcdc
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x1a8, %rsi            # imm = 0x1A8
jmp 0x136b5
leaq 0x8720(%rip), %rsi      # 0x1bce4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x264, %rsi            # imm = 0x264
jmp 0x13649
leaq 0x86f6(%rip), %rsi      # 0x1bcdc
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x1ac, %rsi            # imm = 0x1AC
jmp 0x136b5
leaq 0x86d9(%rip), %rsi      # 0x1bce4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x268, %rsi            # imm = 0x268
jmp 0x136b5
leaq 0x93e5(%rip), %rsi      # 0x1ca15
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x324, %rsi            # imm = 0x324
movq %rbx, %rdi
jmp 0x134da
leaq 0x868c(%rip), %rsi      # 0x1bce4
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x26c, %rsi            # imm = 0x26C
jmp 0x136b5
leaq 0x939b(%rip), %rsi      # 0x1ca15
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x328, %rsi            # imm = 0x328
jmp 0x136b5
leaq 0x9379(%rip), %rsi      # 0x1ca15
movq %r15, %rdi
callq 0x13717
movl %eax, %eax
leaq (%rax,%rax,2), %rax
leaq (%r14,%rax,4), %rsi
addq $0x32c, %rsi            # imm = 0x32C
movq %rbx, %rdi
callq 0x13787
jmp 0x134df