1401d3926:	48 83 ec 20          	sub    $0x20,%rsp
1401d392a:	48 8b 01             	mov    (%rcx),%rax
1401d392d:	8b 7c 24 70          	mov    0x70(%rsp),%edi
1401d3931:	48 89 cd             	mov    %rcx,%rbp
1401d3934:	89 d6                	mov    %edx,%esi
1401d3936:	45 89 c4             	mov    %r8d,%r12d
1401d3939:	44 89 cb             	mov    %r9d,%ebx
1401d393c:	48 85 c0             	test   %rax,%rax
1401d393f:	74 27                	je     0x1401d3968
1401d3941:	8b 50 0c             	mov    0xc(%rax),%edx
1401d3944:	44 8b 40 14          	mov    0x14(%rax),%r8d
1401d3948:	8b 48 10             	mov    0x10(%rax),%ecx
1401d394b:	41 01 d0             	add    %edx,%r8d
1401d394e:	41 39 f8             	cmp    %edi,%r8d
1401d3951:	0f 8d 89 00 00 00    	jge    0x1401d39e0
1401d3957:	44 8b 40 18          	mov    0x18(%rax),%r8d
1401d395b:	41 01 c8             	add    %ecx,%r8d
1401d395e:	44 3b 84 24 80 00 00 	cmp    0x80(%rsp),%r8d
1401d3965:	00
1401d3966:	7d 78                	jge    0x1401d39e0
1401d3968:	b9 28 00 00 00       	mov    $0x28,%ecx
1401d396d:	e8 ae 70 ef ff       	call   0x1400caa20
1401d3972:	48 85 c0             	test   %rax,%rax
1401d3975:	0f 84 9b 00 00 00    	je     0x1401d3a16
1401d397b:	66 0f 6e 8c 24 80 00 	movd   0x80(%rsp),%xmm1
1401d3982:	00 00
1401d3984:	66 0f 6e c6          	movd   %esi,%xmm0
1401d3988:	66 0f 6e df          	movd   %edi,%xmm3
1401d398c:	89 58 20             	mov    %ebx,0x20(%rax)
1401d398f:	66 0f 6e 54 24 78    	movd   0x78(%rsp),%xmm2
1401d3995:	66 0f 62 c3          	punpckldq %xmm3,%xmm0
1401d3999:	44 89 60 1c          	mov    %r12d,0x1c(%rax)
1401d399d:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1401d39a4:	8b 9c 24 88 00 00 00 	mov    0x88(%rsp),%ebx
1401d39ab:	66 0f 62 ca          	punpckldq %xmm2,%xmm1
1401d39af:	66 0f 6c c1          	punpcklqdq %xmm1,%xmm0
1401d39b3:	89 58 18             	mov    %ebx,0x18(%rax)
1401d39b6:	0f 11 40 08          	movups %xmm0,0x8(%rax)
1401d39ba:	48 8b 55 00          	mov    0x0(%rbp),%rdx
1401d39be:	48 85 d2             	test   %rdx,%rdx
1401d39c1:	74 03                	je     0x1401d39c6
1401d39c3:	48 89 02             	mov    %rax,(%rdx)
1401d39c6:	48 89 45 00          	mov    %rax,0x0(%rbp)
1401d39ca:	31 c0                	xor    %eax,%eax
1401d39cc:	48 83 c4 20          	add    $0x20,%rsp
1401d39d0:	5b                   	pop    %rbx
1401d39d1:	5e                   	pop    %rsi
1401d39d2:	5f                   	pop    %rdi
1401d39d3:	5d                   	pop    %rbp
1401d39d4:	41 5c                	pop    %r12
1401d39d6:	c3                   	ret
1401d39d7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1401d39de:	00 00
1401d39e0:	39 70 08             	cmp    %esi,0x8(%rax)
1401d39e3:	74 07                	je     0x1401d39ec
1401d39e5:	c7 40 08 00 00 00 00 	movl   $0x0,0x8(%rax)
1401d39ec:	03 7c 24 78          	add    0x78(%rsp),%edi
1401d39f0:	45 8d 0c 1c          	lea    (%r12,%rbx,1),%r9d
1401d39f4:	44 2b 48 1c          	sub    0x1c(%rax),%r9d
1401d39f8:	29 d7                	sub    %edx,%edi
1401d39fa:	8b 94 24 80 00 00 00 	mov    0x80(%rsp),%edx
1401d3a01:	03 94 24 88 00 00 00 	add    0x88(%rsp),%edx
1401d3a08:	44 89 48 20          	mov    %r9d,0x20(%rax)
1401d3a0c:	29 ca                	sub    %ecx,%edx
1401d3a0e:	89 78 14             	mov    %edi,0x14(%rax)
1401d3a11:	89 50 18             	mov    %edx,0x18(%rax)
1401d3a14:	eb b4                	jmp    0x1401d39ca
1401d3a16:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1401d3a1b:	eb af                	jmp    0x1401d39cc
1401d3a1d:	0f 1f 00             	nopl   (%rax)
1401d3a20:	41 55                	push   %r13
1401d3a22:	41 54                	push   %r12
1401d3a24:	55                   	push   %rbp
1401d3a25:	57                   	push   %rdi
1401d3a26:	56                   	push   %rsi
1401d3a27:	53                   	push   %rbx
1401d3a28:	48 83 ec 28          	sub    $0x28,%rsp
1401d3a2c:	4c 8b a4 24 90 00 00 	mov    0x90(%rsp),%r12
1401d3a33:	00
1401d3a34:	85 c9                	test   %ecx,%ecx
1401d3a36:	0f 84 94 00 00 00    	je     0x1401d3ad0
1401d3a3c:	48 8b 42 48          	mov    0x48(%rdx),%rax
1401d3a40:	31 f6                	xor    %esi,%esi
1401d3a42:	45 85 c9             	test   %r9d,%r9d
1401d3a45:	7e 79                	jle    0x1401d3ac0
1401d3a47:	4d 63 c0             	movslq %r8d,%r8
1401d3a4a:	4d 63 c9             	movslq %r9d,%r9
1401d3a4d:	4a 8d 2c c0          	lea    (%rax,%r8,8),%rbp
1401d3a51:	4a 8d 3c cd 00 00 00 	lea    0x0(,%r9,8),%rdi
1401d3a58:	00
1401d3a59:	48 89 eb             	mov    %rbp,%rbx
1401d3a5c:	4c 8d 2c 2f          	lea    (%rdi,%rbp,1),%r13
1401d3a60:	4d 85 e4             	test   %r12,%r12
1401d3a63:	74 16                	je     0x1401d3a7b
1401d3a65:	48 8b 03             	mov    (%rbx),%rax
1401d3a68:	48 63 ce             	movslq %esi,%rcx
1401d3a6b:	4c 01 e1             	add    %r12,%rcx
1401d3a6e:	48 8b 50 08          	mov    0x8(%rax),%rdx
1401d3a72:	4c 63 40 10          	movslq 0x10(%rax),%r8
1401d3a76:	e8 75 63 01 00       	call   0x1401e9df0
1401d3a7b:	48 8b 03             	mov    (%rbx),%rax
1401d3a7e:	48 83 c3 08          	add    $0x8,%rbx
1401d3a82:	03 70 10             	add    0x10(%rax),%esi
1401d3a85:	48 63 c6             	movslq %esi,%rax
1401d3a88:	4c 39 eb             	cmp    %r13,%rbx
1401d3a8b:	75 d3                	jne    0x1401d3a60
1401d3a8d:	8b 8c 24 88 00 00 00 	mov    0x88(%rsp),%ecx
1401d3a94:	85 c9                	test   %ecx,%ecx
1401d3a96:	74 28                	je     0x1401d3ac0
1401d3a98:	48 8b 4c 3d f8       	mov    -0x8(%rbp,%rdi,1),%rcx
1401d3a9d:	48 63 51 10          	movslq 0x10(%rcx),%rdx
1401d3aa1:	85 d2                	test   %edx,%edx
1401d3aa3:	75 3b                	jne    0x1401d3ae0
1401d3aa5:	8b 94 24 80 00 00 00 	mov    0x80(%rsp),%edx
1401d3aac:	85 d2                	test   %edx,%edx
1401d3aae:	75 46                	jne    0x1401d3af6
1401d3ab0:	4d 85 e4             	test   %r12,%r12
1401d3ab3:	74 08                	je     0x1401d3abd
1401d3ab5:	48 63 c6             	movslq %esi,%rax
1401d3ab8:	41 c6 04 04 0a       	movb   $0xa,(%r12,%rax,1)
1401d3abd:	83 c6 01             	add    $0x1,%esi
1401d3ac0:	89 f0                	mov    %esi,%eax
1401d3ac2:	48 83 c4 28          	add    $0x28,%rsp
1401d3ac6:	5b                   	pop    %rbx
1401d3ac7:	5e                   	pop    %rsi
1401d3ac8:	5f                   	pop    %rdi
1401d3ac9:	5d                   	pop    %rbp
1401d3aca:	41 5c                	pop    %r12
1401d3acc:	41 5d                	pop    %r13
1401d3ace:	c3                   	ret
1401d3acf:	90                   	nop
1401d3ad0:	48 8b 82 b8 00 00 00 	mov    0xb8(%rdx),%rax
1401d3ad7:	e9 64 ff ff ff       	jmp    0x1401d3a40
1401d3adc:	0f 1f 40 00          	nopl   0x0(%rax)
1401d3ae0:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1401d3ae4:	80 7c 11 ff 0a       	cmpb   $0xa,-0x1(%rcx,%rdx,1)
1401d3ae9:	74 d5                	je     0x1401d3ac0
1401d3aeb:	8b 94 24 80 00 00 00 	mov    0x80(%rsp),%edx
1401d3af2:	85 d2                	test   %edx,%edx
1401d3af4:	74 ba                	je     0x1401d3ab0
1401d3af6:	8d 70 01             	lea    0x1(%rax),%esi
1401d3af9:	4d 85 e4             	test   %r12,%r12
1401d3afc:	74 bf                	je     0x1401d3abd
1401d3afe:	41 c6 04 04 0d       	movb   $0xd,(%r12,%rax,1)
1401d3b03:	eb b0                	jmp    0x1401d3ab5
1401d3b05:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1401d3b0c:	00 00 00 00
1401d3b10:	56                   	push   %rsi
1401d3b11:	53                   	push   %rbx
1401d3b12:	48 83 ec 28          	sub    $0x28,%rsp
1401d3b16:	31 f6                	xor    %esi,%esi
1401d3b18:	48 85 c9             	test   %rcx,%rcx
1401d3b1b:	75 06                	jne    0x1401d3b23
1401d3b1d:	eb 18                	jmp    0x1401d3b37
1401d3b1f:	90                   	nop
1401d3b20:	48 89 d9             	mov    %rbx,%rcx
1401d3b23:	48 8b 19             	mov    (%rcx),%rbx
1401d3b26:	83 79 08 01          	cmpl   $0x1,0x8(%rcx)
1401d3b2a:	83 d6 00             	adc    $0x0,%esi
1401d3b2d:	e8 7e 53 f2 ff       	call   0x1400f8eb0
1401d3b32:	48 85 db             	test   %rbx,%rbx
1401d3b35:	75 e9                	jne    0x1401d3b20
1401d3b37:	89 f0                	mov    %esi,%eax
1401d3b39:	48 83 c4 28          	add    $0x28,%rsp
1401d3b3d:	5b                   	pop    %rbx
1401d3b3e:	5e                   	pop    %rsi
1401d3b3f:	c3                   	ret
1401d3b40:	44 8b 41 30          	mov    0x30(%rcx),%r8d
1401d3b44:	41 8d 40 ff          	lea    -0x1(%r8),%eax
1401d3b48:	39 d0                	cmp    %edx,%eax
1401d3b4a:	7f 64                	jg     0x1401d3bb0
1401d3b4c:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1401d3b51:	45 85 c0             	test   %r8d,%r8d
1401d3b54:	74 51                	je     0x1401d3ba7
1401d3b56:	4c 8b 41 48          	mov    0x48(%rcx),%r8
1401d3b5a:	48 63 c2             	movslq %edx,%rax
1401d3b5d:	4c 8d 0c c5 00 00 00 	lea    0x0(,%rax,8),%r9
1401d3b64:	00
1401d3b65:	49 8b 04 c0          	mov    (%r8,%rax,8),%rax
1401d3b69:	8b 48 10             	mov    0x10(%rax),%ecx
1401d3b6c:	85 c9                	test   %ecx,%ecx
1401d3b6e:	74 0f                	je     0x1401d3b7f
1401d3b70:	4c 8b 58 08          	mov    0x8(%rax),%r11
1401d3b74:	4c 63 d1             	movslq %ecx,%r10
1401d3b77:	43 80 7c 13 ff 0a    	cmpb   $0xa,-0x1(%r11,%r10,1)
1401d3b7d:	74 61                	je     0x1401d3be0
1401d3b7f:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1401d3b84:	85 d2                	test   %edx,%edx
1401d3b86:	74 1f                	je     0x1401d3ba7
1401d3b88:	4b 8b 4c 08 f8       	mov    -0x8(%r8,%r9,1),%rcx
1401d3b8d:	31 c0                	xor    %eax,%eax
1401d3b8f:	48 63 51 10          	movslq 0x10(%rcx),%rdx
1401d3b93:	83 fa 01             	cmp    $0x1,%edx
1401d3b96:	7e 0f                	jle    0x1401d3ba7
1401d3b98:	48 8b 41 08          	mov    0x8(%rcx),%rax
1401d3b9c:	80 7c 10 fe 0d       	cmpb   $0xd,-0x2(%rax,%rdx,1)
1401d3ba1:	0f 94 c0             	sete   %al
1401d3ba4:	0f b6 c0             	movzbl %al,%eax
1401d3ba7:	c3                   	ret
1401d3ba8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1401d3baf:	00
1401d3bb0:	48 8b 41 48          	mov    0x48(%rcx),%rax
1401d3bb4:	48 63 d2             	movslq %edx,%rdx
1401d3bb7:	48 8b 0c d0          	mov    (%rax,%rdx,8),%rcx
1401d3bbb:	31 c0                	xor    %eax,%eax
1401d3bbd:	48 63 51 10          	movslq 0x10(%rcx),%rdx
1401d3bc1:	83 fa 01             	cmp    $0x1,%edx
1401d3bc4:	7e e1                	jle    0x1401d3ba7
1401d3bc6:	48 8b 41 08          	mov    0x8(%rcx),%rax
1401d3bca:	80 7c 10 fe 0d       	cmpb   $0xd,-0x2(%rax,%rdx,1)
1401d3bcf:	0f 94 c0             	sete   %al
1401d3bd2:	0f b6 c0             	movzbl %al,%eax
1401d3bd5:	eb d0                	jmp    0x1401d3ba7
1401d3bd7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1401d3bde:	00 00
1401d3be0:	31 c0                	xor    %eax,%eax
1401d3be2:	83 f9 01             	cmp    $0x1,%ecx
1401d3be5:	7e c0                	jle    0x1401d3ba7
1401d3be7:	31 c0                	xor    %eax,%eax
1401d3be9:	43 80 7c 13 fe 0d    	cmpb   $0xd,-0x2(%r11,%r10,1)
1401d3bef:	0f 94 c0             	sete   %al
1401d3bf2:	c3                   	ret
1401d3bf3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1401d3bfa:	00 00 00 00
1401d3bfe:	66 90                	xchg   %ax,%ax
1401d3c00:	57                   	push   %rdi
1401d3c01:	56                   	push   %rsi
1401d3c02:	53                   	push   %rbx
1401d3c03:	48 83 ec 20          	sub    $0x20,%rsp
1401d3c07:	48 89 d3             	mov    %rdx,%rbx
1401d3c0a:	41 8b 50 0c          	mov    0xc(%r8),%edx
1401d3c0e:	48 89 cf             	mov    %rcx,%rdi
1401d3c11:	48 8d 49 70          	lea    0x70(%rcx),%rcx
1401d3c15:	4c 89 c6             	mov    %r8,%rsi
1401d3c18:	83 fa 01             	cmp    $0x1,%edx
1401d3c1b:	83 d2 ff             	adc    $0xffffffff,%edx
1401d3c1e:	e8 1d ff ff ff       	call   0x1401d3b40
1401d3c23:	85 c0                	test   %eax,%eax
1401d3c25:	74 27                	je     0x1401d3c4e
1401d3c27:	8b 56 10             	mov    0x10(%rsi),%edx
1401d3c2a:	48 8d 4b 70          	lea    0x70(%rbx),%rcx
1401d3c2e:	83 fa 01             	cmp    $0x1,%edx
1401d3c31:	83 d2 ff             	adc    $0xffffffff,%edx
1401d3c34:	e8 07 ff ff ff       	call   0x1401d3b40
1401d3c39:	85 c0                	test   %eax,%eax
1401d3c3b:	74 11                	je     0x1401d3c4e
1401d3c3d:	31 d2                	xor    %edx,%edx
1401d3c3f:	48 89 f9             	mov    %rdi,%rcx
1401d3c42:	e8 f9 fe ff ff       	call   0x1401d3b40
1401d3c47:	31 d2                	xor    %edx,%edx
1401d3c49:	85 c0                	test   %eax,%eax
1401d3c4b:	0f 48 c2             	cmovs  %edx,%eax
1401d3c4e:	48 83 c4 20          	add    $0x20,%rsp
1401d3c52:	5b                   	pop    %rbx
1401d3c53:	5e                   	pop    %rsi
1401d3c54:	5f                   	pop    %rdi
1401d3c55:	c3                   	ret
1401d3c56:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
1401d3c5d:	00 00 00
1401d3c60:	41 57                	push   %r15
1401d3c62:	41 56                	push   %r14
1401d3c64:	41 55                	push   %r13
1401d3c66:	41 54                	push   %r12
1401d3c68:	55                   	push   %rbp
1401d3c69:	57                   	push   %rdi
1401d3c6a:	56                   	push   %rsi
1401d3c6b:	53                   	push   %rbx
1401d3c6c:	48 83 ec 68          	sub    $0x68,%rsp
1401d3c70:	48 8b 9c 24 e0 00 00 	mov    0xe0(%rsp),%rbx
1401d3c77:	00
1401d3c78:	44 8b ac 24 d8 00 00 	mov    0xd8(%rsp),%r13d
1401d3c7f:	00
1401d3c80:	48 8b bc 24 e8 00 00 	mov    0xe8(%rsp),%rdi
1401d3c87:	00
1401d3c88:	48 89 94 24 b8 00 00 	mov    %rdx,0xb8(%rsp)
1401d3c8f:	00
1401d3c90:	49 89 cf             	mov    %rcx,%r15
1401d3c93:	8b 94 24 f8 00 00 00 	mov    0xf8(%rsp),%edx
1401d3c9a:	4c 89 84 24 c0 00 00 	mov    %r8,0xc0(%rsp)
1401d3ca1:	00
1401d3ca2:	48 85 db             	test   %rbx,%rbx
1401d3ca5:	0f 84 55 06 00 00    	je     0x1401d4300
1401d3cab:	85 d2                	test   %edx,%edx
1401d3cad:	b9 07 00 00 00       	mov    $0x7,%ecx
1401d3cb2:	4c 89 8c 24 c8 00 00 	mov    %r9,0xc8(%rsp)
1401d3cb9:	00
1401d3cba:	44 8b a4 24 f0 00 00 	mov    0xf0(%rsp),%r12d
1401d3cc1:	00
1401d3cc2:	0f 4e d1             	cmovle %ecx,%edx
1401d3cc5:	45 31 f6             	xor    %r14d,%r14d
1401d3cc8:	31 f6                	xor    %esi,%esi
1401d3cca:	8d 42 01             	lea    0x1(%rdx),%eax
1401d3ccd:	89 54 24 4c          	mov    %edx,0x4c(%rsp)
1401d3cd1:	89 44 24 58          	mov    %eax,0x58(%rsp)
1401d3cd5:	48 63 c2             	movslq %edx,%rax
1401d3cd8:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
1401d3cdd:	8b 43 08             	mov    0x8(%rbx),%eax
1401d3ce0:	45 85 ed             	test   %r13d,%r13d
1401d3ce3:	0f 84 67 01 00 00    	je     0x1401d3e50
1401d3ce9:	85 c0                	test   %eax,%eax
1401d3ceb:	75 07                	jne    0x1401d3cf4
1401d3ced:	44 89 6b 08          	mov    %r13d,0x8(%rbx)
1401d3cf1:	44 89 e8             	mov    %r13d,%eax
1401d3cf4:	a8 03                	test   $0x3,%al
1401d3cf6:	0f 84 34 01 00 00    	je     0x1401d3e30
1401d3cfc:	8b 6b 0c             	mov    0xc(%rbx),%ebp
1401d3cff:	41 89 e9             	mov    %ebp,%r9d
1401d3d02:	45 29 f1             	sub    %r14d,%r9d
1401d3d05:	48 85 ff             	test   %rdi,%rdi
1401d3d08:	0f 84 82 03 00 00    	je     0x1401d4090
1401d3d0e:	48 63 c6             	movslq %esi,%rax
1401d3d11:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%rsp)
1401d3d18:	00
1401d3d19:	45 89 f0             	mov    %r14d,%r8d
1401d3d1c:	31 c9                	xor    %ecx,%ecx
1401d3d1e:	48 01 f8             	add    %rdi,%rax
1401d3d21:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1401d3d28:	00
1401d3d29:	4c 89 fa             	mov    %r15,%rdx
1401d3d2c:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1401d3d31:	e8 ea fc ff ff       	call   0x1401d3a20
1401d3d36:	44 8b 73 08          	mov    0x8(%rbx),%r14d
1401d3d3a:	01 c6                	add    %eax,%esi
1401d3d3c:	41 f6 c6 01          	test   $0x1,%r14b
1401d3d40:	0f 84 fa 00 00 00    	je     0x1401d3e40
1401d3d46:	48 8b 94 24 c0 00 00 	mov    0xc0(%rsp),%rdx
1401d3d4d:	00
1401d3d4e:	49 89 d8             	mov    %rbx,%r8
1401d3d51:	4c 89 f9             	mov    %r15,%rcx
1401d3d54:	e8 a7 fe ff ff       	call   0x1401d3c00
1401d3d59:	48 63 d6             	movslq %esi,%rdx
1401d3d5c:	8b 6b 0c             	mov    0xc(%rbx),%ebp
1401d3d5f:	48 01 fa             	add    %rdi,%rdx
1401d3d62:	41 83 e6 02          	and    $0x2,%r14d
1401d3d66:	44 8b 4b 14          	mov    0x14(%rbx),%r9d
1401d3d6a:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
1401d3d6f:	41 89 e8             	mov    %ebp,%r8d
1401d3d72:	44 89 74 24 28       	mov    %r14d,0x28(%rsp)
1401d3d77:	4c 89 fa             	mov    %r15,%rdx
1401d3d7a:	31 c9                	xor    %ecx,%ecx
1401d3d7c:	89 44 24 20          	mov    %eax,0x20(%rsp)
1401d3d80:	e8 9b fc ff ff       	call   0x1401d3a20
1401d3d85:	01 c6                	add    %eax,%esi
1401d3d87:	f6 43 08 02          	testb  $0x2,0x8(%rbx)
1401d3d8b:	74 3b                	je     0x1401d3dc8
1401d3d8d:	31 c0                	xor    %eax,%eax
1401d3d8f:	48 85 ff             	test   %rdi,%rdi
1401d3d92:	74 06                	je     0x1401d3d9a
1401d3d94:	48 63 c6             	movslq %esi,%rax
1401d3d97:	48 01 f8             	add    %rdi,%rax