// File: /workspace/github_cpp_makefile_star2_O1/rossy[P]crossc/SPIRV-Cross/spirv_msl.cpp
// Function: spirv_cross::CompilerMSL::entry_point_args[abi:cxx11](bool)
string CompilerMSL::entry_point_args(bool append_comma)
{
	string ep_args;

	// Stage-in structure
	if (stage_in_var_id)
	{
		auto &var = get<SPIRVariable>(stage_in_var_id);
		auto &type = get<SPIRType>(var.basetype);

		if (!ep_args.empty())
			ep_args += ", ";

		ep_args += type_to_glsl(type) + " " + to_name(var.self) + " [[stage_in]]";
	}

	// Output resources, sorted by resource index & type
	// We need to sort to work around a bug on macOS 10.13 with NVidia drivers where switching between shaders
	// with different order of buffers can result in issues with buffer assignments inside the driver.
	struct Resource
	{
		Variant *id;
		string name;
		SPIRType::BaseType basetype;
		uint32_t index;
	};

	vector<Resource> resources;

	for (auto &id : ir.ids)
	{
		if (id.get_type() == TypeVariable)
		{
			auto &var = id.get<SPIRVariable>();
			auto &type = get<SPIRType>(var.basetype);

			uint32_t var_id = var.self;

			if ((var.storage == StorageClassUniform || var.storage == StorageClassUniformConstant ||
			     var.storage == StorageClassPushConstant || var.storage == StorageClassStorageBuffer) &&
			    !is_hidden_variable(var))
			{
				if (type.basetype == SPIRType::SampledImage)
				{
					resources.push_back(
					    { &id, to_name(var_id), SPIRType::Image, get_metal_resource_index(var, SPIRType::Image) });

					if (type.image.dim != DimBuffer && constexpr_samplers.count(var_id) == 0)
					{
						resources.push_back({ &id, to_sampler_expression(var_id), SPIRType::Sampler,
						                      get_metal_resource_index(var, SPIRType::Sampler) });
					}
				}
				else if (constexpr_samplers.count(var_id) == 0)
				{
					// constexpr samplers are not declared as resources.
					resources.push_back(
					    { &id, to_name(var_id), type.basetype, get_metal_resource_index(var, type.basetype) });
				}
			}
		}
	}

	std::sort(resources.begin(), resources.end(), [](const Resource &lhs, const Resource &rhs) {
		return tie(lhs.basetype, lhs.index) < tie(rhs.basetype, rhs.index);
	});

	for (auto &r : resources)
	{
		auto &var = r.id->get<SPIRVariable>();
		auto &type = get<SPIRType>(var.basetype);

		uint32_t var_id = var.self;

		switch (r.basetype)
		{
		case SPIRType::Struct:
		{
			auto &m = ir.meta.at(type.self);
			if (m.members.size() == 0)
				break;
			if (!type.array.empty())
			{
				if (type.array.size() > 1)
					SPIRV_CROSS_THROW("Arrays of arrays of buffers are not supported.");

				// Metal doesn't directly support this, so we must expand the
				// array. We'll declare a local array to hold these elements
				// later.
				uint32_t array_size =
				    type.array_size_literal.back() ? type.array.back() : get<SPIRConstant>(type.array.back()).scalar();

				if (array_size == 0)
					SPIRV_CROSS_THROW("Unsized arrays of buffers are not supported in MSL.");

				buffer_arrays.push_back(var_id);
				for (uint32_t i = 0; i < array_size; ++i)
				{
					if (!ep_args.empty())
						ep_args += ", ";
					ep_args += get_argument_address_space(var) + " " + type_to_glsl(type) + "* " + r.name + "_" +
					           convert_to_string(i);
					ep_args += " [[buffer(" + convert_to_string(r.index + i) + ")]]";
				}
			}
			else
			{
				if (!ep_args.empty())
					ep_args += ", ";
				ep_args += get_argument_address_space(var) + " " + type_to_glsl(type) + "& " + r.name;
				ep_args += " [[buffer(" + convert_to_string(r.index) + ")]]";
			}
			break;
		}
		case SPIRType::Sampler:
			if (!ep_args.empty())
				ep_args += ", ";
			ep_args += sampler_type(type) + " " + r.name;
			ep_args += " [[sampler(" + convert_to_string(r.index) + ")]]";
			break;
		case SPIRType::Image:
			if (!ep_args.empty())
				ep_args += ", ";
			ep_args += image_type_glsl(type, var_id) + " " + r.name;
			ep_args += " [[texture(" + convert_to_string(r.index) + ")]]";
			break;
		default:
			SPIRV_CROSS_THROW("Unexpected resource type");
			break;
		}
	}

	// Builtin variables
	for (auto &id : ir.ids)
	{
		if (id.get_type() == TypeVariable)
		{
			auto &var = id.get<SPIRVariable>();

			uint32_t var_id = var.self;
			BuiltIn bi_type = ir.meta[var_id].decoration.builtin_type;

			// Don't emit SamplePosition as a separate parameter. In the entry
			// point, we get that by calling get_sample_position() on the sample ID.
			if (var.storage == StorageClassInput && is_builtin_variable(var))
			{
				if (bi_type != BuiltInSamplePosition)
				{
					if (!ep_args.empty())
						ep_args += ", ";

					ep_args += builtin_type_decl(bi_type) + " " + to_expression(var_id);
					ep_args += " [[" + builtin_qualifier(bi_type) + "]]";
				}
				else
				{
					auto &entry_func = get<SPIRFunction>(ir.default_entry_point);
					entry_func.fixup_hooks_in.push_back([=]() {
						statement(builtin_type_decl(bi_type), " ", to_expression(var_id), " = get_sample_position(",
						          to_expression(builtin_sample_id_id), ");");
					});
				}
			}
		}
	}

	// Vertex and instance index built-ins
	if (needs_vertex_idx_arg)
		ep_args += built_in_func_arg(BuiltInVertexIndex, !ep_args.empty());

	if (needs_instance_idx_arg)
		ep_args += built_in_func_arg(BuiltInInstanceIndex, !ep_args.empty());

	if (!ep_args.empty() && append_comma)
		ep_args += ", ";

	return ep_args;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x198, %rsp            # imm = 0x198
movl %edx, 0x118(%rsp)
movq %rsi, %r12
movq %rdi, 0x8(%rsp)
leaq 0x10(%rdi), %rax
movq %rax, 0x160(%rsp)
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
movl 0x92c(%rsi), %esi
testl %esi, %esi
je 0x949dd
movq %r12, %rdi
callq 0xb40a
movq %rax, %r15
movl 0xc(%rax), %esi
movq %r12, %rdi
callq 0xa426
movq %rax, %rbx
movq 0x8(%rsp), %rax
cmpq $0x0, 0x8(%rax)
je 0x947a3
leaq 0x26922(%rip), %rsi     # 0xbb0bb
movq 0x8(%rsp), %rdi
callq 0x64e0
movq (%r12), %rax
leaq 0x88(%rsp), %rdi
movq %r12, %rsi
movq %rbx, %rdx
xorl %ecx, %ecx
callq *0x98(%rax)
leaq 0x210ea(%rip), %rsi     # 0xb58ae
leaq 0x88(%rsp), %rdi
callq 0x64e0
leaq 0x70(%rsp), %rbx
movq %rbx, -0x10(%rbx)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x947f8
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x947fe
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl 0x8(%r15), %edx
movq (%r12), %rax
leaq 0xd0(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %ecx
callq *0x38(%rax)
movq 0x60(%rsp), %rcx
movq 0x68(%rsp), %r8
movq 0xd8(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %esi
cmpq %rbx, %rcx
je 0x94856
movq 0x70(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x9487b
leaq 0xe0(%rsp), %rdi
movl $0xf, %esi
cmpq %rdi, -0x10(%rdi)
je 0x94876
movq 0xe0(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x9488f
movq 0xd0(%rsp), %rsi
leaq 0x60(%rsp), %rdi
callq 0x60b0
jmp 0x948a0
leaq 0xd0(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x50(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x948c4
movq %rsi, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x948ca
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x2f56e(%rip), %rsi     # 0xc3e5c
leaq 0x40(%rsp), %rdi
callq 0x64e0
leaq 0x20(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9491f
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x94926
movups (%rcx), %xmm0
movups %xmm0, (%r14)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq 0x8(%rsp), %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x94969
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x50(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x94984
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0xe0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x949a5
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
cmpq %rbx, %rdi
je 0x949bc
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x98(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x949dd
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
xorps %xmm0, %xmm0
movaps %xmm0, 0x140(%rsp)
movq $0x0, 0x150(%rsp)
movq 0x20(%r12), %r15
movq %r12, 0x80(%rsp)
movq 0x28(%r12), %r14
cmpq %r14, %r15
je 0x94c07
movq 0x80(%rsp), %rax
addq $0x9c8, %rax            # imm = 0x9C8
movq %rax, 0xa8(%rsp)
movl $0x1205, %ebx           # imm = 0x1205
cmpl $0x2, 0x8(%r15)
jne 0x94bfa
movq %r15, %rdi
callq 0xb2e2
movq %rax, %r13
movl 0xc(%rax), %esi
movq 0x80(%rsp), %rdi
callq 0xa426
movq %rax, %rbp
movl 0x8(%r13), %eax
movl %eax, 0x40(%rsp)
movl 0x10(%r13), %eax
cmpl $0xc, %eax
ja 0x94bfa
btl %eax, %ebx
jae 0x94bfa
movq 0x80(%rsp), %rdi
movq %r13, %rsi
xorl %edx, %edx
callq 0x1324c
testb %al, %al
jne 0x94bfa
cmpl $0xe, 0xc(%rbp)
jne 0x94b7a
movq %r15, 0x10(%rsp)
movl 0x40(%rsp), %edx
movq 0x80(%rsp), %r12
movq (%r12), %rax
leaq 0x18(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %ecx
callq *0x38(%rax)
movl $0xd, 0x38(%rsp)
movq %r12, %rdi
movq %r13, %rsi
movl $0xd, %edx
callq 0x9afdc
movl %eax, 0x3c(%rsp)
leaq 0x140(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x9ef6c
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x94b04
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x6260
cmpl $0x5, 0x84(%rbp)
je 0x94bfa
movq 0xa8(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0xadc70
testq %rax, %rax
jne 0x94bfa
movq %r15, 0x10(%rsp)
movl 0x40(%rsp), %edx
leaq 0x18(%rsp), %rdi
movq 0x80(%rsp), %r12
movq %r12, %rsi
callq 0x89ff8
movl $0xf, 0x38(%rsp)
movq %r12, %rdi
movq %r13, %rsi
movl $0xf, %edx
callq 0x9afdc
movl %eax, 0x3c(%rsp)
leaq 0x140(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x9ef6c
jmp 0x94bde
movq 0xa8(%rsp), %rdi
leaq 0x40(%rsp), %rsi
callq 0xadc70
testq %rax, %rax
jne 0x94bfa
movq %r15, 0x10(%rsp)
movl 0x40(%rsp), %edx
movq 0x80(%rsp), %r12
movq (%r12), %rax
leaq 0x18(%rsp), %rdi
movq %r12, %rsi
movl $0x1, %ecx
callq *0x38(%rax)
movl 0xc(%rbp), %edx
movl %edx, 0x38(%rsp)
movq %r12, %rdi
movq %r13, %rsi
callq 0x9afdc
movl %eax, 0x3c(%rsp)
leaq 0x140(%rsp), %rdi
leaq 0x10(%rsp), %rsi
callq 0x9ef6c
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x94bfa
movq 0x28(%rsp), %rsi
incq %rsi
callq 0x6260
addq $0x10, %r15
cmpq %r14, %r15
jne 0x94a2a
movq 0x140(%rsp), %r15
movq 0x148(%rsp), %r13
cmpq %r13, %r15
movq 0x80(%rsp), %r12
je 0x94c90
movq %r13, %rbx
subq %r15, %rbx
movq %rbx, %rax
sarq $0x4, %rax
movabsq $-0x5555555555555555, %rcx # imm = 0xAAAAAAAAAAAAAAAB
imulq %rax, %rcx
bsrq %rcx, %rdx
xorl $0x3f, %edx
addl %edx, %edx
xorq $0x7e, %rdx
movq %r15, %rdi
movq %r13, %rsi
callq 0xa24ce
cmpq $0x301, %rbx            # imm = 0x301
jl 0x94c85
leaq 0x300(%r15), %rbx
movq %r15, %rdi
movq %rbx, %rsi
callq 0xa2de7
cmpq %r13, %rbx
je 0x94c90
movq %rbx, %rdi
callq 0xa2f6c
addq $0x30, %rbx
jmp 0x94c72
movq %r15, %rdi
movq %r13, %rsi
callq 0xa2de7
cmpq %r13, %r15
movq 0x8(%rsp), %rbx
je 0x95f42
leaq 0xa00(%r12), %rax
movq %rax, 0x168(%rsp)
movl $0xd1b71759, %ebp       # imm = 0xD1B71759
movq %r13, 0x170(%rsp)
movq (%r15), %rdi
callq 0xb2e2
movq %rax, %r13
movl 0xc(%rax), %esi
movq %r12, %rdi
callq 0xa426
movq %rax, 0xa8(%rsp)
movl 0x8(%r13), %eax
movl %eax, 0xf4(%rsp)
movl 0x28(%r15), %eax
cmpl $0xc, %eax
je 0x94de3
cmpl $0xd, %eax
je 0x94d6b
cmpl $0xf, %eax
leaq 0x60(%rsp), %r13
jne 0x96444
cmpq $0x0, 0x8(%rbx)
je 0x94d1a
movq %rbx, %rdi
leaq 0x263a6(%rip), %rsi     # 0xbb0bb
callq 0x64e0
movq %r13, %rdi
movq %r12, %rsi
movq 0xa8(%rsp), %rdx
callq 0x96f94
movq %r13, %rdi
leaq 0x20b77(%rip), %rsi     # 0xb58ae
callq 0x64e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x94f56
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x94f5c
cmpq $0x0, 0x8(%rbx)
leaq 0x60(%rsp), %r13
je 0x94d86
movq %rbx, %rdi
leaq 0x2633a(%rip), %rsi     # 0xbb0bb
callq 0x64e0
movl 0xf4(%rsp), %ecx
movq (%r12), %rax
movq %r13, %rdi
movq %r12, %rsi
movq 0xa8(%rsp), %rdx
callq *0xb0(%rax)
movq %r13, %rdi
leaq 0x20aff(%rip), %rsi     # 0xb58ae
callq 0x64e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x94efe
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x94f04
movq 0xa8(%rsp), %rax
movl 0x8(%rax), %esi
movq 0x38(%r12), %rax
movq 0x40(%r12), %rdx
subq %rax, %rdx
sarq $0x3, %rdx
movabsq $-0x7063e7063e7063e7, %rcx # imm = 0x8F9C18F9C18F9C19
imulq %rcx, %rdx
cmpq %rsi, %rdx
jbe 0x964ab
imulq $0x148, %rsi, %rcx      # imm = 0x148
movq 0xd8(%rax,%rcx), %rdx
cmpq 0xd0(%rax,%rcx), %rdx
je 0x95b54
movq 0xa8(%rsp), %rax
movq 0x20(%rax), %rcx
movq 0x28(%rax), %rax
cmpq %rax, %rcx
je 0x9516f
movq %rax, %rdx
subq %rcx, %rdx
cmpq $0x5, %rdx
movq 0x80(%rsp), %r12
jae 0x9651d
movq 0xa8(%rsp), %rsi
movl 0x50(%rsi), %ecx
leaq -0x1(%rcx), %rdx
addq $0x3e, %rcx
testq %rdx, %rdx
cmovnsq %rdx, %rcx
sarq $0x6, %rcx
shlq $0x3, %rcx
addq 0x48(%rsi), %rcx
movabsq $-0x8000000000000000, %r8 # imm = 0x8000000000000000
leaq 0x3f(%r8), %rsi
andq %rdx, %rsi
xorl %edi, %edi
cmpq %r8, %rsi
setbe %dil
movq -0x8(%rcx,%rdi,8), %rcx
addq $-0x4, %rax
btq %rdx, %rcx
jb 0x94ec1
movl (%rax), %esi
movq %r12, %rdi
callq 0x1c66e
addq $0x10, %rax
movl (%rax), %eax
testl %eax, %eax
je 0x964b9
movl %eax, %r14d
movq 0xa08(%r12), %rsi
cmpq 0xa10(%r12), %rsi
je 0x951ed
movl 0xf4(%rsp), %eax
movl %eax, (%rsi)
addq $0x4, %rsi
movq %rsi, 0xa08(%r12)
jmp 0x95202
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%r15), %rsi
movq 0x10(%r15), %rdx
leaq 0x40(%rsp), %rdi
callq 0x60b0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x94fb5
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x94fbb
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%r15), %rsi
movq 0x10(%r15), %rdx
leaq 0x40(%rsp), %rdi
callq 0x60b0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95092
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x95098
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x95001
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x9501d
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x95039
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x2c(%r15), %ebx
movl $0x1, %eax
cmpl $0xa, %ebx
jb 0x95913
movl $0x4, %eax
movl %ebx, %ecx
cmpl $0x63, %ecx
jbe 0x95904
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x95911
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x95913
movl %ecx, %edx
imulq %rbp, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x95052
addl $-0x3, %eax
jmp 0x95913
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x950de
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x950fa
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x95116
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x2c(%r15), %ebx
movl $0x1, %eax
cmpl $0xa, %ebx
jb 0x95a0d
movl $0x4, %eax
movl %ebx, %ecx
cmpl $0x63, %ecx
jbe 0x95909
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x95a0b
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x95a0d
movl %ecx, %edx
imulq %rbp, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x9512f
addl $-0x3, %eax
jmp 0x95a0d
cmpq $0x0, 0x8(%rbx)
movq 0x80(%rsp), %r14
je 0x9518d
movq %rbx, %rdi
leaq 0x25f33(%rip), %rsi     # 0xbb0bb
callq 0x64e0
leaq 0xd0(%rsp), %r12
movq %r12, %rdi
movq %r14, %rsi
movq %r13, %rdx
callq 0x8a250
movq %r12, %rdi
leaq 0x20701(%rip), %rsi     # 0xb58ae
callq 0x64e0
leaq 0x98(%rsp), %rsi
movq %rsi, 0x88(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95b76
movq %rdx, 0x88(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x98(%rsp)
jmp 0x95b7c
movq 0x168(%rsp), %rdi
leaq 0xf4(%rsp), %rdx
callq 0x7a00
cmpl $0x1, %r14d
adcl $0x0, %r14d
movl %r14d, 0x11c(%rsp)
xorl %r12d, %r12d
cmpq $0x0, 0x8(%rbx)
je 0x9522b
movq %rbx, %rdi
leaq 0x25e95(%rip), %rsi     # 0xbb0bb
callq 0x64e0
leaq 0x178(%rsp), %r14
movq %r14, %rdi
movq 0x80(%rsp), %rsi
movq %r13, %rdx
callq 0x8a250
movq %r14, %rdi
leaq 0x2065e(%rip), %rsi     # 0xb58ae
callq 0x64e0
leaq 0xc0(%rsp), %rsi
movq %rsi, 0xb0(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95289
movq %rdx, 0xb0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xc0(%rsp)
jmp 0x9528f
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0xb8(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x80(%rsp), %rsi
movq (%rsi), %rax
leaq 0x120(%rsp), %rdi
movq 0xa8(%rsp), %rdx
xorl %ecx, %ecx
callq *0x98(%rax)
movq 0xb0(%rsp), %rcx
movl $0xf, %esi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rcx
je 0x952ef
movq 0xc0(%rsp), %rsi
movq 0xb8(%rsp), %r8
movq 0x128(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x9532c
movl $0xf, %esi
leaq 0x130(%rsp), %rdi
cmpq %rdi, 0x120(%rsp)
je 0x95327
movq 0x130(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x95343
movq 0x120(%rsp), %rsi
leaq 0xb0(%rsp), %rdi
callq 0x60b0
jmp 0x95354
leaq 0x120(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0xe0(%rsp), %rsi
movq %rsi, 0xd0(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x95385
movq %rdx, 0xd0(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xe0(%rsp)
jmp 0x9538b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0xd8(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0xd0(%rsp), %rdi
leaq 0x2519b(%rip), %rsi     # 0xba555
callq 0x64e0
leaq 0x98(%rsp), %rsi
movq %rsi, 0x88(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x953f3
movq %rdx, 0x88(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x98(%rsp)
jmp 0x953f9
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x90(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%r15), %rsi
movq 0x10(%r15), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
leaq 0x70(%rsp), %rsi
movq %rsi, 0x60(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95451
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x95457
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x60(%rsp), %rdi
leaq 0x29b34(%rip), %rsi     # 0xbefaf
callq 0x64e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x954a8
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x954ae
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movl $0x1, %eax
cmpl $0xa, %r12d
jb 0x95511
movl $0x4, %eax
movl %r12d, %ecx
cmpl $0x63, %ecx
jbe 0x9550a
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x9550f
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x95511
movl %ecx, %edx
imulq %rbp, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x954d9
addl $-0x3, %eax
jmp 0x95511
addl $-0x2, %eax
jmp 0x95511
decl %eax
movl %eax, %esi
leaq 0x108(%rsp), %rax
movq %rax, 0xf8(%rsp)
leaq 0xf8(%rsp), %rdi
xorl %edx, %edx
callq 0x62f0
movq 0xf8(%rsp), %rdi
movl 0x100(%rsp), %esi
movl %r12d, %edx
callq 0x21251
movq 0x40(%rsp), %rcx
movl $0xf, %esi
leaq 0x50(%rsp), %rax
cmpq %rax, %rcx
je 0x95562
movq 0x50(%rsp), %rsi
movq 0x48(%rsp), %r8
movq 0x100(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x9559c
movl $0xf, %esi
leaq 0x108(%rsp), %rdi
cmpq %rdi, 0xf8(%rsp)
je 0x95597
movq 0x108(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x955b0
movq 0xf8(%rsp), %rsi
leaq 0x40(%rsp), %rdi
callq 0x60b0
jmp 0x955c1
leaq 0xf8(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x955e6
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x955ec
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x95637
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0x9565c
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x95678
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x95694
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x956b9
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x956de
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x120(%rsp), %rdi
leaq 0x130(%rsp), %rax
cmpq %rax, %rdi
je 0x95703
movq 0x130(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x95728
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x9574d
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x2c(%r15), %ebx
addl %r12d, %ebx
movl $0x1, %eax
cmpl $0xa, %ebx
jb 0x9579d
movl $0x4, %eax
movl %ebx, %ecx
cmpl $0x63, %ecx
jbe 0x95796
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x9579b
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x9579d
movl %ecx, %edx
imulq %rbp, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x95765
addl $-0x3, %eax
jmp 0x9579d
addl $-0x2, %eax
jmp 0x9579d
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
leaq 0x60(%rsp), %r14
movq %r14, %rdi
xorl %edx, %edx
callq 0x62f0
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movl %ebx, %edx
callq 0x21251
movl $0xa, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x2e6f1(%rip), %rcx     # 0xc3ecd
callq 0x62c0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
movq 0x8(%rsp), %rbx
je 0x9580e
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x95814
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movl $0xd1b71759, %ebp       # imm = 0xD1B71759
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
leaq 0x2e512(%rip), %rsi     # 0xc3d4f
callq 0x64e0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9586a
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x95870
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x958b6
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x958d2
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x958ee
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
incl %r12d
cmpl 0x11c(%rsp), %r12d
jne 0x95215
jmp 0x95b54
addl $-0x2, %eax
jmp 0x95913
addl $-0x2, %eax
jmp 0x95a0d
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r13, %rdi
xorl %edx, %edx
callq 0x62f0
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movl %ebx, %edx
callq 0x21251
movl $0xb, %r8d
movq %r13, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x2e59a(%rip), %rcx     # 0xc3ee7
callq 0x62c0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
movq 0x8(%rsp), %rbx
je 0x9597f
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x95985
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
leaq 0x2e3a6(%rip), %rsi     # 0xc3d4f
callq 0x64e0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x959d6
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x959dc
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
jmp 0x95b00
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r13, %rdi
xorl %edx, %edx
callq 0x62f0
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movl %ebx, %edx
callq 0x21251
movl $0xb, %r8d
movq %r13, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x2e494(%rip), %rcx     # 0xc3edb
callq 0x62c0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
movq 0x8(%rsp), %rbx
je 0x95a79
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x95a7f
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
leaq 0x2e2ac(%rip), %rsi     # 0xc3d4f
callq 0x64e0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95ad0
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x95ad6
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x95b1c
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x95b38
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x95b54
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
addq $0x30, %r15
movq 0x170(%rsp), %r13
cmpq %r13, %r15
movq 0x80(%rsp), %r12
jne 0x94cbb
jmp 0x95f42
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x90(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq (%r14), %rax
leaq 0xb0(%rsp), %rdi
movq %r14, %rsi
movq 0xa8(%rsp), %rdx
xorl %ecx, %ecx
callq *0x98(%rax)
movq 0x88(%rsp), %rcx
movl $0xf, %esi
leaq 0x98(%rsp), %r13
cmpq %r13, %rcx
leaq 0xc0(%rsp), %r12
je 0x95bdf
movq 0x98(%rsp), %rsi
movq 0x90(%rsp), %r8
movq 0xb8(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
jbe 0x95c14
movl $0xf, %esi
cmpq %r12, 0xb0(%rsp)
je 0x95c0f
movq 0xc0(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x95c2b
movq 0xb0(%rsp), %rsi
leaq 0x88(%rsp), %rdi
callq 0x60b0
jmp 0x95c3c
leaq 0xb0(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x70(%rsp), %rsi
movq %rsi, 0x60(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x95c61
movq %rdx, 0x60(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x70(%rsp)
jmp 0x95c67
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x68(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x60(%rsp), %rdi
leaq 0x2e248(%rip), %rsi     # 0xc3ed8
callq 0x64e0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95cbd
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x95cc3
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%r15), %rsi
movq 0x10(%r15), %rdx
leaq 0x40(%rsp), %rdi
callq 0x60b0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95d15
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x95d1b
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x95d61
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x95d7d
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x95d99
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xb0(%rsp), %rdi
cmpq %r12, %rdi
je 0x95db6
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x88(%rsp), %rdi
cmpq %r13, %rdi
leaq 0xe0(%rsp), %rbx
je 0x95ddb
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xd0(%rsp), %rdi
cmpq %rbx, %rdi
leaq 0x60(%rsp), %r12
je 0x95dfd
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x2c(%r15), %ebx
movl $0x1, %eax
cmpl $0xa, %ebx
jb 0x95e4a
movl $0x4, %eax
movl %ebx, %ecx
cmpl $0x63, %ecx
jbe 0x95e43
cmpl $0x3e7, %ecx            # imm = 0x3E7
jbe 0x95e48
cmpl $0x2710, %ecx           # imm = 0x2710
jb 0x95e4a
movl %ecx, %edx
imulq %rbp, %rdx
shrq $0x2d, %rdx
addl $0x4, %eax
cmpl $0x1869f, %ecx          # imm = 0x1869F
movl %edx, %ecx
ja 0x95e12
addl $-0x3, %eax
jmp 0x95e4a
addl $-0x2, %eax
jmp 0x95e4a
decl %eax
movl %eax, %esi
leaq 0x70(%rsp), %rax
movq %rax, 0x60(%rsp)
movq %r12, %rdi
xorl %edx, %edx
callq 0x62f0
movq 0x60(%rsp), %rdi
movl 0x68(%rsp), %esi
movl %ebx, %edx
callq 0x21251
movl $0xa, %r8d
movq %r12, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x2e049(%rip), %rcx     # 0xc3ecd
callq 0x62c0
leaq 0x50(%rsp), %rsi
movq %rsi, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
movq 0x8(%rsp), %rbx
je 0x95eb6
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x95ebc
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
leaq 0x2de6f(%rip), %rsi     # 0xc3d4f
callq 0x64e0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x95f0d
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x95f13
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
jmp 0x95b00
movq 0x20(%r12), %r15
movq 0x28(%r12), %r13
cmpq %r13, %r15
je 0x9634a
leaq 0x50(%rsp), %rbx
cmpl $0x2, 0x8(%r15)
jne 0x9633d
movq %r15, %rdi
callq 0xb2e2
cmpl $0x1, 0x10(%rax)
jne 0x9633d
movl 0x8(%rax), %r12d
movq 0x80(%rsp), %rdi
movq 0x38(%rdi), %rcx
imulq $0x148, %r12, %rdx      # imm = 0x148
movl 0xa0(%rcx,%rdx), %ebp
movq %rax, %rsi
callq 0x133a2
testb %al, %al
je 0x9633d
cmpl $0x13, %ebp
jne 0x96030
movq 0x80(%rsp), %rbp
movl 0x108(%rbp), %esi
movq %rbp, %rdi
callq 0xb9ca
addq $0xb0, %rax
xorps %xmm0, %xmm0
movaps %xmm0, 0x10(%rsp)
movaps %xmm0, 0x20(%rsp)
movq %rbp, 0x10(%rsp)
movl $0x13, 0x18(%rsp)
movl %r12d, 0x1c(%rsp)
leaq 0xd05e(%rip), %rcx      # 0xa304e
movq %rcx, 0x28(%rsp)
leaq 0xd182(%rip), %rcx      # 0xa317e
movq %rcx, 0x20(%rsp)
movq %rax, %rdi
leaq 0x10(%rsp), %rsi
callq 0xa939c
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x9633d
leaq 0x10(%rsp), %rdi
movq %rdi, %rsi
movl $0x3, %edx
callq *%rax
jmp 0x9633d
movq 0x8(%rsp), %rax
cmpq $0x0, 0x8(%rax)
je 0x9604d
movq 0x8(%rsp), %rdi
leaq 0x25073(%rip), %rsi     # 0xbb0bb
callq 0x64e0
leaq 0x60(%rsp), %r14
movq %r14, %rdi
movq 0x80(%rsp), %rsi
movl %ebp, %edx
callq 0x9f194
movq %r14, %rdi
leaq 0x1f840(%rip), %rsi     # 0xb58ae
callq 0x64e0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x96096
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x9609c
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq 0x80(%rsp), %rsi
movl %r12d, %edx
callq 0x345e6
movq 0x40(%rsp), %rcx
movl $0xf, %esi
cmpq %rbx, %rcx
je 0x960e0
movq 0x50(%rsp), %rsi
movq 0x48(%rsp), %r8
movq 0x90(%rsp), %rdx
leaq (%rdx,%r8), %rax
cmpq %rsi, %rax
movq 0x80(%rsp), %r12
jbe 0x96122
movl $0xf, %esi
leaq 0x98(%rsp), %rdi
cmpq %rdi, 0x88(%rsp)
je 0x9611d
movq 0x98(%rsp), %rsi
cmpq %rsi, %rax
jbe 0x96136
movq 0x88(%rsp), %rsi
leaq 0x40(%rsp), %rdi
callq 0x60b0
jmp 0x96147
leaq 0x88(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
leaq 0x10(%rax), %rcx
cmpq %rcx, %rdx
je 0x9616c
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x96172
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq 0x8(%rsp), %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x961bf
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x961e4
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x961fb
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x96217
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %r14
movq %r14, %rdi
movq %r12, %rsi
movl %ebp, %edx
callq 0x9eaa8
movl $0x3, %r8d
movq %r14, %rdi
xorl %esi, %esi
xorl %edx, %edx
leaq 0x2dadd(%rip), %rcx     # 0xc3d1a
callq 0x62c0
movq %rbx, 0x40(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x96265
movq %rdx, 0x40(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x50(%rsp)
jmp 0x9626b
movups (%rcx), %xmm0
movups %xmm0, (%rbx)
movq 0x8(%rax), %rdx
movq %rdx, 0x48(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x40(%rsp), %rdi
leaq 0x2db9e(%rip), %rsi     # 0xc3e2d
callq 0x64e0
leaq 0x20(%rsp), %rsi
movq %rsi, 0x10(%rsp)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x962bc
movq %rdx, 0x10(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x20(%rsp)
jmp 0x962c2
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x18(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq 0x8(%rsp), %rdi
callq 0x60b0
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9630a
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
je 0x96321
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x9633d
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
addq $0x10, %r15
cmpq %r13, %r15
jne 0x95f5a
movq 0x80(%rsp), %r14
cmpb $0x0, 0x935(%r14)
movq 0x8(%rsp), %rbx
je 0x963aa
xorl %ecx, %ecx
cmpq $0x0, 0x8(%rbx)
setne %cl
leaq 0x10(%rsp), %rdi
movq %r14, %rsi
movl $0x2a, %edx
callq 0x9f3ac
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x963aa
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
cmpb $0x1, 0x936(%r14)
jne 0x963fd
xorl %ecx, %ecx
cmpq $0x0, 0x8(%rbx)
setne %cl
leaq 0x10(%rsp), %rdi
movq %r14, %rsi
movl $0x2b, %edx
callq 0x9f3ac
movq 0x10(%rsp), %rsi
movq 0x18(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x963fd
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
cmpq $0x0, 0x8(%rbx)
sete %al
movl 0x118(%rsp), %ecx
xorb $0x1, %cl
orb %al, %cl
jne 0x96422
leaq 0x24ca1(%rip), %rsi     # 0xbb0bb
movq %rbx, %rdi
callq 0x64e0
leaq 0x140(%rsp), %rdi
callq 0x9f6d8
movq %rbx, %rax
addq $0x198, %rsp            # imm = 0x198
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movl $0x10, %edi
callq 0x6140
movq %rax, %r15
leaq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2da8e(%rip), %rsi     # 0xc3ef3
leaq 0x2da9f(%rip), %rdx     # 0xc3f0b
callq 0x7c64
movb $0x1, %bl
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x6320
leaq 0x66911(%rip), %rax     # 0xfcd98
addq $0x10, %rax
movq %rax, (%r15)
xorl %ebx, %ebx
leaq 0x668e9(%rip), %rsi     # 0xfcd80
movq 0x67b3a(%rip), %rdx     # 0xfdfd8
movq %r15, %rdi
callq 0x6470
jmp 0x9657f
leaq 0x1ec67(%rip), %rdi     # 0xb5119
xorl %eax, %eax
callq 0x63d0
movl $0x10, %edi
callq 0x6140
movq %rax, %r15
leaq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2d9bf(%rip), %rsi     # 0xc3e99
leaq 0x2d9eb(%rip), %rdx     # 0xc3ecc
callq 0x7c64
movb $0x1, %bl
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x6320
leaq 0x6689c(%rip), %rax     # 0xfcd98
addq $0x10, %rax
movq %rax, (%r15)
xorl %ebx, %ebx
leaq 0x66874(%rip), %rsi     # 0xfcd80
movq 0x67ac5(%rip), %rdx     # 0xfdfd8
movq %r15, %rdi
callq 0x6470
jmp 0x9657f
movl $0x10, %edi
callq 0x6140
movq %rax, %r15
leaq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
movq %rax, (%rdi)
leaq 0x2d92c(%rip), %rsi     # 0xc3e6a
leaq 0x2d953(%rip), %rdx     # 0xc3e98
callq 0x7c64
movb $0x1, %bl
leaq 0x10(%rsp), %rsi
movq %r15, %rdi
callq 0x6320
leaq 0x66838(%rip), %rax     # 0xfcd98
addq $0x10, %rax
movq %rax, (%r15)
xorl %ebx, %ebx
leaq 0x66810(%rip), %rsi     # 0xfcd80
movq 0x67a61(%rip), %rdx     # 0xfdfd8
movq %r15, %rdi
callq 0x6470
jmp 0x96864
jmp 0x96864
jmp 0x96a63
jmp 0x96a70
jmp 0x9659a
jmp 0x96a63
movq %rax, %r12
leaq 0x20(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x96a66
movq 0x20(%rsp), %rsi
jmp 0x96951
jmp 0x96a63
movq %rax, %r12
movq 0x10(%rsp), %rdi
cmpq %r14, %rdi
je 0x965dd
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x965dd
movq %rax, %r12
leaq 0x50(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x965fd
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x965fd
movq %rax, %r12
leaq 0xe0(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x96623
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96623
movq %rax, %r12
movq 0x60(%rsp), %rdi
cmpq %rbx, %rdi
je 0x9663f
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9663f
movq %rax, %r12
leaq 0x98(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x96689
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96689
jmp 0x96686
jmp 0x96686
jmp 0x96864
jmp 0x96864
jmp 0x96a63
jmp 0x966b8
jmp 0x96a70
jmp 0x96a70
jmp 0x96a70
movq %rax, %r12
movq 0x8(%rsp), %rbx
jmp 0x96bde
movq %rax, %r12
movq 0x20(%rsp), %rax
testq %rax, %rax
je 0x96a66
leaq 0x10(%rsp), %rdi
movq %rdi, %rsi
movl $0x3, %edx
callq *%rax
jmp 0x96a66
movq %rax, %rdi
callq 0xd589
jmp 0x96a63
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x96738
movq 0x20(%rsp), %rsi
jmp 0x9672b
jmp 0x96735
jmp 0x968d5
jmp 0x96a63
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9670e
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9670e
movq %rax, %r12
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x96738
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96738
movq %rax, %r12
movq 0x40(%rsp), %rdi
cmpq %rbx, %rdi
jne 0x9692c
jmp 0x96939
jmp 0x968d5
jmp 0x96a63
jmp 0x96889
jmp 0x968aa
jmp 0x96889
jmp 0x968aa
jmp 0x968f9
jmp 0x9691a
jmp 0x968d5
jmp 0x96a63
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x967a1
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x967a1
movq %rax, %r12
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x967c2
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x967c2
movq %rax, %r12
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x967e3
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x967e3
movq %rax, %r12
movq 0xb0(%rsp), %rdi
leaq 0xc0(%rsp), %rax
cmpq %rax, %rdi
je 0x9680d
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9680d
movq %rax, %r12
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x96837
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96837
movq %rax, %r12
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x96a66
movq 0xe0(%rsp), %rsi
jmp 0x96951
jmp 0x96a63
jmp 0x96864
movq %rax, %r12
movq 0x18(%rsp), %rdi
leaq 0x28(%rsp), %rax
cmpq %rax, %rdi
je 0x96a66
movq 0x28(%rsp), %rsi
jmp 0x96951
jmp 0x96a63
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x968af
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x968af
movq %rax, %r12
movb $0x1, %bl
testb %bl, %bl
je 0x96a66
movq %r15, %rdi
callq 0x6200
jmp 0x96a66
jmp 0x96a63
jmp 0x9691a
jmp 0x9691a
jmp 0x9691a
jmp 0x968d5
jmp 0x968d5
jmp 0x968d5
movq %rax, %r12
jmp 0x96939
jmp 0x96a63
jmp 0x96a63
jmp 0x96a63
jmp 0x96a63
jmp 0x96a63
jmp 0x968f9
jmp 0x968f9
jmp 0x968f9
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x9691d
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9691d
movq %rax, %r12
movq 0x40(%rsp), %rdi
leaq 0x50(%rsp), %rax
cmpq %rax, %rdi
je 0x96939
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
leaq 0x70(%rsp), %rax
cmpq %rax, %rdi
je 0x96a66
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96a66
jmp 0x96a70
jmp 0x96a63
jmp 0x96a63
jmp 0x96a63
jmp 0x96a63
jmp 0x96a70
jmp 0x96a70
jmp 0x96a70
movq %rax, %r12
leaq 0x70(%rsp), %r14
leaq 0xc0(%rsp), %r13
leaq 0x98(%rsp), %rbp
jmp 0x96ae6
movq %rax, %r12
jmp 0x96bac
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x96a90
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96a90
movq %rax, %r12
jmp 0x96a29
movq %rax, %r12
leaq 0xc0(%rsp), %r13
jmp 0x96b1a
movq %rax, %r12
leaq 0x70(%rsp), %r14
leaq 0x50(%rsp), %r15
leaq 0xc0(%rsp), %r13
leaq 0x98(%rsp), %rbp
jmp 0x96acf
movq %rax, %r12
movq 0x10(%rsp), %rdi
leaq 0x20(%rsp), %rax
cmpq %rax, %rdi
je 0x96a29
movq 0x20(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x70(%rsp), %r14
leaq 0x50(%rsp), %rax
movq 0x40(%rsp), %rdi
cmpq %rax, %rdi
je 0x96b4e
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96b4e
movq %rax, %r12
leaq 0xc0(%rsp), %r13
jmp 0x96b8f
movq %rax, %r12
movq 0x8(%rsp), %rbx
jmp 0x96bd1
movq %rax, %r12
jmp 0x96bd1
movq %rax, %r12
leaq 0xc0(%rsp), %r13
leaq 0x98(%rsp), %rbp
jmp 0x96afd
movq %rax, %r12
leaq 0x70(%rsp), %r14
leaq 0x50(%rsp), %r15
leaq 0xc0(%rsp), %r13
leaq 0x98(%rsp), %rbp
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0x96acf
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x40(%rsp), %rdi
cmpq %r15, %rdi
je 0x96ae6
movq 0x50(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x96afd
movq 0x70(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x88(%rsp), %rdi
cmpq %rbp, %rdi
je 0x96b1a
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xd0(%rsp), %rdi
leaq 0xe0(%rsp), %rax
cmpq %rax, %rdi
je 0x96b6a
movq 0xe0(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x96b6a
movq %rax, %r12
movq 0x8(%rsp), %rbx
leaq 0x70(%rsp), %r14
movq 0x60(%rsp), %rdi
cmpq %r14, %rdi
je 0x96bd1
movq 0x70(%rsp), %rsi
jmp 0x96bc9
movq %rax, %r12
leaq 0xc0(%rsp), %r13
movq 0x120(%rsp), %rdi
leaq 0x130(%rsp), %rax
cmpq %rax, %rdi
je 0x96b8f
movq 0x130(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xb0(%rsp), %rdi
cmpq %r13, %rdi
je 0x96bac
movq 0xc0(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x178(%rsp), %rdi
leaq 0x188(%rsp), %rax
cmpq %rax, %rdi
je 0x96bd1
movq 0x188(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x140(%rsp), %rdi
callq 0x9f6d8
movq (%rbx), %rdi
movq 0x160(%rsp), %rax
cmpq %rax, %rdi
je 0x96bf9
movq (%rax), %rsi
incq %rsi
callq 0x6260
movq %r12, %rdi
callq 0x64a0
nop