14015848d:	48 8b ac 24 80 00 00 	mov    0x80(%rsp),%rbp
140158494:	00
140158495:	48 83 c4 40          	add    $0x40,%rsp
140158499:	41 5f                	pop    %r15
14015849b:	41 5d                	pop    %r13
14015849d:	41 5c                	pop    %r12
14015849f:	5f                   	pop    %rdi
1401584a0:	5e                   	pop    %rsi
1401584a1:	c3                   	ret
1401584a2:	e8 5d 23 1a 00       	call   0x1402fa804
1401584a7:	cc                   	int3
1401584a8:	cc                   	int3
1401584a9:	cc                   	int3
1401584aa:	cc                   	int3
1401584ab:	cc                   	int3
1401584ac:	cc                   	int3
1401584ad:	cc                   	int3
1401584ae:	cc                   	int3
1401584af:	cc                   	int3
1401584b0:	40 53                	rex push %rbx
1401584b2:	48 83 ec 20          	sub    $0x20,%rsp
1401584b6:	c6 81 c5 01 00 00 00 	movb   $0x0,0x1c5(%rcx)
1401584bd:	48 8b d9             	mov    %rcx,%rbx
1401584c0:	80 3d f1 7b 2b 00 00 	cmpb   $0x0,0x2b7bf1(%rip)        # 0x1404100b8
1401584c7:	74 3a                	je     0x140158503
1401584c9:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
1401584ce:	ff 15 2c 0f 1d 00    	call   *0x1d0f2c(%rip)        # 0x140329400
1401584d4:	4c 8b 0d e5 7b 2b 00 	mov    0x2b7be5(%rip),%r9        # 0x1404100c0
1401584db:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1401584e0:	48 99                	cqto
1401584e2:	49 f7 f9             	idiv   %r9
1401584e5:	4c 8b d0             	mov    %rax,%r10
1401584e8:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1401584ed:	48 99                	cqto
1401584ef:	49 f7 f9             	idiv   %r9
1401584f2:	48 69 c2 40 42 0f 00 	imul   $0xf4240,%rdx,%rax
1401584f9:	48 99                	cqto
1401584fb:	49 f7 f9             	idiv   %r9
1401584fe:	4c 8b c8             	mov    %rax,%r9
140158501:	eb 27                	jmp    0x14015852a
140158503:	ff 15 77 0f 1d 00    	call   *0x1d0f77(%rip)        # 0x140329480
140158509:	44 8b c0             	mov    %eax,%r8d
14015850c:	b8 d3 4d 62 10       	mov    $0x10624dd3,%eax
140158511:	41 f7 e0             	mul    %r8d
140158514:	c1 ea 06             	shr    $0x6,%edx
140158517:	69 ca e8 03 00 00    	imul   $0x3e8,%edx,%ecx
14015851d:	44 8b d2             	mov    %edx,%r10d
140158520:	44 2b c1             	sub    %ecx,%r8d
140158523:	45 69 c8 e8 03 00 00 	imul   $0x3e8,%r8d,%r9d
14015852a:	4c 8d 83 b8 0b 00 00 	lea    0xbb8(%rbx),%r8
140158531:	4d 85 c0             	test   %r8,%r8
140158534:	74 6a                	je     0x1401585a0
140158536:	0f 10 83 e0 0b 00 00 	movups 0xbe0(%rbx),%xmm0
14015853d:	66 48 0f 7e c0       	movq   %xmm0,%rax
140158542:	4c 2b d0             	sub    %rax,%r10
140158545:	48 b8 f6 5a d0 7b 63 	movabs $0x8637bd05af6,%rax
14015854c:	08 00 00
14015854f:	4c 3b d0             	cmp    %rax,%r10
140158552:	7c 13                	jl     0x140158567
140158554:	48 ba ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdx
14015855b:	ff ff 7f
14015855e:	49 01 10             	add    %rdx,(%r8)
140158561:	48 83 c4 20          	add    $0x20,%rsp
140158565:	5b                   	pop    %rbx
140158566:	c3                   	ret
140158567:	48 b8 0a a5 2f 84 9c 	movabs $0xfffff79c842fa50a,%rax
14015856e:	f7 ff ff
140158571:	4c 3b d0             	cmp    %rax,%r10
140158574:	7e 22                	jle    0x140158598
140158576:	49 69 d2 40 42 0f 00 	imul   $0xf4240,%r10,%rdx
14015857d:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
140158582:	66 0f 7e c0          	movd   %xmm0,%eax
140158586:	48 63 c8             	movslq %eax,%rcx
140158589:	48 2b d1             	sub    %rcx,%rdx
14015858c:	49 63 c1             	movslq %r9d,%rax
14015858f:	48 03 d0             	add    %rax,%rdx
140158592:	48 83 fa 01          	cmp    $0x1,%rdx
140158596:	7d 05                	jge    0x14015859d
140158598:	ba 01 00 00 00       	mov    $0x1,%edx
14015859d:	49 01 10             	add    %rdx,(%r8)
1401585a0:	48 83 c4 20          	add    $0x20,%rsp
1401585a4:	5b                   	pop    %rbx
1401585a5:	c3                   	ret
1401585a6:	cc                   	int3
1401585a7:	cc                   	int3
1401585a8:	cc                   	int3
1401585a9:	cc                   	int3
1401585aa:	cc                   	int3
1401585ab:	cc                   	int3
1401585ac:	cc                   	int3
1401585ad:	cc                   	int3
1401585ae:	cc                   	int3
1401585af:	cc                   	int3
1401585b0:	40 55                	rex push %rbp
1401585b2:	56                   	push   %rsi
1401585b3:	57                   	push   %rdi
1401585b4:	41 54                	push   %r12
1401585b6:	41 55                	push   %r13
1401585b8:	41 56                	push   %r14
1401585ba:	41 57                	push   %r15
1401585bc:	48 8d ac 24 20 fe ff 	lea    -0x1e0(%rsp),%rbp
1401585c3:	ff
1401585c4:	48 81 ec e0 02 00 00 	sub    $0x2e0,%rsp
1401585cb:	48 8b 05 ae fb 2a 00 	mov    0x2afbae(%rip),%rax        # 0x140408180
1401585d2:	48 33 c4             	xor    %rsp,%rax
1401585d5:	48 89 85 d0 01 00 00 	mov    %rax,0x1d0(%rbp)
1401585dc:	4c 8b b9 c0 07 00 00 	mov    0x7c0(%rcx),%r15
1401585e3:	45 8b e8             	mov    %r8d,%r13d
1401585e6:	48 8b 41 18          	mov    0x18(%rcx),%rax
1401585ea:	48 8b fa             	mov    %rdx,%rdi
1401585ed:	0f b7 b1 40 02 00 00 	movzwl 0x240(%rcx),%esi
1401585f4:	4c 8b f1             	mov    %rcx,%r14
1401585f7:	44 8b a1 44 02 00 00 	mov    0x244(%rcx),%r12d
1401585fe:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
140158603:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140158608:	48 c7 44 24 48 00 00 	movq   $0x0,0x48(%rsp)
14015860f:	00 00
140158611:	4d 85 ff             	test   %r15,%r15
140158614:	75 0c                	jne    0x140158622
140158616:	66 85 f6             	test   %si,%si
140158619:	75 07                	jne    0x140158622
14015861b:	33 c0                	xor    %eax,%eax
14015861d:	e9 88 04 00 00       	jmp    0x140158aaa
140158622:	48 89 9c 24 38 03 00 	mov    %rbx,0x338(%rsp)
140158629:	00
14015862a:	0f 57 c0             	xorps  %xmm0,%xmm0
14015862d:	0f 11 44 24 50       	movups %xmm0,0x50(%rsp)
140158632:	0f 11 44 24 60       	movups %xmm0,0x60(%rsp)
140158637:	0f 11 44 24 70       	movups %xmm0,0x70(%rsp)
14015863c:	0f 11 45 80          	movups %xmm0,-0x80(%rbp)
140158640:	0f 11 45 90          	movups %xmm0,-0x70(%rbp)
140158644:	0f 11 45 a0          	movups %xmm0,-0x60(%rbp)
140158648:	0f 11 45 b0          	movups %xmm0,-0x50(%rbp)
14015864c:	0f 11 45 c0          	movups %xmm0,-0x40(%rbp)
140158650:	4d 85 ff             	test   %r15,%r15
140158653:	0f 84 de 02 00 00    	je     0x140158937
140158659:	48 c7 c3 ff ff ff ff 	mov    $0xffffffffffffffff,%rbx
140158660:	48 8b c3             	mov    %rbx,%rax
140158663:	48 ff c0             	inc    %rax
140158666:	41 80 3c 07 00       	cmpb   $0x0,(%r15,%rax,1)
14015866b:	75 f6                	jne    0x140158663
14015866d:	48 3d ff 00 00 00    	cmp    $0xff,%rax
140158673:	0f 83 be 02 00 00    	jae    0x140158937
140158679:	33 d2                	xor    %edx,%edx
14015867b:	48 8d 4d d1          	lea    -0x2f(%rbp),%rcx
14015867f:	41 b8 ff 00 00 00    	mov    $0xff,%r8d
140158685:	e8 d4 43 1a 00       	call   0x1402fca5e
14015868a:	48 8b 0d af a6 2a 00 	mov    0x2aa6af(%rip),%rcx        # 0x140402d40
140158691:	4c 8b c3             	mov    %rbx,%r8
140158694:	49 ff c0             	inc    %r8
140158697:	42 80 3c 01 00       	cmpb   $0x0,(%rcx,%r8,1)
14015869c:	75 f6                	jne    0x140158694
14015869e:	49 8b d7             	mov    %r15,%rdx
1401586a1:	ff 15 51 1b 1d 00    	call   *0x1d1b51(%rip)        # 0x14032a1f8
1401586a7:	85 c0                	test   %eax,%eax
1401586a9:	75 2f                	jne    0x1401586da
1401586ab:	48 8b 05 8e a6 2a 00 	mov    0x2aa68e(%rip),%rax        # 0x140402d40
1401586b2:	80 7c 18 01 00       	cmpb   $0x0,0x1(%rax,%rbx,1)
1401586b7:	48 8d 5b 01          	lea    0x1(%rbx),%rbx
1401586bb:	75 f5                	jne    0x1401586b2
1401586bd:	4e 8d 04 3b          	lea    (%rbx,%r15,1),%r8
1401586c1:	49 8b ce             	mov    %r14,%rcx
1401586c4:	48 8d 15 95 34 1e 00 	lea    0x1e3495(%rip),%rdx        # 0x14033bb60
1401586cb:	e8 60 a0 fe ff       	call   0x140142730
1401586d0:	b8 2d 00 00 00       	mov    $0x2d,%eax
1401586d5:	e9 c8 03 00 00       	jmp    0x140158aa2
1401586da:	48 8b 0d 67 a6 2a 00 	mov    0x2aa667(%rip),%rcx        # 0x140402d48
1401586e1:	4c 8b c3             	mov    %rbx,%r8
1401586e4:	49 ff c0             	inc    %r8
1401586e7:	42 80 3c 01 00       	cmpb   $0x0,(%rcx,%r8,1)
1401586ec:	75 f6                	jne    0x1401586e4
1401586ee:	49 8b d7             	mov    %r15,%rdx
1401586f1:	ff 15 01 1b 1d 00    	call   *0x1d1b01(%rip)        # 0x14032a1f8
1401586f7:	85 c0                	test   %eax,%eax
1401586f9:	75 13                	jne    0x14015870e
1401586fb:	48 8b 05 46 a6 2a 00 	mov    0x2aa646(%rip),%rax        # 0x140402d48
140158702:	48 ff c3             	inc    %rbx
140158705:	80 3c 18 00          	cmpb   $0x0,(%rax,%rbx,1)
140158709:	75 f7                	jne    0x140158702
14015870b:	4c 03 fb             	add    %rbx,%r15
14015870e:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140158713:	0f b6 81 8c 01 00 00 	movzbl 0x18c(%rcx),%eax
14015871a:	88 44 24 30          	mov    %al,0x30(%rsp)
14015871e:	41 83 fd 02          	cmp    $0x2,%r13d
140158722:	75 09                	jne    0x14015872d
140158724:	c6 81 8c 01 00 00 01 	movb   $0x1,0x18c(%rcx)
14015872b:	eb 0d                	jmp    0x14015873a
14015872d:	41 83 fd 17          	cmp    $0x17,%r13d
140158731:	75 07                	jne    0x14015873a
140158733:	c6 81 8c 01 00 00 02 	movb   $0x2,0x18c(%rcx)
14015873a:	48 8d 44 24 48       	lea    0x48(%rsp),%rax
14015873f:	45 33 c9             	xor    %r9d,%r9d
140158742:	45 33 c0             	xor    %r8d,%r8d
140158745:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14015874a:	49 8b d7             	mov    %r15,%rdx
14015874d:	49 8b ce             	mov    %r14,%rcx
140158750:	e8 ab 7c ff ff       	call   0x140150400
140158755:	83 f8 01             	cmp    $0x1,%eax
140158758:	0f 85 ad 00 00 00    	jne    0x14015880b
14015875e:	49 8b be 90 0e 00 00 	mov    0xe90(%r14),%rdi
140158765:	45 33 c0             	xor    %r8d,%r8d
140158768:	ba ff ff ff ff       	mov    $0xffffffff,%edx
14015876d:	48 8b 0f             	mov    (%rdi),%rcx
140158770:	ff 15 02 0d 1d 00    	call   *0x1d0d02(%rip)        # 0x140329478
140158776:	48 8b 0f             	mov    (%rdi),%rcx
140158779:	8b d8                	mov    %eax,%ebx
14015877b:	ff 15 0f 0b 1d 00    	call   *0x1d0b0f(%rip)        # 0x140329290
140158781:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
140158788:	85 db                	test   %ebx,%ebx
14015878a:	75 08                	jne    0x140158794
14015878c:	49 8b ce             	mov    %r14,%rcx
14015878f:	e8 9c c9 00 00       	call   0x140165130
140158794:	49 8b 9e 88 0e 00 00 	mov    0xe88(%r14),%rbx
14015879b:	41 c6 86 a8 0e 00 00 	movb   $0x1,0xea8(%r14)
1401587a2:	01
1401587a3:	48 85 db             	test   %rbx,%rbx
1401587a6:	75 32                	jne    0x1401587da
1401587a8:	49 8b 46 18          	mov    0x18(%r14),%rax
1401587ac:	48 8d 0d 39 3e 1e 00 	lea    0x1e3e39(%rip),%rcx        # 0x14033c5ec
1401587b3:	4d 8b 8e 80 0e 00 00 	mov    0xe80(%r14),%r9
1401587ba:	4c 8d 05 23 3e 1e 00 	lea    0x1e3e23(%rip),%r8        # 0x14033c5e4
1401587c1:	48 8d 15 30 3e 1e 00 	lea    0x1e3e30(%rip),%rdx        # 0x14033c5f8
1401587c8:	38 98 cc 03 00 00    	cmp    %bl,0x3cc(%rax)
1401587ce:	4c 0f 44 c1          	cmove  %rcx,%r8
1401587d2:	49 8b ce             	mov    %r14,%rcx
1401587d5:	e8 56 9f fe ff       	call   0x140142730
1401587da:	49 8d 8e 80 0e 00 00 	lea    0xe80(%r14),%rcx
1401587e1:	e8 4a 78 00 00       	call   0x140160030
1401587e6:	49 83 be 88 0e 00 00 	cmpq   $0x0,0xe88(%r14)
1401587ed:	00
1401587ee:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
1401587f3:	75 1b                	jne    0x140158810
1401587f5:	49 8b 46 18          	mov    0x18(%r14),%rax
1401587f9:	80 b8 d1 03 00 00 01 	cmpb   $0x1,0x3d1(%rax)
140158800:	74 0e                	je     0x140158810
140158802:	c6 80 d1 03 00 00 01 	movb   $0x1,0x3d1(%rax)
140158809:	eb 05                	jmp    0x140158810
14015880b:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140158810:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140158815:	0f b6 44 24 30       	movzbl 0x30(%rsp),%eax
14015881a:	88 81 8c 01 00 00    	mov    %al,0x18c(%rcx)
140158820:	48 85 db             	test   %rbx,%rbx
140158823:	0f 84 ea 00 00 00    	je     0x140158913
140158829:	48 8b 0b             	mov    (%rbx),%rcx
14015882c:	c6 45 d0 00          	movb   $0x0,-0x30(%rbp)
140158830:	8b 41 04             	mov    0x4(%rcx),%eax
140158833:	83 f8 02             	cmp    $0x2,%eax
140158836:	74 1e                	je     0x140158856
140158838:	83 f8 17             	cmp    $0x17,%eax
14015883b:	75 30                	jne    0x14015886d
14015883d:	48 8b 49 20          	mov    0x20(%rcx),%rcx
140158841:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
140158845:	48 83 c1 08          	add    $0x8,%rcx
140158849:	41 b8 00 01 00 00    	mov    $0x100,%r8d
14015884f:	e8 fc d5 00 00       	call   0x140165e50
140158854:	eb 17                	jmp    0x14015886d
140158856:	48 8b 49 20          	mov    0x20(%rcx),%rcx
14015885a:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
14015885e:	48 83 c1 04          	add    $0x4,%rcx
140158862:	41 b8 00 01 00 00    	mov    $0x100,%r8d
140158868:	e8 13 d5 00 00       	call   0x140165d80
14015886d:	48 8b 03             	mov    (%rbx),%rax
140158870:	48 8d 15 09 33 1e 00 	lea    0x1e3309(%rip),%rdx        # 0x14033bb80
140158877:	45 8b cd             	mov    %r13d,%r9d
14015887a:	4d 8b c7             	mov    %r15,%r8
14015887d:	8b 48 04             	mov    0x4(%rax),%ecx
140158880:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140158884:	89 4c 24 28          	mov    %ecx,0x28(%rsp)
140158888:	49 8b ce             	mov    %r14,%rcx
14015888b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140158890:	e8 8b 24 ff ff       	call   0x14014ad20
140158895:	48 8b d3             	mov    %rbx,%rdx
140158898:	49 8b ce             	mov    %r14,%rcx
14015889b:	e8 90 81 ff ff       	call   0x140150a30
1401588a0:	48 8b 03             	mov    (%rbx),%rax
1401588a3:	44 3b 68 04          	cmp    0x4(%rax),%r13d
1401588a7:	74 0a                	je     0x1401588b3
1401588a9:	b8 01 00 00 00       	mov    $0x1,%eax
1401588ae:	e9 ef 01 00 00       	jmp    0x140158aa2
1401588b3:	41 83 fd 17          	cmp    $0x17,%r13d
1401588b7:	75 1e                	jne    0x1401588d7
1401588b9:	41 8b dd             	mov    %r13d,%ebx
1401588bc:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
1401588c1:	8b cb                	mov    %ebx,%ecx
1401588c3:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1401588c7:	ff 15 eb 14 1d 00    	call   *0x1d14eb(%rip)        # 0x140329db8
1401588cd:	85 c0                	test   %eax,%eax
1401588cf:	0f 8e 7e 00 00 00    	jle    0x140158953
1401588d5:	eb 69                	jmp    0x140158940
1401588d7:	41 83 fd 02          	cmp    $0x2,%r13d
1401588db:	0f 85 84 00 00 00    	jne    0x140158965
1401588e1:	41 8b dd             	mov    %r13d,%ebx
1401588e4:	4c 8d 44 24 54       	lea    0x54(%rsp),%r8
1401588e9:	8b cb                	mov    %ebx,%ecx
1401588eb:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
1401588ef:	ff 15 c3 14 1d 00    	call   *0x1d14c3(%rip)        # 0x140329db8
1401588f5:	85 c0                	test   %eax,%eax
1401588f7:	7e 6c                	jle    0x140158965
1401588f9:	0f b7 ce             	movzwl %si,%ecx
1401588fc:	66 89 5c 24 50       	mov    %bx,0x50(%rsp)
140158901:	ff 15 09 15 1d 00    	call   *0x1d1509(%rip)        # 0x140329e10
140158907:	66 89 44 24 52       	mov    %ax,0x52(%rsp)
14015890c:	bb 10 00 00 00       	mov    $0x10,%ebx
140158911:	eb 54                	jmp    0x140158967
140158913:	4d 8b c7             	mov    %r15,%r8
140158916:	41 c6 86 03 13 00 00 	movb   $0x0,0x1303(%r14)
14015891d:	00
14015891e:	48 8d 15 8b 32 1e 00 	lea    0x1e328b(%rip),%rdx        # 0x14033bbb0
140158925:	49 8b ce             	mov    %r14,%rcx
140158928:	e8 03 9e fe ff       	call   0x140142730
14015892d:	b8 2d 00 00 00       	mov    $0x2d,%eax
140158932:	e9 6b 01 00 00       	jmp    0x140158aa2
140158937:	41 83 fd 17          	cmp    $0x17,%r13d
14015893b:	75 1d                	jne    0x14015895a
14015893d:	41 8b dd             	mov    %r13d,%ebx
140158940:	0f b7 ce             	movzwl %si,%ecx
140158943:	66 89 5c 24 50       	mov    %bx,0x50(%rsp)
140158948:	ff 15 c2 14 1d 00    	call   *0x1d14c2(%rip)        # 0x140329e10
14015894e:	66 89 44 24 52       	mov    %ax,0x52(%rsp)
140158953:	bb 1c 00 00 00       	mov    $0x1c,%ebx
140158958:	eb 0d                	jmp    0x140158967
14015895a:	41 83 fd 02          	cmp    $0x2,%r13d
14015895e:	75 05                	jne    0x140158965
140158960:	41 8b dd             	mov    %r13d,%ebx
140158963:	eb 94                	jmp    0x1401588f9
140158965:	33 db                	xor    %ebx,%ebx
140158967:	44 8b c3             	mov    %ebx,%r8d
14015896a:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
14015896f:	48 8b cf             	mov    %rdi,%rcx
140158972:	ff 15 78 14 1d 00    	call   *0x1d1478(%rip)        # 0x140329df0
140158978:	85 c0                	test   %eax,%eax
14015897a:	79 49                	jns    0x1401589c5
14015897c:	0f 1f 40 00          	nopl   0x0(%rax)
140158980:	41 ff cc             	dec    %r12d
140158983:	45 85 e4             	test   %r12d,%r12d
140158986:	0f 8e b9 00 00 00    	jle    0x140158a45
14015898c:	44 0f b7 c6          	movzwl %si,%r8d
140158990:	48 8d 15 69 32 1e 00 	lea    0x1e3269(%rip),%rdx        # 0x14033bc00
140158997:	49 8b ce             	mov    %r14,%rcx
14015899a:	e8 81 23 ff ff       	call   0x14014ad20
14015899f:	66 ff c6             	inc    %si
1401589a2:	0f b7 ce             	movzwl %si,%ecx
1401589a5:	ff 15 a5 13 1d 00    	call   *0x1d13a5(%rip)        # 0x140329d50
1401589ab:	44 8b c3             	mov    %ebx,%r8d
1401589ae:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
1401589b3:	48 8b cf             	mov    %rdi,%rcx
1401589b6:	66 89 44 24 52       	mov    %ax,0x52(%rsp)
1401589bb:	ff 15 2f 14 1d 00    	call   *0x1d142f(%rip)        # 0x140329df0
1401589c1:	85 c0                	test   %eax,%eax
1401589c3:	78 bb                	js     0x140158980