// File: /workspace/github_c_makefile_star2_O3/uhlin[P]enhanced-duc/source/settings.c
// Function: check_some_settings_strictly
void
check_some_settings_strictly(void)
{
	const char	*reason = "";
	const char	*password = setting("password");
	const char	*username = setting("username");
	const size_t	 password_maxlen = 120;
	const size_t	 username_maxlen = 50;

	if (strings_match(username, "") || strings_match(password, ""))
		fatal(0, "error: empty username nor password");
	else if (strlen(username) > username_maxlen)
		fatal(0, "error: username too long. max=%zu", username_maxlen);
	else if (strlen(password) > password_maxlen)
		fatal(0, "error: password too long. max=%zu", password_maxlen);
	else if (!is_ip_addr_ok(&reason))
		fatal(0, "is_ip_addr_ok: error: %s", reason);
	else if (!is_hostname_ok(setting("sp_hostname"), &reason))
		fatal(0, "is_hostname_ok: sp_hostname: %s", reason);
	else if (!is_port_ok())
		fatal(0, "error: bogus port number");
	else if (!is_hostname_ok(setting("primary_ip_lookup_srv"), &reason))
		fatal(0, "is_hostname_ok: primary_ip_lookup_srv: %s", reason);
	else if (!is_hostname_ok(setting("backup_ip_lookup_srv"), &reason))
		fatal(0, "is_hostname_ok: backup_ip_lookup_srv: %s", reason);
	else
		return;
}

// Assembly:
pushq %rbx
subq $0x10, %rsp
leaq 0x2dc4(%rip), %rdi      # 0xa791
callq 0x7889
movq %rax, %rbx
leaq 0x23eb(%rip), %rdi      # 0x9dc7
callq 0x7889
cmpb $0x0, (%rax)
je 0x7b23
cmpb $0x0, (%rbx)
je 0x7b23
movq %rax, %rdi
callq 0x41c0
cmpq $0x33, %rax
jae 0x7b2c
movq %rbx, %rdi
callq 0x41c0
cmpq $0x79, %rax
jae 0x7b3a
leaq 0x2033(%rip), %rdi      # 0x9a51
callq 0x7889
cmpb $0x0, (%rax)
je 0x7b48
movq %rax, %rbx
leaq 0x231e(%rip), %rsi      # 0x9d54
movq %rax, %rdi
callq 0x4640
testl %eax, %eax
je 0x7a73
leaq 0xc(%rsp), %rdx
movl $0x2, %edi
movq %rbx, %rsi
callq 0x47e0
leaq 0x2b93(%rip), %rdx      # 0xa5ee
leaq 0x2449(%rip), %rcx      # 0x9eab
testl %eax, %eax
cmoveq %rdx, %rcx
movq %rcx, (%rsp)
jne 0x7a7e
jmp 0x7b4f
leaq 0x2431(%rip), %rax      # 0x9eab
movq %rax, (%rsp)
leaq 0x2330(%rip), %rdi      # 0x9db5
callq 0x7889
movq %rsp, %rsi
movq %rax, %rdi
callq 0x7b96
testb %al, %al
je 0x7b58
leaq 0x286c(%rip), %rdi      # 0xa310
callq 0x7889
movq %rax, %rbx
cmpb $0x38, (%rax)
jne 0x7abd
cmpb $0x30, 0x1(%rbx)
jne 0x7abd
cmpb $0x0, 0x2(%rbx)
je 0x7ae7
leaq 0x2b80(%rip), %rsi      # 0xa644
movq %rbx, %rdi
callq 0x4640
testl %eax, %eax
je 0x7ae7
leaq 0x3042(%rip), %rsi      # 0xab19
movq %rbx, %rdi
callq 0x4640
testl %eax, %eax
jne 0x7b86
leaq 0x2a35(%rip), %rdi      # 0xa523
callq 0x7889
movq %rsp, %rsi
movq %rax, %rdi
callq 0x7b96
testb %al, %al
je 0x7b65
leaq 0x2a02(%rip), %rdi      # 0xa50b
callq 0x7889
movq %rsp, %rsi
movq %rax, %rdi
callq 0x7b96
testb %al, %al
je 0x7b72
addq $0x10, %rsp
popq %rbx
retq
leaq 0x2c4d(%rip), %rsi      # 0xa777
jmp 0x7b8d
leaq 0x2c67(%rip), %rsi      # 0xa79a
movl $0x32, %edx
jmp 0x7b7d
leaq 0x2c7b(%rip), %rsi      # 0xa7bc
movl $0x78, %edx
jmp 0x7b7d
leaq 0x2f99(%rip), %rdx      # 0xaae8
leaq 0x2c88(%rip), %rsi      # 0xa7de
jmp 0x7b7d
movq (%rsp), %rdx
leaq 0x2c94(%rip), %rsi      # 0xa7f7
jmp 0x7b7d
movq (%rsp), %rdx
leaq 0x2cc0(%rip), %rsi      # 0xa830
jmp 0x7b7d
movq (%rsp), %rdx
leaq 0x2cdd(%rip), %rsi      # 0xa85a
xorl %edi, %edi
xorl %eax, %eax
callq 0x55ac
leaq 0x2c8a(%rip), %rsi      # 0xa817
xorl %edi, %edi
xorl %eax, %eax
callq 0x55ac