140a503dc:	48 8d 55 97          	lea    -0x69(%rbp),%rdx
140a503e0:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
140a503e4:	e8 f7 2d 00 00       	call   0x140a531e0
140a503e9:	90                   	nop
140a503ea:	80 7d 97 00          	cmpb   $0x0,-0x69(%rbp)
140a503ee:	74 7f                	je     0x140a5046f
140a503f0:	48 8d 4f 08          	lea    0x8(%rdi),%rcx
140a503f4:	48 8d 55 9f          	lea    -0x61(%rbp),%rdx
140a503f8:	e8 43 1d fa ff       	call   0x1409f2140
140a503fd:	0f b6 45 97          	movzbl -0x69(%rbp),%eax
140a50401:	88 07                	mov    %al,(%rdi)
140a50403:	84 c0                	test   %al,%al
140a50405:	74 20                	je     0x140a50427
140a50407:	4c 8b 45 9f          	mov    -0x61(%rbp),%r8
140a5040b:	4d 8b 40 08          	mov    0x8(%r8),%r8
140a5040f:	48 8d 55 9f          	lea    -0x61(%rbp),%rdx
140a50413:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
140a50417:	e8 a4 df f7 ff       	call   0x1409ce3c0
140a5041c:	ba 68 00 00 00       	mov    $0x68,%edx
140a50421:	48 8b 4d 9f          	mov    -0x61(%rbp),%rcx
140a50425:	eb 1a                	jmp    0x140a50441
140a50427:	48 8b 5d 9f          	mov    -0x61(%rbp),%rbx
140a5042b:	48 85 db             	test   %rbx,%rbx
140a5042e:	74 17                	je     0x140a50447
140a50430:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a50434:	e8 17 ed f6 ff       	call   0x1409bf150
140a50439:	ba 18 00 00 00       	mov    $0x18,%edx
140a5043e:	48 8b cb             	mov    %rbx,%rcx
140a50441:	e8 fe ac 3c 00       	call   0x140e1b144
140a50446:	90                   	nop
140a50447:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
140a5044b:	e8 70 61 fa ff       	call   0x1409f65c0
140a50450:	90                   	nop
140a50451:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
140a50455:	80 7d b7 00          	cmpb   $0x0,-0x49(%rbp)
140a50459:	74 0a                	je     0x140a50465
140a5045b:	e8 30 5f fa ff       	call   0x1409f6390
140a50460:	e9 8c fe ff ff       	jmp    0x140a502f1
140a50465:	e8 86 ed f6 ff       	call   0x1409bf1f0
140a5046a:	e9 82 fe ff ff       	jmp    0x140a502f1
140a5046f:	48 8b 5d 9f          	mov    -0x61(%rbp),%rbx
140a50473:	48 85 db             	test   %rbx,%rbx
140a50476:	74 17                	je     0x140a5048f
140a50478:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140a5047c:	e8 cf ec f6 ff       	call   0x1409bf150
140a50481:	ba 18 00 00 00       	mov    $0x18,%edx
140a50486:	48 8b cb             	mov    %rbx,%rcx
140a50489:	e8 b6 ac 3c 00       	call   0x140e1b144
140a5048e:	90                   	nop
140a5048f:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
140a50493:	e8 28 61 fa ff       	call   0x1409f65c0
140a50498:	90                   	nop
140a50499:	0f b6 45 b7          	movzbl -0x49(%rbp),%eax
140a5049d:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
140a504a1:	84 c0                	test   %al,%al
140a504a3:	74 07                	je     0x140a504ac
140a504a5:	e8 e6 5e fa ff       	call   0x1409f6390
140a504aa:	eb 05                	jmp    0x140a504b1
140a504ac:	e8 3f ed f6 ff       	call   0x1409bf1f0
140a504b1:	0f 57 c0             	xorps  %xmm0,%xmm0
140a504b4:	0f 11 45 07          	movups %xmm0,0x7(%rbp)
140a504b8:	48 c7 45 17 0f 00 00 	movq   $0xf,0x17(%rbp)
140a504bf:	00
140a504c0:	48 c7 45 1f 0f 00 00 	movq   $0xf,0x1f(%rbp)
140a504c7:	00
140a504c8:	f2 0f 10 05 d8 e9 62 	movsd  0x62e9d8(%rip),%xmm0        # 0x14107eea8
140a504cf:	00
140a504d0:	f2 0f 11 45 07       	movsd  %xmm0,0x7(%rbp)
140a504d5:	8b 05 d5 e9 62 00    	mov    0x62e9d5(%rip),%eax        # 0x14107eeb0
140a504db:	89 45 0f             	mov    %eax,0xf(%rbp)
140a504de:	0f b7 05 cf e9 62 00 	movzwl 0x62e9cf(%rip),%eax        # 0x14107eeb4
140a504e5:	66 89 45 13          	mov    %ax,0x13(%rbp)
140a504e9:	0f b6 05 c6 e9 62 00 	movzbl 0x62e9c6(%rip),%eax        # 0x14107eeb6
140a504f0:	88 45 15             	mov    %al,0x15(%rbp)
140a504f3:	c6 45 16 00          	movb   $0x0,0x16(%rbp)
140a504f7:	48 8b c6             	mov    %rsi,%rax
140a504fa:	48 83 7e 18 0f       	cmpq   $0xf,0x18(%rsi)
140a504ff:	76 03                	jbe    0x140a50504
140a50501:	48 8b 06             	mov    (%rsi),%rax
140a50504:	48 89 45 97          	mov    %rax,-0x69(%rbp)
140a50508:	48 8b 46 10          	mov    0x10(%rsi),%rax
140a5050c:	48 89 45 9f          	mov    %rax,-0x61(%rbp)
140a50510:	0f 28 45 97          	movaps -0x69(%rbp),%xmm0
140a50514:	66 0f 7f 45 97       	movdqa %xmm0,-0x69(%rbp)
140a50519:	48 8d 55 97          	lea    -0x69(%rbp),%rdx
140a5051d:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
140a50521:	e8 da 9e fb ff       	call   0x140a0a400
140a50526:	48 8b 4d 17          	mov    0x17(%rbp),%rcx
140a5052a:	48 8b 55 1f          	mov    0x1f(%rbp),%rdx
140a5052e:	48 8b c2             	mov    %rdx,%rax
140a50531:	48 2b c1             	sub    %rcx,%rax
140a50534:	48 83 f8 10          	cmp    $0x10,%rax
140a50538:	72 33                	jb     0x140a5056d
140a5053a:	48 8d 41 10          	lea    0x10(%rcx),%rax
140a5053e:	48 89 45 17          	mov    %rax,0x17(%rbp)
140a50542:	48 8d 5d 07          	lea    0x7(%rbp),%rbx
140a50546:	48 83 fa 0f          	cmp    $0xf,%rdx
140a5054a:	48 0f 47 5d 07       	cmova  0x7(%rbp),%rbx
140a5054f:	48 03 d9             	add    %rcx,%rbx
140a50552:	41 b8 10 00 00 00    	mov    $0x10,%r8d
140a50558:	48 8d 15 19 eb 62 00 	lea    0x62eb19(%rip),%rdx        # 0x14107f078
140a5055f:	48 8b cb             	mov    %rbx,%rcx
140a50562:	e8 a9 ea 48 00       	call   0x140edf010
140a50567:	c6 43 10 00          	movb   $0x0,0x10(%rbx)
140a5056b:	eb 24                	jmp    0x140a50591
140a5056d:	48 c7 44 24 20 10 00 	movq   $0x10,0x20(%rsp)
140a50574:	00 00
140a50576:	4c 8d 0d fb ea 62 00 	lea    0x62eafb(%rip),%r9        # 0x14107f078
140a5057d:	44 0f b6 44 24 30    	movzbl 0x30(%rsp),%r8d
140a50583:	ba 10 00 00 00       	mov    $0x10,%edx
140a50588:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
140a5058c:	e8 ef 80 75 ff       	call   0x1401a8680
140a50591:	4c 8d 45 07          	lea    0x7(%rbp),%r8
140a50595:	b2 3d                	mov    $0x3d,%dl
140a50597:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140a5059c:	e8 af 64 f9 ff       	call   0x1409e6a50
140a505a1:	48 8b d0             	mov    %rax,%rdx
140a505a4:	48 8b cf             	mov    %rdi,%rcx
140a505a7:	e8 f4 1b fa ff       	call   0x1409f21a0
140a505ac:	90                   	nop
140a505ad:	48 8b 55 1f          	mov    0x1f(%rbp),%rdx
140a505b1:	48 83 fa 0f          	cmp    $0xf,%rdx
140a505b5:	0f 86 36 fd ff ff    	jbe    0x140a502f1
140a505bb:	48 ff c2             	inc    %rdx
140a505be:	48 8b 4d 07          	mov    0x7(%rbp),%rcx
140a505c2:	48 8b c1             	mov    %rcx,%rax
140a505c5:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140a505cc:	0f 82 1a fd ff ff    	jb     0x140a502ec
140a505d2:	48 83 c2 27          	add    $0x27,%rdx
140a505d6:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140a505da:	48 2b c1             	sub    %rcx,%rax
140a505dd:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140a505e1:	48 83 f8 1f          	cmp    $0x1f,%rax
140a505e5:	0f 86 01 fd ff ff    	jbe    0x140a502ec
140a505eb:	e8 b4 9b 3d 00       	call   0x140e2a1a4
140a505f0:	cc                   	int3
140a505f1:	cc                   	int3
140a505f2:	cc                   	int3
140a505f3:	cc                   	int3
140a505f4:	cc                   	int3
140a505f5:	cc                   	int3
140a505f6:	cc                   	int3
140a505f7:	cc                   	int3
140a505f8:	cc                   	int3
140a505f9:	cc                   	int3
140a505fa:	cc                   	int3
140a505fb:	cc                   	int3
140a505fc:	cc                   	int3
140a505fd:	cc                   	int3
140a505fe:	cc                   	int3
140a505ff:	cc                   	int3
140a50600:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a50605:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140a5060a:	56                   	push   %rsi
140a5060b:	57                   	push   %rdi
140a5060c:	41 56                	push   %r14
140a5060e:	48 83 ec 60          	sub    $0x60,%rsp
140a50612:	0f 29 74 24 50       	movaps %xmm6,0x50(%rsp)
140a50617:	0f 28 f2             	movaps %xmm2,%xmm6
140a5061a:	48 8b fa             	mov    %rdx,%rdi
140a5061d:	45 33 f6             	xor    %r14d,%r14d
140a50620:	66 48 0f 7e d0       	movq   %xmm2,%rax
140a50625:	48 c1 e8 34          	shr    $0x34,%rax
140a50629:	25 ff 07 00 00       	and    $0x7ff,%eax
140a5062e:	3d ff 07 00 00       	cmp    $0x7ff,%eax
140a50633:	0f 95 c0             	setne  %al
140a50636:	3c 01                	cmp    $0x1,%al
140a50638:	75 44                	jne    0x140a5067e
140a5063a:	f2 0f 10 0d 0e 19 56 	movsd  0x56190e(%rip),%xmm1        # 0x140fb1f50
140a50641:	00
140a50642:	0f 28 c2             	movaps %xmm2,%xmm0
140a50645:	e8 b6 71 3f 00       	call   0x140e47800
140a5064a:	0f 57 c9             	xorps  %xmm1,%xmm1
140a5064d:	66 0f 2e c1          	ucomisd %xmm1,%xmm0
140a50651:	7a 2b                	jp     0x140a5067e
140a50653:	75 29                	jne    0x140a5067e
140a50655:	f2 0f 10 05 fb e1 55 	movsd  0x55e1fb(%rip),%xmm0        # 0x140fae858
140a5065c:	00
140a5065d:	66 0f 2f c6          	comisd %xmm6,%xmm0
140a50661:	72 1b                	jb     0x140a5067e
140a50663:	66 0f 2f 35 fd 80 5c 	comisd 0x5c80fd(%rip),%xmm6        # 0x141018768
140a5066a:	00
140a5066b:	72 11                	jb     0x140a5067e
140a5066d:	c6 07 01             	movb   $0x1,(%rdi)
140a50670:	f2 48 0f 2c c6       	cvttsd2si %xmm6,%rax
140a50675:	48 89 47 08          	mov    %rax,0x8(%rdi)
140a50679:	e9 8d 01 00 00       	jmp    0x140a5080b
140a5067e:	b9 38 00 00 00       	mov    $0x38,%ecx
140a50683:	e8 a4 20 3e 00       	call   0x140e3272c
140a50688:	48 85 c0             	test   %rax,%rax
140a5068b:	0f 84 97 01 00 00    	je     0x140a50828
140a50691:	48 8d 15 cc 23 96 00 	lea    0x9623cc(%rip),%rdx        # 0x1413b2a64
140a50698:	48 8b c8             	mov    %rax,%rcx
140a5069b:	e8 20 67 fb ff       	call   0x140a06dc0
140a506a0:	48 8b d8             	mov    %rax,%rbx
140a506a3:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140a506a8:	0f 57 c0             	xorps  %xmm0,%xmm0
140a506ab:	0f 11 40 18          	movups %xmm0,0x18(%rax)
140a506af:	4c 89 70 28          	mov    %r14,0x28(%rax)
140a506b3:	4c 89 70 30          	mov    %r14,0x30(%rax)
140a506b7:	b9 50 00 00 00       	mov    $0x50,%ecx
140a506bc:	e8 47 aa 3c 00       	call   0x140e1b108
140a506c1:	48 8b c8             	mov    %rax,%rcx
140a506c4:	48 89 43 18          	mov    %rax,0x18(%rbx)
140a506c8:	48 c7 43 28 41 00 00 	movq   $0x41,0x28(%rbx)
140a506cf:	00
140a506d0:	48 c7 43 30 4f 00 00 	movq   $0x4f,0x30(%rbx)
140a506d7:	00
140a506d8:	0f 28 05 41 e8 62 00 	movaps 0x62e841(%rip),%xmm0        # 0x14107ef20
140a506df:	0f 11 00             	movups %xmm0,(%rax)
140a506e2:	0f 28 0d 47 e8 62 00 	movaps 0x62e847(%rip),%xmm1        # 0x14107ef30
140a506e9:	0f 11 48 10          	movups %xmm1,0x10(%rax)
140a506ed:	0f 28 05 4c e8 62 00 	movaps 0x62e84c(%rip),%xmm0        # 0x14107ef40
140a506f4:	0f 11 40 20          	movups %xmm0,0x20(%rax)
140a506f8:	0f 28 0d 51 e8 62 00 	movaps 0x62e851(%rip),%xmm1        # 0x14107ef50
140a506ff:	0f 11 48 30          	movups %xmm1,0x30(%rax)
140a50703:	0f b6 05 56 e8 62 00 	movzbl 0x62e856(%rip),%eax        # 0x14107ef60
140a5070a:	88 41 40             	mov    %al,0x40(%rcx)
140a5070d:	c6 41 41 00          	movb   $0x0,0x41(%rcx)
140a50711:	48 ff 43 10          	incq   0x10(%rbx)
140a50715:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140a5071a:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140a5071f:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140a50724:	e8 b7 e9 f6 ff       	call   0x1409bf0e0
140a50729:	90                   	nop
140a5072a:	48 c7 c6 ff ff ff ff 	mov    $0xffffffffffffffff,%rsi
140a50731:	48 8d 44 24 40       	lea    0x40(%rsp),%rax
140a50736:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140a5073b:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140a50740:	48 85 c0             	test   %rax,%rax
140a50743:	74 05                	je     0x140a5074a
140a50745:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
140a5074a:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140a5074f:	41 b8 2c 00 00 00    	mov    $0x2c,%r8d
140a50755:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
140a5075a:	b2 3d                	mov    $0x3d,%dl
140a5075c:	48 8d 8c 24 98 00 00 	lea    0x98(%rsp),%rcx
140a50763:	00
140a50764:	e8 37 69 fb ff       	call   0x140a070a0
140a50769:	90                   	nop
140a5076a:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140a5076f:	48 85 db             	test   %rbx,%rbx
140a50772:	74 2d                	je     0x140a507a1
140a50774:	48 8b 03             	mov    (%rbx),%rax
140a50777:	90                   	nop
140a50778:	48 83 f8 01          	cmp    $0x1,%rax
140a5077c:	74 13                	je     0x140a50791
140a5077e:	48 8b d6             	mov    %rsi,%rdx
140a50781:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140a50786:	f0 48 0f c1 10       	lock xadd %rdx,(%rax)
140a5078b:	48 83 fa 01          	cmp    $0x1,%rdx
140a5078f:	75 10                	jne    0x140a507a1
140a50791:	48 8b cb             	mov    %rbx,%rcx
140a50794:	e8 47 66 fb ff       	call   0x140a06de0
140a50799:	48 8b cb             	mov    %rbx,%rcx
140a5079c:	e8 ef 08 3e 00       	call   0x140e31090
140a507a1:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
140a507a8:	00
140a507a9:	4c 89 b4 24 98 00 00 	mov    %r14,0x98(%rsp)
140a507b0:	00
140a507b1:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140a507b6:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140a507bb:	48 8b cf             	mov    %rdi,%rcx
140a507be:	e8 dd 19 fa ff       	call   0x1409f21a0
140a507c3:	48 8b ac 24 98 00 00 	mov    0x98(%rsp),%rbp
140a507ca:	00
140a507cb:	48 85 ed             	test   %rbp,%rbp
140a507ce:	74 3b                	je     0x140a5080b
140a507d0:	48 8b 5d 10          	mov    0x10(%rbp),%rbx
140a507d4:	48 85 db             	test   %rbx,%rbx
140a507d7:	74 25                	je     0x140a507fe
140a507d9:	48 8b 03             	mov    (%rbx),%rax
140a507dc:	90                   	nop
140a507dd:	48 83 f8 01          	cmp    $0x1,%rax
140a507e1:	74 0b                	je     0x140a507ee
140a507e3:	f0 48 0f c1 33       	lock xadd %rsi,(%rbx)
140a507e8:	48 83 fe 01          	cmp    $0x1,%rsi
140a507ec:	75 10                	jne    0x140a507fe
140a507ee:	48 8b cb             	mov    %rbx,%rcx
140a507f1:	e8 ea 65 fb ff       	call   0x140a06de0
140a507f6:	48 8b cb             	mov    %rbx,%rcx
140a507f9:	e8 92 08 3e 00       	call   0x140e31090
140a507fe:	ba 18 00 00 00       	mov    $0x18,%edx
140a50803:	48 8b cd             	mov    %rbp,%rcx
140a50806:	e8 39 a9 3c 00       	call   0x140e1b144
140a5080b:	48 8b c7             	mov    %rdi,%rax
140a5080e:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
140a50813:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140a50817:	49 8b 6b 28          	mov    0x28(%r11),%rbp
140a5081b:	0f 28 74 24 50       	movaps 0x50(%rsp),%xmm6
140a50820:	49 8b e3             	mov    %r11,%rsp
140a50823:	41 5e                	pop    %r14
140a50825:	5f                   	pop    %rdi
140a50826:	5e                   	pop    %rsi
140a50827:	c3                   	ret
140a50828:	48 8d 0d c1 95 62 00 	lea    0x6295c1(%rip),%rcx        # 0x141079df0
140a5082f:	e8 cc 66 74 ff       	call   0x140196f00
140a50834:	48 8d 0d b5 95 62 00 	lea    0x6295b5(%rip),%rcx        # 0x141079df0
140a5083b:	e8 e0 e5 f6 ff       	call   0x1409bee20
140a50840:	cc                   	int3
140a50841:	cc                   	int3
140a50842:	cc                   	int3
140a50843:	cc                   	int3
140a50844:	cc                   	int3
140a50845:	cc                   	int3
140a50846:	cc                   	int3
140a50847:	cc                   	int3
140a50848:	cc                   	int3
140a50849:	cc                   	int3
140a5084a:	cc                   	int3
140a5084b:	cc                   	int3
140a5084c:	cc                   	int3
140a5084d:	cc                   	int3
140a5084e:	cc                   	int3
140a5084f:	cc                   	int3
140a50850:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140a50855:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140a5085a:	55                   	push   %rbp
140a5085b:	56                   	push   %rsi
140a5085c:	57                   	push   %rdi
140a5085d:	41 54                	push   %r12
140a5085f:	41 55                	push   %r13
140a50861:	41 56                	push   %r14
140a50863:	41 57                	push   %r15
140a50865:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
140a5086a:	48 81 ec e0 00 00 00 	sub    $0xe0,%rsp
140a50871:	48 8b 05 88 86 96 00 	mov    0x968688(%rip),%rax        # 0x1413b8f00
140a50878:	48 33 c4             	xor    %rsp,%rax
140a5087b:	48 89 45 1f          	mov    %rax,0x1f(%rbp)
140a5087f:	49 8b f8             	mov    %r8,%rdi
140a50882:	4c 8b e2             	mov    %rdx,%r12
140a50885:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140a5088a:	45 33 ed             	xor    %r13d,%r13d
140a5088d:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
140a50892:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
140a50897:	b9 68 00 00 00       	mov    $0x68,%ecx
140a5089c:	e8 67 a8 3c 00       	call   0x140e1b108
140a508a1:	48 89 00             	mov    %rax,(%rax)
140a508a4:	48 89 40 08          	mov    %rax,0x8(%rax)
140a508a8:	48 89 40 10          	mov    %rax,0x10(%rax)
140a508ac:	66 c7 40 18 01 01    	movw   $0x101,0x18(%rax)
140a508b2:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140a508b7:	48 8b d7             	mov    %rdi,%rdx
140a508ba:	48 83 7f 18 0f       	cmpq   $0xf,0x18(%rdi)
140a508bf:	76 03                	jbe    0x140a508c4
140a508c1:	48 8b 17             	mov    (%rdi),%rdx
140a508c4:	48 89 55 c7          	mov    %rdx,-0x39(%rbp)
140a508c8:	48 8b 47 10          	mov    0x10(%rdi),%rax
140a508cc:	48 89 45 cf          	mov    %rax,-0x31(%rbp)
140a508d0:	48 8d 0c 10          	lea    (%rax,%rdx,1),%rcx