// File: /workspace/github_cpp_makefile_star2_O2/rpavlik[P]edid-decode/edid-decode.cpp
// Function: msg(bool, char const*, ...)
void msg(bool is_warn, const char *fmt, ...)
{
	char buf[1024] = "";
	va_list ap;

	va_start(ap, fmt);
	vsprintf(buf, fmt, ap);
	va_end(ap);

	if (is_warn)
		state.warnings++;
	else
		state.failures++;
	if (state.data_block.empty())
		s_msgs[state.block_nr][is_warn] += std::string("  ") + buf;
	else
		s_msgs[state.block_nr][is_warn] += "  " + state.data_block + ": " + buf;

	if (options[OptCheckInline])
		printf("%s: %s", is_warn ? "WARN" : "FAIL", buf);
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x538, %rsp            # imm = 0x538
movq %rsi, %r14
movl %edi, %ebx
leaq 0x80(%rsp), %r12
movq %rdx, 0x10(%r12)
movq %rcx, 0x18(%r12)
movq %r8, 0x20(%r12)
movq %r9, 0x28(%r12)
testb %al, %al
je 0x369f
movaps %xmm0, 0xb0(%rsp)
movaps %xmm1, 0xc0(%rsp)
movaps %xmm2, 0xd0(%rsp)
movaps %xmm3, 0xe0(%rsp)
movaps %xmm4, 0xf0(%rsp)
movaps %xmm5, 0x100(%rsp)
movaps %xmm6, 0x110(%rsp)
movaps %xmm7, 0x120(%rsp)
leaq 0x130(%rsp), %r15
movl $0x400, %edx            # imm = 0x400
movq %r15, %rdi
xorl %esi, %esi
callq 0x3170
leaq 0x60(%rsp), %rdx
movq %r12, 0x10(%rdx)
leaq 0x560(%rsp), %rax
movq %rax, 0x8(%rdx)
movabsq $0x3000000010, %rax     # imm = 0x3000000010
movq %rax, (%rdx)
movq %r15, %rdi
movq %r14, %rsi
callq 0x3140
testl %ebx, %ebx
je 0x36ef
incl 0x3108f(%rip)           # 0x3477c
jmp 0x36f5
incl 0x3108b(%rip)           # 0x34780
cmpq $0x0, 0x3103b(%rip)     # 0x34738
je 0x3785
leaq 0x1bd8f(%rip), %rsi     # 0x1f499
leaq 0x3101f(%rip), %rdx     # 0x34730
leaq 0x40(%rsp), %r14
movq %r14, %rdi
callq 0x75ff
leaq 0x291b2(%rip), %rdx     # 0x2c8d7
movq %rsp, %rdi
movq %r14, %rsi
callq 0x75a4
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
leaq 0x130(%rsp), %rdx
callq 0x75a4
movl 0x30fbd(%rip), %eax     # 0x34708
shlq $0x6, %rax
leaq 0x3192a(%rip), %rcx     # 0x35080
movzbl %bl, %edi
shll $0x5, %edi
addq %rcx, %rdi
addq %rax, %rdi
leaq 0x20(%rsp), %rsi
callq 0x3480
leaq 0x20(%rsp), %rdi
callq 0x3130
movq %rsp, %rdi
callq 0x3130
leaq 0x40(%rsp), %rdi
jmp 0x37e2
leaq 0x1bd0d(%rip), %rsi     # 0x1f499
movq %rsp, %rdi
leaq 0x40(%rsp), %rdx
callq 0x75c4
leaq 0x20(%rsp), %rdi
movq %rsp, %rsi
leaq 0x130(%rsp), %rdx
callq 0x75a4
movl 0x30f54(%rip), %eax     # 0x34708
shlq $0x6, %rax
leaq 0x318c1(%rip), %rcx     # 0x35080
movzbl %bl, %edi
shll $0x5, %edi
addq %rcx, %rdi
addq %rax, %rdi
leaq 0x20(%rsp), %rsi
callq 0x3480
leaq 0x20(%rsp), %rdi
callq 0x3130
movq %rsp, %rdi
callq 0x3130
cmpb $0x0, 0x35915(%rip)     # 0x39103
je 0x381a
leaq 0x1690d(%rip), %rax     # 0x1a104
leaq 0x1690b(%rip), %rsi     # 0x1a109
testb %bl, %bl
cmovneq %rax, %rsi
leaq 0x168f2(%rip), %rdi     # 0x1a0fd
leaq 0x130(%rsp), %rdx
xorl %eax, %eax
callq 0x3030
addq $0x538, %rsp            # imm = 0x538
popq %rbx
popq %r12
popq %r14
popq %r15
retq
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x3130
jmp 0x383b
movq %rax, %rbx
movq %rsp, %rdi
jmp 0x3869
movq %rax, %rbx
jmp 0x386e
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x3130
jmp 0x3857
movq %rax, %rbx
movq %rsp, %rdi
callq 0x3130
jmp 0x3864
movq %rax, %rbx
leaq 0x40(%rsp), %rdi
callq 0x3130
movq %rbx, %rdi
callq 0x3430