1400945b4:	e8 c7 23 ff ff       	call   0x140086980
1400945b9:	90                   	nop
1400945ba:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
1400945be:	48 83 c1 01          	add    $0x1,%rcx
1400945c2:	0f 57 c9             	xorps  %xmm1,%xmm1
1400945c5:	78 07                	js     0x1400945ce
1400945c7:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1400945cc:	eb 15                	jmp    0x1400945e3
1400945ce:	48 8b c1             	mov    %rcx,%rax
1400945d1:	48 d1 e8             	shr    $1,%rax
1400945d4:	83 e1 01             	and    $0x1,%ecx
1400945d7:	48 0b c1             	or     %rcx,%rax
1400945da:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
1400945df:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1400945e3:	48 8b 55 48          	mov    0x48(%rbp),%rdx
1400945e7:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
1400945ec:	0f 57 d2             	xorps  %xmm2,%xmm2
1400945ef:	48 85 d2             	test   %rdx,%rdx
1400945f2:	78 07                	js     0x1400945fb
1400945f4:	f3 48 0f 2a d2       	cvtsi2ss %rdx,%xmm2
1400945f9:	eb 18                	jmp    0x140094613
1400945fb:	48 8b ca             	mov    %rdx,%rcx
1400945fe:	48 d1 e9             	shr    $1,%rcx
140094601:	48 8b c2             	mov    %rdx,%rax
140094604:	83 e0 01             	and    $0x1,%eax
140094607:	48 0b c8             	or     %rax,%rcx
14009460a:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
14009460f:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140094613:	0f 28 c1             	movaps %xmm1,%xmm0
140094616:	f3 0f 5e c2          	divss  %xmm2,%xmm0
14009461a:	0f 2f d8             	comiss %xmm0,%xmm3
14009461d:	0f 83 46 01 00 00    	jae    0x140094769
140094623:	f3 0f 5e cb          	divss  %xmm3,%xmm1
140094627:	f3 0f 2c c9          	cvttss2si %xmm1,%ecx
14009462b:	81 f9 00 00 00 80    	cmp    $0x80000000,%ecx
140094631:	74 21                	je     0x140094654
140094633:	66 0f 6e c1          	movd   %ecx,%xmm0
140094637:	0f 5b c0             	cvtdq2ps %xmm0,%xmm0
14009463a:	0f 2e c1             	ucomiss %xmm1,%xmm0
14009463d:	74 15                	je     0x140094654
14009463f:	0f 14 c9             	unpcklps %xmm1,%xmm1
140094642:	0f 50 c1             	movmskps %xmm1,%eax
140094645:	83 e0 01             	and    $0x1,%eax
140094648:	83 f0 01             	xor    $0x1,%eax
14009464b:	03 c8                	add    %eax,%ecx
14009464d:	66 0f 6e c9          	movd   %ecx,%xmm1
140094651:	0f 5b c9             	cvtdq2ps %xmm1,%xmm1
140094654:	33 c9                	xor    %ecx,%ecx
140094656:	f3 0f 10 05 76 9e 29 	movss  0x299e76(%rip),%xmm0        # 0x14032e4d4
14009465d:	00
14009465e:	0f 2f c8             	comiss %xmm0,%xmm1
140094661:	72 16                	jb     0x140094679
140094663:	f3 0f 5c c8          	subss  %xmm0,%xmm1
140094667:	0f 2f c8             	comiss %xmm0,%xmm1
14009466a:	73 0d                	jae    0x140094679
14009466c:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140094673:	00 00 80
140094676:	48 8b c8             	mov    %rax,%rcx
140094679:	f3 48 0f 2c c1       	cvttss2si %xmm1,%rax
14009467e:	48 03 c1             	add    %rcx,%rax
140094681:	b9 08 00 00 00       	mov    $0x8,%ecx
140094686:	48 3b c1             	cmp    %rcx,%rax
140094689:	48 0f 47 c8          	cmova  %rax,%rcx
14009468d:	48 3b d1             	cmp    %rcx,%rdx
140094690:	73 19                	jae    0x1400946ab
140094692:	48 81 fa 00 02 00 00 	cmp    $0x200,%rdx
140094699:	73 0d                	jae    0x1400946a8
14009469b:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
1400946a2:	00
1400946a3:	48 3b d1             	cmp    %rcx,%rdx
1400946a6:	73 03                	jae    0x1400946ab
1400946a8:	48 8b d1             	mov    %rcx,%rdx
1400946ab:	48 8b cd             	mov    %rbp,%rcx
1400946ae:	e8 1d bf 02 00       	call   0x1400c05d0
1400946b3:	48 8b 45 40          	mov    0x40(%rbp),%rax
1400946b7:	49 23 c7             	and    %r15,%rax
1400946ba:	48 03 c0             	add    %rax,%rax
1400946bd:	48 8b 55 28          	mov    0x28(%rbp),%rdx
1400946c1:	4c 8b 4c c2 08       	mov    0x8(%rdx,%rax,8),%r9
1400946c6:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1400946ca:	4c 3b c9             	cmp    %rcx,%r9
1400946cd:	75 0a                	jne    0x1400946d9
1400946cf:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1400946d4:	e9 80 00 00 00       	jmp    0x140094759
1400946d9:	4c 8b 14 c2          	mov    (%rdx,%rax,8),%r10
1400946dd:	4c 8b 5e 30          	mov    0x30(%rsi),%r11
1400946e1:	49 8d 51 10          	lea    0x10(%r9),%rdx
1400946e5:	4c 3b 5a 20          	cmp    0x20(%rdx),%r11
1400946e9:	75 4f                	jne    0x14009473a
1400946eb:	48 83 7e 20 00       	cmpq   $0x0,0x20(%rsi)
1400946f0:	75 06                	jne    0x1400946f8
1400946f2:	48 8b 46 38          	mov    0x38(%rsi),%rax
1400946f6:	eb 0f                	jmp    0x140094707
1400946f8:	48 8d 46 10          	lea    0x10(%rsi),%rax
1400946fc:	48 83 7e 28 0f       	cmpq   $0xf,0x28(%rsi)
140094701:	76 04                	jbe    0x140094707
140094703:	48 8b 46 10          	mov    0x10(%rsi),%rax
140094707:	48 83 7a 10 00       	cmpq   $0x0,0x10(%rdx)
14009470c:	75 06                	jne    0x140094714
14009470e:	48 8b 52 28          	mov    0x28(%rdx),%rdx
140094712:	eb 0a                	jmp    0x14009471e
140094714:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
140094719:	76 03                	jbe    0x14009471e
14009471b:	48 8b 12             	mov    (%rdx),%rdx
14009471e:	48 2b d0             	sub    %rax,%rdx
140094721:	44 0f b6 00          	movzbl (%rax),%r8d
140094725:	0f b6 0c 10          	movzbl (%rax,%rdx,1),%ecx
140094729:	44 2b c1             	sub    %ecx,%r8d
14009472c:	75 07                	jne    0x140094735
14009472e:	48 ff c0             	inc    %rax
140094731:	85 c9                	test   %ecx,%ecx
140094733:	75 ec                	jne    0x140094721
140094735:	45 85 c0             	test   %r8d,%r8d
140094738:	74 0b                	je     0x140094745
14009473a:	4d 3b ca             	cmp    %r10,%r9
14009473d:	74 15                	je     0x140094754
14009473f:	4d 8b 49 08          	mov    0x8(%r9),%r9
140094743:	eb 9c                	jmp    0x1400946e1
140094745:	49 8b 01             	mov    (%r9),%rax
140094748:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14009474d:	4c 89 4c 24 28       	mov    %r9,0x28(%rsp)
140094752:	eb 0a                	jmp    0x14009475e
140094754:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140094759:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
14009475e:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
140094763:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
140094769:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14009476e:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140094772:	48 ff 45 18          	incq   0x18(%rbp)
140094776:	48 89 16             	mov    %rdx,(%rsi)
140094779:	4c 89 46 08          	mov    %r8,0x8(%rsi)
14009477d:	49 89 30             	mov    %rsi,(%r8)
140094780:	48 89 72 08          	mov    %rsi,0x8(%rdx)
140094784:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
140094788:	48 8b 45 40          	mov    0x40(%rbp),%rax
14009478c:	49 23 c7             	and    %r15,%rax
14009478f:	48 03 c0             	add    %rax,%rax
140094792:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
140094796:	4c 3b 4d 10          	cmp    0x10(%rbp),%r9
14009479a:	75 06                	jne    0x1400947a2
14009479c:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
1400947a0:	eb 12                	jmp    0x1400947b4
1400947a2:	4c 3b ca             	cmp    %rdx,%r9
1400947a5:	75 06                	jne    0x1400947ad
1400947a7:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
1400947ab:	eb 0c                	jmp    0x1400947b9
1400947ad:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
1400947b2:	75 05                	jne    0x1400947b9
1400947b4:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
1400947b9:	49 89 36             	mov    %rsi,(%r14)
1400947bc:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
1400947c1:	49 8b c6             	mov    %r14,%rax
1400947c4:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1400947c9:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
1400947ce:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
1400947d3:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
1400947d8:	48 83 c4 40          	add    $0x40,%rsp
1400947dc:	41 5f                	pop    %r15
1400947de:	41 5e                	pop    %r14
1400947e0:	41 5c                	pop    %r12
1400947e2:	c3                   	ret
1400947e3:	48 8d 0d 36 9b 29 00 	lea    0x299b36(%rip),%rcx        # 0x14032e320
1400947ea:	e8 c1 7d 26 00       	call   0x1402fc5b0
1400947ef:	cc                   	int3
1400947f0:	48 83 ec 08          	sub    $0x8,%rsp
1400947f4:	4c 8b d2             	mov    %rdx,%r10
1400947f7:	33 c0                	xor    %eax,%eax
1400947f9:	48 2b d1             	sub    %rcx,%rdx
1400947fc:	4c 8b c9             	mov    %rcx,%r9
1400947ff:	48 83 c2 07          	add    $0x7,%rdx
140094803:	48 c1 ea 03          	shr    $0x3,%rdx
140094807:	49 3b ca             	cmp    %r10,%rcx
14009480a:	48 0f 47 d0          	cmova  %rax,%rdx
14009480e:	48 85 d2             	test   %rdx,%rdx
140094811:	74 3f                	je     0x140094852
140094813:	48 83 fa 02          	cmp    $0x2,%rdx
140094817:	72 39                	jb     0x140094852
140094819:	49 8b 00             	mov    (%r8),%rax
14009481c:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
140094820:	48 8d 0c d1          	lea    (%rcx,%rdx,8),%rcx
140094824:	4d 3b c8             	cmp    %r8,%r9
140094827:	77 05                	ja     0x14009482e
140094829:	49 3b c8             	cmp    %r8,%rcx
14009482c:	73 24                	jae    0x140094852
14009482e:	48 89 3c 24          	mov    %rdi,(%rsp)
140094832:	48 83 e2 fe          	and    $0xfffffffffffffffe,%rdx
140094836:	49 8b f9             	mov    %r9,%rdi
140094839:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
140094840:	00
140094841:	48 8b ca             	mov    %rdx,%rcx
140094844:	48 c1 e9 03          	shr    $0x3,%rcx
140094848:	f3 48 ab             	rep stos %rax,%es:(%rdi)
14009484b:	4c 03 ca             	add    %rdx,%r9
14009484e:	48 8b 3c 24          	mov    (%rsp),%rdi
140094852:	4d 3b ca             	cmp    %r10,%r9
140094855:	74 18                	je     0x14009486f
140094857:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14009485e:	00 00
140094860:	49 8b 00             	mov    (%r8),%rax
140094863:	49 89 01             	mov    %rax,(%r9)
140094866:	49 83 c1 08          	add    $0x8,%r9
14009486a:	4d 3b ca             	cmp    %r10,%r9
14009486d:	75 f1                	jne    0x140094860
14009486f:	48 83 c4 08          	add    $0x8,%rsp
140094873:	c3                   	ret
140094874:	cc                   	int3
140094875:	cc                   	int3
140094876:	cc                   	int3
140094877:	cc                   	int3
140094878:	cc                   	int3
140094879:	cc                   	int3
14009487a:	cc                   	int3
14009487b:	cc                   	int3
14009487c:	cc                   	int3
14009487d:	cc                   	int3
14009487e:	cc                   	int3
14009487f:	cc                   	int3
140094880:	48 83 ec 08          	sub    $0x8,%rsp
140094884:	4c 8b d2             	mov    %rdx,%r10
140094887:	33 c0                	xor    %eax,%eax
140094889:	48 2b d1             	sub    %rcx,%rdx
14009488c:	4c 8b c9             	mov    %rcx,%r9
14009488f:	48 83 c2 07          	add    $0x7,%rdx
140094893:	48 c1 ea 03          	shr    $0x3,%rdx
140094897:	49 3b ca             	cmp    %r10,%rcx
14009489a:	48 0f 47 d0          	cmova  %rax,%rdx
14009489e:	48 85 d2             	test   %rdx,%rdx
1400948a1:	74 3f                	je     0x1400948e2
1400948a3:	48 83 fa 02          	cmp    $0x2,%rdx
1400948a7:	72 39                	jb     0x1400948e2
1400948a9:	49 8b 00             	mov    (%r8),%rax
1400948ac:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
1400948b0:	48 8d 0c d1          	lea    (%rcx,%rdx,8),%rcx
1400948b4:	4d 3b c8             	cmp    %r8,%r9
1400948b7:	77 05                	ja     0x1400948be
1400948b9:	49 3b c8             	cmp    %r8,%rcx
1400948bc:	73 24                	jae    0x1400948e2
1400948be:	48 89 3c 24          	mov    %rdi,(%rsp)
1400948c2:	48 83 e2 fe          	and    $0xfffffffffffffffe,%rdx
1400948c6:	49 8b f9             	mov    %r9,%rdi
1400948c9:	48 8d 14 d5 00 00 00 	lea    0x0(,%rdx,8),%rdx
1400948d0:	00
1400948d1:	48 8b ca             	mov    %rdx,%rcx
1400948d4:	48 c1 e9 03          	shr    $0x3,%rcx
1400948d8:	f3 48 ab             	rep stos %rax,%es:(%rdi)
1400948db:	4c 03 ca             	add    %rdx,%r9
1400948de:	48 8b 3c 24          	mov    (%rsp),%rdi
1400948e2:	4d 3b ca             	cmp    %r10,%r9
1400948e5:	74 18                	je     0x1400948ff
1400948e7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1400948ee:	00 00
1400948f0:	49 8b 00             	mov    (%r8),%rax
1400948f3:	49 89 01             	mov    %rax,(%r9)
1400948f6:	49 83 c1 08          	add    $0x8,%r9
1400948fa:	4d 3b ca             	cmp    %r10,%r9
1400948fd:	75 f1                	jne    0x1400948f0
1400948ff:	48 83 c4 08          	add    $0x8,%rsp
140094903:	c3                   	ret
140094904:	cc                   	int3
140094905:	cc                   	int3
140094906:	cc                   	int3
140094907:	cc                   	int3
140094908:	cc                   	int3
140094909:	cc                   	int3
14009490a:	cc                   	int3
14009490b:	cc                   	int3
14009490c:	cc                   	int3
14009490d:	cc                   	int3
14009490e:	cc                   	int3
14009490f:	cc                   	int3
140094910:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140094915:	55                   	push   %rbp
140094916:	56                   	push   %rsi
140094917:	57                   	push   %rdi
140094918:	48 83 ec 20          	sub    $0x20,%rsp
14009491c:	48 8b e9             	mov    %rcx,%rbp
14009491f:	33 d2                	xor    %edx,%edx
140094921:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140094926:	ff 15 44 51 29 00    	call   *0x295144(%rip)        # 0x140329a70
14009492c:	90                   	nop
14009492d:	48 8b 05 54 66 37 00 	mov    0x376654(%rip),%rax        # 0x14040af88
140094934:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140094939:	48 8b 0d 60 4f 29 00 	mov    0x294f60(%rip),%rcx        # 0x1403298a0
140094940:	ff 15 ca 4c 29 00    	call   *0x294cca(%rip)        # 0x140329610
140094946:	48 8b f0             	mov    %rax,%rsi
140094949:	48 8b 55 08          	mov    0x8(%rbp),%rdx
14009494d:	48 8d 3c c5 00 00 00 	lea    0x0(,%rax,8),%rdi
140094954:	00
140094955:	48 3b 42 18          	cmp    0x18(%rdx),%rax
140094959:	73 0f                	jae    0x14009496a
14009495b:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
14009495f:	48 8b 1c 0f          	mov    (%rdi,%rcx,1),%rbx
140094963:	48 85 db             	test   %rbx,%rbx
140094966:	75 67                	jne    0x1400949cf
140094968:	eb 02                	jmp    0x14009496c
14009496a:	33 db                	xor    %ebx,%ebx
14009496c:	80 7a 24 00          	cmpb   $0x0,0x24(%rdx)
140094970:	74 13                	je     0x140094985
140094972:	e8 91 7f 26 00       	call   0x1402fc908
140094977:	48 3b 70 18          	cmp    0x18(%rax),%rsi
14009497b:	73 0d                	jae    0x14009498a
14009497d:	48 8b 40 10          	mov    0x10(%rax),%rax
140094981:	48 8b 1c 07          	mov    (%rdi,%rax,1),%rbx
140094985:	48 85 db             	test   %rbx,%rbx
140094988:	75 45                	jne    0x1400949cf
14009498a:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14009498f:	48 85 db             	test   %rbx,%rbx
140094992:	75 3b                	jne    0x1400949cf
140094994:	48 8b d5             	mov    %rbp,%rdx
140094997:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14009499c:	ff 15 8e 4c 29 00    	call   *0x294c8e(%rip)        # 0x140329630
1400949a2:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
1400949a6:	74 42                	je     0x1400949ea
1400949a8:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1400949ad:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
1400949b2:	48 8b cb             	mov    %rbx,%rcx
1400949b5:	e8 16 7f 26 00       	call   0x1402fc8d0
1400949ba:	48 8b 03             	mov    (%rbx),%rax
1400949bd:	48 8b cb             	mov    %rbx,%rcx
1400949c0:	ff 50 08             	call   *0x8(%rax)
1400949c3:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1400949c8:	48 89 1d b9 65 37 00 	mov    %rbx,0x3765b9(%rip)        # 0x14040af88
1400949cf:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1400949d4:	ff 15 8e 50 29 00    	call   *0x29508e(%rip)        # 0x140329a68
1400949da:	48 8b c3             	mov    %rbx,%rax
1400949dd:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1400949e2:	48 83 c4 20          	add    $0x20,%rsp
1400949e6:	5f                   	pop    %rdi
1400949e7:	5e                   	pop    %rsi
1400949e8:	5d                   	pop    %rbp
1400949e9:	c3                   	ret
1400949ea:	e8 91 c3 02 00       	call   0x1400c0d80
1400949ef:	90                   	nop
1400949f0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400949f5:	55                   	push   %rbp
1400949f6:	56                   	push   %rsi
1400949f7:	57                   	push   %rdi
1400949f8:	48 83 ec 20          	sub    $0x20,%rsp
1400949fc:	48 8b e9             	mov    %rcx,%rbp
1400949ff:	33 d2                	xor    %edx,%edx
140094a01:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140094a06:	ff 15 64 50 29 00    	call   *0x295064(%rip)        # 0x140329a70
140094a0c:	90                   	nop
140094a0d:	48 8b 05 a4 65 37 00 	mov    0x3765a4(%rip),%rax        # 0x14040afb8
140094a14:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140094a19:	48 8b 0d 88 4e 29 00 	mov    0x294e88(%rip),%rcx        # 0x1403298a8
140094a20:	ff 15 ea 4b 29 00    	call   *0x294bea(%rip)        # 0x140329610
140094a26:	48 8b f0             	mov    %rax,%rsi
140094a29:	48 8b 55 08          	mov    0x8(%rbp),%rdx
140094a2d:	48 8d 3c c5 00 00 00 	lea    0x0(,%rax,8),%rdi