// File: MarkCBell[P]twister/./twister/kernel/parsing.cpp
// Function: load_file_contents(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
std::string load_file_contents(const std::string file)
{
	std::ifstream myfile(file.c_str());
	if (! myfile.is_open())
		output_error("Unknown file requested.");
	
	std::string line = "";
	std::string contents = "";
	while (myfile.good())
	{
		getline (myfile, line);
		contents += line + "\n";
	}
	myfile.close();
	
	return contents;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x2e0, %rsp            # imm = 0x2E0
movq %rsi, -0x2c0(%rbp)
movq %rdi, %rax
movq -0x2c0(%rbp), %rdi
movq %rax, -0x2b8(%rbp)
movq %rax, %rcx
movq %rcx, -0x2b0(%rbp)
movq %rax, -0x8(%rbp)
movq %rdi, -0x10(%rbp)
callq 0x3120
movq %rax, %rsi
leaq -0x218(%rbp), %rdi
movq %rdi, -0x2a8(%rbp)
movl $0x8, %edx
callq 0x3580
movq -0x2a8(%rbp), %rdi
callq 0x34d0
movb %al, -0x299(%rbp)
jmp 0x118e9
movb -0x299(%rbp), %al
testb $0x1, %al
jne 0x119aa
jmp 0x118f9
leaq -0x249(%rbp), %rdi
movq %rdi, -0x2c8(%rbp)
callq 0x3560
movq -0x2c8(%rbp), %rdx
leaq 0x159bc(%rip), %rsi     # 0x272d6
leaq -0x248(%rbp), %rdi
callq 0x4e10
jmp 0x11928
leaq -0x248(%rbp), %rdi
callq 0x4d40
jmp 0x11936
leaq -0x248(%rbp), %rdi
callq 0x35f8
leaq -0x249(%rbp), %rdi
callq 0x3360
jmp 0x119aa
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
jmp 0x11b91
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
jmp 0x11999
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
leaq -0x248(%rbp), %rdi
callq 0x35f8
leaq -0x249(%rbp), %rdi
callq 0x3360
jmp 0x11b91
leaq -0x271(%rbp), %rdi
movq %rdi, -0x2d0(%rbp)
callq 0x3560
movq -0x2d0(%rbp), %rdx
leaq 0x15927(%rip), %rsi     # 0x272f2
leaq -0x270(%rbp), %rdi
callq 0x4e10
jmp 0x119d9
leaq -0x271(%rbp), %rdi
callq 0x3360
movb $0x0, -0x272(%rbp)
leaq -0x273(%rbp), %rdi
movq %rdi, -0x2d8(%rbp)
callq 0x3560
movq -0x2b8(%rbp), %rdi
movq -0x2d8(%rbp), %rdx
leaq 0x158de(%rip), %rsi     # 0x272f2
callq 0x4e10
jmp 0x11a1b
leaq -0x273(%rbp), %rdi
callq 0x3360
movq -0x218(%rbp), %rax
movq -0x18(%rax), %rax
leaq -0x218(%rbp,%rax), %rdi
callq 0x3510
movb %al, -0x2d9(%rbp)
jmp 0x11a47
movb -0x2d9(%rbp), %al
testb $0x1, %al
jne 0x11a56
jmp 0x11b27
leaq -0x218(%rbp), %rdi
leaq -0x270(%rbp), %rsi
callq 0x3090
jmp 0x11a6b
leaq 0x155ed(%rip), %rdx     # 0x2705f
leaq -0x298(%rbp), %rdi
leaq -0x270(%rbp), %rsi
callq 0x9200
jmp 0x11a87
movq -0x2b8(%rbp), %rdi
leaq -0x298(%rbp), %rsi
callq 0x33e0
jmp 0x11a9c
leaq -0x298(%rbp), %rdi
callq 0x35f8
jmp 0x11a27
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
leaq -0x271(%rbp), %rdi
callq 0x3360
jmp 0x11b91
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
leaq -0x273(%rbp), %rdi
callq 0x3360
jmp 0x11b85
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
jmp 0x11b79
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x220(%rbp)
movl %eax, -0x224(%rbp)
leaq -0x298(%rbp), %rdi
callq 0x35f8
jmp 0x11b79
leaq -0x218(%rbp), %rdi
callq 0x30a0
jmp 0x11b35
movb $0x1, -0x272(%rbp)
testb $0x1, -0x272(%rbp)
jne 0x11b51
movq -0x2b8(%rbp), %rdi
callq 0x35f8
leaq -0x270(%rbp), %rdi
callq 0x35f8
leaq -0x218(%rbp), %rdi
callq 0x30b0
movq -0x2b0(%rbp), %rax
addq $0x2e0, %rsp            # imm = 0x2E0
popq %rbp
retq
movq -0x2b8(%rbp), %rdi
callq 0x35f8
leaq -0x270(%rbp), %rdi
callq 0x35f8
leaq -0x218(%rbp), %rdi
callq 0x30b0
movq -0x220(%rbp), %rdi
callq 0x3550
nopl (%rax)