14024c5cd:	48 83 c4 38          	add    $0x38,%rsp
14024c5d1:	41 5e                	pop    %r14
14024c5d3:	41 5d                	pop    %r13
14024c5d5:	5f                   	pop    %rdi
14024c5d6:	5b                   	pop    %rbx
14024c5d7:	c3                   	ret
14024c5d8:	e8 c7 db bd 00       	call   0x140e2a1a4
14024c5dd:	cc                   	int3
14024c5de:	e8 ad 0b f5 ff       	call   0x14019d190
14024c5e3:	cc                   	int3
14024c5e4:	e8 87 0f f5 ff       	call   0x14019d570
14024c5e9:	cc                   	int3
14024c5ea:	cc                   	int3
14024c5eb:	cc                   	int3
14024c5ec:	cc                   	int3
14024c5ed:	cc                   	int3
14024c5ee:	cc                   	int3
14024c5ef:	cc                   	int3
14024c5f0:	40 57                	rex push %rdi
14024c5f2:	41 54                	push   %r12
14024c5f4:	41 56                	push   %r14
14024c5f6:	41 57                	push   %r15
14024c5f8:	48 83 ec 38          	sub    $0x38,%rsp
14024c5fc:	4c 8b 61 10          	mov    0x10(%rcx),%r12
14024c600:	48 bf fe ff ff ff ff 	movabs $0x7ffffffffffffffe,%rdi
14024c607:	ff ff 7f
14024c60a:	48 8b c7             	mov    %rdi,%rax
14024c60d:	4d 8b f9             	mov    %r9,%r15
14024c610:	49 2b c4             	sub    %r12,%rax
14024c613:	4c 8b f1             	mov    %rcx,%r14
14024c616:	48 3b c2             	cmp    %rdx,%rax
14024c619:	0f 82 41 01 00 00    	jb     0x14024c760
14024c61f:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14024c624:	4a 8d 1c 22          	lea    (%rdx,%r12,1),%rbx
14024c628:	48 8b d3             	mov    %rbx,%rdx
14024c62b:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
14024c630:	48 8b 69 18          	mov    0x18(%rcx),%rbp
14024c634:	48 83 ca 07          	or     $0x7,%rdx
14024c638:	48 3b d7             	cmp    %rdi,%rdx
14024c63b:	77 38                	ja     0x14024c675
14024c63d:	48 8b cd             	mov    %rbp,%rcx
14024c640:	48 8b c7             	mov    %rdi,%rax
14024c643:	48 d1 e9             	shr    $1,%rcx
14024c646:	48 2b c1             	sub    %rcx,%rax
14024c649:	48 3b e8             	cmp    %rax,%rbp
14024c64c:	77 27                	ja     0x14024c675
14024c64e:	48 8d 04 29          	lea    (%rcx,%rbp,1),%rax
14024c652:	48 8b fa             	mov    %rdx,%rdi
14024c655:	48 3b d0             	cmp    %rax,%rdx
14024c658:	48 0f 42 f8          	cmovb  %rax,%rdi
14024c65c:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14024c663:	ff ff 7f
14024c666:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
14024c66a:	48 3b c8             	cmp    %rax,%rcx
14024c66d:	0f 87 e7 00 00 00    	ja     0x14024c75a
14024c673:	eb 0a                	jmp    0x14024c67f
14024c675:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
14024c67c:	ff ff 7f
14024c67f:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14024c684:	0f ae e8             	lfence
14024c687:	48 03 c9             	add    %rcx,%rcx
14024c68a:	e8 a1 a6 f4 ff       	call   0x140196d30
14024c68f:	49 89 7e 18          	mov    %rdi,0x18(%r14)
14024c693:	4b 8d 3c 24          	lea    (%r12,%r12,1),%rdi
14024c697:	49 89 5e 10          	mov    %rbx,0x10(%r14)
14024c69b:	4c 8b c7             	mov    %rdi,%r8
14024c69e:	48 8b f0             	mov    %rax,%rsi
14024c6a1:	48 8b c8             	mov    %rax,%rcx
14024c6a4:	48 83 fd 07          	cmp    $0x7,%rbp
14024c6a8:	76 61                	jbe    0x14024c70b
14024c6aa:	49 8b 1e             	mov    (%r14),%rbx
14024c6ad:	48 8b d3             	mov    %rbx,%rdx
14024c6b0:	e8 5b 29 c9 00       	call   0x140edf010
14024c6b5:	48 03 fe             	add    %rsi,%rdi
14024c6b8:	4d 85 ff             	test   %r15,%r15
14024c6bb:	74 0e                	je     0x14024c6cb
14024c6bd:	0f b7 84 24 80 00 00 	movzwl 0x80(%rsp),%eax
14024c6c4:	00
14024c6c5:	49 8b cf             	mov    %r15,%rcx
14024c6c8:	66 f3 ab             	rep stos %ax,%es:(%rdi)
14024c6cb:	33 d2                	xor    %edx,%edx
14024c6cd:	4b 8d 04 27          	lea    (%r15,%r12,1),%rax
14024c6d1:	66 89 14 46          	mov    %dx,(%rsi,%rax,2)
14024c6d5:	48 8d 14 6d 02 00 00 	lea    0x2(,%rbp,2),%rdx
14024c6dc:	00
14024c6dd:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14024c6e4:	72 18                	jb     0x14024c6fe
14024c6e6:	48 8b 4b f8          	mov    -0x8(%rbx),%rcx
14024c6ea:	48 83 c2 27          	add    $0x27,%rdx
14024c6ee:	48 2b d9             	sub    %rcx,%rbx
14024c6f1:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
14024c6f5:	48 83 f8 1f          	cmp    $0x1f,%rax
14024c6f9:	77 59                	ja     0x14024c754
14024c6fb:	48 8b d9             	mov    %rcx,%rbx
14024c6fe:	0f ae e8             	lfence
14024c701:	48 8b cb             	mov    %rbx,%rcx
14024c704:	e8 3b ea bc 00       	call   0x140e1b144
14024c709:	eb 28                	jmp    0x14024c733
14024c70b:	49 8b d6             	mov    %r14,%rdx
14024c70e:	e8 fd 28 c9 00       	call   0x140edf010
14024c713:	48 03 fe             	add    %rsi,%rdi
14024c716:	4d 85 ff             	test   %r15,%r15
14024c719:	74 0e                	je     0x14024c729
14024c71b:	0f b7 84 24 80 00 00 	movzwl 0x80(%rsp),%eax
14024c722:	00
14024c723:	49 8b cf             	mov    %r15,%rcx
14024c726:	66 f3 ab             	rep stos %ax,%es:(%rdi)
14024c729:	4b 8d 0c 27          	lea    (%r15,%r12,1),%rcx
14024c72d:	33 d2                	xor    %edx,%edx
14024c72f:	66 89 14 4e          	mov    %dx,(%rsi,%rcx,2)
14024c733:	49 89 36             	mov    %rsi,(%r14)
14024c736:	49 8b c6             	mov    %r14,%rax
14024c739:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
14024c73e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14024c743:	48 8b 6c 24 28       	mov    0x28(%rsp),%rbp
14024c748:	48 83 c4 38          	add    $0x38,%rsp
14024c74c:	41 5f                	pop    %r15
14024c74e:	41 5e                	pop    %r14
14024c750:	41 5c                	pop    %r12
14024c752:	5f                   	pop    %rdi
14024c753:	c3                   	ret
14024c754:	e8 4b da bd 00       	call   0x140e2a1a4
14024c759:	cc                   	int3
14024c75a:	e8 31 0a f5 ff       	call   0x14019d190
14024c75f:	cc                   	int3
14024c760:	e8 0b 0e f5 ff       	call   0x14019d570
14024c765:	cc                   	int3
14024c766:	cc                   	int3
14024c767:	cc                   	int3
14024c768:	cc                   	int3
14024c769:	cc                   	int3
14024c76a:	cc                   	int3
14024c76b:	cc                   	int3
14024c76c:	cc                   	int3
14024c76d:	cc                   	int3
14024c76e:	cc                   	int3
14024c76f:	cc                   	int3
14024c770:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14024c775:	55                   	push   %rbp
14024c776:	56                   	push   %rsi
14024c777:	57                   	push   %rdi
14024c778:	41 54                	push   %r12
14024c77a:	41 55                	push   %r13
14024c77c:	41 56                	push   %r14
14024c77e:	41 57                	push   %r15
14024c780:	48 83 ec 30          	sub    $0x30,%rsp
14024c784:	49 8b f0             	mov    %r8,%rsi
14024c787:	4c 8b f2             	mov    %rdx,%r14
14024c78a:	48 8b e9             	mov    %rcx,%rbp
14024c78d:	0f ae e8             	lfence
14024c790:	45 0f b6 28          	movzbl (%r8),%r13d
14024c794:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14024c79b:	9c f2 cb
14024c79e:	4c 33 e8             	xor    %rax,%r13
14024c7a1:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
14024c7a8:	01 00 00
14024c7ab:	4c 0f af e9          	imul   %rcx,%r13
14024c7af:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
14024c7b4:	4c 33 e8             	xor    %rax,%r13
14024c7b7:	4c 0f af e9          	imul   %rcx,%r13
14024c7bb:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
14024c7c0:	4c 33 e8             	xor    %rax,%r13
14024c7c3:	4c 0f af e9          	imul   %rcx,%r13
14024c7c7:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
14024c7cc:	4c 33 e8             	xor    %rax,%r13
14024c7cf:	4c 0f af e9          	imul   %rcx,%r13
14024c7d3:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
14024c7d8:	4c 33 e8             	xor    %rax,%r13
14024c7db:	4c 0f af e9          	imul   %rcx,%r13
14024c7df:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
14024c7e4:	4c 33 e8             	xor    %rax,%r13
14024c7e7:	4c 0f af e9          	imul   %rcx,%r13
14024c7eb:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
14024c7f0:	4c 33 e8             	xor    %rax,%r13
14024c7f3:	4c 0f af e9          	imul   %rcx,%r13
14024c7f7:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
14024c7fc:	4c 33 e8             	xor    %rax,%r13
14024c7ff:	4c 0f af e9          	imul   %rcx,%r13
14024c803:	49 8b cd             	mov    %r13,%rcx
14024c806:	48 23 4d 30          	and    0x30(%rbp),%rcx
14024c80a:	48 03 c9             	add    %rcx,%rcx
14024c80d:	48 8b 45 18          	mov    0x18(%rbp),%rax
14024c811:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
14024c816:	48 8d 55 08          	lea    0x8(%rbp),%rdx
14024c81a:	4c 8b 22             	mov    (%rdx),%r12
14024c81d:	49 3b dc             	cmp    %r12,%rbx
14024c820:	75 08                	jne    0x14024c82a
14024c822:	49 8b dc             	mov    %r12,%rbx
14024c825:	4d 8b fc             	mov    %r12,%r15
14024c828:	eb 45                	jmp    0x14024c86f
14024c82a:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
14024c82e:	49 8b 00             	mov    (%r8),%rax
14024c831:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14024c835:	74 0f                	je     0x14024c846
14024c837:	48 3b d9             	cmp    %rcx,%rbx
14024c83a:	74 2d                	je     0x14024c869
14024c83c:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14024c840:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14024c844:	75 f1                	jne    0x14024c837
14024c846:	49 89 1e             	mov    %rbx,(%r14)
14024c849:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
14024c84e:	49 8b c6             	mov    %r14,%rax
14024c851:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
14024c858:	00
14024c859:	48 83 c4 30          	add    $0x30,%rsp
14024c85d:	41 5f                	pop    %r15
14024c85f:	41 5e                	pop    %r14
14024c861:	41 5d                	pop    %r13
14024c863:	41 5c                	pop    %r12
14024c865:	5f                   	pop    %rdi
14024c866:	5e                   	pop    %rsi
14024c867:	5d                   	pop    %rbp
14024c868:	c3                   	ret
14024c869:	4c 8b e3             	mov    %rbx,%r12
14024c86c:	4c 8b fb             	mov    %rbx,%r15
14024c86f:	48 b8 92 24 49 92 24 	movabs $0x492492492492492,%rax
14024c876:	49 92 04
14024c879:	48 39 45 10          	cmp    %rax,0x10(%rbp)
14024c87d:	0f 84 d8 01 00 00    	je     0x14024ca5b
14024c883:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
14024c888:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14024c88f:	00 00
14024c891:	0f ae e8             	lfence
14024c894:	b9 38 00 00 00       	mov    $0x38,%ecx
14024c899:	e8 6a e8 bc 00       	call   0x140e1b108
14024c89e:	48 8b f8             	mov    %rax,%rdi
14024c8a1:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14024c8a6:	48 8b 06             	mov    (%rsi),%rax
14024c8a9:	48 89 47 10          	mov    %rax,0x10(%rdi)
14024c8ad:	0f 57 c0             	xorps  %xmm0,%xmm0
14024c8b0:	0f 11 47 18          	movups %xmm0,0x18(%rdi)
14024c8b4:	48 c7 47 28 00 00 00 	movq   $0x0,0x28(%rdi)
14024c8bb:	00
14024c8bc:	48 c7 47 30 0f 00 00 	movq   $0xf,0x30(%rdi)
14024c8c3:	00
14024c8c4:	c6 47 18 00          	movb   $0x0,0x18(%rdi)
14024c8c8:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14024c8cc:	48 83 c1 01          	add    $0x1,%rcx
14024c8d0:	0f 57 c0             	xorps  %xmm0,%xmm0
14024c8d3:	78 07                	js     0x14024c8dc
14024c8d5:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14024c8da:	eb 15                	jmp    0x14024c8f1
14024c8dc:	48 8b c1             	mov    %rcx,%rax
14024c8df:	48 d1 e8             	shr    $1,%rax
14024c8e2:	83 e1 01             	and    $0x1,%ecx
14024c8e5:	48 0b c1             	or     %rcx,%rax
14024c8e8:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
14024c8ed:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14024c8f1:	48 8b 75 38          	mov    0x38(%rbp),%rsi
14024c8f5:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
14024c8fa:	0f 57 d2             	xorps  %xmm2,%xmm2
14024c8fd:	48 85 f6             	test   %rsi,%rsi
14024c900:	78 07                	js     0x14024c909
14024c902:	f3 48 0f 2a d6       	cvtsi2ss %rsi,%xmm2
14024c907:	eb 18                	jmp    0x14024c921
14024c909:	48 8b ce             	mov    %rsi,%rcx
14024c90c:	48 d1 e9             	shr    $1,%rcx
14024c90f:	48 8b c6             	mov    %rsi,%rax
14024c912:	83 e0 01             	and    $0x1,%eax
14024c915:	48 0b c8             	or     %rax,%rcx
14024c918:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
14024c91d:	f3 0f 58 d2          	addss  %xmm2,%xmm2
14024c921:	0f 28 c8             	movaps %xmm0,%xmm1
14024c924:	f3 0f 5e ca          	divss  %xmm2,%xmm1
14024c928:	0f 2f cb             	comiss %xmm3,%xmm1
14024c92b:	0f 86 c2 00 00 00    	jbe    0x14024c9f3
14024c931:	f3 0f 5e c3          	divss  %xmm3,%xmm0
14024c935:	e8 e6 47 be 00       	call   0x140e31120
14024c93a:	33 c9                	xor    %ecx,%ecx
14024c93c:	f3 0f 10 0d 20 1d d6 	movss  0xd61d20(%rip),%xmm1        # 0x140fae664
14024c943:	00
14024c944:	0f 2f c1             	comiss %xmm1,%xmm0
14024c947:	72 16                	jb     0x14024c95f
14024c949:	f3 0f 5c c1          	subss  %xmm1,%xmm0
14024c94d:	0f 2f c1             	comiss %xmm1,%xmm0
14024c950:	73 0d                	jae    0x14024c95f
14024c952:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
14024c959:	00 00 80
14024c95c:	48 8b c8             	mov    %rax,%rcx
14024c95f:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
14024c964:	48 03 c1             	add    %rcx,%rax
14024c967:	b9 08 00 00 00       	mov    $0x8,%ecx
14024c96c:	48 3b c1             	cmp    %rcx,%rax
14024c96f:	48 0f 47 c8          	cmova  %rax,%rcx
14024c973:	48 3b f1             	cmp    %rcx,%rsi
14024c976:	73 19                	jae    0x14024c991
14024c978:	48 81 fe 00 02 00 00 	cmp    $0x200,%rsi
14024c97f:	73 0d                	jae    0x14024c98e
14024c981:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
14024c988:	00
14024c989:	48 3b f1             	cmp    %rcx,%rsi
14024c98c:	73 03                	jae    0x14024c991
14024c98e:	48 8b f1             	mov    %rcx,%rsi
14024c991:	48 8b d6             	mov    %rsi,%rdx
14024c994:	48 8b cd             	mov    %rbp,%rcx
14024c997:	e8 a4 0b 00 00       	call   0x14024d540
14024c99c:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
14024c9a0:	49 23 cd             	and    %r13,%rcx
14024c9a3:	48 03 c9             	add    %rcx,%rcx
14024c9a6:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14024c9aa:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
14024c9af:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
14024c9b3:	48 3b c3             	cmp    %rbx,%rax
14024c9b6:	75 0b                	jne    0x14024c9c3
14024c9b8:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14024c9bf:	00 00
14024c9c1:	eb 23                	jmp    0x14024c9e6
14024c9c3:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
14024c9c7:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
14024c9cb:	48 3b 48 10          	cmp    0x10(%rax),%rcx
14024c9cf:	74 12                	je     0x14024c9e3
14024c9d1:	48 8b d8             	mov    %rax,%rbx
14024c9d4:	48 3b c2             	cmp    %rdx,%rax
14024c9d7:	74 4e                	je     0x14024ca27
14024c9d9:	48 8b 40 08          	mov    0x8(%rax),%rax
14024c9dd:	48 3b 48 10          	cmp    0x10(%rax),%rcx
14024c9e1:	75 ee                	jne    0x14024c9d1
14024c9e3:	48 8b 18             	mov    (%rax),%rbx
14024c9e6:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14024c9eb:	4c 8b fb             	mov    %rbx,%r15
14024c9ee:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
14024c9f3:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14024c9f7:	48 ff 45 10          	incq   0x10(%rbp)
14024c9fb:	4c 89 27             	mov    %r12,(%rdi)
14024c9fe:	48 89 57 08          	mov    %rdx,0x8(%rdi)
14024ca02:	48 89 3a             	mov    %rdi,(%rdx)
14024ca05:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
14024ca09:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14024ca0d:	48 8b 45 30          	mov    0x30(%rbp),%rax
14024ca11:	49 23 c5             	and    %r13,%rax
14024ca14:	48 03 c0             	add    %rax,%rax
14024ca17:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
14024ca1b:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
14024ca1f:	75 16                	jne    0x14024ca37
14024ca21:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
14024ca25:	eb 22                	jmp    0x14024ca49
14024ca27:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14024ca2c:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14024ca33:	00 00
14024ca35:	eb b4                	jmp    0x14024c9eb
14024ca37:	4d 3b c7             	cmp    %r15,%r8
14024ca3a:	75 06                	jne    0x14024ca42
14024ca3c:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
14024ca40:	eb 0c                	jmp    0x14024ca4e
14024ca42:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
14024ca47:	75 05                	jne    0x14024ca4e
14024ca49:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
14024ca4e:	49 89 3e             	mov    %rdi,(%r14)
14024ca51:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
14024ca56:	e9 f3 fd ff ff       	jmp    0x14024c84e