1401a9648:	49 8b d7             	mov    %r15,%rdx
1401a964b:	48 83 ca 07          	or     $0x7,%rdx
1401a964f:	48 3b d3             	cmp    %rbx,%rdx
1401a9652:	77 1f                	ja     0x1401a9673
1401a9654:	48 8b cd             	mov    %rbp,%rcx
1401a9657:	48 8b c3             	mov    %rbx,%rax
1401a965a:	48 d1 e9             	shr    $1,%rcx
1401a965d:	48 2b c1             	sub    %rcx,%rax
1401a9660:	48 3b e8             	cmp    %rax,%rbp
1401a9663:	77 0e                	ja     0x1401a9673
1401a9665:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
1401a9669:	48 8b da             	mov    %rdx,%rbx
1401a966c:	48 3b d0             	cmp    %rax,%rdx
1401a966f:	48 0f 42 d8          	cmovb  %rax,%rbx
1401a9673:	48 ff c3             	inc    %rbx
1401a9676:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1401a967b:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
1401a9680:	e8 63 a8 e5 ff       	call   0x140003ee8
1401a9685:	4c 89 7f 10          	mov    %r15,0x10(%rdi)
1401a9689:	48 8d 4b ff          	lea    -0x1(%rbx),%rcx
1401a968d:	48 89 4f 18          	mov    %rcx,0x18(%rdi)
1401a9691:	48 8b c8             	mov    %rax,%rcx
1401a9694:	4e 8d 04 75 02 00 00 	lea    0x2(,%r14,2),%r8
1401a969b:	00
1401a969c:	48 8b f0             	mov    %rax,%rsi
1401a969f:	48 83 fd 07          	cmp    $0x7,%rbp
1401a96a3:	76 42                	jbe    0x1401a96e7
1401a96a5:	48 8b 1f             	mov    (%rdi),%rbx
1401a96a8:	48 8b d3             	mov    %rbx,%rdx
1401a96ab:	e8 f0 87 94 00       	call   0x140af1ea0
1401a96b0:	48 8d 0c 6d 02 00 00 	lea    0x2(,%rbp,2),%rcx
1401a96b7:	00
1401a96b8:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
1401a96bf:	72 14                	jb     0x1401a96d5
1401a96c1:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
1401a96c5:	48 2b d9             	sub    %rcx,%rbx
1401a96c8:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
1401a96cc:	48 83 f8 1f          	cmp    $0x1f,%rax
1401a96d0:	77 0e                	ja     0x1401a96e0
1401a96d2:	48 8b d9             	mov    %rcx,%rbx
1401a96d5:	48 8b cb             	mov    %rbx,%rcx
1401a96d8:	ff 15 e2 31 96 00    	call   *0x9631e2(%rip)        # 0x140b0c8c0
1401a96de:	eb 0f                	jmp    0x1401a96ef
1401a96e0:	ff 15 b2 32 96 00    	call   *0x9632b2(%rip)        # 0x140b0c998
1401a96e6:	cc                   	int3
1401a96e7:	48 8b d7             	mov    %rdi,%rdx
1401a96ea:	e8 b1 87 94 00       	call   0x140af1ea0
1401a96ef:	48 89 37             	mov    %rsi,(%rdi)
1401a96f2:	48 8b c7             	mov    %rdi,%rax
1401a96f5:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1401a96fa:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1401a96ff:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
1401a9704:	48 83 c4 20          	add    $0x20,%rsp
1401a9708:	41 5f                	pop    %r15
1401a970a:	41 5e                	pop    %r14
1401a970c:	5f                   	pop    %rdi
1401a970d:	c3                   	ret
1401a970e:	e8 5d a6 e5 ff       	call   0x140003d70
1401a9713:	cc                   	int3
1401a9714:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401a9719:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401a971e:	56                   	push   %rsi
1401a971f:	57                   	push   %rdi
1401a9720:	41 54                	push   %r12
1401a9722:	41 56                	push   %r14
1401a9724:	41 57                	push   %r15
1401a9726:	48 83 ec 20          	sub    $0x20,%rsp
1401a972a:	4c 8b 79 10          	mov    0x10(%rcx),%r15
1401a972e:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
1401a9735:	ff ff 7f
1401a9738:	48 8b c7             	mov    %rdi,%rax
1401a973b:	49 8b e9             	mov    %r9,%rbp
1401a973e:	49 2b c7             	sub    %r15,%rax
1401a9741:	4c 8b f1             	mov    %rcx,%r14
1401a9744:	48 3b c2             	cmp    %rdx,%rax
1401a9747:	0f 82 04 01 00 00    	jb     0x1401a9851
1401a974d:	4c 8b 61 18          	mov    0x18(%rcx),%r12
1401a9751:	4a 8d 1c 3a          	lea    (%rdx,%r15,1),%rbx
1401a9755:	48 8b d3             	mov    %rbx,%rdx
1401a9758:	48 83 ca 07          	or     $0x7,%rdx
1401a975c:	48 3b d7             	cmp    %rdi,%rdx
1401a975f:	77 1f                	ja     0x1401a9780
1401a9761:	49 8b cc             	mov    %r12,%rcx
1401a9764:	48 8b c7             	mov    %rdi,%rax
1401a9767:	48 d1 e9             	shr    $1,%rcx
1401a976a:	48 2b c1             	sub    %rcx,%rax
1401a976d:	4c 3b e0             	cmp    %rax,%r12
1401a9770:	77 0e                	ja     0x1401a9780
1401a9772:	49 8d 04 0c          	lea    (%r12,%rcx,1),%rax
1401a9776:	48 8b fa             	mov    %rdx,%rdi
1401a9779:	48 3b d0             	cmp    %rax,%rdx
1401a977c:	48 0f 42 f8          	cmovb  %rax,%rdi
1401a9780:	48 ff c7             	inc    %rdi
1401a9783:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
1401a9788:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
1401a978d:	e8 56 a7 e5 ff       	call   0x140003ee8
1401a9792:	49 89 5e 10          	mov    %rbx,0x10(%r14)
1401a9796:	48 8d 4f ff          	lea    -0x1(%rdi),%rcx
1401a979a:	49 89 4e 18          	mov    %rcx,0x18(%r14)
1401a979e:	4b 8d 3c 3f          	lea    (%r15,%r15,1),%rdi
1401a97a2:	4c 8b c7             	mov    %rdi,%r8
1401a97a5:	48 8b c8             	mov    %rax,%rcx
1401a97a8:	48 8b f0             	mov    %rax,%rsi
1401a97ab:	49 83 fc 07          	cmp    $0x7,%r12
1401a97af:	76 5e                	jbe    0x1401a980f
1401a97b1:	49 8b 1e             	mov    (%r14),%rbx
1401a97b4:	48 8b d3             	mov    %rbx,%rdx
1401a97b7:	e8 e4 86 94 00       	call   0x140af1ea0
1401a97bc:	33 d2                	xor    %edx,%edx
1401a97be:	48 03 fe             	add    %rsi,%rdi
1401a97c1:	48 85 ed             	test   %rbp,%rbp
1401a97c4:	74 0b                	je     0x1401a97d1
1401a97c6:	0f b7 44 24 70       	movzwl 0x70(%rsp),%eax
1401a97cb:	48 8b cd             	mov    %rbp,%rcx
1401a97ce:	66 f3 ab             	rep stos %ax,%es:(%rdi)
1401a97d1:	49 8d 04 2f          	lea    (%r15,%rbp,1),%rax
1401a97d5:	66 89 14 46          	mov    %dx,(%rsi,%rax,2)
1401a97d9:	4a 8d 04 65 02 00 00 	lea    0x2(,%r12,2),%rax
1401a97e0:	00
1401a97e1:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
1401a97e7:	72 14                	jb     0x1401a97fd
1401a97e9:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
1401a97ed:	48 2b d9             	sub    %rcx,%rbx
1401a97f0:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
1401a97f4:	48 83 f8 1f          	cmp    $0x1f,%rax
1401a97f8:	77 0e                	ja     0x1401a9808
1401a97fa:	48 8b d9             	mov    %rcx,%rbx
1401a97fd:	48 8b cb             	mov    %rbx,%rcx
1401a9800:	ff 15 ba 30 96 00    	call   *0x9630ba(%rip)        # 0x140b0c8c0
1401a9806:	eb 2c                	jmp    0x1401a9834
1401a9808:	ff 15 8a 31 96 00    	call   *0x96318a(%rip)        # 0x140b0c998
1401a980e:	cc                   	int3
1401a980f:	49 8b d6             	mov    %r14,%rdx
1401a9812:	e8 89 86 94 00       	call   0x140af1ea0
1401a9817:	33 d2                	xor    %edx,%edx
1401a9819:	48 03 fe             	add    %rsi,%rdi
1401a981c:	48 85 ed             	test   %rbp,%rbp
1401a981f:	74 0b                	je     0x1401a982c
1401a9821:	0f b7 44 24 70       	movzwl 0x70(%rsp),%eax
1401a9826:	48 8b cd             	mov    %rbp,%rcx
1401a9829:	66 f3 ab             	rep stos %ax,%es:(%rdi)
1401a982c:	49 8d 04 2f          	lea    (%r15,%rbp,1),%rax
1401a9830:	66 89 14 46          	mov    %dx,(%rsi,%rax,2)
1401a9834:	49 89 36             	mov    %rsi,(%r14)
1401a9837:	49 8b c6             	mov    %r14,%rax
1401a983a:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1401a983f:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1401a9844:	48 83 c4 20          	add    $0x20,%rsp
1401a9848:	41 5f                	pop    %r15
1401a984a:	41 5e                	pop    %r14
1401a984c:	41 5c                	pop    %r12
1401a984e:	5f                   	pop    %rdi
1401a984f:	5e                   	pop    %rsi
1401a9850:	c3                   	ret
1401a9851:	e8 1a a5 e5 ff       	call   0x140003d70
1401a9856:	cc                   	int3
1401a9857:	90                   	nop
1401a9858:	90                   	nop
1401a9859:	90                   	nop
1401a985a:	90                   	nop
1401a985b:	90                   	nop
1401a985c:	90                   	nop
1401a985d:	90                   	nop
1401a985e:	90                   	nop
1401a985f:	90                   	nop
1401a9860:	40 53                	rex push %rbx
1401a9862:	48 83 ec 20          	sub    $0x20,%rsp
1401a9866:	48 8d 05 e3 46 97 00 	lea    0x9746e3(%rip),%rax        # 0x140b1df50
1401a986d:	48 8b d9             	mov    %rcx,%rbx
1401a9870:	48 89 01             	mov    %rax,(%rcx)
1401a9873:	f6 c2 01             	test   $0x1,%dl
1401a9876:	74 05                	je     0x1401a987d
1401a9878:	e8 57 5d 94 00       	call   0x140aef5d4
1401a987d:	48 8b c3             	mov    %rbx,%rax
1401a9880:	48 83 c4 20          	add    $0x20,%rsp
1401a9884:	5b                   	pop    %rbx
1401a9885:	c3                   	ret
1401a9886:	90                   	nop
1401a9887:	90                   	nop
1401a9888:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401a988d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1401a9892:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401a9897:	57                   	push   %rdi
1401a9898:	41 54                	push   %r12
1401a989a:	41 55                	push   %r13
1401a989c:	41 56                	push   %r14
1401a989e:	41 57                	push   %r15
1401a98a0:	48 83 ec 50          	sub    $0x50,%rsp
1401a98a4:	48 8b c2             	mov    %rdx,%rax
1401a98a7:	41 bd 94 02 00 00    	mov    $0x294,%r13d
1401a98ad:	48 2b c1             	sub    %rcx,%rax
1401a98b0:	41 8a d9             	mov    %r9b,%bl
1401a98b3:	49 8b f0             	mov    %r8,%rsi
1401a98b6:	48 8b ea             	mov    %rdx,%rbp
1401a98b9:	48 8b f9             	mov    %rcx,%rdi
1401a98bc:	49 3b c5             	cmp    %r13,%rax
1401a98bf:	0f 8c 91 00 00 00    	jl     0x1401a9956
1401a98c5:	49 bc cd cc cc cc cc 	movabs $0xcccccccccccccccd,%r12
1401a98cc:	cc cc cc
1401a98cf:	48 85 f6             	test   %rsi,%rsi
1401a98d2:	0f 8e 90 00 00 00    	jle    0x1401a9968
1401a98d8:	44 8a cb             	mov    %bl,%r9b
1401a98db:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401a98e0:	4c 8b c5             	mov    %rbp,%r8
1401a98e3:	48 8b d7             	mov    %rdi,%rdx
1401a98e6:	e8 d5 0e 00 00       	call   0x1401aa7c0
1401a98eb:	4c 8b 7c 24 30       	mov    0x30(%rsp),%r15
1401a98f0:	48 8b ce             	mov    %rsi,%rcx
1401a98f3:	4c 8b 74 24 38       	mov    0x38(%rsp),%r14
1401a98f8:	49 8b c7             	mov    %r15,%rax
1401a98fb:	48 c1 f9 02          	sar    $0x2,%rcx
1401a98ff:	48 2b c7             	sub    %rdi,%rax
1401a9902:	48 d1 fe             	sar    $1,%rsi
1401a9905:	44 8a cb             	mov    %bl,%r9b
1401a9908:	48 03 f1             	add    %rcx,%rsi
1401a990b:	48 c1 f8 02          	sar    $0x2,%rax
1401a990f:	48 8b cd             	mov    %rbp,%rcx
1401a9912:	4c 8b c6             	mov    %rsi,%r8
1401a9915:	49 2b ce             	sub    %r14,%rcx
1401a9918:	48 c1 f9 02          	sar    $0x2,%rcx
1401a991c:	49 0f af cc          	imul   %r12,%rcx
1401a9920:	49 0f af c4          	imul   %r12,%rax
1401a9924:	48 3b c1             	cmp    %rcx,%rax
1401a9927:	7d 10                	jge    0x1401a9939
1401a9929:	49 8b d7             	mov    %r15,%rdx
1401a992c:	48 8b cf             	mov    %rdi,%rcx
1401a992f:	e8 54 ff ff ff       	call   0x1401a9888
1401a9934:	49 8b fe             	mov    %r14,%rdi
1401a9937:	eb 0e                	jmp    0x1401a9947
1401a9939:	48 8b d5             	mov    %rbp,%rdx
1401a993c:	49 8b ce             	mov    %r14,%rcx
1401a993f:	e8 44 ff ff ff       	call   0x1401a9888
1401a9944:	49 8b ef             	mov    %r15,%rbp
1401a9947:	48 8b c5             	mov    %rbp,%rax
1401a994a:	48 2b c7             	sub    %rdi,%rax
1401a994d:	49 3b c5             	cmp    %r13,%rax
1401a9950:	0f 8d 79 ff ff ff    	jge    0x1401a98cf
1401a9956:	48 3b fd             	cmp    %rbp,%rdi
1401a9959:	0f 84 88 01 00 00    	je     0x1401a9ae7
1401a995f:	4c 8d 47 14          	lea    0x14(%rdi),%r8
1401a9963:	e9 76 01 00 00       	jmp    0x1401a9ade
1401a9968:	48 8b f5             	mov    %rbp,%rsi
1401a996b:	48 2b f7             	sub    %rdi,%rsi
1401a996e:	4c 8b fe             	mov    %rsi,%r15
1401a9971:	49 c1 ff 02          	sar    $0x2,%r15
1401a9975:	4d 0f af fc          	imul   %r12,%r15
1401a9979:	4d 8b f7             	mov    %r15,%r14
1401a997c:	49 d1 fe             	sar    $1,%r14
1401a997f:	4d 85 f6             	test   %r14,%r14
1401a9982:	7e 3d                	jle    0x1401a99c1
1401a9984:	4b 8d 04 b6          	lea    (%r14,%r14,4),%rax
1401a9988:	4c 8d 2c 87          	lea    (%rdi,%rax,4),%r13
1401a998c:	4d 8d 6d ec          	lea    -0x14(%r13),%r13
1401a9990:	88 5c 24 20          	mov    %bl,0x20(%rsp)
1401a9994:	41 0f 10 45 00       	movups 0x0(%r13),%xmm0
1401a9999:	41 8b 45 10          	mov    0x10(%r13),%eax
1401a999d:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
1401a99a2:	49 ff ce             	dec    %r14
1401a99a5:	89 44 24 40          	mov    %eax,0x40(%rsp)
1401a99a9:	4d 8b c7             	mov    %r15,%r8
1401a99ac:	49 8b d6             	mov    %r14,%rdx
1401a99af:	48 8b cf             	mov    %rdi,%rcx
1401a99b2:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
1401a99b7:	e8 20 15 00 00       	call   0x1401aaedc
1401a99bc:	4d 85 f6             	test   %r14,%r14
1401a99bf:	7f cb                	jg     0x1401a998c
1401a99c1:	49 83 ff 02          	cmp    $0x2,%r15
1401a99c5:	0f 8c 1c 01 00 00    	jl     0x1401a9ae7
1401a99cb:	48 83 c5 ec          	add    $0xffffffffffffffec,%rbp
1401a99cf:	48 c1 fe 02          	sar    $0x2,%rsi
1401a99d3:	4c 8b f5             	mov    %rbp,%r14
1401a99d6:	49 0f af f4          	imul   %r12,%rsi
1401a99da:	48 83 fe 02          	cmp    $0x2,%rsi
1401a99de:	7c 3f                	jl     0x1401a9a1f
1401a99e0:	0f 10 45 00          	movups 0x0(%rbp),%xmm0
1401a99e4:	8b 45 10             	mov    0x10(%rbp),%eax
1401a99e7:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
1401a99ec:	89 44 24 40          	mov    %eax,0x40(%rsp)
1401a99f0:	4c 8b c5             	mov    %rbp,%r8
1401a99f3:	4c 2b c7             	sub    %rdi,%r8
1401a99f6:	88 5c 24 20          	mov    %bl,0x20(%rsp)
1401a99fa:	49 c1 f8 02          	sar    $0x2,%r8
1401a99fe:	33 d2                	xor    %edx,%edx
1401a9a00:	0f 11 44 24 30       	movups %xmm0,0x30(%rsp)
1401a9a05:	48 8b cf             	mov    %rdi,%rcx
1401a9a08:	0f 10 07             	movups (%rdi),%xmm0
1401a9a0b:	4d 0f af c4          	imul   %r12,%r8
1401a9a0f:	f3 0f 7f 45 00       	movdqu %xmm0,0x0(%rbp)
1401a9a14:	8b 47 10             	mov    0x10(%rdi),%eax
1401a9a17:	89 45 10             	mov    %eax,0x10(%rbp)
1401a9a1a:	e8 bd 14 00 00       	call   0x1401aaedc
1401a9a1f:	49 8b f6             	mov    %r14,%rsi
1401a9a22:	48 83 ed 14          	sub    $0x14,%rbp
1401a9a26:	48 2b f7             	sub    %rdi,%rsi
1401a9a29:	48 83 fe 28          	cmp    $0x28,%rsi
1401a9a2d:	7d a0                	jge    0x1401a99cf
1401a9a2f:	e9 b3 00 00 00       	jmp    0x1401a9ae7
1401a9a34:	41 0f 10 08          	movups (%r8),%xmm1
1401a9a38:	49 8b d0             	mov    %r8,%rdx
1401a9a3b:	45 8b 50 10          	mov    0x10(%r8),%r10d
1401a9a3f:	f3 0f 10 47 04       	movss  0x4(%rdi),%xmm0
1401a9a44:	0f 28 d1             	movaps %xmm1,%xmm2
1401a9a47:	0f c6 d1 55          	shufps $0x55,%xmm1,%xmm2
1401a9a4b:	0f 2f c2             	comiss %xmm2,%xmm0
1401a9a4e:	77 5b                	ja     0x1401a9aab
1401a9a50:	0f 2f d0             	comiss %xmm0,%xmm2
1401a9a53:	77 0e                	ja     0x1401a9a63
1401a9a55:	f3 0f 10 07          	movss  (%rdi),%xmm0
1401a9a59:	0f 2f c1             	comiss %xmm1,%xmm0
1401a9a5c:	0f 97 c0             	seta   %al
1401a9a5f:	84 c0                	test   %al,%al
1401a9a61:	75 48                	jne    0x1401a9aab
1401a9a63:	49 8b c8             	mov    %r8,%rcx
1401a9a66:	f3 0f 10 41 f0       	movss  -0x10(%rcx),%xmm0
1401a9a6b:	48 83 e9 14          	sub    $0x14,%rcx
1401a9a6f:	0f 2f c2             	comiss %xmm2,%xmm0
1401a9a72:	76 04                	jbe    0x1401a9a78
1401a9a74:	b0 01                	mov    $0x1,%al
1401a9a76:	eb 13                	jmp    0x1401a9a8b
1401a9a78:	0f 2f d0             	comiss %xmm0,%xmm2
1401a9a7b:	76 04                	jbe    0x1401a9a81
1401a9a7d:	32 c0                	xor    %al,%al
1401a9a7f:	eb 0a                	jmp    0x1401a9a8b
1401a9a81:	f3 0f 10 01          	movss  (%rcx),%xmm0
1401a9a85:	0f 2f c1             	comiss %xmm1,%xmm0
1401a9a88:	0f 97 c0             	seta   %al
1401a9a8b:	84 c0                	test   %al,%al
1401a9a8d:	74 12                	je     0x1401a9aa1
1401a9a8f:	0f 10 01             	movups (%rcx),%xmm0
1401a9a92:	f3 0f 7f 02          	movdqu %xmm0,(%rdx)
1401a9a96:	8b 41 10             	mov    0x10(%rcx),%eax
1401a9a99:	89 42 10             	mov    %eax,0x10(%rdx)
1401a9a9c:	48 8b d1             	mov    %rcx,%rdx
1401a9a9f:	eb c5                	jmp    0x1401a9a66
1401a9aa1:	f3 0f 7f 0a          	movdqu %xmm1,(%rdx)
1401a9aa5:	44 89 52 10          	mov    %r10d,0x10(%rdx)
1401a9aa9:	eb 2f                	jmp    0x1401a9ada
1401a9aab:	4c 3b c7             	cmp    %rdi,%r8
1401a9aae:	74 22                	je     0x1401a9ad2
1401a9ab0:	4d 8d 48 10          	lea    0x10(%r8),%r9
1401a9ab4:	49 8b d1             	mov    %r9,%rdx
1401a9ab7:	49 83 e9 14          	sub    $0x14,%r9
1401a9abb:	49 8d 49 f0          	lea    -0x10(%r9),%rcx
1401a9abf:	0f 10 01             	movups (%rcx),%xmm0
1401a9ac2:	f3 41 0f 7f 41 04    	movdqu %xmm0,0x4(%r9)
1401a9ac8:	41 8b 01             	mov    (%r9),%eax
1401a9acb:	89 02                	mov    %eax,(%rdx)
1401a9acd:	48 3b cf             	cmp    %rdi,%rcx
1401a9ad0:	75 e2                	jne    0x1401a9ab4
1401a9ad2:	f3 0f 7f 0f          	movdqu %xmm1,(%rdi)