// File: /workspace/github_cpp_makefile_star2_O2/rossy[P]crossc/SPIRV-Cross/spirv_msl.cpp
// Function: spirv_cross::CompilerMSL::emit_entry_point_declarations()
void CompilerMSL::emit_entry_point_declarations()
{
	// FIXME: Get test coverage here ...

	// Emit constexpr samplers here.
	for (auto &samp : constexpr_samplers)
	{
		auto &var = get<SPIRVariable>(samp.first);
		auto &type = get<SPIRType>(var.basetype);
		if (type.basetype == SPIRType::Sampler)
			add_resource_name(samp.first);

		vector<string> args;
		auto &s = samp.second;

		if (s.coord != MSL_SAMPLER_COORD_NORMALIZED)
			args.push_back("coord::pixel");

		if (s.min_filter == s.mag_filter)
		{
			if (s.min_filter != MSL_SAMPLER_FILTER_NEAREST)
				args.push_back("filter::linear");
		}
		else
		{
			if (s.min_filter != MSL_SAMPLER_FILTER_NEAREST)
				args.push_back("min_filter::linear");
			if (s.mag_filter != MSL_SAMPLER_FILTER_NEAREST)
				args.push_back("mag_filter::linear");
		}

		switch (s.mip_filter)
		{
		case MSL_SAMPLER_MIP_FILTER_NONE:
			// Default
			break;
		case MSL_SAMPLER_MIP_FILTER_NEAREST:
			args.push_back("mip_filter::nearest");
			break;
		case MSL_SAMPLER_MIP_FILTER_LINEAR:
			args.push_back("mip_filter::linear");
			break;
		default:
			SPIRV_CROSS_THROW("Invalid mip filter.");
		}

		if (s.s_address == s.t_address && s.s_address == s.r_address)
		{
			if (s.s_address != MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE)
				args.push_back(create_sampler_address("", s.s_address));
		}
		else
		{
			if (s.s_address != MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE)
				args.push_back(create_sampler_address("s_", s.s_address));
			if (s.t_address != MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE)
				args.push_back(create_sampler_address("t_", s.t_address));
			if (s.r_address != MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE)
				args.push_back(create_sampler_address("r_", s.r_address));
		}

		if (s.compare_enable)
		{
			switch (s.compare_func)
			{
			case MSL_SAMPLER_COMPARE_FUNC_ALWAYS:
				args.push_back("compare_func::always");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_NEVER:
				args.push_back("compare_func::never");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_EQUAL:
				args.push_back("compare_func::equal");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_NOT_EQUAL:
				args.push_back("compare_func::not_equal");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_LESS:
				args.push_back("compare_func::less");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_LESS_EQUAL:
				args.push_back("compare_func::less_equal");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_GREATER:
				args.push_back("compare_func::greater");
				break;
			case MSL_SAMPLER_COMPARE_FUNC_GREATER_EQUAL:
				args.push_back("compare_func::greater_equal");
				break;
			default:
				SPIRV_CROSS_THROW("Invalid sampler compare function.");
			}
		}

		if (s.s_address == MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER || s.t_address == MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER ||
		    s.r_address == MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER)
		{
			switch (s.border_color)
			{
			case MSL_SAMPLER_BORDER_COLOR_OPAQUE_BLACK:
				args.push_back("border_color::opaque_black");
				break;
			case MSL_SAMPLER_BORDER_COLOR_OPAQUE_WHITE:
				args.push_back("border_color::opaque_white");
				break;
			case MSL_SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK:
				args.push_back("border_color::transparent_black");
				break;
			default:
				SPIRV_CROSS_THROW("Invalid sampler border color.");
			}
		}

		if (s.anisotropy_enable)
			args.push_back(join("max_anisotropy(", s.max_anisotropy, ")"));
		if (s.lod_clamp_enable)
		{
			args.push_back(
			    join("lod_clamp(", convert_to_string(s.lod_clamp_min), ", ", convert_to_string(s.lod_clamp_max), ")"));
		}

		statement("constexpr sampler ",
		          type.basetype == SPIRType::SampledImage ? to_sampler_expression(samp.first) : to_name(samp.first),
		          "(", merge(args), ");");
	}

	// Emit buffer arrays here.
	for (uint32_t array_id : buffer_arrays)
	{
		const auto &var = get<SPIRVariable>(array_id);
		const auto &type = get<SPIRType>(var.basetype);
		string name = get_name(array_id);
		statement(get_argument_address_space(var) + " " + type_to_glsl(type) + "* " + name + "[] =");
		begin_scope();
		for (uint32_t i = 0; i < type.array[0]; ++i)
			statement(name + "_" + convert_to_string(i) + ",");
		end_scope_decl();
		statement("");
	}
	// For some reason, without this, we end up emitting the arrays twice.
	buffer_arrays.clear();
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x138, %rsp            # imm = 0x138
movq %rdi, 0x8(%rsp)
leaq 0x9d8(%rdi), %rbx
leaq 0x10(%rsp), %r15
leaq 0x38(%rsp), %r12
leaq 0x70(%rsp), %r13
leaq 0x98(%rsp), %rbp
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x6ed37
movl 0x8(%rbx), %esi
movq 0x8(%rsp), %r14
movq %r14, %rdi
callq 0x9c0e
movl 0xc(%rax), %esi
movq %r14, %rdi
callq 0x90a4
movq %rax, %r14
cmpl $0xf, 0xc(%rax)
jne 0x6e8a7
movl 0x8(%rbx), %esi
movq 0x8(%rsp), %rdi
callq 0x22d1a
andq $0x0, 0x80(%rsp)
xorps %xmm0, %xmm0
movaps %xmm0, 0x70(%rsp)
cmpl $0x0, 0xc(%rbx)
je 0x6e8e3
movq %r15, %rdi
leaq 0x2c853(%rip), %rsi     # 0x9b11b
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x10(%rbx), %ecx
movl 0x14(%rbx), %eax
cmpl %eax, %ecx
jne 0x6e910
testl %ecx, %ecx
je 0x6e965
movq %r15, %rdi
leaq 0x2c844(%rip), %rsi     # 0x9b13f
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6e95d
testl %ecx, %ecx
je 0x6e93c
movq %r15, %rdi
leaq 0x2c80a(%rip), %rsi     # 0x9b128
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x14(%rbx), %eax
testl %eax, %eax
je 0x6e965
movq %r15, %rdi
leaq 0x2c7f1(%rip), %rsi     # 0x9b13b
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x18(%rbx), %eax
testl %eax, %eax
je 0x6e9be
cmpl $0x2, %eax
je 0x6e999
cmpl $0x1, %eax
jne 0x6ef95
movq %r15, %rdi
leaq 0x2c7ca(%rip), %rsi     # 0x9b14e
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6e9b6
movq %r15, %rdi
leaq 0x2c7bf(%rip), %rsi     # 0x9b162
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x1c(%rbx), %edx
movl 0x20(%rbx), %eax
cmpl %eax, %edx
jne 0x6e9f2
cmpl 0x24(%rbx), %edx
jne 0x6e9f2
cmpl $0x1, %edx
je 0x6ea6f
movq %r15, %rdi
leaq 0x20ea7(%rip), %rsi     # 0x8f887
callq 0x6f2b0
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6ea67
cmpl $0x1, %edx
je 0x6ea1c
movq %r15, %rdi
leaq 0x2c788(%rip), %rsi     # 0x9b189
callq 0x6f2b0
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x20(%rbx), %eax
cmpl $0x1, %eax
je 0x6ea45
movq %r15, %rdi
leaq 0x2a021(%rip), %rsi     # 0x98a4c
movl %eax, %edx
callq 0x6f2b0
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movl 0x24(%rbx), %edx
cmpl $0x1, %edx
je 0x6ea6f
movq %r15, %rdi
leaq 0x207d8(%rip), %rsi     # 0x8f22f
callq 0x6f2b0
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
cmpb $0x1, 0x3c(%rbx)
jne 0x6eb9d
movl 0x28(%rbx), %eax
cmpq $0x7, %rax
ja 0x6f02e
leaq 0x2bd53(%rip), %rcx     # 0x9a7e0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq %r15, %rdi
leaq 0x2c701(%rip), %rsi     # 0x9b1a1
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c761(%rip), %rsi     # 0x9b223
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c710(%rip), %rsi     # 0x9b1f4
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c707(%rip), %rsi     # 0x9b20d
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c667(%rip), %rsi     # 0x9b18c
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c69d(%rip), %rsi     # 0x9b1e1
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c652(%rip), %rsi     # 0x9b1b5
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6eb95
movq %r15, %rdi
leaq 0x2c647(%rip), %rsi     # 0x9b1c9
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
cmpl $0x2, 0x1c(%rbx)
je 0x6ebaf
cmpl $0x2, 0x20(%rbx)
je 0x6ebaf
cmpl $0x2, 0x24(%rbx)
jne 0x6ec27
movl 0x2c(%rbx), %eax
testl %eax, %eax
je 0x6ec02
cmpl $0x2, %eax
je 0x6ebe3
cmpl $0x1, %eax
jne 0x6efe3
movq %r15, %rdi
leaq 0x2c693(%rip), %rsi     # 0x9b261
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6ec1f
movq %r15, %rdi
leaq 0x2c68f(%rip), %rsi     # 0x9b27c
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
jmp 0x6ec1f
movq %r15, %rdi
leaq 0x2c68b(%rip), %rsi     # 0x9b297
movq %r12, %rdx
callq 0x6100
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
cmpb $0x1, 0x3e(%rbx)
jne 0x6ec5a
leaq 0x38(%rbx), %rdx
movq %r15, %rdi
leaq 0x2c69a(%rip), %rsi     # 0x9b2d5
leaq 0x26db3(%rip), %rcx     # 0x959f5
callq 0x7f893
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
cmpb $0x1, 0x3d(%rbx)
jne 0x6ecc0
movss 0x30(%rbx), %xmm0
movq %r12, %rdi
callq 0x43231
movss 0x34(%rbx), %xmm0
movq %rbp, %rdi
callq 0x43231
movq %r15, %rdi
leaq 0x2c661(%rip), %rsi     # 0x9b2e5
movq %r12, %rdx
leaq 0x263fd(%rip), %rcx     # 0x9508b
movq %rbp, %r8
leaq 0x26d5d(%rip), %r9      # 0x959f5
callq 0x7f90d
movq %r13, %rdi
movq %r15, %rsi
callq 0xcc8c
movq %r15, %rdi
callq 0x6548
movq %rbp, %rdi
callq 0x6548
movq %r12, %rdi
callq 0x6548
cmpl $0xe, 0xc(%r14)
movl 0x8(%rbx), %edx
jne 0x6ecd9
movq %r15, %rdi
movq 0x8(%rsp), %rsi
callq 0x6f3a6
jmp 0x6ecea
movq 0x8(%rsp), %rsi
movq (%rsi), %rax
movq %r15, %rdi
pushq $0x1
popq %rcx
callq *0x38(%rax)
movq %r12, %rdi
movq %r13, %rsi
callq 0x41980
movq 0x8(%rsp), %rdi
leaq 0x2c5ef(%rip), %rsi     # 0x9b2f0
movq %r15, %rdx
leaq 0x2ef1e(%rip), %rcx     # 0x9dc29
movq %r12, %r8
leaq 0x2ad6b(%rip), %r9      # 0x99a80
callq 0x7f99a
movq %r12, %rdi
callq 0x6548
movq %r15, %rdi
callq 0x6548
movq %r13, %rdi
callq 0xb98a
jmp 0x6e86a
movq 0x8(%rsp), %rax
movq 0xa00(%rax), %rcx
movq 0xa08(%rax), %rax
movq %rax, 0x58(%rsp)
leaq 0xb8(%rsp), %r14
leaq 0x118(%rsp), %r12
leaq 0x70(%rsp), %r15
leaq 0x98(%rsp), %r13
leaq 0x38(%rsp), %rbp
cmpq 0x58(%rsp), %rcx
je 0x6ef67
movq %rcx, 0x60(%rsp)
movl (%rcx), %esi
movl %esi, 0x34(%rsp)
movq 0x8(%rsp), %rbx
movq %rbx, %rdi
callq 0x9c0e
movq %rax, 0x68(%rsp)
movl 0xc(%rax), %esi
movq %rbx, %rdi
callq 0x90a4
movq %rax, %rbx
movq 0x8(%rsp), %rdi
movl 0x34(%rsp), %esi
callq 0x12084
leaq 0x10(%rsp), %rdi
movq %rax, %rsi
callq 0x63c0
movq %r14, %rdi
movq 0x8(%rsp), %rsi
movq 0x68(%rsp), %rdx
callq 0x6f534
leaq 0xd8(%rsp), %rdi
movq %r14, %rsi
leaq 0x20aa0(%rip), %rdx     # 0x8f886
callq 0xab3f
movq 0x8(%rsp), %rsi
movq (%rsi), %rax
leaq 0xf8(%rsp), %r14
movq %r14, %rdi
movq %rbx, %rdx
xorl %ecx, %ecx
callq *0x98(%rax)
movq %r12, %rdi
leaq 0xd8(%rsp), %rsi
movq %r14, %rdx
callq 0x1743e
movq %r15, %rdi
movq %r12, %rsi
leaq 0x256fc(%rip), %rdx     # 0x94525
callq 0xab3f
movq %r13, %rdi
movq %r15, %rsi
leaq 0x10(%rsp), %rdx
callq 0x42dd2
movq %rbp, %rdi
movq %r13, %rsi
leaq 0x2c4b8(%rip), %rdx     # 0x9b303
callq 0xab3f
movq 0x8(%rsp), %r14
movq %r14, %rdi
movq %rbp, %rsi
callq 0x7fa90
movq %rbp, %rdi
callq 0x6548
movq %r13, %rdi
callq 0x6548
movq %r15, %rdi
callq 0x6548
movq %r12, %rdi
callq 0x6548
leaq 0xf8(%rsp), %rdi
callq 0x6548
leaq 0xd8(%rsp), %rdi
callq 0x6548
leaq 0xb8(%rsp), %rdi
callq 0x6548
movq %r14, %rdi
callq 0x22d28
xorl %r14d, %r14d
movq 0x20(%rbx), %rax
cmpl (%rax), %r14d
jae 0x6ef2c
movq %r15, %rdi
leaq 0x10(%rsp), %rsi
leaq 0x2a07d(%rip), %rdx     # 0x98f47
callq 0x174a5
movq %r12, %rdi
movl %r14d, %esi
callq 0x1c182
movq %r13, %rdi
movq %r15, %rsi
movq %r12, %rdx
callq 0x1743e
movq %rbp, %rdi
movq %r13, %rsi
leaq 0x2da50(%rip), %rdx     # 0x9c945
callq 0xab3f
movq 0x8(%rsp), %rdi
movq %rbp, %rsi
callq 0x7fa90
movq %rbp, %rdi
callq 0x6548
movq %r13, %rdi
callq 0x6548
movq %r12, %rdi
callq 0x6548
movq %r15, %rdi
callq 0x6548
incl %r14d
jmp 0x6eeb2
movq 0x8(%rsp), %rdi
callq 0x22dba
movq 0x8(%rsp), %rdi
leaq 0x20945(%rip), %rsi     # 0x8f887
callq 0x928e
leaq 0x10(%rsp), %rdi
callq 0x6548
movq 0x60(%rsp), %rcx
addq $0x4, %rcx
leaq 0xb8(%rsp), %r14
jmp 0x6ed71
movq 0x8(%rsp), %rcx
movq 0xa00(%rcx), %rax
cmpq %rax, 0xa08(%rcx)
je 0x6ef83
movq %rax, 0xa08(%rcx)
addq $0x138, %rsp            # imm = 0x138
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
pushq $0x10
popq %rdi
callq 0x6140
movq %rax, %r14
leaq 0x2c1ce(%rip), %rsi     # 0x9b175
leaq 0x10(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x6100
movb $0x1, %bpl
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x6f6e
xorl %ebp, %ebp
leaq 0x77df1(%rip), %rsi     # 0xe6dc0
movq 0x7900a(%rip), %rdx     # 0xe7fe0
movq %r14, %rdi
callq 0x6490
jmp 0x6f077
pushq $0x10
popq %rdi
callq 0x6140
movq %rax, %r14
leaq 0x2c2c2(%rip), %rsi     # 0x9b2b7
leaq 0x10(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x6100
movb $0x1, %bpl
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x6f6e
xorl %ebp, %ebp
leaq 0x77da3(%rip), %rsi     # 0xe6dc0
movq 0x78fbc(%rip), %rdx     # 0xe7fe0
movq %r14, %rdi
callq 0x6490
jmp 0x6f077
pushq $0x10
popq %rdi
callq 0x6140
movq %rax, %r14
leaq 0x2c1ff(%rip), %rsi     # 0x9b23f
leaq 0x10(%rsp), %rdi
leaq 0x38(%rsp), %rdx
callq 0x6100
movb $0x1, %bpl
leaq 0x10(%rsp), %rsi
movq %r14, %rdi
callq 0x6f6e
xorl %ebp, %ebp
leaq 0x77d58(%rip), %rsi     # 0xe6dc0
movq 0x78f71(%rip), %rdx     # 0xe7fe0
movq %r14, %rdi
callq 0x6490
jmp 0x6f0f0
jmp 0x6f107
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f0f0
jmp 0x6f107
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x6548
testb %bpl, %bpl
jne 0x6f10a
jmp 0x6f23c
movq %rax, %rbx
movq %r14, %rdi
callq 0x6200
jmp 0x6f23c
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22f
jmp 0x6f22a
jmp 0x6f22a
jmp 0x6f22a
movq %rax, %rbx
jmp 0x6f197
jmp 0x6f22f
movq %rax, %rbx
jmp 0x6f1a4
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x6548
leaq 0x98(%rsp), %rdi
callq 0x6548
leaq 0x38(%rsp), %rdi
jmp 0x6f237
jmp 0x6f22a
jmp 0x6f22f
movq %rax, %rbx
jmp 0x6f1e5
movq %rax, %rbx
jmp 0x6f1db
movq %rax, %rbx
jmp 0x6f1ce
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x6548
leaq 0x98(%rsp), %rdi
callq 0x6548
leaq 0x70(%rsp), %rdi
callq 0x6548
leaq 0x118(%rsp), %rdi
callq 0x6548
jmp 0x6f206
jmp 0x6f28c
movq %rax, %rbx
jmp 0x6f220
movq %rax, %rbx
jmp 0x6f213
movq %rax, %rbx
leaq 0xf8(%rsp), %rdi
callq 0x6548
leaq 0xd8(%rsp), %rdi
callq 0x6548
leaq 0xb8(%rsp), %rdi
jmp 0x6f299
movq %rax, %rbx
jmp 0x6f23c
movq %rax, %rbx
leaq 0x10(%rsp), %rdi
callq 0x6548
leaq 0x70(%rsp), %rdi
callq 0xb98a
jmp 0x6f2a8
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x6548
jmp 0x6f232
jmp 0x6f28c
movq %rax, %rbx
leaq 0x38(%rsp), %rdi
callq 0x6548
jmp 0x6f270
movq %rax, %rbx
jmp 0x6f27d
movq %rax, %rbx
leaq 0x98(%rsp), %rdi
callq 0x6548
leaq 0x118(%rsp), %rdi
callq 0x6548
jmp 0x6f294
movq %rax, %rbx
jmp 0x6f29e
movq %rax, %rbx
leaq 0x70(%rsp), %rdi
callq 0x6548
leaq 0x10(%rsp), %rdi
callq 0x6548
movq %rbx, %rdi
callq 0x64b0