14009348e:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
140093495:	00
140093496:	48 83 c4 40          	add    $0x40,%rsp
14009349a:	41 5f                	pop    %r15
14009349c:	41 5e                	pop    %r14
14009349e:	41 5d                	pop    %r13
1400934a0:	41 5c                	pop    %r12
1400934a2:	5f                   	pop    %rdi
1400934a3:	c3                   	ret
1400934a4:	48 8d 0d 75 ae 29 00 	lea    0x29ae75(%rip),%rcx        # 0x14032e320
1400934ab:	e8 00 91 26 00       	call   0x1402fc5b0
1400934b0:	cc                   	int3
1400934b1:	cc                   	int3
1400934b2:	cc                   	int3
1400934b3:	cc                   	int3
1400934b4:	cc                   	int3
1400934b5:	cc                   	int3
1400934b6:	cc                   	int3
1400934b7:	cc                   	int3
1400934b8:	cc                   	int3
1400934b9:	cc                   	int3
1400934ba:	cc                   	int3
1400934bb:	cc                   	int3
1400934bc:	cc                   	int3
1400934bd:	cc                   	int3
1400934be:	cc                   	int3
1400934bf:	cc                   	int3
1400934c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400934c5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1400934ca:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400934cf:	57                   	push   %rdi
1400934d0:	41 54                	push   %r12
1400934d2:	41 55                	push   %r13
1400934d4:	41 56                	push   %r14
1400934d6:	41 57                	push   %r15
1400934d8:	48 83 ec 40          	sub    $0x40,%rsp
1400934dc:	49 8b d8             	mov    %r8,%rbx
1400934df:	4c 8b e2             	mov    %rdx,%r12
1400934e2:	48 8b e9             	mov    %rcx,%rbp
1400934e5:	4d 8b 48 10          	mov    0x10(%r8),%r9
1400934e9:	49 83 78 18 0f       	cmpq   $0xf,0x18(%r8)
1400934ee:	76 03                	jbe    0x1400934f3
1400934f0:	4d 8b 00             	mov    (%r8),%r8
1400934f3:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
1400934fa:	9c f2 cb
1400934fd:	45 33 ed             	xor    %r13d,%r13d
140093500:	41 8b cd             	mov    %r13d,%ecx
140093503:	4d 85 c9             	test   %r9,%r9
140093506:	74 2c                	je     0x140093534
140093508:	48 ba b3 01 00 00 00 	movabs $0x100000001b3,%rdx
14009350f:	01 00 00
140093512:	0f 1f 40 00          	nopl   0x0(%rax)
140093516:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14009351d:	00 00 00
140093520:	41 0f b6 04 08       	movzbl (%r8,%rcx,1),%eax
140093525:	48 33 f8             	xor    %rax,%rdi
140093528:	48 0f af fa          	imul   %rdx,%rdi
14009352c:	48 ff c1             	inc    %rcx
14009352f:	49 3b c9             	cmp    %r9,%rcx
140093532:	72 ec                	jb     0x140093520
140093534:	4c 8b cf             	mov    %rdi,%r9
140093537:	4c 8b c3             	mov    %rbx,%r8
14009353a:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14009353f:	48 8b cd             	mov    %rbp,%rcx
140093542:	e8 49 b3 ff ff       	call   0x14008e890
140093547:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14009354c:	48 85 c0             	test   %rax,%rax
14009354f:	74 0e                	je     0x14009355f
140093551:	49 89 04 24          	mov    %rax,(%r12)
140093555:	45 88 6c 24 08       	mov    %r13b,0x8(%r12)
14009355a:	e9 e7 01 00 00       	jmp    0x140093746
14009355f:	48 b8 33 33 33 33 33 	movabs $0x333333333333333,%rax
140093566:	33 33 03
140093569:	48 39 45 10          	cmp    %rax,0x10(%rbp)
14009356d:	0f 84 f6 01 00 00    	je     0x140093769
140093573:	4c 8d 7d 08          	lea    0x8(%rbp),%r15
140093577:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14009357c:	4c 89 6c 24 38       	mov    %r13,0x38(%rsp)
140093581:	b9 50 00 00 00       	mov    $0x50,%ecx
140093586:	e8 bd 6c 26 00       	call   0x1402fa248
14009358b:	4c 8b f0             	mov    %rax,%r14
14009358e:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140093593:	0f 57 c0             	xorps  %xmm0,%xmm0
140093596:	0f 11 40 10          	movups %xmm0,0x10(%rax)
14009359a:	4c 89 68 20          	mov    %r13,0x20(%rax)
14009359e:	4c 89 68 28          	mov    %r13,0x28(%rax)
1400935a2:	0f 10 03             	movups (%rbx),%xmm0
1400935a5:	0f 11 40 10          	movups %xmm0,0x10(%rax)
1400935a9:	0f 10 4b 10          	movups 0x10(%rbx),%xmm1
1400935ad:	0f 11 48 20          	movups %xmm1,0x20(%rax)
1400935b1:	4c 89 6b 10          	mov    %r13,0x10(%rbx)
1400935b5:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
1400935bc:	00
1400935bd:	c6 03 00             	movb   $0x0,(%rbx)
1400935c0:	0f 57 c0             	xorps  %xmm0,%xmm0
1400935c3:	0f 11 40 30          	movups %xmm0,0x30(%rax)
1400935c7:	4c 89 68 40          	mov    %r13,0x40(%rax)
1400935cb:	48 c7 40 48 0f 00 00 	movq   $0xf,0x48(%rax)
1400935d2:	00
1400935d3:	c6 40 30 00          	movb   $0x0,0x30(%rax)
1400935d7:	48 8b 55 10          	mov    0x10(%rbp),%rdx
1400935db:	48 83 c2 01          	add    $0x1,%rdx
1400935df:	0f 57 c0             	xorps  %xmm0,%xmm0
1400935e2:	78 07                	js     0x1400935eb
1400935e4:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
1400935e9:	eb 18                	jmp    0x140093603
1400935eb:	48 8b ca             	mov    %rdx,%rcx
1400935ee:	48 d1 e9             	shr    $1,%rcx
1400935f1:	48 8b c2             	mov    %rdx,%rax
1400935f4:	83 e0 01             	and    $0x1,%eax
1400935f7:	48 0b c8             	or     %rax,%rcx
1400935fa:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
1400935ff:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140093603:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
140093607:	0f 57 c9             	xorps  %xmm1,%xmm1
14009360a:	48 85 c9             	test   %rcx,%rcx
14009360d:	78 07                	js     0x140093616
14009360f:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
140093614:	eb 15                	jmp    0x14009362b
140093616:	48 8b c1             	mov    %rcx,%rax
140093619:	48 d1 e8             	shr    $1,%rax
14009361c:	83 e1 01             	and    $0x1,%ecx
14009361f:	48 0b c1             	or     %rcx,%rax
140093622:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
140093627:	f3 0f 58 c9          	addss  %xmm1,%xmm1
14009362b:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14009362f:	0f 2f 45 00          	comiss 0x0(%rbp),%xmm0
140093633:	0f 86 b4 00 00 00    	jbe    0x1400936ed
140093639:	48 8b cd             	mov    %rbp,%rcx
14009363c:	e8 af c3 02 00       	call   0x1400bf9f0
140093641:	48 8b d0             	mov    %rax,%rdx
140093644:	48 8b cd             	mov    %rbp,%rcx
140093647:	e8 84 ca 02 00       	call   0x1400c00d0
14009364c:	48 8b 45 30          	mov    0x30(%rbp),%rax
140093650:	48 23 c7             	and    %rdi,%rax
140093653:	48 03 c0             	add    %rax,%rax
140093656:	4c 8b 6d 18          	mov    0x18(%rbp),%r13
14009365a:	49 8b 5c c5 08       	mov    0x8(%r13,%rax,8),%rbx
14009365f:	49 8b 0f             	mov    (%r15),%rcx
140093662:	48 3b d9             	cmp    %rcx,%rbx
140093665:	75 07                	jne    0x14009366e
140093667:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14009366c:	eb 6b                	jmp    0x1400936d9
14009366e:	4d 8b 6c c5 00       	mov    0x0(%r13,%rax,8),%r13
140093673:	4d 8b 7e 20          	mov    0x20(%r14),%r15
140093677:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14009367e:	00 00
140093680:	48 8d 53 10          	lea    0x10(%rbx),%rdx
140093684:	48 8b 42 10          	mov    0x10(%rdx),%rax
140093688:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14009368d:	76 03                	jbe    0x140093692
14009368f:	48 8b 12             	mov    (%rdx),%rdx
140093692:	49 8d 4e 10          	lea    0x10(%r14),%rcx
140093696:	49 83 7e 28 0f       	cmpq   $0xf,0x28(%r14)
14009369b:	76 04                	jbe    0x1400936a1
14009369d:	49 8b 4e 10          	mov    0x10(%r14),%rcx
1400936a1:	4c 3b f8             	cmp    %rax,%r15
1400936a4:	75 0c                	jne    0x1400936b2
1400936a6:	4d 8b c7             	mov    %r15,%r8
1400936a9:	e8 74 93 26 00       	call   0x1402fca22
1400936ae:	85 c0                	test   %eax,%eax
1400936b0:	74 0b                	je     0x1400936bd
1400936b2:	49 3b dd             	cmp    %r13,%rbx
1400936b5:	74 19                	je     0x1400936d0
1400936b7:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
1400936bb:	eb c3                	jmp    0x140093680
1400936bd:	48 8b 03             	mov    (%rbx),%rax
1400936c0:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400936c5:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1400936ca:	4c 8d 7d 08          	lea    0x8(%rbp),%r15
1400936ce:	eb 12                	jmp    0x1400936e2
1400936d0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400936d5:	4c 8d 7d 08          	lea    0x8(%rbp),%r15
1400936d9:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
1400936e0:	00 00
1400936e2:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
1400936e7:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
1400936ed:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
1400936f2:	4c 8b 42 08          	mov    0x8(%rdx),%r8
1400936f6:	48 ff 45 10          	incq   0x10(%rbp)
1400936fa:	49 89 16             	mov    %rdx,(%r14)
1400936fd:	4d 89 46 08          	mov    %r8,0x8(%r14)
140093701:	4d 89 30             	mov    %r14,(%r8)
140093704:	4c 89 72 08          	mov    %r14,0x8(%rdx)
140093708:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14009370c:	48 8b 45 30          	mov    0x30(%rbp),%rax
140093710:	48 23 c7             	and    %rdi,%rax
140093713:	48 03 c0             	add    %rax,%rax
140093716:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14009371a:	4d 3b 0f             	cmp    (%r15),%r9
14009371d:	75 06                	jne    0x140093725
14009371f:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
140093723:	eb 12                	jmp    0x140093737
140093725:	4c 3b ca             	cmp    %rdx,%r9
140093728:	75 06                	jne    0x140093730
14009372a:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
14009372e:	eb 0c                	jmp    0x14009373c
140093730:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
140093735:	75 05                	jne    0x14009373c
140093737:	4c 89 74 c1 08       	mov    %r14,0x8(%rcx,%rax,8)
14009373c:	4d 89 34 24          	mov    %r14,(%r12)
140093740:	41 c6 44 24 08 01    	movb   $0x1,0x8(%r12)
140093746:	49 8b c4             	mov    %r12,%rax
140093749:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
14009374e:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
140093753:	48 8b b4 24 80 00 00 	mov    0x80(%rsp),%rsi
14009375a:	00
14009375b:	48 83 c4 40          	add    $0x40,%rsp
14009375f:	41 5f                	pop    %r15
140093761:	41 5e                	pop    %r14
140093763:	41 5d                	pop    %r13
140093765:	41 5c                	pop    %r12
140093767:	5f                   	pop    %rdi
140093768:	c3                   	ret
140093769:	48 8d 0d b0 ab 29 00 	lea    0x29abb0(%rip),%rcx        # 0x14032e320
140093770:	e8 3b 8e 26 00       	call   0x1402fc5b0
140093775:	cc                   	int3
140093776:	cc                   	int3
140093777:	cc                   	int3
140093778:	cc                   	int3
140093779:	cc                   	int3
14009377a:	cc                   	int3
14009377b:	cc                   	int3
14009377c:	cc                   	int3
14009377d:	cc                   	int3
14009377e:	cc                   	int3
14009377f:	cc                   	int3
140093780:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140093785:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14009378a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14009378f:	57                   	push   %rdi
140093790:	41 54                	push   %r12
140093792:	41 55                	push   %r13
140093794:	41 56                	push   %r14
140093796:	41 57                	push   %r15
140093798:	48 83 ec 40          	sub    $0x40,%rsp
14009379c:	49 8b d8             	mov    %r8,%rbx
14009379f:	4c 8b e2             	mov    %rdx,%r12
1400937a2:	48 8b e9             	mov    %rcx,%rbp
1400937a5:	4d 8b 48 10          	mov    0x10(%r8),%r9
1400937a9:	49 83 78 18 0f       	cmpq   $0xf,0x18(%r8)
1400937ae:	76 03                	jbe    0x1400937b3
1400937b0:	4d 8b 00             	mov    (%r8),%r8
1400937b3:	48 bf 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rdi
1400937ba:	9c f2 cb
1400937bd:	45 33 ed             	xor    %r13d,%r13d
1400937c0:	41 8b cd             	mov    %r13d,%ecx
1400937c3:	4d 85 c9             	test   %r9,%r9
1400937c6:	74 2c                	je     0x1400937f4
1400937c8:	48 ba b3 01 00 00 00 	movabs $0x100000001b3,%rdx
1400937cf:	01 00 00
1400937d2:	0f 1f 40 00          	nopl   0x0(%rax)
1400937d6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1400937dd:	00 00 00
1400937e0:	41 0f b6 04 08       	movzbl (%r8,%rcx,1),%eax
1400937e5:	48 33 f8             	xor    %rax,%rdi
1400937e8:	48 0f af fa          	imul   %rdx,%rdi
1400937ec:	48 ff c1             	inc    %rcx
1400937ef:	49 3b c9             	cmp    %r9,%rcx
1400937f2:	72 ec                	jb     0x1400937e0
1400937f4:	4c 8b cf             	mov    %rdi,%r9
1400937f7:	4c 8b c3             	mov    %rbx,%r8
1400937fa:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1400937ff:	48 8b cd             	mov    %rbp,%rcx
140093802:	e8 89 b0 ff ff       	call   0x14008e890
140093807:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14009380c:	48 85 c0             	test   %rax,%rax
14009380f:	74 0e                	je     0x14009381f
140093811:	49 89 04 24          	mov    %rax,(%r12)
140093815:	45 88 6c 24 08       	mov    %r13b,0x8(%r12)
14009381a:	e9 f7 01 00 00       	jmp    0x140093a16
14009381f:	48 b8 aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%rax
140093826:	aa aa 02
140093829:	48 39 45 10          	cmp    %rax,0x10(%rbp)
14009382d:	0f 84 06 02 00 00    	je     0x140093a39
140093833:	4c 8d 7d 08          	lea    0x8(%rbp),%r15
140093837:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14009383c:	4c 89 6c 24 38       	mov    %r13,0x38(%rsp)
140093841:	b9 60 00 00 00       	mov    $0x60,%ecx
140093846:	e8 fd 69 26 00       	call   0x1402fa248
14009384b:	4c 8b f0             	mov    %rax,%r14
14009384e:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140093853:	0f 57 c0             	xorps  %xmm0,%xmm0
140093856:	0f 11 40 10          	movups %xmm0,0x10(%rax)
14009385a:	4c 89 68 20          	mov    %r13,0x20(%rax)
14009385e:	4c 89 68 28          	mov    %r13,0x28(%rax)
140093862:	0f 10 03             	movups (%rbx),%xmm0
140093865:	0f 11 40 10          	movups %xmm0,0x10(%rax)
140093869:	0f 10 4b 10          	movups 0x10(%rbx),%xmm1
14009386d:	0f 11 48 20          	movups %xmm1,0x20(%rax)
140093871:	4c 89 6b 10          	mov    %r13,0x10(%rbx)
140093875:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
14009387c:	00
14009387d:	c6 03 00             	movb   $0x0,(%rbx)
140093880:	0f 57 c0             	xorps  %xmm0,%xmm0
140093883:	0f 11 40 30          	movups %xmm0,0x30(%rax)
140093887:	0f 11 40 40          	movups %xmm0,0x40(%rax)
14009388b:	0f 11 40 50          	movups %xmm0,0x50(%rax)
14009388f:	0f 11 40 38          	movups %xmm0,0x38(%rax)
140093893:	4c 89 68 48          	mov    %r13,0x48(%rax)
140093897:	48 c7 40 50 0f 00 00 	movq   $0xf,0x50(%rax)
14009389e:	00
14009389f:	c6 40 38 00          	movb   $0x0,0x38(%rax)
1400938a3:	48 8b 55 10          	mov    0x10(%rbp),%rdx
1400938a7:	48 83 c2 01          	add    $0x1,%rdx
1400938ab:	0f 57 c0             	xorps  %xmm0,%xmm0
1400938ae:	78 07                	js     0x1400938b7
1400938b0:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
1400938b5:	eb 18                	jmp    0x1400938cf
1400938b7:	48 8b ca             	mov    %rdx,%rcx
1400938ba:	48 d1 e9             	shr    $1,%rcx
1400938bd:	48 8b c2             	mov    %rdx,%rax
1400938c0:	83 e0 01             	and    $0x1,%eax
1400938c3:	48 0b c8             	or     %rax,%rcx
1400938c6:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
1400938cb:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1400938cf:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
1400938d3:	0f 57 c9             	xorps  %xmm1,%xmm1
1400938d6:	48 85 c9             	test   %rcx,%rcx
1400938d9:	78 07                	js     0x1400938e2
1400938db:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
1400938e0:	eb 15                	jmp    0x1400938f7
1400938e2:	48 8b c1             	mov    %rcx,%rax
1400938e5:	48 d1 e8             	shr    $1,%rax
1400938e8:	83 e1 01             	and    $0x1,%ecx
1400938eb:	48 0b c1             	or     %rcx,%rax
1400938ee:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
1400938f3:	f3 0f 58 c9          	addss  %xmm1,%xmm1
1400938f7:	f3 0f 5e c1          	divss  %xmm1,%xmm0
1400938fb:	0f 2f 45 00          	comiss 0x0(%rbp),%xmm0
1400938ff:	0f 86 b8 00 00 00    	jbe    0x1400939bd
140093905:	48 8b cd             	mov    %rbp,%rcx
140093908:	e8 e3 c0 02 00       	call   0x1400bf9f0
14009390d:	48 8b d0             	mov    %rax,%rdx
140093910:	48 8b cd             	mov    %rbp,%rcx
140093913:	e8 b8 c7 02 00       	call   0x1400c00d0
140093918:	48 8b 45 30          	mov    0x30(%rbp),%rax
14009391c:	48 23 c7             	and    %rdi,%rax
14009391f:	48 03 c0             	add    %rax,%rax
140093922:	4c 8b 6d 18          	mov    0x18(%rbp),%r13
140093926:	49 8b 5c c5 08       	mov    0x8(%r13,%rax,8),%rbx
14009392b:	49 8b 0f             	mov    (%r15),%rcx
14009392e:	48 3b d9             	cmp    %rcx,%rbx
140093931:	75 07                	jne    0x14009393a
140093933:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140093938:	eb 6f                	jmp    0x1400939a9
14009393a:	4d 8b 6c c5 00       	mov    0x0(%r13,%rax,8),%r13
14009393f:	4d 8b 7e 20          	mov    0x20(%r14),%r15
140093943:	0f 1f 40 00          	nopl   0x0(%rax)
140093947:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)