14069e2f7:	48 0b c8             	or     %rax,%rcx
14069e2fa:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
14069e2ff:	f3 0f 58 d2          	addss  %xmm2,%xmm2
14069e303:	0f 28 c8             	movaps %xmm0,%xmm1
14069e306:	f3 0f 5e ca          	divss  %xmm2,%xmm1
14069e30a:	0f 2f cb             	comiss %xmm3,%xmm1
14069e30d:	0f 86 06 01 00 00    	jbe    0x14069e419
14069e313:	f3 0f 5e c3          	divss  %xmm3,%xmm0
14069e317:	e8 04 2e 79 00       	call   0x140e31120
14069e31c:	33 c9                	xor    %ecx,%ecx
14069e31e:	f3 0f 10 0d 3e 03 91 	movss  0x91033e(%rip),%xmm1        # 0x140fae664
14069e325:	00
14069e326:	0f 2f c1             	comiss %xmm1,%xmm0
14069e329:	72 16                	jb     0x14069e341
14069e32b:	f3 0f 5c c1          	subss  %xmm1,%xmm0
14069e32f:	0f 2f c1             	comiss %xmm1,%xmm0
14069e332:	73 0d                	jae    0x14069e341
14069e334:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
14069e33b:	00 00 80
14069e33e:	48 8b c8             	mov    %rax,%rcx
14069e341:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
14069e346:	48 03 c1             	add    %rcx,%rax
14069e349:	b9 08 00 00 00       	mov    $0x8,%ecx
14069e34e:	48 3b c1             	cmp    %rcx,%rax
14069e351:	48 0f 47 c8          	cmova  %rax,%rcx
14069e355:	48 3b d9             	cmp    %rcx,%rbx
14069e358:	73 19                	jae    0x14069e373
14069e35a:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
14069e361:	73 0d                	jae    0x14069e370
14069e363:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
14069e36a:	00
14069e36b:	48 3b d9             	cmp    %rcx,%rbx
14069e36e:	73 03                	jae    0x14069e373
14069e370:	48 8b d9             	mov    %rcx,%rbx
14069e373:	48 8b d3             	mov    %rbx,%rdx
14069e376:	49 8b cd             	mov    %r13,%rcx
14069e379:	e8 f2 04 fd ff       	call   0x14066e870
14069e37e:	49 8b 45 30          	mov    0x30(%r13),%rax
14069e382:	48 23 c7             	and    %rdi,%rax
14069e385:	48 03 c0             	add    %rax,%rax
14069e388:	49 8b 55 18          	mov    0x18(%r13),%rdx
14069e38c:	48 8b 5c c2 08       	mov    0x8(%rdx,%rax,8),%rbx
14069e391:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
14069e395:	48 3b d9             	cmp    %rcx,%rbx
14069e398:	75 0c                	jne    0x14069e3a6
14069e39a:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14069e39f:	4c 89 64 24 28       	mov    %r12,0x28(%rsp)
14069e3a4:	eb 68                	jmp    0x14069e40e
14069e3a6:	4c 8b 24 c2          	mov    (%rdx,%rax,8),%r12
14069e3aa:	48 8b 6e 20          	mov    0x20(%rsi),%rbp
14069e3ae:	66 90                	xchg   %ax,%ax
14069e3b0:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14069e3b4:	48 8b 42 10          	mov    0x10(%rdx),%rax
14069e3b8:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14069e3bd:	76 03                	jbe    0x14069e3c2
14069e3bf:	48 8b 12             	mov    (%rdx),%rdx
14069e3c2:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
14069e3c6:	48 83 7e 28 0f       	cmpq   $0xf,0x28(%rsi)
14069e3cb:	76 04                	jbe    0x14069e3d1
14069e3cd:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
14069e3d1:	48 3b e8             	cmp    %rax,%rbp
14069e3d4:	75 0c                	jne    0x14069e3e2
14069e3d6:	4c 8b c5             	mov    %rbp,%r8
14069e3d9:	e8 72 16 84 00       	call   0x140edfa50
14069e3de:	85 c0                	test   %eax,%eax
14069e3e0:	74 0b                	je     0x14069e3ed
14069e3e2:	49 3b dc             	cmp    %r12,%rbx
14069e3e5:	74 15                	je     0x14069e3fc
14069e3e7:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14069e3eb:	eb c3                	jmp    0x14069e3b0
14069e3ed:	48 8b 03             	mov    (%rbx),%rax
14069e3f0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14069e3f5:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14069e3fa:	eb 0e                	jmp    0x14069e40a
14069e3fc:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14069e401:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14069e408:	00 00
14069e40a:	49 8d 6d 08          	lea    0x8(%r13),%rbp
14069e40e:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14069e413:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
14069e419:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
14069e41e:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14069e422:	49 ff 45 10          	incq   0x10(%r13)
14069e426:	48 89 16             	mov    %rdx,(%rsi)
14069e429:	4c 89 46 08          	mov    %r8,0x8(%rsi)
14069e42d:	49 89 30             	mov    %rsi,(%r8)
14069e430:	48 89 72 08          	mov    %rsi,0x8(%rdx)
14069e434:	49 8b 4d 18          	mov    0x18(%r13),%rcx
14069e438:	49 8b 45 30          	mov    0x30(%r13),%rax
14069e43c:	48 23 c7             	and    %rdi,%rax
14069e43f:	48 03 c0             	add    %rax,%rax
14069e442:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14069e446:	4c 3b 4d 00          	cmp    0x0(%rbp),%r9
14069e44a:	75 06                	jne    0x14069e452
14069e44c:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14069e450:	eb 12                	jmp    0x14069e464
14069e452:	4c 3b ca             	cmp    %rdx,%r9
14069e455:	75 06                	jne    0x14069e45d
14069e457:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
14069e45b:	eb 0c                	jmp    0x14069e469
14069e45d:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
14069e462:	75 05                	jne    0x14069e469
14069e464:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
14069e469:	49 89 37             	mov    %rsi,(%r15)
14069e46c:	41 c6 47 08 01       	movb   $0x1,0x8(%r15)
14069e471:	49 8b c7             	mov    %r15,%rax
14069e474:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
14069e479:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
14069e47e:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
14069e485:	00
14069e486:	48 83 c4 40          	add    $0x40,%rsp
14069e48a:	41 5f                	pop    %r15
14069e48c:	41 5e                	pop    %r14
14069e48e:	41 5d                	pop    %r13
14069e490:	41 5c                	pop    %r12
14069e492:	5f                   	pop    %rdi
14069e493:	c3                   	ret
14069e494:	48 8d 0d 05 00 91 00 	lea    0x910005(%rip),%rcx        # 0x140fae4a0
14069e49b:	e8 14 cf 75 00       	call   0x140dfb3b4
14069e4a0:	cc                   	int3
14069e4a1:	cc                   	int3
14069e4a2:	cc                   	int3
14069e4a3:	cc                   	int3
14069e4a4:	cc                   	int3
14069e4a5:	cc                   	int3
14069e4a6:	cc                   	int3
14069e4a7:	cc                   	int3
14069e4a8:	cc                   	int3
14069e4a9:	cc                   	int3
14069e4aa:	cc                   	int3
14069e4ab:	cc                   	int3
14069e4ac:	cc                   	int3
14069e4ad:	cc                   	int3
14069e4ae:	cc                   	int3
14069e4af:	cc                   	int3
14069e4b0:	40 53                	rex push %rbx
14069e4b2:	48 83 ec 30          	sub    $0x30,%rsp
14069e4b6:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14069e4bb:	4c 8b d2             	mov    %rdx,%r10
14069e4be:	4c 8b 5a 10          	mov    0x10(%rdx),%r11
14069e4c2:	76 03                	jbe    0x14069e4c7
14069e4c4:	4c 8b 12             	mov    (%rdx),%r10
14069e4c7:	33 db                	xor    %ebx,%ebx
14069e4c9:	49 b9 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%r9
14069e4d0:	9c f2 cb
14069e4d3:	44 8b c3             	mov    %ebx,%r8d
14069e4d6:	4d 85 db             	test   %r11,%r11
14069e4d9:	74 2e                	je     0x14069e509
14069e4db:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
14069e4e0:	48 bf b3 01 00 00 00 	movabs $0x100000001b3,%rdi
14069e4e7:	01 00 00
14069e4ea:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
14069e4f0:	43 0f b6 04 02       	movzbl (%r10,%r8,1),%eax
14069e4f5:	49 ff c0             	inc    %r8
14069e4f8:	4c 33 c8             	xor    %rax,%r9
14069e4fb:	4c 0f af cf          	imul   %rdi,%r9
14069e4ff:	4d 3b c3             	cmp    %r11,%r8
14069e502:	72 ec                	jb     0x14069e4f0
14069e504:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
14069e509:	4c 8b c2             	mov    %rdx,%r8
14069e50c:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14069e511:	e8 ea 5c b7 ff       	call   0x140214200
14069e516:	48 39 58 08          	cmp    %rbx,0x8(%rax)
14069e51a:	0f 95 c3             	setne  %bl
14069e51d:	48 8b c3             	mov    %rbx,%rax
14069e520:	48 83 c4 30          	add    $0x30,%rsp
14069e524:	5b                   	pop    %rbx
14069e525:	c3                   	ret
14069e526:	cc                   	int3
14069e527:	cc                   	int3
14069e528:	cc                   	int3
14069e529:	cc                   	int3
14069e52a:	cc                   	int3
14069e52b:	cc                   	int3
14069e52c:	cc                   	int3
14069e52d:	cc                   	int3
14069e52e:	cc                   	int3
14069e52f:	cc                   	int3
14069e530:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14069e535:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14069e53a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14069e53f:	57                   	push   %rdi
14069e540:	41 54                	push   %r12
14069e542:	41 55                	push   %r13
14069e544:	41 56                	push   %r14
14069e546:	41 57                	push   %r15
14069e548:	48 83 ec 30          	sub    $0x30,%rsp
14069e54c:	49 8b f0             	mov    %r8,%rsi
14069e54f:	4c 8b fa             	mov    %rdx,%r15
14069e552:	48 8b e9             	mov    %rcx,%rbp
14069e555:	41 0f b6 38          	movzbl (%r8),%edi
14069e559:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14069e560:	9c f2 cb
14069e563:	48 33 f8             	xor    %rax,%rdi
14069e566:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
14069e56d:	01 00 00
14069e570:	48 0f af f9          	imul   %rcx,%rdi
14069e574:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
14069e579:	48 33 f8             	xor    %rax,%rdi
14069e57c:	48 0f af f9          	imul   %rcx,%rdi
14069e580:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
14069e585:	48 33 f8             	xor    %rax,%rdi
14069e588:	48 0f af f9          	imul   %rcx,%rdi
14069e58c:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
14069e591:	48 33 f8             	xor    %rax,%rdi
14069e594:	48 0f af f9          	imul   %rcx,%rdi
14069e598:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
14069e59d:	48 33 f8             	xor    %rax,%rdi
14069e5a0:	48 0f af f9          	imul   %rcx,%rdi
14069e5a4:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
14069e5a9:	48 33 f8             	xor    %rax,%rdi
14069e5ac:	48 0f af f9          	imul   %rcx,%rdi
14069e5b0:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
14069e5b5:	48 33 f8             	xor    %rax,%rdi
14069e5b8:	48 0f af f9          	imul   %rcx,%rdi
14069e5bc:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
14069e5c1:	48 33 f8             	xor    %rax,%rdi
14069e5c4:	48 0f af f9          	imul   %rcx,%rdi
14069e5c8:	48 8b cf             	mov    %rdi,%rcx
14069e5cb:	48 23 4d 30          	and    0x30(%rbp),%rcx
14069e5cf:	48 03 c9             	add    %rcx,%rcx
14069e5d2:	48 8b 45 18          	mov    0x18(%rbp),%rax
14069e5d6:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
14069e5db:	48 8d 55 08          	lea    0x8(%rbp),%rdx
14069e5df:	4c 8b 2a             	mov    (%rdx),%r13
14069e5e2:	49 3b dd             	cmp    %r13,%rbx
14069e5e5:	75 08                	jne    0x14069e5ef
14069e5e7:	49 8b dd             	mov    %r13,%rbx
14069e5ea:	4d 8b e5             	mov    %r13,%r12
14069e5ed:	eb 4e                	jmp    0x14069e63d
14069e5ef:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
14069e5f3:	49 8b 00             	mov    (%r8),%rax
14069e5f6:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14069e5fa:	74 13                	je     0x14069e60f
14069e5fc:	0f 1f 40 00          	nopl   0x0(%rax)
14069e600:	48 3b d9             	cmp    %rcx,%rbx
14069e603:	74 32                	je     0x14069e637
14069e605:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14069e609:	48 3b 43 10          	cmp    0x10(%rbx),%rax
14069e60d:	75 f1                	jne    0x14069e600
14069e60f:	49 89 1f             	mov    %rbx,(%r15)
14069e612:	41 c6 47 08 00       	movb   $0x0,0x8(%r15)
14069e617:	49 8b c7             	mov    %r15,%rax
14069e61a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14069e61f:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
14069e624:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
14069e629:	48 83 c4 30          	add    $0x30,%rsp
14069e62d:	41 5f                	pop    %r15
14069e62f:	41 5e                	pop    %r14
14069e631:	41 5d                	pop    %r13
14069e633:	41 5c                	pop    %r12
14069e635:	5f                   	pop    %rdi
14069e636:	c3                   	ret
14069e637:	4c 8b eb             	mov    %rbx,%r13
14069e63a:	4c 8b e3             	mov    %rbx,%r12
14069e63d:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%rax
14069e644:	aa aa 0a
14069e647:	48 39 45 10          	cmp    %rax,0x10(%rbp)
14069e64b:	0f 84 b7 01 00 00    	je     0x14069e808
14069e651:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
14069e656:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14069e65d:	00 00
14069e65f:	b9 18 00 00 00       	mov    $0x18,%ecx
14069e664:	e8 9f ca 77 00       	call   0x140e1b108
14069e669:	4c 8b f0             	mov    %rax,%r14
14069e66c:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14069e671:	48 8b 0e             	mov    (%rsi),%rcx
14069e674:	48 89 48 10          	mov    %rcx,0x10(%rax)
14069e678:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14069e67c:	48 83 c1 01          	add    $0x1,%rcx
14069e680:	0f 57 c0             	xorps  %xmm0,%xmm0
14069e683:	78 07                	js     0x14069e68c
14069e685:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14069e68a:	eb 15                	jmp    0x14069e6a1
14069e68c:	48 8b c1             	mov    %rcx,%rax
14069e68f:	48 d1 e8             	shr    $1,%rax
14069e692:	83 e1 01             	and    $0x1,%ecx
14069e695:	48 0b c1             	or     %rcx,%rax
14069e698:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
14069e69d:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14069e6a1:	48 8b 75 38          	mov    0x38(%rbp),%rsi
14069e6a5:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
14069e6aa:	0f 57 d2             	xorps  %xmm2,%xmm2
14069e6ad:	48 85 f6             	test   %rsi,%rsi
14069e6b0:	78 07                	js     0x14069e6b9
14069e6b2:	f3 48 0f 2a d6       	cvtsi2ss %rsi,%xmm2
14069e6b7:	eb 18                	jmp    0x14069e6d1
14069e6b9:	48 8b ce             	mov    %rsi,%rcx
14069e6bc:	48 d1 e9             	shr    $1,%rcx
14069e6bf:	48 8b c6             	mov    %rsi,%rax
14069e6c2:	83 e0 01             	and    $0x1,%eax
14069e6c5:	48 0b c8             	or     %rax,%rcx
14069e6c8:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
14069e6cd:	f3 0f 58 d2          	addss  %xmm2,%xmm2
14069e6d1:	0f 28 c8             	movaps %xmm0,%xmm1
14069e6d4:	f3 0f 5e ca          	divss  %xmm2,%xmm1
14069e6d8:	0f 2f cb             	comiss %xmm3,%xmm1
14069e6db:	0f 86 c2 00 00 00    	jbe    0x14069e7a3
14069e6e1:	f3 0f 5e c3          	divss  %xmm3,%xmm0
14069e6e5:	e8 36 2a 79 00       	call   0x140e31120
14069e6ea:	33 c9                	xor    %ecx,%ecx
14069e6ec:	f3 0f 10 0d 70 ff 90 	movss  0x90ff70(%rip),%xmm1        # 0x140fae664
14069e6f3:	00
14069e6f4:	0f 2f c1             	comiss %xmm1,%xmm0
14069e6f7:	72 16                	jb     0x14069e70f
14069e6f9:	f3 0f 5c c1          	subss  %xmm1,%xmm0
14069e6fd:	0f 2f c1             	comiss %xmm1,%xmm0
14069e700:	73 0d                	jae    0x14069e70f
14069e702:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
14069e709:	00 00 80
14069e70c:	48 8b c8             	mov    %rax,%rcx
14069e70f:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
14069e714:	48 03 c1             	add    %rcx,%rax
14069e717:	b9 08 00 00 00       	mov    $0x8,%ecx
14069e71c:	48 3b c1             	cmp    %rcx,%rax
14069e71f:	48 0f 47 c8          	cmova  %rax,%rcx
14069e723:	48 3b f1             	cmp    %rcx,%rsi
14069e726:	73 19                	jae    0x14069e741
14069e728:	48 81 fe 00 02 00 00 	cmp    $0x200,%rsi
14069e72f:	73 0d                	jae    0x14069e73e
14069e731:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
14069e738:	00
14069e739:	48 3b f1             	cmp    %rcx,%rsi
14069e73c:	73 03                	jae    0x14069e741
14069e73e:	48 8b f1             	mov    %rcx,%rsi
14069e741:	48 8b d6             	mov    %rsi,%rdx
14069e744:	48 8b cd             	mov    %rbp,%rcx
14069e747:	e8 04 d6 fb ff       	call   0x14065bd50
14069e74c:	48 8b cf             	mov    %rdi,%rcx
14069e74f:	48 23 4d 30          	and    0x30(%rbp),%rcx
14069e753:	48 03 c9             	add    %rcx,%rcx
14069e756:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14069e75a:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
14069e75f:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
14069e763:	48 3b c3             	cmp    %rbx,%rax
14069e766:	75 0b                	jne    0x14069e773
14069e768:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14069e76f:	00 00
14069e771:	eb 23                	jmp    0x14069e796
14069e773:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
14069e777:	49 8b 4e 10          	mov    0x10(%r14),%rcx
14069e77b:	48 3b 48 10          	cmp    0x10(%rax),%rcx
14069e77f:	74 12                	je     0x14069e793
14069e781:	48 8b d8             	mov    %rax,%rbx
14069e784:	48 3b c2             	cmp    %rdx,%rax
14069e787:	74 4b                	je     0x14069e7d4
14069e789:	48 8b 40 08          	mov    0x8(%rax),%rax
14069e78d:	48 3b 48 10          	cmp    0x10(%rax),%rcx
14069e791:	75 ee                	jne    0x14069e781
14069e793:	48 8b 18             	mov    (%rax),%rbx