// File: Laakeri[P]maxpre/src/main.cpp
// Function: parseLabelMatching(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>&)
bool parseLabelMatching(map<string, string>& flags) {
	bool labelMatching = false;
	if (flags.count("matchlabels")) {
		if (flags["matchlabels"] == "1") {
			labelMatching = true;
			cout<<"c Label matching enabled"<<endl;
			cerr<<"Label matching enabled"<<endl;
		}
		else if (flags["matchlabels"] == "0") {
			labelMatching = false;
			cout<<"c Label matching disabled"<<endl;
			cerr<<"Label matching disabled"<<endl;
		}
		else {
			cout<<"Invalid matchlabels flag"<<endl;
			cerr<<"Invalid matchlabels flag"<<endl;
			exit(0);
		}
	}
	else {
		cout<<"c No -matchlabels given, defaulting to disabled"<<endl;
		cerr<<"No -matchlabels given, defaulting to disabled"<<endl;
	}
	return labelMatching;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xf0, %rsp
movq %rdi, -0x8(%rbp)
movb $0x0, -0x9(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0xa8(%rbp)
leaq -0x31(%rbp), %rdi
movq %rdi, -0xa0(%rbp)
callq 0x4620
movq -0xa0(%rbp), %rdx
leaq 0x7f860(%rip), %rsi     # 0x8512c
leaq -0x30(%rbp), %rdi
callq 0xa430
jmp 0x58d7
movq -0xa8(%rbp), %rdi
leaq -0x30(%rbp), %rsi
callq 0xa5e0
movq %rax, -0xb0(%rbp)
jmp 0x58f0
leaq -0x30(%rbp), %rdi
callq 0x4240
leaq -0x31(%rbp), %rdi
callq 0x43f0
movq -0xb0(%rbp), %rax
cmpq $0x0, %rax
je 0x5bb6
movq -0x8(%rbp), %rax
movq %rax, -0xc0(%rbp)
leaq -0x69(%rbp), %rdi
movq %rdi, -0xb8(%rbp)
callq 0x4620
movq -0xb8(%rbp), %rdx
leaq 0x7f7f0(%rip), %rsi     # 0x8512c
leaq -0x68(%rbp), %rdi
callq 0xa430
jmp 0x5947
movq -0xc0(%rbp), %rdi
leaq -0x68(%rbp), %rsi
callq 0xa4e0
movq %rax, -0xc8(%rbp)
jmp 0x5960
movq -0xc8(%rbp), %rdi
leaq 0x80f83(%rip), %rsi     # 0x868f1
callq 0xa640
movb %al, -0xc9(%rbp)
jmp 0x597b
leaq -0x68(%rbp), %rdi
callq 0x4240
leaq -0x69(%rbp), %rdi
callq 0x43f0
movb -0xc9(%rbp), %al
testb $0x1, %al
jne 0x599c
jmp 0x5a4b
movb $0x1, -0x9(%rbp)
movq 0xa9621(%rip), %rdi     # 0xaefc8
leaq 0x7f78a(%rip), %rsi     # 0x85138
callq 0x4380
movq %rax, %rdi
movq 0xa95f3(%rip), %rsi     # 0xaefb0
callq 0x43d0
movq 0xa9627(%rip), %rdi     # 0xaeff0
leaq 0x7f76a(%rip), %rsi     # 0x8513a
callq 0x4380
movq %rax, %rdi
movq 0xa95d1(%rip), %rsi     # 0xaefb0
callq 0x43d0
jmp 0x5bb4
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x5a0c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x30(%rbp), %rdi
callq 0x4240
leaq -0x31(%rbp), %rdi
callq 0x43f0
jmp 0x5c08
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x5a3d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x68(%rbp), %rdi
callq 0x4240
leaq -0x69(%rbp), %rdi
callq 0x43f0
jmp 0x5c08
movq -0x8(%rbp), %rax
movq %rax, -0xe0(%rbp)
leaq -0x91(%rbp), %rdi
movq %rdi, -0xd8(%rbp)
callq 0x4620
movq -0xd8(%rbp), %rdx
leaq 0x7f6b5(%rip), %rsi     # 0x8512c
leaq -0x90(%rbp), %rdi
callq 0xa430
jmp 0x5a85
movq -0xe0(%rbp), %rdi
leaq -0x90(%rbp), %rsi
callq 0xa4e0
movq %rax, -0xe8(%rbp)
jmp 0x5aa1
movq -0xe8(%rbp), %rdi
leaq 0x82173(%rip), %rsi     # 0x87c22
callq 0xa640
movb %al, -0xe9(%rbp)
jmp 0x5abc
leaq -0x90(%rbp), %rdi
callq 0x4240
leaq -0x91(%rbp), %rdi
callq 0x43f0
movb -0xe9(%rbp), %al
testb $0x1, %al
jne 0x5ae3
jmp 0x5b67
movb $0x0, -0x9(%rbp)
movq 0xa94da(%rip), %rdi     # 0xaefc8
leaq 0x7f65c(%rip), %rsi     # 0x85151
callq 0x4380
movq %rax, %rdi
movq 0xa94ac(%rip), %rsi     # 0xaefb0
callq 0x43d0
movq 0xa94e0(%rip), %rdi     # 0xaeff0
leaq 0x7f63c(%rip), %rsi     # 0x85153
callq 0x4380
movq %rax, %rdi
movq 0xa948a(%rip), %rsi     # 0xaefb0
callq 0x43d0
jmp 0x5bb2
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
jmp 0x5b56
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x40(%rbp)
movl %eax, -0x44(%rbp)
leaq -0x90(%rbp), %rdi
callq 0x4240
leaq -0x91(%rbp), %rdi
callq 0x43f0
jmp 0x5c08
movq 0xa945a(%rip), %rdi     # 0xaefc8
leaq 0x7f5f6(%rip), %rsi     # 0x8516b
callq 0x4380
movq %rax, %rdi
movq 0xa942c(%rip), %rsi     # 0xaefb0
callq 0x43d0
movq 0xa9460(%rip), %rdi     # 0xaeff0
leaq 0x7f5d4(%rip), %rsi     # 0x8516b
callq 0x4380
movq %rax, %rdi
movq 0xa940a(%rip), %rsi     # 0xaefb0
callq 0x43d0
xorl %edi, %edi
callq 0x4480
jmp 0x5bb4
jmp 0x5bfa
movq 0xa940b(%rip), %rdi     # 0xaefc8
leaq 0x7f5c0(%rip), %rsi     # 0x85184
callq 0x4380
movq %rax, %rdi
movq 0xa93dd(%rip), %rsi     # 0xaefb0
callq 0x43d0
movq 0xa9411(%rip), %rdi     # 0xaeff0
leaq 0x7f5a0(%rip), %rsi     # 0x85186
callq 0x4380
movq %rax, %rdi
movq 0xa93bb(%rip), %rsi     # 0xaefb0
callq 0x43d0
movb -0x9(%rbp), %al
andb $0x1, %al
addq $0xf0, %rsp
popq %rbp
retq
movq -0x40(%rbp), %rdi
callq 0x4610
nopw %cs:(%rax,%rax)