1405a9527:	48 8b 09             	mov    (%rcx),%rcx
1405a952a:	4c 3b 40 10          	cmp    0x10(%rax),%r8
1405a952e:	74 13                	je     0x1405a9543
1405a9530:	48 3b c1             	cmp    %rcx,%rax
1405a9533:	74 0c                	je     0x1405a9541
1405a9535:	48 8b 40 08          	mov    0x8(%rax),%rax
1405a9539:	4c 3b 40 10          	cmp    0x10(%rax),%r8
1405a953d:	75 f1                	jne    0x1405a9530
1405a953f:	eb 02                	jmp    0x1405a9543
1405a9541:	33 c0                	xor    %eax,%eax
1405a9543:	48 85 c0             	test   %rax,%rax
1405a9546:	48 0f 44 c2          	cmove  %rdx,%rax
1405a954a:	48 81 c7 40 01 00 00 	add    $0x140,%rdi
1405a9551:	48 3b c2             	cmp    %rdx,%rax
1405a9554:	75 1c                	jne    0x1405a9572
1405a9556:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1405a955b:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1405a9560:	48 8b cf             	mov    %rdi,%rcx
1405a9563:	e8 08 f7 ff ff       	call   0x1405a8c70
1405a9568:	48 8b 08             	mov    (%rax),%rcx
1405a956b:	c7 41 18 00 00 00 00 	movl   $0x0,0x18(%rcx)
1405a9572:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1405a9577:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1405a957c:	48 8b cf             	mov    %rdi,%rcx
1405a957f:	e8 ec f6 ff ff       	call   0x1405a8c70
1405a9584:	48 8b 08             	mov    (%rax),%rcx
1405a9587:	ff 41 18             	incl   0x18(%rcx)
1405a958a:	48 8b cb             	mov    %rbx,%rcx
1405a958d:	e8 d6 3b 85 00       	call   0x140dfd168
1405a9592:	32 c0                	xor    %al,%al
1405a9594:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1405a9599:	48 83 c4 30          	add    $0x30,%rsp
1405a959d:	5f                   	pop    %rdi
1405a959e:	c3                   	ret
1405a959f:	ff c8                	dec    %eax
1405a95a1:	89 43 4c             	mov    %eax,0x4c(%rbx)
1405a95a4:	b9 06 00 00 00       	mov    $0x6,%ecx
1405a95a9:	e8 2e 3e 85 00       	call   0x140dfd3dc
1405a95ae:	cc                   	int3
1405a95af:	b9 05 00 00 00       	mov    $0x5,%ecx
1405a95b4:	e8 23 3e 85 00       	call   0x140dfd3dc
1405a95b9:	cc                   	int3
1405a95ba:	cc                   	int3
1405a95bb:	cc                   	int3
1405a95bc:	cc                   	int3
1405a95bd:	cc                   	int3
1405a95be:	cc                   	int3
1405a95bf:	cc                   	int3
1405a95c0:	45 33 c0             	xor    %r8d,%r8d
1405a95c3:	ba 03 00 00 00       	mov    $0x3,%edx
1405a95c8:	e9 a3 e2 14 00       	jmp    0x1406f7870
1405a95cd:	cc                   	int3
1405a95ce:	cc                   	int3
1405a95cf:	cc                   	int3
1405a95d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1405a95d5:	57                   	push   %rdi
1405a95d6:	48 83 ec 20          	sub    $0x20,%rsp
1405a95da:	48 8b 51 10          	mov    0x10(%rcx),%rdx
1405a95de:	48 8b f9             	mov    %rcx,%rdi
1405a95e1:	48 83 c2 01          	add    $0x1,%rdx
1405a95e5:	48 8b 59 38          	mov    0x38(%rcx),%rbx
1405a95e9:	0f 57 c0             	xorps  %xmm0,%xmm0
1405a95ec:	78 07                	js     0x1405a95f5
1405a95ee:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
1405a95f3:	eb 15                	jmp    0x1405a960a
1405a95f5:	48 8b c2             	mov    %rdx,%rax
1405a95f8:	83 e2 01             	and    $0x1,%edx
1405a95fb:	48 d1 e8             	shr    $1,%rax
1405a95fe:	48 0b c2             	or     %rdx,%rax
1405a9601:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
1405a9606:	f3 0f 58 c0          	addss  %xmm0,%xmm0
1405a960a:	f3 0f 5e 01          	divss  (%rcx),%xmm0
1405a960e:	e8 0d 7b 88 00       	call   0x140e31120
1405a9613:	f3 0f 10 0d 49 50 a0 	movss  0xa05049(%rip),%xmm1        # 0x140fae664
1405a961a:	00
1405a961b:	33 c9                	xor    %ecx,%ecx
1405a961d:	0f 2f c1             	comiss %xmm1,%xmm0
1405a9620:	72 16                	jb     0x1405a9638
1405a9622:	f3 0f 5c c1          	subss  %xmm1,%xmm0
1405a9626:	0f 2f c1             	comiss %xmm1,%xmm0
1405a9629:	73 0d                	jae    0x1405a9638
1405a962b:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
1405a9632:	00 00 80
1405a9635:	48 8b c8             	mov    %rax,%rcx
1405a9638:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
1405a963d:	48 03 c1             	add    %rcx,%rax
1405a9640:	b9 08 00 00 00       	mov    $0x8,%ecx
1405a9645:	48 3b c1             	cmp    %rcx,%rax
1405a9648:	48 0f 47 c8          	cmova  %rax,%rcx
1405a964c:	48 3b d9             	cmp    %rcx,%rbx
1405a964f:	73 19                	jae    0x1405a966a
1405a9651:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
1405a9658:	73 0d                	jae    0x1405a9667
1405a965a:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
1405a9661:	00
1405a9662:	48 3b d9             	cmp    %rcx,%rbx
1405a9665:	73 03                	jae    0x1405a966a
1405a9667:	48 8b d9             	mov    %rcx,%rbx
1405a966a:	48 8b d3             	mov    %rbx,%rdx
1405a966d:	48 8b cf             	mov    %rdi,%rcx
1405a9670:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1405a9675:	48 83 c4 20          	add    $0x20,%rsp
1405a9679:	5f                   	pop    %rdi
1405a967a:	e9 61 7c fb ff       	jmp    0x1405612e0
1405a967f:	cc                   	int3
1405a9680:	40 55                	rex push %rbp
1405a9682:	56                   	push   %rsi
1405a9683:	41 56                	push   %r14
1405a9685:	48 83 ec 40          	sub    $0x40,%rsp
1405a9689:	49 8b e8             	mov    %r8,%rbp
1405a968c:	4c 8b f2             	mov    %rdx,%r14
1405a968f:	48 8b f1             	mov    %rcx,%rsi
1405a9692:	49 3b d0             	cmp    %r8,%rdx
1405a9695:	0f 84 ea 01 00 00    	je     0x1405a9885
1405a969b:	48 8b 51 18          	mov    0x18(%rcx),%rdx
1405a969f:	49 b8 b3 01 00 00 00 	movabs $0x100000001b3,%r8
1405a96a6:	01 00 00
1405a96a9:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
1405a96ae:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1405a96b5:	9c f2 cb
1405a96b8:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1405a96bd:	49 8b de             	mov    %r14,%rbx
1405a96c0:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
1405a96c5:	4c 8b 61 08          	mov    0x8(%rcx),%r12
1405a96c9:	41 0f b6 4e 10       	movzbl 0x10(%r14),%ecx
1405a96ce:	48 33 c8             	xor    %rax,%rcx
1405a96d1:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
1405a96d6:	41 0f b6 46 11       	movzbl 0x11(%r14),%eax
1405a96db:	4d 8b 6e 08          	mov    0x8(%r14),%r13
1405a96df:	49 0f af c8          	imul   %r8,%rcx
1405a96e3:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1405a96e8:	48 33 c8             	xor    %rax,%rcx
1405a96eb:	48 89 54 24 78       	mov    %rdx,0x78(%rsp)
1405a96f0:	41 0f b6 46 12       	movzbl 0x12(%r14),%eax
1405a96f5:	49 0f af c8          	imul   %r8,%rcx
1405a96f9:	48 33 c8             	xor    %rax,%rcx
1405a96fc:	41 0f b6 46 13       	movzbl 0x13(%r14),%eax
1405a9701:	49 0f af c8          	imul   %r8,%rcx
1405a9705:	48 33 c8             	xor    %rax,%rcx
1405a9708:	41 0f b6 46 14       	movzbl 0x14(%r14),%eax
1405a970d:	49 0f af c8          	imul   %r8,%rcx
1405a9711:	48 33 c8             	xor    %rax,%rcx
1405a9714:	41 0f b6 46 15       	movzbl 0x15(%r14),%eax
1405a9719:	49 0f af c8          	imul   %r8,%rcx
1405a971d:	48 33 c8             	xor    %rax,%rcx
1405a9720:	41 0f b6 46 16       	movzbl 0x16(%r14),%eax
1405a9725:	49 0f af c8          	imul   %r8,%rcx
1405a9729:	48 33 c8             	xor    %rax,%rcx
1405a972c:	41 0f b6 46 17       	movzbl 0x17(%r14),%eax
1405a9731:	49 0f af c8          	imul   %r8,%rcx
1405a9735:	48 33 c8             	xor    %rax,%rcx
1405a9738:	48 8b 46 30          	mov    0x30(%rsi),%rax
1405a973c:	49 0f af c8          	imul   %r8,%rcx
1405a9740:	48 23 c1             	and    %rcx,%rax
1405a9743:	48 c1 e0 04          	shl    $0x4,%rax
1405a9747:	48 03 c2             	add    %rdx,%rax
1405a974a:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
1405a974f:	48 8b 08             	mov    (%rax),%rcx
1405a9752:	4c 8b 78 08          	mov    0x8(%rax),%r15
1405a9756:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
1405a975b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1405a9760:	48 8b cb             	mov    %rbx,%rcx
1405a9763:	48 8b fb             	mov    %rbx,%rdi
1405a9766:	48 8b 1b             	mov    (%rbx),%rbx
1405a9769:	ba 20 00 00 00       	mov    $0x20,%edx
1405a976e:	e8 d1 19 87 00       	call   0x140e1b144
1405a9773:	48 ff 4e 10          	decq   0x10(%rsi)
1405a9777:	49 3b ff             	cmp    %r15,%rdi
1405a977a:	74 1d                	je     0x1405a9799
1405a977c:	48 3b dd             	cmp    %rbp,%rbx
1405a977f:	75 df                	jne    0x1405a9760
1405a9781:	4c 39 74 24 70       	cmp    %r14,0x70(%rsp)
1405a9786:	0f 85 d8 00 00 00    	jne    0x1405a9864
1405a978c:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
1405a9791:	48 89 19             	mov    %rbx,(%rcx)
1405a9794:	e9 cb 00 00 00       	jmp    0x1405a9864
1405a9799:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
1405a979e:	4c 39 74 24 70       	cmp    %r14,0x70(%rsp)
1405a97a3:	75 08                	jne    0x1405a97ad
1405a97a5:	4c 89 21             	mov    %r12,(%rcx)
1405a97a8:	49 8b c4             	mov    %r12,%rax
1405a97ab:	eb 03                	jmp    0x1405a97b0
1405a97ad:	49 8b c5             	mov    %r13,%rax
1405a97b0:	48 89 41 08          	mov    %rax,0x8(%rcx)
1405a97b4:	48 3b dd             	cmp    %rbp,%rbx
1405a97b7:	0f 84 a7 00 00 00    	je     0x1405a9864
1405a97bd:	0f 1f 00             	nopl   (%rax)
1405a97c0:	44 0f b6 7b 10       	movzbl 0x10(%rbx),%r15d
1405a97c5:	48 ba b3 01 00 00 00 	movabs $0x100000001b3,%rdx
1405a97cc:	01 00 00
1405a97cf:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
1405a97d6:	9c f2 cb
1405a97d9:	4c 33 f8             	xor    %rax,%r15
1405a97dc:	0f b6 43 11          	movzbl 0x11(%rbx),%eax
1405a97e0:	4c 0f af fa          	imul   %rdx,%r15
1405a97e4:	4c 33 f8             	xor    %rax,%r15
1405a97e7:	0f b6 43 12          	movzbl 0x12(%rbx),%eax
1405a97eb:	4c 0f af fa          	imul   %rdx,%r15
1405a97ef:	4c 33 f8             	xor    %rax,%r15
1405a97f2:	0f b6 43 13          	movzbl 0x13(%rbx),%eax
1405a97f6:	4c 0f af fa          	imul   %rdx,%r15
1405a97fa:	4c 33 f8             	xor    %rax,%r15
1405a97fd:	0f b6 43 14          	movzbl 0x14(%rbx),%eax
1405a9801:	4c 0f af fa          	imul   %rdx,%r15
1405a9805:	4c 33 f8             	xor    %rax,%r15
1405a9808:	0f b6 43 15          	movzbl 0x15(%rbx),%eax
1405a980c:	4c 0f af fa          	imul   %rdx,%r15
1405a9810:	4c 33 f8             	xor    %rax,%r15
1405a9813:	0f b6 43 16          	movzbl 0x16(%rbx),%eax
1405a9817:	4c 0f af fa          	imul   %rdx,%r15
1405a981b:	4c 33 f8             	xor    %rax,%r15
1405a981e:	0f b6 43 17          	movzbl 0x17(%rbx),%eax
1405a9822:	4c 0f af fa          	imul   %rdx,%r15
1405a9826:	4c 33 f8             	xor    %rax,%r15
1405a9829:	4c 0f af fa          	imul   %rdx,%r15
1405a982d:	4c 23 7e 30          	and    0x30(%rsi),%r15
1405a9831:	49 c1 e7 04          	shl    $0x4,%r15
1405a9835:	4c 03 7c 24 78       	add    0x78(%rsp),%r15
1405a983a:	4d 8b 77 08          	mov    0x8(%r15),%r14
1405a983e:	66 90                	xchg   %ax,%ax
1405a9840:	48 8b cb             	mov    %rbx,%rcx
1405a9843:	48 8b fb             	mov    %rbx,%rdi
1405a9846:	48 8b 1b             	mov    (%rbx),%rbx
1405a9849:	ba 20 00 00 00       	mov    $0x20,%edx
1405a984e:	e8 f1 18 87 00       	call   0x140e1b144
1405a9853:	48 ff 4e 10          	decq   0x10(%rsi)
1405a9857:	49 3b fe             	cmp    %r14,%rdi
1405a985a:	74 35                	je     0x1405a9891
1405a985c:	48 3b dd             	cmp    %rbp,%rbx
1405a985f:	75 df                	jne    0x1405a9840
1405a9861:	49 89 1f             	mov    %rbx,(%r15)
1405a9864:	4c 8b 64 24 30       	mov    0x30(%rsp),%r12
1405a9869:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
1405a986e:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
1405a9873:	49 89 5d 00          	mov    %rbx,0x0(%r13)
1405a9877:	4c 89 6b 08          	mov    %r13,0x8(%rbx)
1405a987b:	4c 8b 6c 24 28       	mov    0x28(%rsp),%r13
1405a9880:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1405a9885:	48 8b c5             	mov    %rbp,%rax
1405a9888:	48 83 c4 40          	add    $0x40,%rsp
1405a988c:	41 5e                	pop    %r14
1405a988e:	5e                   	pop    %rsi
1405a988f:	5d                   	pop    %rbp
1405a9890:	c3                   	ret
1405a9891:	4d 89 27             	mov    %r12,(%r15)
1405a9894:	4d 89 67 08          	mov    %r12,0x8(%r15)
1405a9898:	48 3b dd             	cmp    %rbp,%rbx
1405a989b:	0f 85 1f ff ff ff    	jne    0x1405a97c0
1405a98a1:	eb c1                	jmp    0x1405a9864
1405a98a3:	cc                   	int3
1405a98a4:	cc                   	int3
1405a98a5:	cc                   	int3
1405a98a6:	cc                   	int3
1405a98a7:	cc                   	int3
1405a98a8:	cc                   	int3
1405a98a9:	cc                   	int3
1405a98aa:	cc                   	int3
1405a98ab:	cc                   	int3
1405a98ac:	cc                   	int3
1405a98ad:	cc                   	int3
1405a98ae:	cc                   	int3
1405a98af:	cc                   	int3
1405a98b0:	40 57                	rex push %rdi
1405a98b2:	48 83 ec 20          	sub    $0x20,%rsp
1405a98b6:	48 8b f9             	mov    %rcx,%rdi
1405a98b9:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1405a98bd:	48 85 c9             	test   %rcx,%rcx
1405a98c0:	0f 84 96 00 00 00    	je     0x1405a995c
1405a98c6:	48 8b 47 38          	mov    0x38(%rdi),%rax
1405a98ca:	48 c1 e8 03          	shr    $0x3,%rax
1405a98ce:	48 3b c1             	cmp    %rcx,%rax
1405a98d1:	76 17                	jbe    0x1405a98ea
1405a98d3:	48 8b 57 08          	mov    0x8(%rdi),%rdx
1405a98d7:	48 8b cf             	mov    %rdi,%rcx
1405a98da:	4c 8b c2             	mov    %rdx,%r8
1405a98dd:	48 8b 12             	mov    (%rdx),%rdx
1405a98e0:	48 83 c4 20          	add    $0x20,%rsp
1405a98e4:	5f                   	pop    %rdi
1405a98e5:	e9 96 fd ff ff       	jmp    0x1405a9680
1405a98ea:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1405a98ee:	48 8b 41 08          	mov    0x8(%rcx),%rax
1405a98f2:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
1405a98f9:	48 8b 09             	mov    (%rcx),%rcx
1405a98fc:	48 85 c9             	test   %rcx,%rcx
1405a98ff:	74 29                	je     0x1405a992a
1405a9901:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
1405a9906:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1405a990d:	00 00 00
1405a9910:	48 8b 19             	mov    (%rcx),%rbx
1405a9913:	ba 20 00 00 00       	mov    $0x20,%edx
1405a9918:	e8 27 18 87 00       	call   0x140e1b144
1405a991d:	48 8b cb             	mov    %rbx,%rcx
1405a9920:	48 85 db             	test   %rbx,%rbx
1405a9923:	75 eb                	jne    0x1405a9910
1405a9925:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1405a992a:	48 8b 47 08          	mov    0x8(%rdi),%rax
1405a992e:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
1405a9933:	48 89 00             	mov    %rax,(%rax)
1405a9936:	48 8b 47 08          	mov    0x8(%rdi),%rax
1405a993a:	48 89 40 08          	mov    %rax,0x8(%rax)
1405a993e:	48 c7 47 10 00 00 00 	movq   $0x0,0x10(%rdi)
1405a9945:	00
1405a9946:	48 8b 47 08          	mov    0x8(%rdi),%rax
1405a994a:	48 8b 57 20          	mov    0x20(%rdi),%rdx
1405a994e:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1405a9952:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1405a9957:	e8 84 cb c6 ff       	call   0x1402164e0
1405a995c:	48 83 c4 20          	add    $0x20,%rsp
1405a9960:	5f                   	pop    %rdi
1405a9961:	c3                   	ret
1405a9962:	cc                   	int3
1405a9963:	cc                   	int3
1405a9964:	cc                   	int3
1405a9965:	cc                   	int3
1405a9966:	cc                   	int3
1405a9967:	cc                   	int3
1405a9968:	cc                   	int3
1405a9969:	cc                   	int3
1405a996a:	cc                   	int3
1405a996b:	cc                   	int3
1405a996c:	cc                   	int3
1405a996d:	cc                   	int3
1405a996e:	cc                   	int3
1405a996f:	cc                   	int3
1405a9970:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1405a9975:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1405a997a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1405a997f:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1405a9984:	41 54                	push   %r12
1405a9986:	41 56                	push   %r14
1405a9988:	41 57                	push   %r15
1405a998a:	48 83 ec 50          	sub    $0x50,%rsp
1405a998e:	49 8b f8             	mov    %r8,%rdi
1405a9991:	48 8b da             	mov    %rdx,%rbx
1405a9994:	4c 8b e1             	mov    %rcx,%r12
1405a9997:	48 8b 31             	mov    (%rcx),%rsi
1405a999a:	48 8b 0e             	mov    (%rsi),%rcx
1405a999d:	48 3b ce             	cmp    %rsi,%rcx
1405a99a0:	74 20                	je     0x1405a99c2
1405a99a2:	48 3b df             	cmp    %rdi,%rbx
1405a99a5:	0f 84 c2 00 00 00    	je     0x1405a9a6d
1405a99ab:	8b 43 10             	mov    0x10(%rbx),%eax
1405a99ae:	89 41 10             	mov    %eax,0x10(%rcx)
1405a99b1:	8b 43 14             	mov    0x14(%rbx),%eax
1405a99b4:	89 41 14             	mov    %eax,0x14(%rcx)
1405a99b7:	48 8b 09             	mov    (%rcx),%rcx
1405a99ba:	48 8b 1b             	mov    (%rbx),%rbx
1405a99bd:	48 3b ce             	cmp    %rsi,%rcx
1405a99c0:	75 e0                	jne    0x1405a99a2
1405a99c2:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)