14008f61f:	83 e1 01             	and    $0x1,%ecx
14008f622:	48 0b c1             	or     %rcx,%rax
14008f625:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
14008f62a:	f3 0f 58 c9          	addss  %xmm1,%xmm1
14008f62e:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14008f632:	41 0f 2f 45 00       	comiss 0x0(%r13),%xmm0
14008f637:	0f 86 c3 00 00 00    	jbe    0x14008f700
14008f63d:	49 8b cd             	mov    %r13,%rcx
14008f640:	e8 ab 03 03 00       	call   0x1400bf9f0
14008f645:	48 8b d0             	mov    %rax,%rdx
14008f648:	49 8b cd             	mov    %r13,%rcx
14008f64b:	e8 80 0a 03 00       	call   0x1400c00d0
14008f650:	49 8b 45 30          	mov    0x30(%r13),%rax
14008f654:	48 23 c5             	and    %rbp,%rax
14008f657:	48 03 c0             	add    %rax,%rax
14008f65a:	49 8b 55 18          	mov    0x18(%r13),%rdx
14008f65e:	48 8b 74 c2 08       	mov    0x8(%rdx,%rax,8),%rsi
14008f663:	49 8b 0f             	mov    (%r15),%rcx
14008f666:	48 3b f1             	cmp    %rcx,%rsi
14008f669:	75 07                	jne    0x14008f672
14008f66b:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14008f670:	eb 7a                	jmp    0x14008f6ec
14008f672:	48 8b 04 c2          	mov    (%rdx,%rax,8),%rax
14008f676:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
14008f67d:	00
14008f67e:	4d 8b 7e 10          	mov    0x10(%r14),%r15
14008f682:	0f 1f 40 00          	nopl   0x0(%rax)
14008f686:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14008f68d:	00 00 00
14008f690:	48 8d 56 10          	lea    0x10(%rsi),%rdx
14008f694:	48 8b 42 10          	mov    0x10(%rdx),%rax
14008f698:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14008f69d:	76 03                	jbe    0x14008f6a2
14008f69f:	48 8b 12             	mov    (%rdx),%rdx
14008f6a2:	49 8b ce             	mov    %r14,%rcx
14008f6a5:	49 83 7e 18 0f       	cmpq   $0xf,0x18(%r14)
14008f6aa:	76 03                	jbe    0x14008f6af
14008f6ac:	49 8b 0e             	mov    (%r14),%rcx
14008f6af:	4c 3b f8             	cmp    %rax,%r15
14008f6b2:	75 0c                	jne    0x14008f6c0
14008f6b4:	4d 8b c7             	mov    %r15,%r8
14008f6b7:	e8 66 d3 26 00       	call   0x1402fca22
14008f6bc:	85 c0                	test   %eax,%eax
14008f6be:	74 10                	je     0x14008f6d0
14008f6c0:	48 3b b4 24 88 00 00 	cmp    0x88(%rsp),%rsi
14008f6c7:	00
14008f6c8:	74 19                	je     0x14008f6e3
14008f6ca:	48 8b 76 08          	mov    0x8(%rsi),%rsi
14008f6ce:	eb c0                	jmp    0x14008f690
14008f6d0:	48 8b 06             	mov    (%rsi),%rax
14008f6d3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14008f6d8:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
14008f6dd:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f6e1:	eb 12                	jmp    0x14008f6f5
14008f6e3:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14008f6e8:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f6ec:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14008f6f3:	00 00
14008f6f5:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14008f6fa:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
14008f700:	45 33 f6             	xor    %r14d,%r14d
14008f703:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14008f708:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
14008f70d:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14008f711:	49 ff 45 10          	incq   0x10(%r13)
14008f715:	49 89 14 24          	mov    %rdx,(%r12)
14008f719:	4d 89 44 24 08       	mov    %r8,0x8(%r12)
14008f71e:	4d 89 20             	mov    %r12,(%r8)
14008f721:	4c 89 62 08          	mov    %r12,0x8(%rdx)
14008f725:	49 8b 4d 18          	mov    0x18(%r13),%rcx
14008f729:	49 8b 45 30          	mov    0x30(%r13),%rax
14008f72d:	48 23 c5             	and    %rbp,%rax
14008f730:	48 03 c0             	add    %rax,%rax
14008f733:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14008f737:	4d 3b 0f             	cmp    (%r15),%r9
14008f73a:	75 06                	jne    0x14008f742
14008f73c:	4c 89 24 c1          	mov    %r12,(%rcx,%rax,8)
14008f740:	eb 12                	jmp    0x14008f754
14008f742:	4c 3b ca             	cmp    %rdx,%r9
14008f745:	75 06                	jne    0x14008f74d
14008f747:	4c 89 24 c1          	mov    %r12,(%rcx,%rax,8)
14008f74b:	eb 0c                	jmp    0x14008f759
14008f74d:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
14008f752:	75 05                	jne    0x14008f759
14008f754:	4c 89 64 c1 08       	mov    %r12,0x8(%rcx,%rax,8)
14008f759:	49 bf aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%r15
14008f760:	aa aa 02
14008f763:	48 8b 1b             	mov    (%rbx),%rbx
14008f766:	48 3b df             	cmp    %rdi,%rbx
14008f769:	0f 85 8c fd ff ff    	jne    0x14008f4fb
14008f76f:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14008f774:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14008f778:	49 8b 6b 40          	mov    0x40(%r11),%rbp
14008f77c:	49 8b 73 48          	mov    0x48(%r11),%rsi
14008f780:	49 8b e3             	mov    %r11,%rsp
14008f783:	41 5f                	pop    %r15
14008f785:	41 5e                	pop    %r14
14008f787:	41 5d                	pop    %r13
14008f789:	41 5c                	pop    %r12
14008f78b:	5f                   	pop    %rdi
14008f78c:	c3                   	ret
14008f78d:	48 8d 0d 8c eb 29 00 	lea    0x29eb8c(%rip),%rcx        # 0x14032e320
14008f794:	e8 17 ce 26 00       	call   0x1402fc5b0
14008f799:	cc                   	int3
14008f79a:	cc                   	int3
14008f79b:	cc                   	int3
14008f79c:	cc                   	int3
14008f79d:	cc                   	int3
14008f79e:	cc                   	int3
14008f79f:	cc                   	int3
14008f7a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14008f7a5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14008f7aa:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14008f7af:	57                   	push   %rdi
14008f7b0:	41 54                	push   %r12
14008f7b2:	41 55                	push   %r13
14008f7b4:	41 56                	push   %r14
14008f7b6:	41 57                	push   %r15
14008f7b8:	48 83 ec 30          	sub    $0x30,%rsp
14008f7bc:	4d 8b e0             	mov    %r8,%r12
14008f7bf:	4c 8b ea             	mov    %rdx,%r13
14008f7c2:	48 8b f9             	mov    %rcx,%rdi
14008f7c5:	33 f6                	xor    %esi,%esi
14008f7c7:	89 74 24 78          	mov    %esi,0x78(%rsp)
14008f7cb:	48 8b 01             	mov    (%rcx),%rax
14008f7ce:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f7d2:	48 03 cf             	add    %rdi,%rcx
14008f7d5:	ff 15 7d 9e 29 00    	call   *0x299e7d(%rip)        # 0x140329658
14008f7db:	48 85 c0             	test   %rax,%rax
14008f7de:	7e 2d                	jle    0x14008f80d
14008f7e0:	48 8b 07             	mov    (%rdi),%rax
14008f7e3:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f7e7:	48 03 cf             	add    %rdi,%rcx
14008f7ea:	ff 15 68 9e 29 00    	call   *0x299e68(%rip)        # 0x140329658
14008f7f0:	49 3b c4             	cmp    %r12,%rax
14008f7f3:	76 18                	jbe    0x14008f80d
14008f7f5:	48 8b 07             	mov    (%rdi),%rax
14008f7f8:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f7fc:	48 03 cf             	add    %rdi,%rcx
14008f7ff:	ff 15 53 9e 29 00    	call   *0x299e53(%rip)        # 0x140329658
14008f805:	4c 8b f0             	mov    %rax,%r14
14008f808:	4d 2b f4             	sub    %r12,%r14
14008f80b:	eb 03                	jmp    0x14008f810
14008f80d:	4c 8b f6             	mov    %rsi,%r14
14008f810:	4c 8b ff             	mov    %rdi,%r15
14008f813:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14008f818:	48 8b 07             	mov    (%rdi),%rax
14008f81b:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f81f:	48 03 cf             	add    %rdi,%rcx
14008f822:	ff 15 40 9f 29 00    	call   *0x299f40(%rip)        # 0x140329768
14008f828:	48 85 c0             	test   %rax,%rax
14008f82b:	74 0a                	je     0x14008f837
14008f82d:	48 8b 10             	mov    (%rax),%rdx
14008f830:	48 8b c8             	mov    %rax,%rcx
14008f833:	ff 52 08             	call   *0x8(%rdx)
14008f836:	90                   	nop
14008f837:	48 8b 07             	mov    (%rdi),%rax
14008f83a:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f83e:	48 03 cf             	add    %rdi,%rcx
14008f841:	ff 15 01 9e 29 00    	call   *0x299e01(%rip)        # 0x140329648
14008f847:	84 c0                	test   %al,%al
14008f849:	74 37                	je     0x14008f882
14008f84b:	48 8b 07             	mov    (%rdi),%rax
14008f84e:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f852:	48 03 cf             	add    %rdi,%rcx
14008f855:	ff 15 05 9f 29 00    	call   *0x299f05(%rip)        # 0x140329760
14008f85b:	48 85 c0             	test   %rax,%rax
14008f85e:	74 20                	je     0x14008f880
14008f860:	48 3b c7             	cmp    %rdi,%rax
14008f863:	74 1b                	je     0x14008f880
14008f865:	48 8b c8             	mov    %rax,%rcx
14008f868:	ff 15 6a 9f 29 00    	call   *0x299f6a(%rip)        # 0x1403297d8
14008f86e:	48 8b 07             	mov    (%rdi),%rax
14008f871:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f875:	48 03 cf             	add    %rdi,%rcx
14008f878:	ff 15 ca 9d 29 00    	call   *0x299dca(%rip)        # 0x140329648
14008f87e:	eb 02                	jmp    0x14008f882
14008f880:	b0 01                	mov    $0x1,%al
14008f882:	88 44 24 28          	mov    %al,0x28(%rsp)
14008f886:	84 c0                	test   %al,%al
14008f888:	75 0a                	jne    0x14008f894
14008f88a:	be 04 00 00 00       	mov    $0x4,%esi
14008f88f:	e9 f4 00 00 00       	jmp    0x14008f988
14008f894:	48 8b 07             	mov    (%rdi),%rax
14008f897:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f89b:	48 03 cf             	add    %rdi,%rcx
14008f89e:	ff 15 ac 9d 29 00    	call   *0x299dac(%rip)        # 0x140329650
14008f8a4:	25 c0 01 00 00       	and    $0x1c0,%eax
14008f8a9:	83 f8 40             	cmp    $0x40,%eax
14008f8ac:	74 4b                	je     0x14008f8f9
14008f8ae:	66 90                	xchg   %ax,%ax
14008f8b0:	4d 85 f6             	test   %r14,%r14
14008f8b3:	74 44                	je     0x14008f8f9
14008f8b5:	48 8b 07             	mov    (%rdi),%rax
14008f8b8:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f8bc:	48 03 cf             	add    %rdi,%rcx
14008f8bf:	ff 15 a3 9e 29 00    	call   *0x299ea3(%rip)        # 0x140329768
14008f8c5:	48 8b d8             	mov    %rax,%rbx
14008f8c8:	48 8b 0f             	mov    (%rdi),%rcx
14008f8cb:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14008f8cf:	48 03 cf             	add    %rdi,%rcx
14008f8d2:	ff 15 98 9e 29 00    	call   *0x299e98(%rip)        # 0x140329770
14008f8d8:	0f b6 d0             	movzbl %al,%edx
14008f8db:	48 8b cb             	mov    %rbx,%rcx
14008f8de:	ff 15 94 9d 29 00    	call   *0x299d94(%rip)        # 0x140329678
14008f8e4:	83 f8 ff             	cmp    $0xffffffff,%eax
14008f8e7:	75 0b                	jne    0x14008f8f4
14008f8e9:	be 04 00 00 00       	mov    $0x4,%esi
14008f8ee:	89 74 24 78          	mov    %esi,0x78(%rsp)
14008f8f2:	eb 2c                	jmp    0x14008f920
14008f8f4:	49 ff ce             	dec    %r14
14008f8f7:	eb b7                	jmp    0x14008f8b0
14008f8f9:	48 8b 07             	mov    (%rdi),%rax
14008f8fc:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f900:	48 03 cf             	add    %rdi,%rcx
14008f903:	ff 15 5f 9e 29 00    	call   *0x299e5f(%rip)        # 0x140329768
14008f909:	4d 8b c4             	mov    %r12,%r8
14008f90c:	49 8b d5             	mov    %r13,%rdx
14008f90f:	48 8b c8             	mov    %rax,%rcx
14008f912:	ff 15 68 9d 29 00    	call   *0x299d68(%rip)        # 0x140329680
14008f918:	49 3b c4             	cmp    %r12,%rax
14008f91b:	75 41                	jne    0x14008f95e
14008f91d:	0f 1f 00             	nopl   (%rax)
14008f920:	4d 85 f6             	test   %r14,%r14
14008f923:	74 40                	je     0x14008f965
14008f925:	48 8b 07             	mov    (%rdi),%rax
14008f928:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f92c:	48 03 cf             	add    %rdi,%rcx
14008f92f:	ff 15 33 9e 29 00    	call   *0x299e33(%rip)        # 0x140329768
14008f935:	48 8b d8             	mov    %rax,%rbx
14008f938:	48 8b 0f             	mov    (%rdi),%rcx
14008f93b:	48 63 49 04          	movslq 0x4(%rcx),%rcx
14008f93f:	48 03 cf             	add    %rdi,%rcx
14008f942:	ff 15 28 9e 29 00    	call   *0x299e28(%rip)        # 0x140329770
14008f948:	0f b6 d0             	movzbl %al,%edx
14008f94b:	48 8b cb             	mov    %rbx,%rcx
14008f94e:	ff 15 24 9d 29 00    	call   *0x299d24(%rip)        # 0x140329678
14008f954:	83 f8 ff             	cmp    $0xffffffff,%eax
14008f957:	74 05                	je     0x14008f95e
14008f959:	49 ff ce             	dec    %r14
14008f95c:	eb c2                	jmp    0x14008f920
14008f95e:	83 ce 04             	or     $0x4,%esi
14008f961:	89 74 24 78          	mov    %esi,0x78(%rsp)
14008f965:	48 8b 07             	mov    (%rdi),%rax
14008f968:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f96c:	48 03 cf             	add    %rdi,%rcx
14008f96f:	33 d2                	xor    %edx,%edx
14008f971:	ff 15 e9 9c 29 00    	call   *0x299ce9(%rip)        # 0x140329660
14008f977:	90                   	nop
14008f978:	eb 0e                	jmp    0x14008f988
14008f97a:	48 8b 7c 24 60       	mov    0x60(%rsp),%rdi
14008f97f:	8b 74 24 78          	mov    0x78(%rsp),%esi
14008f983:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
14008f988:	48 8b 07             	mov    (%rdi),%rax
14008f98b:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f98f:	48 03 cf             	add    %rdi,%rcx
14008f992:	45 33 c0             	xor    %r8d,%r8d
14008f995:	8b d6                	mov    %esi,%edx
14008f997:	ff 15 bb 9d 29 00    	call   *0x299dbb(%rip)        # 0x140329758
14008f99d:	90                   	nop
14008f99e:	e8 19 cc 26 00       	call   0x1402fc5bc
14008f9a3:	84 c0                	test   %al,%al
14008f9a5:	75 0a                	jne    0x14008f9b1
14008f9a7:	49 8b cf             	mov    %r15,%rcx
14008f9aa:	ff 15 10 9e 29 00    	call   *0x299e10(%rip)        # 0x1403297c0
14008f9b0:	90                   	nop
14008f9b1:	49 8b 07             	mov    (%r15),%rax
14008f9b4:	48 63 48 04          	movslq 0x4(%rax),%rcx
14008f9b8:	49 03 cf             	add    %r15,%rcx
14008f9bb:	ff 15 a7 9d 29 00    	call   *0x299da7(%rip)        # 0x140329768
14008f9c1:	48 85 c0             	test   %rax,%rax
14008f9c4:	74 0a                	je     0x14008f9d0
14008f9c6:	48 8b 10             	mov    (%rax),%rdx
14008f9c9:	48 8b c8             	mov    %rax,%rcx
14008f9cc:	ff 52 10             	call   *0x10(%rdx)
14008f9cf:	90                   	nop
14008f9d0:	48 8b c7             	mov    %rdi,%rax
14008f9d3:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14008f9d8:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14008f9dd:	48 83 c4 30          	add    $0x30,%rsp
14008f9e1:	41 5f                	pop    %r15
14008f9e3:	41 5e                	pop    %r14
14008f9e5:	41 5d                	pop    %r13
14008f9e7:	41 5c                	pop    %r12
14008f9e9:	5f                   	pop    %rdi
14008f9ea:	c3                   	ret
14008f9eb:	cc                   	int3
14008f9ec:	cc                   	int3
14008f9ed:	cc                   	int3
14008f9ee:	cc                   	int3
14008f9ef:	cc                   	int3
14008f9f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14008f9f5:	57                   	push   %rdi
14008f9f6:	48 83 ec 20          	sub    $0x20,%rsp
14008f9fa:	48 8b da             	mov    %rdx,%rbx
14008f9fd:	49 8b f8             	mov    %r8,%rdi
14008fa00:	48 2b d9             	sub    %rcx,%rbx
14008fa03:	48 8b d1             	mov    %rcx,%rdx
14008fa06:	4c 8b c3             	mov    %rbx,%r8
14008fa09:	48 8b cf             	mov    %rdi,%rcx
14008fa0c:	e8 1d d0 26 00       	call   0x1402fca2e
14008fa11:	48 8d 04 3b          	lea    (%rbx,%rdi,1),%rax
14008fa15:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14008fa1a:	48 83 c4 20          	add    $0x20,%rsp
14008fa1e:	5f                   	pop    %rdi
14008fa1f:	c3                   	ret
14008fa20:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14008fa25:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14008fa2a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14008fa2f:	56                   	push   %rsi
14008fa30:	57                   	push   %rdi
14008fa31:	41 56                	push   %r14
14008fa33:	48 83 ec 20          	sub    $0x20,%rsp
14008fa37:	4c 8b f2             	mov    %rdx,%r14
14008fa3a:	48 8b d9             	mov    %rcx,%rbx
14008fa3d:	4c 8b 41 08          	mov    0x8(%rcx),%r8
14008fa41:	4c 2b 01             	sub    (%rcx),%r8
14008fa44:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
14008fa4b:	66 66 66
14008fa4e:	49 f7 e8             	imul   %r8
14008fa51:	48 8b fa             	mov    %rdx,%rdi
14008fa54:	48 c1 ff 04          	sar    $0x4,%rdi
14008fa58:	48 8b c7             	mov    %rdi,%rax
14008fa5b:	48 c1 e8 3f          	shr    $0x3f,%rax
14008fa5f:	48 03 f8             	add    %rax,%rdi
14008fa62:	49 8b 16             	mov    (%r14),%rdx
14008fa65:	e8 b6 1b 03 00       	call   0x1400c1620
14008fa6a:	48 8b f0             	mov    %rax,%rsi
14008fa6d:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14008fa72:	4c 8b cb             	mov    %rbx,%r9
14008fa75:	4c 8b c0             	mov    %rax,%r8
14008fa78:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14008fa7c:	48 8b 0b             	mov    (%rbx),%rcx
14008fa7f:	e8 ac 43 00 00       	call   0x140093e30
14008fa84:	90                   	nop
14008fa85:	4d 8b 0e             	mov    (%r14),%r9
14008fa88:	4c 8b c7             	mov    %rdi,%r8
14008fa8b:	48 8b d6             	mov    %rsi,%rdx
14008fa8e:	48 8b cb             	mov    %rbx,%rcx
14008fa91:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14008fa96:	48 83 c4 20          	add    $0x20,%rsp
14008fa9a:	41 5e                	pop    %r14
14008fa9c:	5f                   	pop    %rdi
14008fa9d:	5e                   	pop    %rsi
14008fa9e:	e9 cd fc 02 00       	jmp    0x1400bf770
14008faa3:	cc                   	int3
14008faa4:	cc                   	int3
14008faa5:	cc                   	int3
14008faa6:	cc                   	int3
14008faa7:	cc                   	int3