14069e796:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14069e79b:	4c 8b e3             	mov    %rbx,%r12
14069e79e:	4c 8b 6c 24 20       	mov    0x20(%rsp),%r13
14069e7a3:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14069e7a7:	48 ff 45 10          	incq   0x10(%rbp)
14069e7ab:	4d 89 2e             	mov    %r13,(%r14)
14069e7ae:	49 89 4e 08          	mov    %rcx,0x8(%r14)
14069e7b2:	4c 89 31             	mov    %r14,(%rcx)
14069e7b5:	4c 89 73 08          	mov    %r14,0x8(%rbx)
14069e7b9:	48 8b 45 18          	mov    0x18(%rbp),%rax
14069e7bd:	48 23 7d 30          	and    0x30(%rbp),%rdi
14069e7c1:	48 03 ff             	add    %rdi,%rdi
14069e7c4:	48 8b 14 f8          	mov    (%rax,%rdi,8),%rdx
14069e7c8:	48 3b 55 08          	cmp    0x8(%rbp),%rdx
14069e7cc:	75 16                	jne    0x14069e7e4
14069e7ce:	4c 89 34 f8          	mov    %r14,(%rax,%rdi,8)
14069e7d2:	eb 22                	jmp    0x14069e7f6
14069e7d4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14069e7d9:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14069e7e0:	00 00
14069e7e2:	eb b7                	jmp    0x14069e79b
14069e7e4:	49 3b d4             	cmp    %r12,%rdx
14069e7e7:	75 06                	jne    0x14069e7ef
14069e7e9:	4c 89 34 f8          	mov    %r14,(%rax,%rdi,8)
14069e7ed:	eb 0c                	jmp    0x14069e7fb
14069e7ef:	48 39 4c f8 08       	cmp    %rcx,0x8(%rax,%rdi,8)
14069e7f4:	75 05                	jne    0x14069e7fb
14069e7f6:	4c 89 74 f8 08       	mov    %r14,0x8(%rax,%rdi,8)
14069e7fb:	4d 89 37             	mov    %r14,(%r15)
14069e7fe:	41 c6 47 08 01       	movb   $0x1,0x8(%r15)
14069e803:	e9 0f fe ff ff       	jmp    0x14069e617
14069e808:	48 8d 0d 91 fc 90 00 	lea    0x90fc91(%rip),%rcx        # 0x140fae4a0
14069e80f:	e8 a0 cb 75 00       	call   0x140dfb3b4
14069e814:	cc                   	int3
14069e815:	cc                   	int3
14069e816:	cc                   	int3
14069e817:	cc                   	int3
14069e818:	cc                   	int3
14069e819:	cc                   	int3
14069e81a:	cc                   	int3
14069e81b:	cc                   	int3
14069e81c:	cc                   	int3
14069e81d:	cc                   	int3
14069e81e:	cc                   	int3
14069e81f:	cc                   	int3
14069e820:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14069e825:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14069e82a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14069e82f:	57                   	push   %rdi
14069e830:	41 54                	push   %r12
14069e832:	41 55                	push   %r13
14069e834:	41 56                	push   %r14
14069e836:	41 57                	push   %r15
14069e838:	48 83 ec 40          	sub    $0x40,%rsp
14069e83c:	4d 8b e1             	mov    %r9,%r12
14069e83f:	4d 8b f0             	mov    %r8,%r14
14069e842:	4c 8b fa             	mov    %rdx,%r15
14069e845:	48 8b e9             	mov    %rcx,%rbp
14069e848:	4d 8b 40 10          	mov    0x10(%r8),%r8
14069e84c:	49 8b ce             	mov    %r14,%rcx
14069e84f:	49 83 7e 18 0f       	cmpq   $0xf,0x18(%r14)
14069e854:	76 03                	jbe    0x14069e859
14069e856:	49 8b 0e             	mov    (%r14),%rcx
14069e859:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
14069e860:	9c f2 cb
14069e863:	33 d2                	xor    %edx,%edx
14069e865:	4d 85 c0             	test   %r8,%r8
14069e868:	74 29                	je     0x14069e893
14069e86a:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
14069e871:	01 00 00
14069e874:	0f 1f 40 00          	nopl   0x0(%rax)
14069e878:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14069e87f:	00
14069e880:	0f b6 04 11          	movzbl (%rcx,%rdx,1),%eax
14069e884:	48 33 f8             	xor    %rax,%rdi
14069e887:	49 0f af f9          	imul   %r9,%rdi
14069e88b:	48 ff c2             	inc    %rdx
14069e88e:	49 3b d0             	cmp    %r8,%rdx
14069e891:	72 ed                	jb     0x14069e880
14069e893:	4c 8b cf             	mov    %rdi,%r9
14069e896:	4d 8b c6             	mov    %r14,%r8
14069e899:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14069e89e:	48 8b cd             	mov    %rbp,%rcx
14069e8a1:	e8 5a 59 b7 ff       	call   0x140214200
14069e8a6:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14069e8ab:	48 85 c0             	test   %rax,%rax
14069e8ae:	74 0d                	je     0x14069e8bd
14069e8b0:	49 89 07             	mov    %rax,(%r15)
14069e8b3:	41 c6 47 08 00       	movb   $0x0,0x8(%r15)
14069e8b8:	e9 d8 01 00 00       	jmp    0x14069ea95
14069e8bd:	48 b8 33 33 33 33 33 	movabs $0x333333333333333,%rax
14069e8c4:	33 33 03
14069e8c7:	48 39 45 10          	cmp    %rax,0x10(%rbp)
14069e8cb:	0f 84 e7 01 00 00    	je     0x14069eab8
14069e8d1:	4c 8d 6d 08          	lea    0x8(%rbp),%r13
14069e8d5:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
14069e8da:	48 c7 44 24 38 00 00 	movq   $0x0,0x38(%rsp)
14069e8e1:	00 00
14069e8e3:	b9 50 00 00 00       	mov    $0x50,%ecx
14069e8e8:	e8 1b c8 77 00       	call   0x140e1b108
14069e8ed:	48 8b f0             	mov    %rax,%rsi
14069e8f0:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14069e8f5:	49 8b d6             	mov    %r14,%rdx
14069e8f8:	48 8d 48 10          	lea    0x10(%rax),%rcx
14069e8fc:	e8 3f a1 b0 ff       	call   0x1401a8a40
14069e901:	0f 57 c0             	xorps  %xmm0,%xmm0
14069e904:	0f 11 46 30          	movups %xmm0,0x30(%rsi)
14069e908:	33 c0                	xor    %eax,%eax
14069e90a:	48 89 46 40          	mov    %rax,0x40(%rsi)
14069e90e:	48 89 46 48          	mov    %rax,0x48(%rsi)
14069e912:	41 0f 10 04 24       	movups (%r12),%xmm0
14069e917:	0f 11 46 30          	movups %xmm0,0x30(%rsi)
14069e91b:	41 0f 10 4c 24 10    	movups 0x10(%r12),%xmm1
14069e921:	0f 11 4e 40          	movups %xmm1,0x40(%rsi)
14069e925:	49 89 44 24 10       	mov    %rax,0x10(%r12)
14069e92a:	49 c7 44 24 18 0f 00 	movq   $0xf,0x18(%r12)
14069e931:	00 00
14069e933:	41 88 04 24          	mov    %al,(%r12)
14069e937:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14069e93b:	48 83 c1 01          	add    $0x1,%rcx
14069e93f:	0f 57 c0             	xorps  %xmm0,%xmm0
14069e942:	78 07                	js     0x14069e94b
14069e944:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14069e949:	eb 15                	jmp    0x14069e960
14069e94b:	48 8b c1             	mov    %rcx,%rax
14069e94e:	48 d1 e8             	shr    $1,%rax
14069e951:	83 e1 01             	and    $0x1,%ecx
14069e954:	48 0b c1             	or     %rcx,%rax
14069e957:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
14069e95c:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14069e960:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
14069e964:	0f 57 c9             	xorps  %xmm1,%xmm1
14069e967:	48 85 c9             	test   %rcx,%rcx
14069e96a:	78 07                	js     0x14069e973
14069e96c:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
14069e971:	eb 15                	jmp    0x14069e988
14069e973:	48 8b c1             	mov    %rcx,%rax
14069e976:	48 d1 e8             	shr    $1,%rax
14069e979:	83 e1 01             	and    $0x1,%ecx
14069e97c:	48 0b c1             	or     %rcx,%rax
14069e97f:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
14069e984:	f3 0f 58 c9          	addss  %xmm1,%xmm1
14069e988:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14069e98c:	0f 2f 45 00          	comiss 0x0(%rbp),%xmm0
14069e990:	0f 86 a7 00 00 00    	jbe    0x14069ea3d
14069e996:	48 8b cd             	mov    %rbp,%rcx
14069e999:	e8 62 10 d1 ff       	call   0x1403afa00
14069e99e:	48 8b 45 30          	mov    0x30(%rbp),%rax
14069e9a2:	48 23 c7             	and    %rdi,%rax
14069e9a5:	48 03 c0             	add    %rax,%rax
14069e9a8:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14069e9ac:	48 8b 5c c2 08       	mov    0x8(%rdx,%rax,8),%rbx
14069e9b1:	49 8b 4d 00          	mov    0x0(%r13),%rcx
14069e9b5:	48 3b d9             	cmp    %rcx,%rbx
14069e9b8:	75 07                	jne    0x14069e9c1
14069e9ba:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14069e9bf:	eb 68                	jmp    0x14069ea29
14069e9c1:	4c 8b 2c c2          	mov    (%rdx,%rax,8),%r13
14069e9c5:	4c 8b 66 20          	mov    0x20(%rsi),%r12
14069e9c9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14069e9d0:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14069e9d4:	48 8b 42 10          	mov    0x10(%rdx),%rax
14069e9d8:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14069e9dd:	76 03                	jbe    0x14069e9e2
14069e9df:	48 8b 12             	mov    (%rdx),%rdx
14069e9e2:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
14069e9e6:	48 83 7e 28 0f       	cmpq   $0xf,0x28(%rsi)
14069e9eb:	76 04                	jbe    0x14069e9f1
14069e9ed:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14069e9f1:	4c 3b e0             	cmp    %rax,%r12
14069e9f4:	75 0c                	jne    0x14069ea02
14069e9f6:	4d 8b c4             	mov    %r12,%r8
14069e9f9:	e8 52 10 84 00       	call   0x140edfa50
14069e9fe:	85 c0                	test   %eax,%eax
14069ea00:	74 0b                	je     0x14069ea0d
14069ea02:	49 3b dd             	cmp    %r13,%rbx
14069ea05:	74 19                	je     0x14069ea20
14069ea07:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14069ea0b:	eb c3                	jmp    0x14069e9d0
14069ea0d:	48 8b 03             	mov    (%rbx),%rax
14069ea10:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14069ea15:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14069ea1a:	4c 8d 6d 08          	lea    0x8(%rbp),%r13
14069ea1e:	eb 12                	jmp    0x14069ea32
14069ea20:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14069ea25:	4c 8d 6d 08          	lea    0x8(%rbp),%r13
14069ea29:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14069ea30:	00 00
14069ea32:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14069ea37:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
14069ea3d:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14069ea42:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14069ea46:	48 ff 45 10          	incq   0x10(%rbp)
14069ea4a:	48 89 16             	mov    %rdx,(%rsi)
14069ea4d:	4c 89 46 08          	mov    %r8,0x8(%rsi)
14069ea51:	49 89 30             	mov    %rsi,(%r8)
14069ea54:	48 89 72 08          	mov    %rsi,0x8(%rdx)
14069ea58:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14069ea5c:	48 8b 45 30          	mov    0x30(%rbp),%rax
14069ea60:	48 23 c7             	and    %rdi,%rax
14069ea63:	48 03 c0             	add    %rax,%rax
14069ea66:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14069ea6a:	4d 3b 4d 00          	cmp    0x0(%r13),%r9
14069ea6e:	75 06                	jne    0x14069ea76
14069ea70:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14069ea74:	eb 12                	jmp    0x14069ea88
14069ea76:	4c 3b ca             	cmp    %rdx,%r9
14069ea79:	75 06                	jne    0x14069ea81
14069ea7b:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14069ea7f:	eb 0c                	jmp    0x14069ea8d
14069ea81:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
14069ea86:	75 05                	jne    0x14069ea8d
14069ea88:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
14069ea8d:	49 89 37             	mov    %rsi,(%r15)
14069ea90:	41 c6 47 08 01       	movb   $0x1,0x8(%r15)
14069ea95:	49 8b c7             	mov    %r15,%rax
14069ea98:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
14069ea9d:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
14069eaa2:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
14069eaa9:	00
14069eaaa:	48 83 c4 40          	add    $0x40,%rsp
14069eaae:	41 5f                	pop    %r15
14069eab0:	41 5e                	pop    %r14
14069eab2:	41 5d                	pop    %r13
14069eab4:	41 5c                	pop    %r12
14069eab6:	5f                   	pop    %rdi
14069eab7:	c3                   	ret
14069eab8:	48 8d 0d e1 f9 90 00 	lea    0x90f9e1(%rip),%rcx        # 0x140fae4a0
14069eabf:	e8 f0 c8 75 00       	call   0x140dfb3b4
14069eac4:	cc                   	int3
14069eac5:	cc                   	int3
14069eac6:	cc                   	int3
14069eac7:	cc                   	int3
14069eac8:	cc                   	int3
14069eac9:	cc                   	int3
14069eaca:	cc                   	int3
14069eacb:	cc                   	int3
14069eacc:	cc                   	int3
14069eacd:	cc                   	int3
14069eace:	cc                   	int3
14069eacf:	cc                   	int3
14069ead0:	40 53                	rex push %rbx
14069ead2:	48 83 ec 20          	sub    $0x20,%rsp
14069ead6:	48 8b d9             	mov    %rcx,%rbx
14069ead9:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14069eadd:	48 85 c9             	test   %rcx,%rcx
14069eae0:	74 09                	je     0x14069eaeb
14069eae2:	48 83 c1 10          	add    $0x10,%rcx
14069eae6:	e8 c5 61 ed ff       	call   0x140574cb0
14069eaeb:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14069eaef:	48 85 c9             	test   %rcx,%rcx
14069eaf2:	74 0f                	je     0x14069eb03
14069eaf4:	ba 48 00 00 00       	mov    $0x48,%edx
14069eaf9:	48 83 c4 20          	add    $0x20,%rsp
14069eafd:	5b                   	pop    %rbx
14069eafe:	e9 41 c6 77 00       	jmp    0x140e1b144
14069eb03:	48 83 c4 20          	add    $0x20,%rsp
14069eb07:	5b                   	pop    %rbx
14069eb08:	c3                   	ret
14069eb09:	cc                   	int3
14069eb0a:	cc                   	int3
14069eb0b:	cc                   	int3
14069eb0c:	cc                   	int3
14069eb0d:	cc                   	int3
14069eb0e:	cc                   	int3
14069eb0f:	cc                   	int3
14069eb10:	40 53                	rex push %rbx
14069eb12:	48 83 ec 20          	sub    $0x20,%rsp
14069eb16:	48 8d 05 c3 cb 97 00 	lea    0x97cbc3(%rip),%rax        # 0x14101b6e0
14069eb1d:	48 8b d9             	mov    %rcx,%rbx
14069eb20:	48 89 01             	mov    %rax,(%rcx)
14069eb23:	f6 c2 01             	test   $0x1,%dl
14069eb26:	74 0a                	je     0x14069eb32
14069eb28:	ba a8 00 00 00       	mov    $0xa8,%edx
14069eb2d:	e8 12 c6 77 00       	call   0x140e1b144
14069eb32:	48 8b c3             	mov    %rbx,%rax
14069eb35:	48 83 c4 20          	add    $0x20,%rsp
14069eb39:	5b                   	pop    %rbx
14069eb3a:	c3                   	ret
14069eb3b:	cc                   	int3
14069eb3c:	cc                   	int3
14069eb3d:	cc                   	int3
14069eb3e:	cc                   	int3
14069eb3f:	cc                   	int3
14069eb40:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14069eb45:	55                   	push   %rbp
14069eb46:	56                   	push   %rsi
14069eb47:	57                   	push   %rdi
14069eb48:	41 54                	push   %r12
14069eb4a:	41 55                	push   %r13
14069eb4c:	41 56                	push   %r14
14069eb4e:	41 57                	push   %r15
14069eb50:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
14069eb55:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
14069eb5c:	48 8b 05 9d a3 d1 00 	mov    0xd1a39d(%rip),%rax        # 0x1413b8f00
14069eb63:	48 33 c4             	xor    %rsp,%rax
14069eb66:	48 89 45 17          	mov    %rax,0x17(%rbp)
14069eb6a:	41 0f b6 d8          	movzbl %r8b,%ebx
14069eb6e:	4c 8b f9             	mov    %rcx,%r15
14069eb71:	48 89 4d a7          	mov    %rcx,-0x59(%rbp)
14069eb75:	45 33 e4             	xor    %r12d,%r12d
14069eb78:	4c 8b 72 28          	mov    0x28(%rdx),%r14
14069eb7c:	0f 57 c0             	xorps  %xmm0,%xmm0
14069eb7f:	0f 11 45 b7          	movups %xmm0,-0x49(%rbp)
14069eb83:	4c 89 65 c7          	mov    %r12,-0x39(%rbp)
14069eb87:	4c 89 65 cf          	mov    %r12,-0x31(%rbp)
14069eb8b:	48 c7 c7 ff ff ff ff 	mov    $0xffffffffffffffff,%rdi
14069eb92:	4c 8b c7             	mov    %rdi,%r8
14069eb95:	49 ff c0             	inc    %r8
14069eb98:	47 38 24 06          	cmp    %r12b,(%r14,%r8,1)
14069eb9c:	75 f7                	jne    0x14069eb95
14069eb9e:	49 8b d6             	mov    %r14,%rdx
14069eba1:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
14069eba5:	e8 56 82 af ff       	call   0x140196e00
14069ebaa:	90                   	nop
14069ebab:	84 db                	test   %bl,%bl
14069ebad:	0f 84 36 01 00 00    	je     0x14069ece9
14069ebb3:	4c 8b 7d c7          	mov    -0x39(%rbp),%r15
14069ebb7:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
14069ebbe:	ff ff 7f
14069ebc1:	48 8b c1             	mov    %rcx,%rax
14069ebc4:	49 2b c7             	sub    %r15,%rax
14069ebc7:	48 83 f8 01          	cmp    $0x1,%rax
14069ebcb:	0f 82 c4 03 00 00    	jb     0x14069ef95
14069ebd1:	48 8d 45 b7          	lea    -0x49(%rbp),%rax
14069ebd5:	48 83 7d cf 0f       	cmpq   $0xf,-0x31(%rbp)
14069ebda:	48 0f 47 45 b7       	cmova  -0x49(%rbp),%rax
14069ebdf:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
14069ebe3:	0f 57 c0             	xorps  %xmm0,%xmm0
14069ebe6:	0f 11 45 f7          	movups %xmm0,-0x9(%rbp)
14069ebea:	4d 8d 6f 01          	lea    0x1(%r15),%r13
14069ebee:	bb 0f 00 00 00       	mov    $0xf,%ebx
14069ebf3:	48 8d 75 f7          	lea    -0x9(%rbp),%rsi
14069ebf7:	4c 3b eb             	cmp    %rbx,%r13
14069ebfa:	76 7e                	jbe    0x14069ec7a
14069ebfc:	49 8b dd             	mov    %r13,%rbx
14069ebff:	48 83 cb 0f          	or     $0xf,%rbx
14069ec03:	48 3b d9             	cmp    %rcx,%rbx
14069ec06:	76 30                	jbe    0x14069ec38
14069ec08:	48 8b d9             	mov    %rcx,%rbx
14069ec0b:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
14069ec12:	00 00 80
14069ec15:	48 83 c0 27          	add    $0x27,%rax
14069ec19:	48 8b c8             	mov    %rax,%rcx
14069ec1c:	e8 e7 c4 77 00       	call   0x140e1b108
14069ec21:	48 85 c0             	test   %rax,%rax
14069ec24:	0f 84 71 03 00 00    	je     0x14069ef9b
14069ec2a:	48 8d 70 27          	lea    0x27(%rax),%rsi
14069ec2e:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
14069ec32:	48 89 46 f8          	mov    %rax,-0x8(%rsi)