// File: /workspace/github_cpp_makefile_star2_O3/rossy[P]crossc/SPIRV-Cross/spirv_msl.cpp
// Function: spirv_cross::CompilerMSL::to_function_args[abi:cxx11](unsigned int, spirv_cross::SPIRType const&, bool, bool, bool, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, unsigned int, bool*)
string CompilerMSL::to_function_args(uint32_t img, const SPIRType &imgtype, bool is_fetch, bool is_gather, bool is_proj,
                                     uint32_t coord, uint32_t, uint32_t dref, uint32_t grad_x, uint32_t grad_y,
                                     uint32_t lod, uint32_t coffset, uint32_t offset, uint32_t bias, uint32_t comp,
                                     uint32_t sample, bool *p_forward)
{
	string farg_str;
	if (!is_fetch)
		farg_str += to_sampler_expression(img);

	if (msl_options.swizzle_texture_samples && is_gather)
	{
		if (!farg_str.empty())
			farg_str += ", ";

		auto *combined = maybe_get<SPIRCombinedImageSampler>(img);
		farg_str += to_expression(combined ? combined->image : img);
	}

	// Texture coordinates
	bool forward = should_forward(coord);
	auto coord_expr = to_enclosed_expression(coord);
	auto &coord_type = expression_type(coord);
	bool coord_is_fp = type_is_floating_point(coord_type);
	bool is_cube_fetch = false;

	string tex_coords = coord_expr;
	const char *alt_coord = "";

	switch (imgtype.image.dim)
	{

	case Dim1D:
		if (coord_type.vecsize > 1)
			tex_coords += ".x";

		if (is_fetch)
			tex_coords = "uint(" + round_fp_tex_coords(tex_coords, coord_is_fp) + ")";

		alt_coord = ".y";

		break;

	case DimBuffer:
		if (coord_type.vecsize > 1)
			tex_coords += ".x";

		// Metal texel buffer textures are 2D, so convert 1D coord to 2D.
		if (is_fetch)
			tex_coords = "spvTexelBufferCoord(" + round_fp_tex_coords(tex_coords, coord_is_fp) + ")";

		alt_coord = ".y";

		break;

	case DimSubpassData:
		if (imgtype.image.ms)
			tex_coords = "uint2(gl_FragCoord.xy)";
		else
			tex_coords = join("uint2(gl_FragCoord.xy), 0");
		break;

	case Dim2D:
		if (coord_type.vecsize > 2)
			tex_coords += ".xy";

		if (is_fetch)
			tex_coords = "uint2(" + round_fp_tex_coords(tex_coords, coord_is_fp) + ")";

		alt_coord = ".z";

		break;

	case Dim3D:
		if (coord_type.vecsize > 3)
			tex_coords += ".xyz";

		if (is_fetch)
			tex_coords = "uint3(" + round_fp_tex_coords(tex_coords, coord_is_fp) + ")";

		alt_coord = ".w";

		break;

	case DimCube:
		if (is_fetch)
		{
			is_cube_fetch = true;
			tex_coords += ".xy";
			tex_coords = "uint2(" + round_fp_tex_coords(tex_coords, coord_is_fp) + ")";
		}
		else
		{
			if (coord_type.vecsize > 3)
				tex_coords += ".xyz";
		}

		alt_coord = ".w";

		break;

	default:
		break;
	}

	if (is_fetch && offset)
	{
		// Fetch offsets must be applied directly to the coordinate.
		forward = forward && should_forward(offset);
		auto &type = expression_type(offset);
		if (type.basetype != SPIRType::UInt)
			tex_coords += " + " + bitcast_expression(SPIRType::UInt, offset);
		else
			tex_coords += " + " + to_enclosed_expression(offset);
	}
	else if (is_fetch && coffset)
	{
		// Fetch offsets must be applied directly to the coordinate.
		forward = forward && should_forward(coffset);
		auto &type = expression_type(coffset);
		if (type.basetype != SPIRType::UInt)
			tex_coords += " + " + bitcast_expression(SPIRType::UInt, coffset);
		else
			tex_coords += " + " + to_enclosed_expression(coffset);
	}

	// If projection, use alt coord as divisor
	if (is_proj)
		tex_coords += " / " + coord_expr + alt_coord;

	if (!farg_str.empty())
		farg_str += ", ";
	farg_str += tex_coords;

	// If fetch from cube, add face explicitly
	if (is_cube_fetch)
	{
		// Special case for cube arrays, face and layer are packed in one dimension.
		if (imgtype.image.arrayed)
			farg_str += ", uint(" + join(coord_expr, ".z) % 6u");
		else
			farg_str += ", uint(" + round_fp_tex_coords(coord_expr + ".z", coord_is_fp) + ")";
	}

	// If array, use alt coord
	if (imgtype.image.arrayed)
	{
		// Special case for cube arrays, face and layer are packed in one dimension.
		if (imgtype.image.dim == DimCube && is_fetch)
			farg_str += ", uint(" + join(coord_expr, ".z) / 6u");
		else
			farg_str += ", uint(" + round_fp_tex_coords(coord_expr + alt_coord, coord_is_fp) + ")";
	}

	// Depth compare reference value
	if (dref)
	{
		forward = forward && should_forward(dref);
		farg_str += ", ";
		farg_str += to_expression(dref);
	}

	// LOD Options
	// Metal does not support LOD for 1D textures.
	if (bias && imgtype.image.dim != Dim1D)
	{
		forward = forward && should_forward(bias);
		farg_str += ", bias(" + to_expression(bias) + ")";
	}

	// Metal does not support LOD for 1D textures.
	if (lod && imgtype.image.dim != Dim1D)
	{
		forward = forward && should_forward(lod);
		if (is_fetch)
		{
			farg_str += ", " + to_expression(lod);
		}
		else
		{
			farg_str += ", level(" + to_expression(lod) + ")";
		}
	}
	else if (is_fetch && !lod && imgtype.image.dim != Dim1D && imgtype.image.dim != DimBuffer && !imgtype.image.ms &&
	         imgtype.image.sampled != 2)
	{
		// Lod argument is optional in OpImageFetch, but we require a LOD value, pick 0 as the default.
		// Check for sampled type as well, because is_fetch is also used for OpImageRead in MSL.
		farg_str += ", 0";
	}

	// Metal does not support LOD for 1D textures.
	if ((grad_x || grad_y) && imgtype.image.dim != Dim1D)
	{
		forward = forward && should_forward(grad_x);
		forward = forward && should_forward(grad_y);
		string grad_opt;
		switch (imgtype.image.dim)
		{
		case Dim2D:
			grad_opt = "2d";
			break;
		case Dim3D:
			grad_opt = "3d";
			break;
		case DimCube:
			grad_opt = "cube";
			break;
		default:
			grad_opt = "unsupported_gradient_dimension";
			break;
		}
		farg_str += ", gradient" + grad_opt + "(" + to_expression(grad_x) + ", " + to_expression(grad_y) + ")";
	}

	// Add offsets
	string offset_expr;
	if (coffset && !is_fetch)
	{
		forward = forward && should_forward(coffset);
		offset_expr = to_expression(coffset);
	}
	else if (offset && !is_fetch)
	{
		forward = forward && should_forward(offset);
		offset_expr = to_expression(offset);
	}

	if (!offset_expr.empty())
	{
		switch (imgtype.image.dim)
		{
		case Dim2D:
			if (coord_type.vecsize > 2)
				offset_expr = enclose_expression(offset_expr) + ".xy";

			farg_str += ", " + offset_expr;
			break;

		case Dim3D:
			if (coord_type.vecsize > 3)
				offset_expr = enclose_expression(offset_expr) + ".xyz";

			farg_str += ", " + offset_expr;
			break;

		default:
			break;
		}
	}

	if (comp)
	{
		// If 2D has gather component, ensure it also has an offset arg
		if (imgtype.image.dim == Dim2D && offset_expr.empty())
			farg_str += ", int2(0)";

		forward = forward && should_forward(comp);
		farg_str += ", " + to_component_argument(comp);
	}

	if (sample)
	{
		farg_str += ", ";
		farg_str += to_expression(sample);
	}

	if (msl_options.swizzle_texture_samples && is_sampled_image_type(imgtype))
	{
		// Add the swizzle constant from the swizzle buffer.
		if (!is_gather)
			farg_str += ")";
		// Get the original input variable for this image.
		uint32_t img_var = img;

		auto *combined = maybe_get<SPIRCombinedImageSampler>(img_var);
		if (combined)
			img_var = combined->image;

		if (auto *var = maybe_get_backing_variable(img_var))
		{
			if (var->parameter && !var->parameter->alias_global_variable)
				SPIRV_CROSS_THROW("Cannot yet map non-aliased parameter to Metal resource!");
			img_var = var->self;
		}
		auto &aux_type = expression_type(aux_buffer_id);
		farg_str += ", " + to_name(aux_buffer_id) + "." + to_member_name(aux_type, k_aux_mbr_idx_swizzle_const) + "[" +
		            convert_to_string(get_metal_resource_index(get<SPIRVariable>(img_var), SPIRType::Image)) + "]";
		used_aux_buffer = true;
	}

	*p_forward = forward;

	return farg_str;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x2a8, %rsp            # imm = 0x2A8
movl %r9d, 0x13c(%rsp)
movq %rcx, %r13
movl %edx, %r12d
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x10(%rdi), %rax
movq %rax, 0x1a0(%rsp)
movq %rax, (%rdi)
movq $0x0, 0x8(%rdi)
movb $0x0, 0x10(%rdi)
movl %r8d, 0x4c(%rsp)
testl %r8d, %r8d
jne 0x96cf6
leaq 0xb8(%rsp), %rdi
movq %r14, %rsi
movl %r12d, %edx
callq 0x893aa
movq 0xb8(%rsp), %rsi
movq 0xc0(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x96cf6
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x6260
movb 0x7df(%r14), %al
andb 0x13c(%rsp), %al
cmpb $0x1, %al
jne 0x96d7d
cmpq $0x0, 0x8(%rbx)
je 0x96d1e
leaq 0x23395(%rip), %rsi     # 0xba0ab
movq %rbx, %rdi
callq 0x64e0
movq %r14, %rdi
movl %r12d, %esi
callq 0x7a260
movl %r12d, %edx
testq %rax, %rax
je 0x96d34
movl 0x10(%rax), %edx
leaq 0xb8(%rsp), %rdi
movq %r14, %rsi
callq 0x33f8a
movq 0xb8(%rsp), %rsi
movq 0xc0(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x96d7d
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x2e8(%rsp), %r15d
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
leaq 0xb8(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x34600
movq %r14, %rdi
movl %r15d, %esi
callq 0x12a72
movl %r12d, 0x84(%rsp)
movq %rax, 0xa8(%rsp)
movl 0xc(%rax), %r15d
leaq 0x98(%rsp), %rax
movq %rax, -0x10(%rax)
movq 0xb8(%rsp), %rsi
movq 0xc0(%rsp), %rdx
addq %rsi, %rdx
leaq 0x88(%rsp), %rdi
callq 0xe456
addl $-0x9, %r15d
movl %r15d, 0x74(%rsp)
movl 0x84(%r13), %eax
leaq 0x1daa8(%rip), %r15     # 0xb48af
xorl %r12d, %r12d
cmpq $0x6, %rax
movq %r13, 0x78(%rsp)
ja 0x97742
leaq 0x28e58(%rip), %rcx     # 0xbfc78
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq 0xa8(%rsp), %rax
cmpl $0x2, 0x14(%rax)
jb 0x96e4b
leaq 0x22f3e(%rip), %rsi     # 0xb9d7c
leaq 0x88(%rsp), %rdi
callq 0x64e0
cmpb $0x0, 0x4c(%rsp)
je 0x9720c
leaq 0x298(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
addq %rsi, %rdx
leaq 0x288(%rsp), %rdi
callq 0xe456
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x288(%rsp), %rdx
callq 0x99e24
leaq 0x2bc40(%rip), %rcx     # 0xc2ae5
leaq 0x50(%rsp), %rdi
movl $0x5, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97313
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9731b
movq 0xa8(%rsp), %rax
cmpl $0x4, 0x14(%rax)
jb 0x96f0a
leaq 0x23e33(%rip), %rsi     # 0xbad30
leaq 0x88(%rsp), %rdi
callq 0x64e0
cmpb $0x0, 0x4c(%rsp)
je 0x9728d
leaq 0x238(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
addq %rsi, %rdx
leaq 0x228(%rsp), %rdi
callq 0xe456
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x228(%rsp), %rdx
callq 0x99e24
leaq 0x2bb78(%rip), %rcx     # 0xc2adc
leaq 0x50(%rsp), %rdi
movl $0x6, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x972b2
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x972ba
cmpb $0x1, 0x8a(%r13)
jne 0x97218
xorl %r12d, %r12d
leaq 0x88(%rsp), %rdi
movq 0x8(%rdi), %rdx
leaq 0x2bad9(%rip), %rcx     # 0xc2aa4
movl $0x16, %r8d
xorl %esi, %esi
callq 0x63f0
jmp 0x97742
movq 0xa8(%rsp), %rax
cmpl $0x3, 0x14(%rax)
jb 0x96fff
leaq 0x21663(%rip), %rsi     # 0xb8655
leaq 0x88(%rsp), %rdi
callq 0x64e0
cmpb $0x0, 0x4c(%rsp)
je 0x97296
leaq 0x258(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
addq %rsi, %rdx
leaq 0x248(%rsp), %rdi
callq 0xe456
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x248(%rsp), %rdx
callq 0x99e24
leaq 0x2ba7c(%rip), %rcx     # 0xc2ad5
leaq 0x50(%rsp), %rdi
movl $0x6, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97374
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9737c
cmpb $0x0, 0x4c(%rsp)
je 0x97262
leaq 0x215a7(%rip), %rsi     # 0xb8655
leaq 0x88(%rsp), %rdi
callq 0x64e0
leaq 0x218(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
addq %rsi, %rdx
leaq 0x208(%rsp), %rdi
callq 0xe456
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x208(%rsp), %rdx
callq 0x99e24
leaq 0x2b9cb(%rip), %rcx     # 0xc2ad5
leaq 0x50(%rsp), %rdi
movl $0x6, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97436
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9743e
movq 0xa8(%rsp), %rax
cmpl $0x2, 0x14(%rax)
jb 0x9716f
leaq 0x22c1a(%rip), %rsi     # 0xb9d7c
leaq 0x88(%rsp), %rdi
callq 0x64e0
cmpb $0x0, 0x4c(%rsp)
je 0x9720c
leaq 0x278(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
addq %rsi, %rdx
leaq 0x268(%rsp), %rdi
callq 0xe456
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x268(%rsp), %rdx
callq 0x99e24
leaq 0x2b8c6(%rip), %rcx     # 0xc2a8f
leaq 0x50(%rsp), %rdi
movl $0x14, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x973d5
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x973dd
leaq 0x23b22(%rip), %r15     # 0xbad35
jmp 0x9729d
leaq 0x2b89c(%rip), %rsi     # 0xc2abb
leaq 0x28(%rsp), %rdi
callq 0x7e53b
leaq 0x88(%rsp), %rdi
leaq 0x28(%rsp), %r12
movq %r12, %rsi
callq 0x6310
movq (%r12), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x9773f
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9773f
leaq 0x23ad2(%rip), %r15     # 0xbad3b
movq 0xa8(%rsp), %rax
cmpl $0x4, 0x14(%rax)
jb 0x9729d
leaq 0x23ab2(%rip), %rsi     # 0xbad30
leaq 0x88(%rsp), %rdi
callq 0x64e0
jmp 0x9729d
leaq 0x23aa7(%rip), %r15     # 0xbad3b
jmp 0x9729d
leaq 0x23a9b(%rip), %r15     # 0xbad38
cmpl $0x0, 0x320(%rsp)
setne 0x4b(%rsp)
xorl %r12d, %r12d
jmp 0x97aac
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x23738(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, %r12
cmpq %rcx, %rdx
je 0x97497
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x9749f
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x236d7(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, %r12
cmpq %rcx, %rdx
je 0x97545
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x9754d
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x23676(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, %r12
cmpq %rcx, %rdx
je 0x975e8
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x975f0
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x23615(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, %r12
cmpq %rcx, %rdx
je 0x97696
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x9769e
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x235b4(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
movq %r15, %r12
cmpq %rcx, %rdx
je 0x9944e
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x99456
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x974e0
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x97501
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9751c
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x228(%rsp), %rdi
cmpq %r12, %rdi
je 0x97539
movq 0x238(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x237fb(%rip), %r15     # 0xbad3b
jmp 0x9773f
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x9758e
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x975af
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x975ca
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x288(%rsp), %rdi
cmpq %r12, %rdi
je 0x97738
movq 0x298(%rsp), %rsi
jmp 0x97730
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x97631
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x97652
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9766d
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x248(%rsp), %rdi
cmpq %r12, %rdi
je 0x9768a
movq 0x258(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x236a7(%rip), %r15     # 0xbad38
jmp 0x9773f
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x976df
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x97700
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9771b
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x268(%rsp), %rdi
cmpq %r12, %rdi
je 0x97738
movq 0x278(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x235f6(%rip), %r15     # 0xbad35
xorl %r12d, %r12d
cmpl $0x0, 0x320(%rsp)
setne %al
movb %al, 0x4b(%rsp)
movl 0x4c(%rsp), %ecx
andb %cl, %al
cmpb $0x1, %al
jne 0x97773
testb %bpl, %bpl
je 0x977a8
movq %r14, %rdi
movl 0x320(%rsp), %esi
callq 0x39684
movl %eax, %ebp
jmp 0x977aa
cmpl $0x0, 0x318(%rsp)
sete %al
xorb $0x1, %cl
orb %al, %cl
jne 0x97aac
testb %bpl, %bpl
je 0x9787e
movq %r14, %rdi
movl 0x318(%rsp), %esi
callq 0x39684
movl %eax, %ebp
jmp 0x97880
xorl %ebp, %ebp
movq %r14, %rdi
movl 0x320(%rsp), %esi
callq 0x12a72
cmpl $0x5, 0xc(%rax)
jne 0x9781c
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl 0x320(%rsp), %edx
callq 0x34600
leaq 0x2b49b(%rip), %rcx     # 0xc2c75
leaq 0x8(%rsp), %rdi
movl $0x3, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97954
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x9795c
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl $0x5, %edx
movl 0x320(%rsp), %ecx
callq 0x400fa
leaq 0x2b439(%rip), %rcx     # 0xc2c75
leaq 0x8(%rsp), %rdi
movl $0x3, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9798d
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97995
xorl %ebp, %ebp
movq %r14, %rdi
movl 0x318(%rsp), %esi
callq 0x12a72
cmpl $0x5, 0xc(%rax)
jne 0x978f2
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl 0x318(%rsp), %edx
callq 0x34600
leaq 0x2b3c5(%rip), %rcx     # 0xc2c75
leaq 0x8(%rsp), %rdi
movl $0x3, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97a05
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97a0d
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl $0x5, %edx
movl 0x318(%rsp), %ecx
callq 0x400fa
leaq 0x2b363(%rip), %rcx     # 0xc2c75
leaq 0x8(%rsp), %rdi
movl $0x3, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97a3e
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97a46
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
jmp 0x979c4
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x979db
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x979fb
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
movb $0x1, 0x4b(%rsp)
jmp 0x97aac
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
jmp 0x97a75
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x97a8c
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x97aac
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
cmpb $0x0, 0x2e0(%rsp)
je 0x97b75
leaq 0x29032(%rip), %rsi     # 0xc0af3
leaq 0x8(%rsp), %rdi
leaq 0xb8(%rsp), %rdx
callq 0x7a29a
leaq 0x8(%rsp), %rdi
movq %r15, %rsi
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97b07
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97b0f
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
leaq 0x88(%rsp), %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x97b55
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x97b75
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
cmpq $0x0, 0x8(%rbx)
je 0x97b8b
leaq 0x22528(%rip), %rsi     # 0xba0ab
movq %rbx, %rdi
callq 0x64e0
movq 0x88(%rsp), %rsi
movq 0x90(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
testb %r12b, %r12b
movl 0x4c(%rsp), %r12d
je 0x97e40
cmpb $0x1, 0x89(%r13)
jne 0x97c1e
leaq 0x2af29(%rip), %rdx     # 0xc2aeb
leaq 0x8(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0xa5f0f
leaq 0x2af08(%rip), %rcx     # 0xc2ae3
leaq 0x8(%rsp), %rdi
movl $0x7, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97ccb
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97cd3
movl %ebp, 0xb4(%rsp)
movq %r15, %rbp
leaq 0x1f8(%rsp), %r15
movq %r15, -0x10(%r15)
movq 0xb8(%rsp), %rsi
movq 0xc0(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1e8(%rsp), %rdi
callq 0xe456
leaq 0x230dd(%rip), %rsi     # 0xbad38
leaq 0x1e8(%rsp), %rdi
callq 0x64e0
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x1e8(%rsp), %rdx
callq 0x99e24
leaq 0x2ae58(%rip), %rcx     # 0xc2ae3
leaq 0x50(%rsp), %rdi
movl $0x7, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97d3d
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x97d45
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x97d14
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movl 0x4c(%rsp), %r12d
je 0x97e40
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x97e40
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x22cad(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97d94
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97d9c
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x97ddd
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
movq 0x78(%rsp), %r13
je 0x97df9
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movl 0x4c(%rsp), %r12d
je 0x97e19
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x1e8(%rsp), %rdi
cmpq %r15, %rdi
je 0x97e36
movq 0x1f8(%rsp), %rsi
incq %rsi
callq 0x6260
movq %rbp, %r15
movl 0xb4(%rsp), %ebp
cmpb $0x1, 0x89(%r13)
jne 0x980c4
cmpl $0x3, 0x84(%r13)
setne %al
movl %r12d, %ecx
xorb $0x1, %cl
orb %al, %cl
jne 0x97ec5
leaq 0x2ac8a(%rip), %rdx     # 0xc2af4
leaq 0x8(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
callq 0xa5f0f
leaq 0x2ac60(%rip), %rcx     # 0xc2ae3
leaq 0x8(%rsp), %rdi
movl $0x7, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97f60
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x97f67
leaq 0x1d8(%rsp), %r12
movq %r12, -0x10(%r12)
movq 0xb8(%rsp), %rsi
movq 0xc0(%rsp), %rdx
addq %rsi, %rdx
leaq 0x1c8(%rsp), %rdi
callq 0xe456
leaq 0x1c8(%rsp), %rdi
movq %r15, %rsi
callq 0x64e0
xorl %ecx, %ecx
cmpl $0x3, 0x74(%rsp)
setb %cl
leaq 0x50(%rsp), %rdi
leaq 0x1c8(%rsp), %rdx
callq 0x99e24
leaq 0x2abbe(%rip), %rcx     # 0xc2ae3
leaq 0x50(%rsp), %rdi
movl $0x7, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x97fcc
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x97fd3
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x97fa8
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x980c4
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x980c4
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x22a1f(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98022
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x9802a
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x9806b
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
movq 0x78(%rsp), %r13
je 0x98087
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x980a2
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x1c8(%rsp), %rdi
cmpq %r12, %rdi
je 0x980bf
movq 0x1d8(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x4c(%rsp), %r12d
movl 0x2f8(%rsp), %r15d
testl %r15d, %r15d
je 0x98138
testb %bpl, %bpl
je 0x980e5
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
jmp 0x980e7
xorl %ebp, %ebp
leaq 0x21fbd(%rip), %rsi     # 0xba0ab
movq %rbx, %rdi
callq 0x64e0
leaq 0x28(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movl 0x4c(%rsp), %r12d
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98138
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x328(%rsp), %r15d
testl %r15d, %r15d
sete %cl
movl 0x84(%r13), %eax
testl %eax, %eax
sete %dl
orb %cl, %dl
jne 0x982a0
testb %bpl, %bpl
je 0x9816e
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
jmp 0x98170
xorl %ebp, %ebp
leaq 0x50(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
leaq 0x2a976(%rip), %rcx     # 0xc2afd
leaq 0x50(%rsp), %rdi
movl $0x7, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x981c2
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x981c9
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x22829(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98219
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x98221
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x98262
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
movl 0x4c(%rsp), %r12d
je 0x9827e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98299
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x84(%r13), %eax
movl 0x310(%rsp), %r15d
testl %r15d, %r15d
sete %cl
testl %eax, %eax
sete %dl
orb %cl, %dl
je 0x9830c
testl %r15d, %r15d
setne %cl
movl %r12d, %edx
xorb $0x1, %dl
orb %cl, %dl
jne 0x98506
testl %eax, %eax
je 0x98506
cmpl $0x5, %eax
je 0x98506
cmpb $0x0, 0x8a(%r13)
jne 0x98506
cmpl $0x2, 0x8c(%r13)
je 0x98506
leaq 0x2a7d2(%rip), %rsi     # 0xc2ad1
movq %rbx, %rdi
callq 0x64e0
jmp 0x98506
testb %bpl, %bpl
je 0x98325
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
movl 0x4c(%rsp), %r12d
jmp 0x98327
xorl %ebp, %ebp
testb %r12b, %r12b
je 0x9837e
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
leaq 0x21d68(%rip), %rcx     # 0xba0ab
leaq 0x8(%rsp), %rdi
movl $0x2, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x983d0
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x983d7
leaq 0x50(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
leaq 0x2a770(%rip), %rcx     # 0xc2b05
leaq 0x50(%rsp), %rdi
movl $0x8, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98434
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9843b
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x98418
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98506
movq 0x18(%rsp), %rsi
jmp 0x984fe
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x225b7(%rip), %rsi     # 0xbaa15
callq 0x64e0
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9848b
movq %rdx, 0x28(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x38(%rsp)
jmp 0x98493
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0x30(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x28(%rsp), %rsi
movq 0x30(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x984d4
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x984eb
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98506
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x308(%rsp), %r15d
movl 0x300(%rsp), %r12d
movl %r15d, %eax
orl %r12d, %eax
je 0x9854b
cmpl $0x0, 0x84(%r13)
je 0x9854b
testb %bpl, %bpl
je 0x98558
movq %r14, %rdi
movl %r12d, %esi
callq 0x39684
testb %al, %al
je 0x98558
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
jmp 0x9855a
movl 0x318(%rsp), %r15d
jmp 0x989df
xorl %ebp, %ebp
leaq 0x38(%rsp), %rax
movq %rax, -0x10(%rax)
movq $0x0, -0x8(%rax)
movb $0x0, (%rax)
movl 0x84(%r13), %eax
decl %eax
cmpl $0x3, %eax
jae 0x98599
movl %eax, %eax
leaq 0x27b87(%rip), %rdx     # 0xc010c
movslq (%rdx,%rax,4), %rcx
addq %rdx, %rcx
leaq 0x27b85(%rip), %rdx     # 0xc0118
movq (%rdx,%rax,8), %r8
jmp 0x985a6
movl $0x1e, %r8d
leaq 0x2a568(%rip), %rcx     # 0xc2b0e
leaq 0x28(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x63f0
leaq 0x2a572(%rip), %rsi     # 0xc2b2d
leaq 0x180(%rsp), %rdi
leaq 0x28(%rsp), %rdx
callq 0x7a29a
leaq 0x2a69d(%rip), %rsi     # 0xc2c71
leaq 0x180(%rsp), %rdi
callq 0x64e0
movl %ebp, 0xb4(%rsp)
leaq 0x108(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x9861b
movq %rsi, %rbp
movq %rdx, 0xf8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x108(%rsp)
jmp 0x98624
movups (%rcx), %xmm0
movq %rsi, %rbp
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0x100(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x160(%rsp), %rdi
movq %r14, %rsi
movl %r12d, %edx
callq 0x33f8a
movq 0xf8(%rsp), %rcx
movq 0x100(%rsp), %r8
movq 0x168(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %rbp, %rcx
je 0x98680
movq 0x108(%rsp), %rdi
movq 0x160(%rsp), %rsi
cmpq %rdi, %rax
jbe 0x986ac
leaq 0x170(%rsp), %r9
movl $0xf, %edi
cmpq %r9, %rsi
je 0x986a7
movq 0x170(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x986bb
leaq 0xf8(%rsp), %rdi
callq 0x60b0
jmp 0x986cc
leaq 0x160(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x128(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x986f9
movq %rsi, 0x118(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x128(%rsp)
jmp 0x986ff
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x120(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x21985(%rip), %rsi     # 0xba0ab
leaq 0x118(%rsp), %rdi
callq 0x64e0
leaq 0xe8(%rsp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98764
movq %rdx, 0xd8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xe8(%rsp)
jmp 0x9876c
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, 0xe0(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x140(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
movq 0xd8(%rsp), %rcx
movq 0xe0(%rsp), %r8
movq 0x148(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r12, %rcx
je 0x987c8
movq 0xe8(%rsp), %rdi
movq 0x140(%rsp), %rsi
cmpq %rdi, %rax
jbe 0x987f4
leaq 0x150(%rsp), %r9
movl $0xf, %edi
cmpq %r9, %rsi
je 0x987ef
movq 0x150(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x98803
leaq 0xd8(%rsp), %rdi
callq 0x60b0
jmp 0x98814
leaq 0x140(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x60(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x98838
movq %rsi, 0x50(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x60(%rsp)
jmp 0x9883e
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x58(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x221b3(%rip), %rsi     # 0xbaa15
leaq 0x50(%rsp), %rdi
callq 0x64e0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98893
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9889a
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x988db
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movl 0x318(%rsp), %r15d
je 0x988fe
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x150(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9891f
movq 0x150(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xd8(%rsp), %rdi
cmpq %r12, %rdi
je 0x9893c
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9895d
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x170(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9897e
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xf8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x9899b
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x190(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movl 0xb4(%rsp), %ebp
je 0x989c3
movq 0x190(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
je 0x989df
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x38(%rsp), %r12
movq %r12, -0x10(%r12)
movq $0x0, -0x8(%r12)
movb $0x0, (%r12)
testl %r15d, %r15d
sete %al
movl 0x4c(%rsp), %ecx
orb %cl, %al
je 0x98a2b
movb 0x4b(%rsp), %al
xorb $0x1, %al
orb %cl, %al
jne 0x98a95
testb %bpl, %bpl
je 0x98a53
movq %r14, %rdi
movl 0x320(%rsp), %esi
callq 0x39684
movl %eax, %ebp
jmp 0x98a55
testb %bpl, %bpl
je 0x98a3f
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
jmp 0x98a41
xorl %ebp, %ebp
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
jmp 0x98a69
xorl %ebp, %ebp
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl 0x320(%rsp), %edx
callq 0x33f8a
leaq 0x28(%rsp), %rdi
leaq 0x8(%rsp), %r15
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
je 0x98a95
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
cmpq $0x0, 0x30(%rsp)
je 0x98cb1
movl 0x84(%r13), %eax
cmpl $0x2, %eax
je 0x98b12
cmpl $0x1, %eax
jne 0x98cb1
movq 0xa8(%rsp), %rax
cmpl $0x3, 0x14(%rax)
jb 0x98bdb
leaq 0x50(%rsp), %rdi
leaq 0x28(%rsp), %rdx
movq %r14, %rsi
callq 0x32b66
leaq 0x1fb74(%rip), %rsi     # 0xb8655
leaq 0x50(%rsp), %rdi
callq 0x64e0
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98b75
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x98b7d
movq 0xa8(%rsp), %rax
cmpl $0x4, 0x14(%rax)
jb 0x98c6e
leaq 0x50(%rsp), %rdi
leaq 0x28(%rsp), %rdx
movq %r14, %rsi
callq 0x32b66
leaq 0x221f3(%rip), %rsi     # 0xbad30
leaq 0x50(%rsp), %rdi
callq 0x64e0
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98c08
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x98c10
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x28(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x98bbb
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x98bdb
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x214c9(%rip), %rsi     # 0xba0ab
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rdx
callq 0x7a29a
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
jmp 0x98c96
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x8(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x28(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x98c4e
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x98c6e
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x21436(%rip), %rsi     # 0xba0ab
leaq 0x8(%rsp), %rdi
leaq 0x28(%rsp), %rdx
callq 0x7a29a
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98cb1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x330(%rsp), %r15d
testl %r15d, %r15d
je 0x98dae
cmpl $0x1, 0x84(%r13)
jne 0x98ce3
cmpq $0x0, 0x30(%rsp)
jne 0x98ce3
leaq 0x29e5d(%rip), %rsi     # 0xc2b38
movq %rbx, %rdi
callq 0x64e0
testb %bpl, %bpl
je 0x98cf7
movq %r14, %rdi
movl %r15d, %esi
callq 0x39684
movl %eax, %ebp
jmp 0x98cf9
xorl %ebp, %ebp
leaq 0x50(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x99efc
leaq 0x2139b(%rip), %rcx     # 0xba0ab
leaq 0x50(%rsp), %rdi
movl $0x2, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98d4b
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x98d52
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x98d93
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98dae
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movl 0x338(%rsp), %r15d
testl %r15d, %r15d
je 0x98e07
leaq 0x212e9(%rip), %rsi     # 0xba0ab
movq %rbx, %rdi
callq 0x64e0
leaq 0x8(%rsp), %rdi
movq %r14, %rsi
movl %r15d, %edx
callq 0x33f8a
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x98e07
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
cmpb $0x1, 0x7df(%r14)
jne 0x993d1
movq %r14, %rdi
movq %r13, %rsi
callq 0x14b1c
testb %al, %al
je 0x993d1
cmpb $0x0, 0x13c(%rsp)
jne 0x98e41
leaq 0x21bdc(%rip), %rsi     # 0xbaa15
movq %rbx, %rdi
callq 0x64e0
movq %r14, %rdi
movl 0x84(%rsp), %esi
callq 0x7a260
testq %rax, %rax
je 0x98e5f
movl 0x10(%rax), %eax
movl %eax, 0x84(%rsp)
movq %r14, %rdi
movl 0x84(%rsp), %esi
callq 0x12c9a
testq %rax, %rax
je 0x98e90
movq 0x68(%rax), %rcx
testq %rcx, %rcx
je 0x98e86
cmpb $0x0, 0x10(%rcx)
je 0x994ff
movl 0x8(%rax), %eax
movl %eax, 0x84(%rsp)
movl 0x7c8(%r14), %esi
movq %r14, %rdi
callq 0x12a72
movq %rax, %r15
movl 0x7c8(%r14), %edx
movq (%r14), %rax
leaq 0x160(%rsp), %rdi
movq %r14, %rsi
movl $0x1, %ecx
callq *0x38(%rax)
leaq 0x211e5(%rip), %rcx     # 0xba0ab
leaq 0x160(%rsp), %rdi
movl $0x2, %r8d
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x190(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98f0d
movq %rdx, 0x180(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x190(%rsp)
jmp 0x98f13
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
leaq 0x180(%rsp), %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x21910(%rip), %rsi     # 0xba849
callq 0x64e0
leaq 0x108(%rsp), %r13
movq %r13, -0x10(%r13)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x98f6e
movq %rdx, 0xf8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x108(%rsp)
jmp 0x98f76
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
movq %rdx, 0x100(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x140(%rsp), %rdi
movq %r14, %rsi
movq %r15, %rdx
xorl %ecx, %ecx
callq 0x2c088
movq 0xf8(%rsp), %rcx
movq 0x100(%rsp), %r8
movq 0x148(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
cmpq %r13, %rcx
je 0x98fd4
movq 0x108(%rsp), %rdi
movq 0x140(%rsp), %rsi
cmpq %rdi, %rax
jbe 0x99000
leaq 0x150(%rsp), %r9
movl $0xf, %edi
cmpq %r9, %rsi
je 0x98ffb
movq 0x150(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x9900f
leaq 0xf8(%rsp), %rdi
callq 0x60b0
jmp 0x99020
leaq 0x140(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x128(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x9904d
movq %rsi, 0x118(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x128(%rsp)
jmp 0x99053
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x120(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x29c72(%rip), %rsi     # 0xc2cec
leaq 0x118(%rsp), %rdi
callq 0x64e0
leaq 0xe8(%rsp), %rsi
movq %rsi, -0x10(%rsi)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x990b7
movq %rdx, 0xd8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0xe8(%rsp)
jmp 0x990bd
movups (%rcx), %xmm0
movups %xmm0, (%rsi)
movq 0x8(%rax), %rdx
movq %rdx, 0xe0(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq %r14, %rdi
movl 0x84(%rsp), %esi
callq 0xb3ca
movq %r14, %rdi
movq %rax, %rsi
movl $0xd, %edx
callq 0x9a32e
movl %eax, %r15d
movl $0x1, %eax
cmpl $0xa, %r15d
jb 0x9914a
movl $0x4, %eax
movl $0xd1b71759, %ecx       # imm = 0xD1B71759
movl %r15d, %edx
cmpl $0x63, %edx
jbe 0x99143
cmpl $0x3e7, %edx            # imm = 0x3E7
jbe 0x99148
cmpl $0x2710, %edx           # imm = 0x2710
jb 0x9914a
movl %edx, %esi
imulq %rcx, %rsi
shrq $0x2d, %rsi
addl $0x4, %eax
cmpl $0x1869f, %edx          # imm = 0x1869F
movl %esi, %edx
ja 0x99112
addl $-0x3, %eax
jmp 0x9914a
addl $-0x2, %eax
jmp 0x9914a
decl %eax
movl %eax, %esi
leaq 0x1b8(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x1a8(%rsp), %rdi
xorl %edx, %edx
callq 0x62f0
movq 0x1a8(%rsp), %rdi
movl 0x1b0(%rsp), %esi
movl %r15d, %edx
callq 0x20b57
movq 0xd8(%rsp), %rcx
movq 0xe0(%rsp), %r8
movq 0x1b0(%rsp), %rdx
leaq (%rdx,%r8), %rax
movl $0xf, %edi
leaq 0xe8(%rsp), %rsi
cmpq %rsi, %rcx
je 0x991b4
movq 0xe8(%rsp), %rdi
movq 0x1a8(%rsp), %rsi
cmpq %rdi, %rax
jbe 0x991d8
movl $0xf, %edi
cmpq %r13, %rsi
je 0x991d3
movq 0x1b8(%rsp), %rdi
cmpq %rdi, %rax
jbe 0x991e7
leaq 0xd8(%rsp), %rdi
callq 0x60b0
jmp 0x991f8
leaq 0x1a8(%rsp), %rdi
xorl %esi, %esi
xorl %edx, %edx
callq 0x62c0
leaq 0x60(%rsp), %rdx
movq %rdx, -0x10(%rdx)
movq (%rax), %rsi
leaq 0x10(%rax), %rcx
cmpq %rcx, %rsi
je 0x9921c
movq %rsi, 0x50(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x60(%rsp)
jmp 0x99222
movups (%rcx), %xmm0
movups %xmm0, (%rdx)
movq %rax, %rdx
addq $0x8, %rdx
movq 0x8(%rax), %rsi
movq %rsi, 0x58(%rsp)
movq %rcx, (%rax)
movq $0x0, (%rdx)
movb $0x0, (%rcx)
leaq 0x248f8(%rip), %rsi     # 0xbdb3e
leaq 0x50(%rsp), %rdi
callq 0x64e0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x99277
movq %rdx, 0x8(%rsp)
movq (%rcx), %rdx
movq %rdx, 0x18(%rsp)
jmp 0x9927e
movups (%rcx), %xmm0
movups %xmm0, (%r15)
movq 0x8(%rax), %rdx
movq %rdx, 0x10(%rsp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
movq 0x8(%rsp), %rsi
movq 0x10(%rsp), %rdx
movq %rbx, %rdi
callq 0x60b0
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x992bf
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
leaq 0xe8(%rsp), %r15
je 0x992e2
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x1a8(%rsp), %rdi
cmpq %r13, %rdi
je 0x992ff
movq 0x1b8(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xd8(%rsp), %rdi
cmpq %r15, %rdi
leaq 0x190(%rsp), %r15
leaq 0x108(%rsp), %r13
je 0x9932c
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9934d
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x150(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9936e
movq 0x150(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xf8(%rsp), %rdi
cmpq %r13, %rdi
je 0x9938b
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x180(%rsp), %rdi
cmpq %r15, %rdi
je 0x993a8
movq 0x190(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x170(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x993c9
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x6260
movb $0x1, 0x938(%r14)
movq 0x340(%rsp), %rax
movb %bpl, (%rax)
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x993f3
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x99418
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99439
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x6260
movq %rbx, %rax
addq $0x2a8, %rsp            # imm = 0x2A8
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movups (%rcx), %xmm0
movups %xmm0, (%r13)
movq 0x8(%rax), %rdx
leaq 0x28(%rsp), %r15
movq %rdx, 0x8(%r15)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq 0x88(%rsp), %rdi
movq %r15, %rsi
callq 0x6310
movq (%r15), %rdi
cmpq %r13, %rdi
je 0x99497
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x8(%rsp), %rdi
leaq 0x18(%rsp), %rax
cmpq %rax, %rdi
movq 0x78(%rsp), %r13
je 0x994b8
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x994d3
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x208(%rsp), %rdi
cmpq %r12, %rdi
je 0x994f0
movq 0x218(%rsp), %rsi
incq %rsi
callq 0x6260
movb $0x1, %r12b
leaq 0x21841(%rip), %r15     # 0xbad3b
jmp 0x97742
movl $0x10, %edi
callq 0x6140
movq %rax, %r15
leaq 0x18(%rsp), %r13
movq %r13, -0x10(%r13)
leaq 0x29626(%rip), %rsi     # 0xc2b42
leaq 0x29656(%rip), %rdx     # 0xc2b79
leaq 0x8(%rsp), %rdi
callq 0x7be0
movb $0x1, %bpl
leaq 0x8(%rsp), %rsi
movq %r15, %rdi
callq 0x6320
leaq 0x62884(%rip), %rax     # 0xfbdc8
addq $0x10, %rax
movq %rax, (%r15)
xorl %ebp, %ebp
leaq 0x6285c(%rip), %rsi     # 0xfbdb0
movq 0x63a7d(%rip), %rdx     # 0xfcfd8
movq %r15, %rdi
callq 0x6470
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r13, %rdi
je 0x9957d
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
testb %bpl, %bpl
jne 0x9958a
jmp 0x99d99
movq %rax, %r14
movq %r15, %rdi
callq 0x6200
jmp 0x99d99
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x99649
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99649
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x99670
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99670
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x99697
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99697
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x996be
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x996be
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x996e5
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x996e5
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9970c
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9970c
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9972d
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9972d
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9974e
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9974e
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x9976f
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9976f
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99790
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99790
movq %rax, %r14
movq 0x208(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x218(%rsp), %rsi
jmp 0x99da8
movq %rax, %r14
movq 0x268(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x278(%rsp), %rsi
jmp 0x99da8
movq %rax, %r14
movq 0x248(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x258(%rsp), %rsi
jmp 0x99da8
movq %rax, %r14
movq 0x288(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x298(%rsp), %rsi
jmp 0x99da8
movq %rax, %r14
movq 0x228(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x238(%rsp), %rsi
jmp 0x99da8
jmp 0x99db2
jmp 0x99db2
jmp 0x99db2
jmp 0x99db2
jmp 0x99db2
jmp 0x99db2
jmp 0x99bde
jmp 0x99bde
jmp 0x99bfa
jmp 0x99bfa
jmp 0x99db2
jmp 0x99db2
jmp 0x99c77
jmp 0x99c77
jmp 0x99d96
jmp 0x99d96
jmp 0x99bde
jmp 0x99bde
jmp 0x99bfa
jmp 0x99bfa
jmp 0x99db2
jmp 0x99db2
jmp 0x99db2
jmp 0x99c37
jmp 0x99c37
jmp 0x99d96
jmp 0x99d96
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99854
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99854
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99874
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99874
movq %rax, %r14
movq 0x1a8(%rsp), %rdi
cmpq %r13, %rdi
je 0x99cb4
movq 0x1b8(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99cb4
movq %rax, %r14
jmp 0x99cd9
movq %rax, %r14
jmp 0x99cfa
movq %rax, %r14
jmp 0x99d1b
movq %rax, %r14
jmp 0x99d40
movq %rax, %r14
jmp 0x99d65
jmp 0x99d96
jmp 0x99d96
jmp 0x99d96
jmp 0x99d96
jmp 0x99d96
jmp 0x99b82
jmp 0x99b9e
jmp 0x99972
jmp 0x99bba
jmp 0x99bfa
jmp 0x99db2
jmp 0x99db2
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x9991d
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9991d
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99939
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99939
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x999a9
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x999a9
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x9998d
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x9998d
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
jne 0x99beb
jmp 0x99bfd
jmp 0x999a6
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r12, %rdi
je 0x999cf
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x999cf
movq %rax, %r14
movq 0x1c8(%rsp), %rdi
cmpq %r12, %rdi
je 0x99db5
movq 0x1d8(%rsp), %rsi
jmp 0x99da8
jmp 0x99bfa
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99a11
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99a11
jmp 0x99db2
jmp 0x99db2
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
jne 0x99beb
jmp 0x99bfd
jmp 0x99a0e
movq %rax, %r14
movq 0x1e8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99db5
movq 0x1f8(%rsp), %rsi
jmp 0x99da8
jmp 0x99bfa
jmp 0x99db2
jmp 0x99db2
jmp 0x99d91
jmp 0x99db2
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99a67
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99a67
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99a87
movq 0x60(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99a87
movq %rax, %r14
leaq 0x150(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99aad
movq 0x150(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99aad
movq %rax, %r14
movq 0xd8(%rsp), %rdi
cmpq %r12, %rdi
je 0x99ad4
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99ad4
jmp 0x99d96
movq %rax, %r14
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99afa
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99afa
movq %rax, %r14
leaq 0x170(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99b20
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99b20
movq %rax, %r14
movq 0xf8(%rsp), %rdi
cmpq %rbp, %rdi
je 0x99b42
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99b42
movq %rax, %r14
leaq 0x190(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99b6a
movq 0x190(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99b6a
jmp 0x99b67
movq %rax, %r14
movq 0x28(%rsp), %rdi
leaq 0x38(%rsp), %rax
cmpq %rax, %rdi
jne 0x99da3
jmp 0x99db5
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x99ba1
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99ba1
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99bbd
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99bbd
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99db5
movq 0x60(%rsp), %rsi
jmp 0x99da8
jmp 0x99db2
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r13, %rdi
je 0x99bfd
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99bfd
movq %rax, %r14
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99db5
movq 0x18(%rsp), %rsi
jmp 0x99da8
jmp 0x99db2
jmp 0x99d8a
jmp 0x99d91
jmp 0x99d91
jmp 0x99d8a
jmp 0x99d91
movq %rax, %r14
leaq 0x18(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99d99
movq 0x18(%rsp), %rsi
jmp 0x99d7e
jmp 0x99d96
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x99c7a
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99c7a
movq %rax, %r14
leaq 0x60(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99d99
movq 0x60(%rsp), %rsi
jmp 0x99d7e
jmp 0x99d96
movq %rax, %r14
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
jmp 0x99b74
jmp 0x99db2
movq %rax, %r14
movq 0xd8(%rsp), %rdi
leaq 0xe8(%rsp), %rax
cmpq %rax, %rdi
je 0x99cd9
movq 0xe8(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x128(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99cfa
movq 0x128(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x150(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99d1b
movq 0x150(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0xf8(%rsp), %rdi
leaq 0x108(%rsp), %rax
cmpq %rax, %rdi
je 0x99d40
movq 0x108(%rsp), %rsi
incq %rsi
callq 0x6260
movq 0x180(%rsp), %rdi
leaq 0x190(%rsp), %rax
cmpq %rax, %rdi
je 0x99d65
movq 0x190(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0x170(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99d99
movq 0x170(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99d99
jmp 0x99d8a
movq %rax, %r14
jmp 0x99dda
jmp 0x99d91
movq %rax, %r14
jmp 0x99dfb
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r12, %rdi
je 0x99db5
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x6260
jmp 0x99db5
movq %rax, %r14
movq 0x88(%rsp), %rdi
leaq 0x98(%rsp), %rax
cmpq %rax, %rdi
je 0x99dda
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x6260
leaq 0xc8(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x99dfb
movq 0xc8(%rsp), %rsi
incq %rsi
callq 0x6260
movq (%rbx), %rdi
cmpq 0x1a0(%rsp), %rdi
je 0x99e1b
movq 0x1a0(%rsp), %rax
movq (%rax), %rsi
incq %rsi
callq 0x6260
movq %r14, %rdi
callq 0x64a0
nop