// File: /workspace/github_c_makefile_star2_O0/Ihsoh[P]ilang/compiler/frontend/semantics.c
// Function: calc_cast_constexpr
static void _calc_cast_constexpr(
	ParserContext *ctx,
	uint8_t target_type,
	ParserASTNode *target,
	ParserASTNode *source
) {
	assert(ctx);
	assert(target);
	assert(source);

	uint8_t source_type = _get_type_by_type_node(ctx, FE_EXPR_AST_NODE_GET_TYPE_NODE(source));

	// 常量表达式不能把指针类型转换为非指针类型。
	if (source_type == FE_TYPE_POINTER
			&& target_type != FE_TYPE_POINTER) {
		_SYNERR_NODE(ctx, source, "not a compile-time constant.");
	}

	#define	_A(target_t, target_t_c)	\
		case FE_TYPE_##target_t: {	\
			switch (source_type) {	\
				case FE_TYPE_CHAR: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_CHAR_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_INT8: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_INT8_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_INT16: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_INT16_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_INT32: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_INT32_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_INT64: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_INT64_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_UINT8: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_UINT8_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_UINT16: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_UINT16_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_UINT32: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_UINT32_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_UINT64: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_UINT64_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_FLOAT: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_FLOAT_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_DOUBLE: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_DOUBLE_VAL(source)	\
					);	\
					break;	\
				}	\
				case FE_TYPE_POINTER: {	\
					FE_EXPR_AST_NODE_SET_CONSTEXPR_RESULT_##target_t##_VAL(	\
						target,	\
						(target_t_c) FE_EXPR_AST_NODE_GET_CONSTEXPR_RESULT_POINTER_VAL(source)	\
					);	\
					break;	\
				}	\
				default: {	\
					assert(0);	\
				}	\
			}	\
			break;	\
		}


	switch (target_type) {
		_A(CHAR, char)
		_A(INT8, int8_t)
		_A(INT16, int16_t)
		_A(INT32, int32_t)
		_A(INT64, int64_t)
		_A(UINT8, uint8_t)
		_A(UINT16, uint16_t)
		_A(UINT32, uint32_t)
		_A(UINT64, uint64_t)
		_A(FLOAT, float)
		_A(DOUBLE, double)
		_A(POINTER, uint64_t)
		default: {
			assert(0);
		}
	}


	#undef	_A
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x4b0, %rsp            # imm = 0x4B0
movb %sil, %al
movq %rdi, -0x8(%rbp)
movb %al, -0x9(%rbp)
movq %rdx, -0x18(%rbp)
movq %rcx, -0x20(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x582c6
jmp 0x582e5
leaq 0x24289(%rip), %rdi     # 0x7c556
leaq 0x25f76(%rip), %rsi     # 0x7e24a
movl $0x877, %edx            # imm = 0x877
leaq 0x2720d(%rip), %rcx     # 0x7f4ed
callq 0x30a0
cmpq $0x0, -0x18(%rbp)
je 0x582ee
jmp 0x5830d
leaq 0x2342d(%rip), %rdi     # 0x7b722
leaq 0x25f4e(%rip), %rsi     # 0x7e24a
movl $0x878, %edx            # imm = 0x878
leaq 0x271e5(%rip), %rcx     # 0x7f4ed
callq 0x30a0
cmpq $0x0, -0x20(%rbp)
je 0x58316
jmp 0x58335
leaq 0x19274(%rip), %rdi     # 0x71591
leaq 0x25f26(%rip), %rsi     # 0x7e24a
movl $0x879, %edx            # imm = 0x879
leaq 0x271bd(%rip), %rcx     # 0x7f4ed
callq 0x30a0
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rax
movq 0x68(%rax), %rsi
callq 0x4d750
movb %al, -0x21(%rbp)
movzbl -0x21(%rbp), %eax
cmpl $0x10, %eax
jne 0x58389
movzbl -0x9(%rbp), %eax
cmpl $0x10, %eax
je 0x58389
leaq -0x430(%rbp), %rdi
leaq 0x271da(%rip), %rsi     # 0x7f543
movb $0x0, %al
callq 0x3160
movq -0x8(%rbp), %rax
movq 0x58(%rax), %rax
movq -0x8(%rbp), %rdi
movq -0x20(%rbp), %rsi
leaq -0x430(%rbp), %rdx
callq *%rax
movzbl -0x9(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x438(%rbp)
subl $0xf, %eax
ja 0x59d2d
movq -0x438(%rbp), %rax
leaq 0x25931(%rip), %rcx     # 0x7dce0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x440(%rbp)
subl $0xf, %eax
ja 0x5858d
movq -0x440(%rbp), %rax
leaq 0x25c02(%rip), %rcx     # 0x7dfe0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
cvttss2si %xmm0, %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
cvttsd2si %xmm0, %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x1, 0x71(%rax)
jmp 0x585ac
leaq 0x19ec7(%rip), %rdi     # 0x7245b
leaq 0x25caf(%rip), %rsi     # 0x7e24a
movl $0x8e3, %edx            # imm = 0x8E3
leaq 0x26f46(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x448(%rbp)
subl $0xf, %eax
ja 0x58786
movq -0x448(%rbp), %rax
leaq 0x259c9(%rip), %rcx     # 0x7dfa0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
cvttss2si %xmm0, %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
cvttsd2si %xmm0, %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x2, 0x71(%rax)
jmp 0x587a5
leaq 0x19cce(%rip), %rdi     # 0x7245b
leaq 0x25ab6(%rip), %rsi     # 0x7e24a
movl $0x8e4, %edx            # imm = 0x8E4
leaq 0x26d4d(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x450(%rbp)
subl $0xf, %eax
ja 0x5899a
movq -0x450(%rbp), %rax
leaq 0x25790(%rip), %rcx     # 0x7df60
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movw 0x88(%rax), %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movw 0x88(%rax), %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
cvttss2si %xmm0, %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
cvttsd2si %xmm0, %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x3, 0x71(%rax)
jmp 0x589b9
leaq 0x19aba(%rip), %rdi     # 0x7245b
leaq 0x258a2(%rip), %rsi     # 0x7e24a
movl $0x8e5, %edx            # imm = 0x8E5
leaq 0x26b39(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x458(%rbp)
subl $0xf, %eax
ja 0x58b82
movq -0x458(%rbp), %rax
leaq 0x2553c(%rip), %rcx     # 0x7df20
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movswl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
cvttss2si 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
cvttsd2si 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x4, 0x71(%rax)
jmp 0x58ba1
leaq 0x198d2(%rip), %rdi     # 0x7245b
leaq 0x256ba(%rip), %rsi     # 0x7e24a
movl $0x8e6, %edx            # imm = 0x8E6
leaq 0x26951(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x460(%rbp)
subl $0xf, %eax
ja 0x58d7c
movq -0x460(%rbp), %rax
leaq 0x25314(%rip), %rcx     # 0x7dee0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movswq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movslq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
cvttss2si 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
cvttsd2si 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x5, 0x71(%rax)
jmp 0x58d9b
leaq 0x196d8(%rip), %rdi     # 0x7245b
leaq 0x254c0(%rip), %rsi     # 0x7e24a
movl $0x8e7, %edx            # imm = 0x8E7
leaq 0x26757(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x468(%rbp)
subl $0xf, %eax
ja 0x58f6d
movq -0x468(%rbp), %rax
leaq 0x250da(%rip), %rcx     # 0x7dea0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movb 0x88(%rax), %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movw 0x88(%rax), %ax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
cvttss2si 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
cvttsd2si 0x88(%rax), %eax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movb %al, %cl
movq -0x18(%rbp), %rax
movb %cl, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x6, 0x71(%rax)
jmp 0x58f8c
leaq 0x194e7(%rip), %rdi     # 0x7245b
leaq 0x252cf(%rip), %rsi     # 0x7e24a
movl $0x8e8, %edx            # imm = 0x8E8
leaq 0x26566(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x470(%rbp)
subl $0xf, %eax
ja 0x59179
movq -0x470(%rbp), %rax
leaq 0x24ea9(%rip), %rcx     # 0x7de60
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movw 0x88(%rax), %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movw 0x88(%rax), %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
cvttss2si 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
cvttsd2si 0x88(%rax), %eax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movw %ax, %cx
movq -0x18(%rbp), %rax
movw %cx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x7, 0x71(%rax)
jmp 0x59198
leaq 0x192db(%rip), %rdi     # 0x7245b
leaq 0x250c3(%rip), %rsi     # 0x7e24a
movl $0x8e9, %edx            # imm = 0x8E9
leaq 0x2635a(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x478(%rbp)
subl $0xf, %eax
ja 0x59367
movq -0x478(%rbp), %rax
leaq 0x24c5d(%rip), %rcx     # 0x7de20
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movswl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movl 0x88(%rax), %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
cvttss2si 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
cvttsd2si 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movl %ecx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x8, 0x71(%rax)
jmp 0x59386
leaq 0x190ed(%rip), %rdi     # 0x7245b
leaq 0x24ed5(%rip), %rsi     # 0x7e24a
movl $0x8ea, %edx            # imm = 0x8EA
leaq 0x2616c(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x480(%rbp)
subl $0xf, %eax
ja 0x595ae
movq -0x480(%rbp), %rax
leaq 0x24a2f(%rip), %rcx     # 0x7dde0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movswq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movslq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
movss 0x24cff(%rip), %xmm2    # 0x7e210
movaps %xmm0, %xmm1
subss %xmm2, %xmm1
cvttss2si %xmm1, %rax
cvttss2si %xmm0, %rcx
movq %rcx, %rdx
sarq $0x3f, %rdx
andq %rdx, %rax
orq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
movsd 0x24cad(%rip), %xmm2    # 0x7e208
movaps %xmm0, %xmm1
subsd %xmm2, %xmm1
cvttsd2si %xmm1, %rax
cvttsd2si %xmm0, %rcx
movq %rcx, %rdx
sarq $0x3f, %rdx
andq %rdx, %rax
orq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x9, 0x71(%rax)
jmp 0x595cd
leaq 0x18ea6(%rip), %rdi     # 0x7245b
leaq 0x24c8e(%rip), %rsi     # 0x7e24a
movl $0x8eb, %edx            # imm = 0x8EB
leaq 0x25f25(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x488(%rbp)
subl $0xf, %eax
ja 0x59861
movq -0x488(%rbp), %rax
leaq 0x247a8(%rip), %rcx     # 0x7dda0
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
cvtsi2ss %eax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
cvtsi2ss %eax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movswl 0x88(%rax), %eax
cvtsi2ss %eax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
cvtsi2ssl 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
cvtsi2ssq 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
cvtsi2ss %eax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %eax
cvtsi2ss %eax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
cvtsi2ss %rax, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movq %rax, %rdx
shrq %rdx
movl %eax, %ecx
andl $0x1, %ecx
orq %rdx, %rcx
cvtsi2ss %rcx, %xmm0
addss %xmm0, %xmm0
cvtsi2ss %rax, %xmm1
movss %xmm1, -0x490(%rbp)
testq %rax, %rax
movss %xmm0, -0x48c(%rbp)
js 0x59788
movss -0x490(%rbp), %xmm0
movss %xmm0, -0x48c(%rbp)
movss -0x48c(%rbp), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
cvtsd2ss %xmm0, %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rax
movq %rax, %rdx
shrq %rdx
movl %eax, %ecx
andl $0x1, %ecx
orq %rdx, %rcx
cvtsi2ss %rcx, %xmm0
addss %xmm0, %xmm0
cvtsi2ss %rax, %xmm1
movss %xmm1, -0x498(%rbp)
testq %rax, %rax
movss %xmm0, -0x494(%rbp)
js 0x59843
movss -0x498(%rbp), %xmm0
movss %xmm0, -0x494(%rbp)
movss -0x494(%rbp), %xmm0
movq -0x18(%rbp), %rax
movss %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xa, 0x71(%rax)
jmp 0x59880
leaq 0x18bf3(%rip), %rdi     # 0x7245b
leaq 0x249db(%rip), %rsi     # 0x7e24a
movl $0x8ec, %edx            # imm = 0x8EC
leaq 0x25c72(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x4a0(%rbp)
subl $0xf, %eax
ja 0x59ac5
movq -0x4a0(%rbp), %rax
leaq 0x244b5(%rip), %rcx     # 0x7dd60
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
cvtsi2sd %eax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movsbl 0x88(%rax), %eax
cvtsi2sd %eax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movswl 0x88(%rax), %eax
cvtsi2sd %eax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
cvtsi2sdl 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
cvtsi2sdq 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
cvtsi2sd %eax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %eax
cvtsi2sd %eax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
cvtsi2sd %rax, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movq 0x88(%rax), %xmm0
movaps 0x2481e(%rip), %xmm1    # 0x7e220
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x24822(%rip), %xmm1    # 0x7e230
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
cvtss2sd %xmm0, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
movq -0x20(%rbp), %rax
movq 0x88(%rax), %xmm0
movaps 0x2478c(%rip), %xmm1    # 0x7e220
punpckldq %xmm1, %xmm0    # xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
movapd 0x24790(%rip), %xmm1    # 0x7e230
subpd %xmm1, %xmm0
movaps %xmm0, %xmm1
unpckhpd %xmm0, %xmm0            # xmm0 = xmm0[1,1]
addsd %xmm1, %xmm0
movq -0x18(%rbp), %rax
movsd %xmm0, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0xb, 0x71(%rax)
jmp 0x59ae4
leaq 0x1898f(%rip), %rdi     # 0x7245b
leaq 0x24777(%rip), %rsi     # 0x7e24a
movl $0x8ed, %edx            # imm = 0x8ED
leaq 0x25a0e(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
movzbl -0x21(%rbp), %eax
decl %eax
movl %eax, %ecx
movq %rcx, -0x4a8(%rbp)
subl $0xf, %eax
ja 0x59d0c
movq -0x4a8(%rbp), %rax
leaq 0x24211(%rip), %rcx     # 0x7dd20
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movsbq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movswq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movslq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movzbl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movzwl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movl 0x88(%rax), %eax
movl %eax, %ecx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movss 0x88(%rax), %xmm0
movss 0x245a1(%rip), %xmm2    # 0x7e210
movaps %xmm0, %xmm1
subss %xmm2, %xmm1
cvttss2si %xmm1, %rax
cvttss2si %xmm0, %rcx
movq %rcx, %rdx
sarq $0x3f, %rdx
andq %rdx, %rax
orq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movsd 0x88(%rax), %xmm0
movsd 0x2454f(%rip), %xmm2    # 0x7e208
movaps %xmm0, %xmm1
subsd %xmm2, %xmm1
cvttsd2si %xmm1, %rax
cvttsd2si %xmm0, %rcx
movq %rcx, %rdx
sarq $0x3f, %rdx
andq %rdx, %rax
orq %rax, %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
movq -0x20(%rbp), %rax
movq 0x88(%rax), %rcx
movq -0x18(%rbp), %rax
movq %rcx, 0x88(%rax)
movq -0x18(%rbp), %rax
movb $0x10, 0x71(%rax)
jmp 0x59d2b
leaq 0x18748(%rip), %rdi     # 0x7245b
leaq 0x24530(%rip), %rsi     # 0x7e24a
movl $0x8ee, %edx            # imm = 0x8EE
leaq 0x257c7(%rip), %rcx     # 0x7f4ed
callq 0x30a0
jmp 0x59d4c
leaq 0x18727(%rip), %rdi     # 0x7245b
leaq 0x2450f(%rip), %rsi     # 0x7e24a
movl $0x8f0, %edx            # imm = 0x8F0
leaq 0x257a6(%rip), %rcx     # 0x7f4ed
callq 0x30a0
addq $0x4b0, %rsp            # imm = 0x4B0
popq %rbp
retq
nopw %cs:(%rax,%rax)