140a816ce:	0f 29 44 24 40       	movaps %xmm0,0x40(%rsp)
140a816d3:	4c 8b c0             	mov    %rax,%r8
140a816d6:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140a816db:	48 8b ce             	mov    %rsi,%rcx
140a816de:	e8 ad 63 76 ff       	call   0x1401e7a90
140a816e3:	48 8b d8             	mov    %rax,%rbx
140a816e6:	48 83 7b 28 00       	cmpq   $0x0,0x28(%rbx)
140a816eb:	75 58                	jne    0x140a81745
140a816ed:	4c 8b 55 08          	mov    0x8(%rbp),%r10
140a816f1:	49 8b 0a             	mov    (%r10),%rcx
140a816f4:	48 8b 41 08          	mov    0x8(%rcx),%rax
140a816f8:	49 8b 14 24          	mov    (%r12),%rdx
140a816fc:	48 89 94 24 c0 00 00 	mov    %rdx,0xc0(%rsp)
140a81703:	00
140a81704:	48 85 d2             	test   %rdx,%rdx
140a81707:	74 05                	je     0x140a8170e
140a81709:	f0 48 ff 42 08       	lock incq 0x8(%rdx)
140a8170e:	4c 8b cf             	mov    %rdi,%r9
140a81711:	4c 8d 84 24 c0 00 00 	lea    0xc0(%rsp),%r8
140a81718:	00
140a81719:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140a8171e:	49 8b ca             	mov    %r10,%rcx
140a81721:	ff 15 f9 22 50 00    	call   *0x5022f9(%rip)        # 0x140f83a20
140a81727:	48 8b 53 28          	mov    0x28(%rbx),%rdx
140a8172b:	48 8b 08             	mov    (%rax),%rcx
140a8172e:	48 89 4b 28          	mov    %rcx,0x28(%rbx)
140a81732:	48 89 10             	mov    %rdx,(%rax)
140a81735:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140a8173a:	48 85 c9             	test   %rcx,%rcx
140a8173d:	74 06                	je     0x140a81745
140a8173f:	e8 8c 69 f8 ff       	call   0x140a080d0
140a81744:	90                   	nop
140a81745:	48 8b 43 28          	mov    0x28(%rbx),%rax
140a81749:	49 89 06             	mov    %rax,(%r14)
140a8174c:	48 85 c0             	test   %rax,%rax
140a8174f:	74 04                	je     0x140a81755
140a81751:	f0 48 ff 00          	lock incq (%rax)
140a81755:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140a8175a:	e8 09 ba 37 00       	call   0x140dfd168
140a8175f:	49 8b c6             	mov    %r14,%rax
140a81762:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
140a81769:	00
140a8176a:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140a8176e:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140a81772:	49 8b 73 48          	mov    0x48(%r11),%rsi
140a81776:	49 8b e3             	mov    %r11,%rsp
140a81779:	41 5f                	pop    %r15
140a8177b:	41 5e                	pop    %r14
140a8177d:	41 5d                	pop    %r13
140a8177f:	41 5c                	pop    %r12
140a81781:	5f                   	pop    %rdi
140a81782:	c3                   	ret
140a81783:	e8 68 70 76 ff       	call   0x1401e87f0
140a81788:	90                   	nop
140a81789:	b9 05 00 00 00       	mov    $0x5,%ecx
140a8178e:	e8 49 bc 37 00       	call   0x140dfd3dc
140a81793:	cc                   	int3
140a81794:	ff c8                	dec    %eax
140a81796:	89 43 4c             	mov    %eax,0x4c(%rbx)
140a81799:	b9 06 00 00 00       	mov    $0x6,%ecx
140a8179e:	e8 39 bc 37 00       	call   0x140dfd3dc
140a817a3:	cc                   	int3
140a817a4:	cc                   	int3
140a817a5:	cc                   	int3
140a817a6:	cc                   	int3
140a817a7:	cc                   	int3
140a817a8:	cc                   	int3
140a817a9:	cc                   	int3
140a817aa:	cc                   	int3
140a817ab:	cc                   	int3
140a817ac:	cc                   	int3
140a817ad:	cc                   	int3
140a817ae:	cc                   	int3
140a817af:	cc                   	int3
140a817b0:	40 56                	rex push %rsi
140a817b2:	57                   	push   %rdi
140a817b3:	41 56                	push   %r14
140a817b5:	48 83 ec 20          	sub    $0x20,%rsp
140a817b9:	4c 8b 71 30          	mov    0x30(%rcx),%r14
140a817bd:	48 8b f2             	mov    %rdx,%rsi
140a817c0:	48 8b 41 08          	mov    0x8(%rcx),%rax
140a817c4:	4d 23 f1             	and    %r9,%r14
140a817c7:	49 c1 e6 04          	shl    $0x4,%r14
140a817cb:	4c 03 71 18          	add    0x18(%rcx),%r14
140a817cf:	49 8b 7e 08          	mov    0x8(%r14),%rdi
140a817d3:	48 3b f8             	cmp    %rax,%rdi
140a817d6:	75 17                	jne    0x140a817ef
140a817d8:	48 89 02             	mov    %rax,(%rdx)
140a817db:	48 8b c2             	mov    %rdx,%rax
140a817de:	48 c7 42 08 00 00 00 	movq   $0x0,0x8(%rdx)
140a817e5:	00
140a817e6:	48 83 c4 20          	add    $0x20,%rsp
140a817ea:	41 5e                	pop    %r14
140a817ec:	5f                   	pop    %rdi
140a817ed:	5e                   	pop    %rsi
140a817ee:	c3                   	ret
140a817ef:	4d 8b 36             	mov    (%r14),%r14
140a817f2:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
140a817f7:	49 8b 18             	mov    (%r8),%rbx
140a817fa:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
140a817ff:	0f b7 2b             	movzwl (%rbx),%ebp
140a81802:	48 8b 57 10          	mov    0x10(%rdi),%rdx
140a81806:	0f b7 02             	movzwl (%rdx),%eax
140a81809:	3b e8                	cmp    %eax,%ebp
140a8180b:	75 17                	jne    0x140a81824
140a8180d:	4c 8b c5             	mov    %rbp,%r8
140a81810:	48 8d 4b 02          	lea    0x2(%rbx),%rcx
140a81814:	4d 03 c0             	add    %r8,%r8
140a81817:	48 83 c2 02          	add    $0x2,%rdx
140a8181b:	e8 30 e2 45 00       	call   0x140edfa50
140a81820:	85 c0                	test   %eax,%eax
140a81822:	74 0b                	je     0x140a8182f
140a81824:	49 3b fe             	cmp    %r14,%rdi
140a81827:	74 12                	je     0x140a8183b
140a81829:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
140a8182d:	eb d3                	jmp    0x140a81802
140a8182f:	48 8b 07             	mov    (%rdi),%rax
140a81832:	48 89 06             	mov    %rax,(%rsi)
140a81835:	48 89 7e 08          	mov    %rdi,0x8(%rsi)
140a81839:	eb 0b                	jmp    0x140a81846
140a8183b:	48 89 3e             	mov    %rdi,(%rsi)
140a8183e:	48 c7 46 08 00 00 00 	movq   $0x0,0x8(%rsi)
140a81845:	00
140a81846:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140a8184b:	48 8b c6             	mov    %rsi,%rax
140a8184e:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140a81853:	48 83 c4 20          	add    $0x20,%rsp
140a81857:	41 5e                	pop    %r14
140a81859:	5f                   	pop    %rdi
140a8185a:	5e                   	pop    %rsi
140a8185b:	c3                   	ret
140a8185c:	cc                   	int3
140a8185d:	cc                   	int3
140a8185e:	cc                   	int3
140a8185f:	cc                   	int3
140a81860:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140a81865:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140a8186a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140a8186f:	57                   	push   %rdi
140a81870:	41 54                	push   %r12
140a81872:	41 55                	push   %r13
140a81874:	41 56                	push   %r14
140a81876:	41 57                	push   %r15
140a81878:	48 83 ec 40          	sub    $0x40,%rsp
140a8187c:	49 8b d8             	mov    %r8,%rbx
140a8187f:	4c 8b f2             	mov    %rdx,%r14
140a81882:	4c 8b f9             	mov    %rcx,%r15
140a81885:	4d 8b 68 08          	mov    0x8(%r8),%r13
140a81889:	4d 8b cd             	mov    %r13,%r9
140a8188c:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140a81891:	e8 1a ff ff ff       	call   0x140a817b0
140a81896:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140a8189b:	48 85 c0             	test   %rax,%rax
140a8189e:	74 0d                	je     0x140a818ad
140a818a0:	49 89 06             	mov    %rax,(%r14)
140a818a3:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140a818a8:	e9 08 02 00 00       	jmp    0x140a81ab5
140a818ad:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
140a818b4:	ff ff 07
140a818b7:	49 39 47 10          	cmp    %rax,0x10(%r15)
140a818bb:	0f 84 15 02 00 00    	je     0x140a81ad6
140a818c1:	49 8d 6f 08          	lea    0x8(%r15),%rbp
140a818c5:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
140a818ca:	33 ff                	xor    %edi,%edi
140a818cc:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140a818d1:	b9 20 00 00 00       	mov    $0x20,%ecx
140a818d6:	e8 2d 98 39 00       	call   0x140e1b108
140a818db:	48 8b f0             	mov    %rax,%rsi
140a818de:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140a818e3:	48 8b 0b             	mov    (%rbx),%rcx
140a818e6:	48 89 48 10          	mov    %rcx,0x10(%rax)
140a818ea:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140a818ee:	48 89 48 18          	mov    %rcx,0x18(%rax)
140a818f2:	48 89 3b             	mov    %rdi,(%rbx)
140a818f5:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140a818f9:	49 8b 4f 10          	mov    0x10(%r15),%rcx
140a818fd:	48 83 c1 01          	add    $0x1,%rcx
140a81901:	0f 57 c0             	xorps  %xmm0,%xmm0
140a81904:	78 07                	js     0x140a8190d
140a81906:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140a8190b:	eb 15                	jmp    0x140a81922
140a8190d:	48 8b c1             	mov    %rcx,%rax
140a81910:	48 d1 e8             	shr    $1,%rax
140a81913:	83 e1 01             	and    $0x1,%ecx
140a81916:	48 0b c1             	or     %rcx,%rax
140a81919:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140a8191e:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140a81922:	49 8b 5f 38          	mov    0x38(%r15),%rbx
140a81926:	f3 41 0f 10 1f       	movss  (%r15),%xmm3
140a8192b:	0f 57 d2             	xorps  %xmm2,%xmm2
140a8192e:	48 85 db             	test   %rbx,%rbx
140a81931:	78 07                	js     0x140a8193a
140a81933:	f3 48 0f 2a d3       	cvtsi2ss %rbx,%xmm2
140a81938:	eb 18                	jmp    0x140a81952
140a8193a:	48 8b cb             	mov    %rbx,%rcx
140a8193d:	48 d1 e9             	shr    $1,%rcx
140a81940:	48 8b c3             	mov    %rbx,%rax
140a81943:	83 e0 01             	and    $0x1,%eax
140a81946:	48 0b c8             	or     %rax,%rcx
140a81949:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140a8194e:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140a81952:	0f 28 c8             	movaps %xmm0,%xmm1
140a81955:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140a81959:	0f 2f cb             	comiss %xmm3,%xmm1
140a8195c:	0f 86 fb 00 00 00    	jbe    0x140a81a5d
140a81962:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140a81966:	e8 b5 f7 3a 00       	call   0x140e31120
140a8196b:	33 c9                	xor    %ecx,%ecx
140a8196d:	f3 0f 10 0d ef cc 52 	movss  0x52ccef(%rip),%xmm1        # 0x140fae664
140a81974:	00
140a81975:	0f 2f c1             	comiss %xmm1,%xmm0
140a81978:	72 16                	jb     0x140a81990
140a8197a:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140a8197e:	0f 2f c1             	comiss %xmm1,%xmm0
140a81981:	73 0d                	jae    0x140a81990
140a81983:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140a8198a:	00 00 80
140a8198d:	48 8b c8             	mov    %rax,%rcx
140a81990:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140a81995:	48 03 c1             	add    %rcx,%rax
140a81998:	b9 08 00 00 00       	mov    $0x8,%ecx
140a8199d:	48 3b c1             	cmp    %rcx,%rax
140a819a0:	48 0f 47 c8          	cmova  %rax,%rcx
140a819a4:	48 3b d9             	cmp    %rcx,%rbx
140a819a7:	73 19                	jae    0x140a819c2
140a819a9:	48 81 fb 00 02 00 00 	cmp    $0x200,%rbx
140a819b0:	73 0d                	jae    0x140a819bf
140a819b2:	48 8d 1c dd 00 00 00 	lea    0x0(,%rbx,8),%rbx
140a819b9:	00
140a819ba:	48 3b d9             	cmp    %rcx,%rbx
140a819bd:	73 03                	jae    0x140a819c2
140a819bf:	48 8b d9             	mov    %rcx,%rbx
140a819c2:	48 8b d3             	mov    %rbx,%rdx
140a819c5:	49 8b cf             	mov    %r15,%rcx
140a819c8:	e8 13 04 00 00       	call   0x140a81de0
140a819cd:	4d 8b 67 30          	mov    0x30(%r15),%r12
140a819d1:	4d 23 e5             	and    %r13,%r12
140a819d4:	4d 03 e4             	add    %r12,%r12
140a819d7:	49 8b 4f 18          	mov    0x18(%r15),%rcx
140a819db:	4a 8b 7c e1 08       	mov    0x8(%rcx,%r12,8),%rdi
140a819e0:	48 8b 45 00          	mov    0x0(%rbp),%rax
140a819e4:	48 3b f8             	cmp    %rax,%rdi
140a819e7:	75 07                	jne    0x140a819f0
140a819e9:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140a819ee:	eb 59                	jmp    0x140a81a49
140a819f0:	4e 8b 24 e1          	mov    (%rcx,%r12,8),%r12
140a819f4:	48 8b 5e 10          	mov    0x10(%rsi),%rbx
140a819f8:	0f b7 2b             	movzwl (%rbx),%ebp
140a819fb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140a81a00:	48 8b 57 10          	mov    0x10(%rdi),%rdx
140a81a04:	0f b7 02             	movzwl (%rdx),%eax
140a81a07:	3b e8                	cmp    %eax,%ebp
140a81a09:	75 17                	jne    0x140a81a22
140a81a0b:	4c 8b c5             	mov    %rbp,%r8
140a81a0e:	4d 03 c0             	add    %r8,%r8
140a81a11:	48 83 c2 02          	add    $0x2,%rdx
140a81a15:	48 8d 4b 02          	lea    0x2(%rbx),%rcx
140a81a19:	e8 32 e0 45 00       	call   0x140edfa50
140a81a1e:	85 c0                	test   %eax,%eax
140a81a20:	74 0b                	je     0x140a81a2d
140a81a22:	49 3b fc             	cmp    %r12,%rdi
140a81a25:	74 19                	je     0x140a81a40
140a81a27:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
140a81a2b:	eb d3                	jmp    0x140a81a00
140a81a2d:	48 8b 07             	mov    (%rdi),%rax
140a81a30:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140a81a35:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140a81a3a:	49 8d 6f 08          	lea    0x8(%r15),%rbp
140a81a3e:	eb 12                	jmp    0x140a81a52
140a81a40:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140a81a45:	49 8d 6f 08          	lea    0x8(%r15),%rbp
140a81a49:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140a81a50:	00 00
140a81a52:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
140a81a57:	66 0f 7f 44 24 20    	movdqa %xmm0,0x20(%rsp)
140a81a5d:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
140a81a62:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140a81a66:	49 ff 47 10          	incq   0x10(%r15)
140a81a6a:	48 89 16             	mov    %rdx,(%rsi)
140a81a6d:	4c 89 46 08          	mov    %r8,0x8(%rsi)
140a81a71:	49 89 30             	mov    %rsi,(%r8)
140a81a74:	48 89 72 08          	mov    %rsi,0x8(%rdx)
140a81a78:	49 8b 4f 18          	mov    0x18(%r15),%rcx
140a81a7c:	49 8b 47 30          	mov    0x30(%r15),%rax
140a81a80:	49 23 c5             	and    %r13,%rax
140a81a83:	48 03 c0             	add    %rax,%rax
140a81a86:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
140a81a8a:	4c 3b 4d 00          	cmp    0x0(%rbp),%r9
140a81a8e:	75 06                	jne    0x140a81a96
140a81a90:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140a81a94:	eb 12                	jmp    0x140a81aa8
140a81a96:	4c 3b ca             	cmp    %rdx,%r9
140a81a99:	75 06                	jne    0x140a81aa1
140a81a9b:	48 89 34 c1          	mov    %rsi,(%rcx,%rax,8)
140a81a9f:	eb 0c                	jmp    0x140a81aad
140a81aa1:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
140a81aa6:	75 05                	jne    0x140a81aad
140a81aa8:	48 89 74 c1 08       	mov    %rsi,0x8(%rcx,%rax,8)
140a81aad:	49 89 36             	mov    %rsi,(%r14)
140a81ab0:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
140a81ab5:	49 8b c6             	mov    %r14,%rax
140a81ab8:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
140a81abd:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140a81ac1:	49 8b 6b 40          	mov    0x40(%r11),%rbp
140a81ac5:	49 8b 73 48          	mov    0x48(%r11),%rsi
140a81ac9:	49 8b e3             	mov    %r11,%rsp
140a81acc:	41 5f                	pop    %r15
140a81ace:	41 5e                	pop    %r14
140a81ad0:	41 5d                	pop    %r13
140a81ad2:	41 5c                	pop    %r12
140a81ad4:	5f                   	pop    %rdi
140a81ad5:	c3                   	ret
140a81ad6:	48 8d 0d c3 c9 52 00 	lea    0x52c9c3(%rip),%rcx        # 0x140fae4a0
140a81add:	e8 d2 98 37 00       	call   0x140dfb3b4
140a81ae2:	cc                   	int3
140a81ae3:	cc                   	int3
140a81ae4:	cc                   	int3
140a81ae5:	cc                   	int3
140a81ae6:	cc                   	int3
140a81ae7:	cc                   	int3
140a81ae8:	cc                   	int3
140a81ae9:	cc                   	int3
140a81aea:	cc                   	int3
140a81aeb:	cc                   	int3
140a81aec:	cc                   	int3
140a81aed:	cc                   	int3
140a81aee:	cc                   	int3
140a81aef:	cc                   	int3
140a81af0:	48 83 ec 08          	sub    $0x8,%rsp
140a81af4:	4c 8b d2             	mov    %rdx,%r10
140a81af7:	33 c0                	xor    %eax,%eax
140a81af9:	48 2b d1             	sub    %rcx,%rdx
140a81afc:	4c 8b c9             	mov    %rcx,%r9
140a81aff:	48 83 c2 07          	add    $0x7,%rdx
140a81b03:	48 c1 ea 03          	shr    $0x3,%rdx
140a81b07:	49 3b ca             	cmp    %r10,%rcx
140a81b0a:	48 0f 47 d0          	cmova  %rax,%rdx
140a81b0e:	48 85 d2             	test   %rdx,%rdx
140a81b11:	74 3f                	je     0x140a81b52
140a81b13:	48 83 fa 02          	cmp    $0x2,%rdx
140a81b17:	72 39                	jb     0x140a81b52
140a81b19:	49 8b 00             	mov    (%r8),%rax
140a81b1c:	48 83 c1 f8          	add    $0xfffffffffffffff8,%rcx
140a81b20:	48 8d 0c d1          	lea    (%rcx,%rdx,8),%rcx
140a81b24:	4d 3b c8             	cmp    %r8,%r9
140a81b27:	77 05                	ja     0x140a81b2e
140a81b29:	49 3b c8             	cmp    %r8,%rcx
140a81b2c:	73 24                	jae    0x140a81b52
140a81b2e:	48 89 3c 24          	mov    %rdi,(%rsp)
140a81b32:	48 83 e2 fe          	and    $0xfffffffffffffffe,%rdx