1400145f5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400145fa:	55                   	push   %rbp
1400145fb:	57                   	push   %rdi
1400145fc:	41 55                	push   %r13
1400145fe:	41 56                	push   %r14
140014600:	41 57                	push   %r15
140014602:	48 8b ec             	mov    %rsp,%rbp
140014605:	48 83 ec 40          	sub    $0x40,%rsp
140014609:	48 8b 41 08          	mov    0x8(%rcx),%rax
14001460d:	33 d2                	xor    %edx,%edx
14001460f:	48 8b f9             	mov    %rcx,%rdi
140014612:	48 8b 30             	mov    (%rax),%rsi
140014615:	48 8b 01             	mov    (%rcx),%rax
140014618:	44 8b 30             	mov    (%rax),%r14d
14001461b:	48 85 f6             	test   %rsi,%rsi
14001461e:	75 10                	jne    0x140014630
140014620:	41 8b ce             	mov    %r14d,%ecx
140014623:	e8 f4 53 00 00       	call   0x140019a1c
140014628:	4c 8b f0             	mov    %rax,%r14
14001462b:	e9 a8 00 00 00       	jmp    0x1400146d8
140014630:	4c 8b ce             	mov    %rsi,%r9
140014633:	48 c7 44 24 20 ff ff 	movq   $0x7fffffff,0x20(%rsp)
14001463a:	ff 7f
14001463c:	45 33 c0             	xor    %r8d,%r8d
14001463f:	48 8d 4d 38          	lea    0x38(%rbp),%rcx
140014643:	e8 c4 c6 00 00       	call   0x140020d0c
140014648:	83 f8 16             	cmp    $0x16,%eax
14001464b:	0f 84 11 02 00 00    	je     0x140014862
140014651:	83 f8 22             	cmp    $0x22,%eax
140014654:	0f 84 08 02 00 00    	je     0x140014862
14001465a:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
14001465e:	ba 02 00 00 00       	mov    $0x2,%edx
140014663:	e8 a8 67 00 00       	call   0x14001ae10
140014668:	33 c9                	xor    %ecx,%ecx
14001466a:	48 8b d8             	mov    %rax,%rbx
14001466d:	48 85 c0             	test   %rax,%rax
140014670:	75 20                	jne    0x140014692
140014672:	e8 11 68 00 00       	call   0x14001ae88
140014677:	33 c0                	xor    %eax,%eax
140014679:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
14001467e:	49 8b 5b 40          	mov    0x40(%r11),%rbx
140014682:	49 8b 73 48          	mov    0x48(%r11),%rsi
140014686:	49 8b e3             	mov    %r11,%rsp
140014689:	41 5f                	pop    %r15
14001468b:	41 5e                	pop    %r14
14001468d:	41 5d                	pop    %r13
14001468f:	5f                   	pop    %rdi
140014690:	5d                   	pop    %rbp
140014691:	c3                   	ret
140014692:	4c 8b 45 38          	mov    0x38(%rbp),%r8
140014696:	4c 8b ce             	mov    %rsi,%r9
140014699:	48 83 4c 24 20 ff    	orq    $0xffffffffffffffff,0x20(%rsp)
14001469f:	48 8b d3             	mov    %rbx,%rdx
1400146a2:	e8 65 c6 00 00       	call   0x140020d0c
1400146a7:	85 c0                	test   %eax,%eax
1400146a9:	74 17                	je     0x1400146c2
1400146ab:	83 f8 16             	cmp    $0x16,%eax
1400146ae:	0f 84 ae 01 00 00    	je     0x140014862
1400146b4:	83 f8 22             	cmp    $0x22,%eax
1400146b7:	0f 84 a5 01 00 00    	je     0x140014862
1400146bd:	48 8b cb             	mov    %rbx,%rcx
1400146c0:	eb b0                	jmp    0x140014672
1400146c2:	48 8b d3             	mov    %rbx,%rdx
1400146c5:	41 8b ce             	mov    %r14d,%ecx
1400146c8:	e8 4f 53 00 00       	call   0x140019a1c
1400146cd:	48 8b cb             	mov    %rbx,%rcx
1400146d0:	4c 8b f0             	mov    %rax,%r14
1400146d3:	e8 b0 67 00 00       	call   0x14001ae88
1400146d8:	4d 85 f6             	test   %r14,%r14
1400146db:	74 9a                	je     0x140014677
1400146dd:	e8 5e 6b 00 00       	call   0x14001b240
1400146e2:	4c 8b e8             	mov    %rax,%r13
1400146e5:	4d 8b ce             	mov    %r14,%r9
1400146e8:	45 33 c0             	xor    %r8d,%r8d
1400146eb:	33 d2                	xor    %edx,%edx
1400146ed:	48 8b 88 90 00 00 00 	mov    0x90(%rax),%rcx
1400146f4:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
1400146f8:	48 8b 88 88 00 00 00 	mov    0x88(%rax),%rcx
1400146ff:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
140014703:	48 83 65 30 00       	andq   $0x0,0x30(%rbp)
140014708:	48 89 4d f8          	mov    %rcx,-0x8(%rbp)
14001470c:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140014710:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140014715:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14001471b:	e8 74 c9 00 00       	call   0x140021094
140014720:	85 c0                	test   %eax,%eax
140014722:	74 17                	je     0x14001473b
140014724:	83 f8 16             	cmp    $0x16,%eax
140014727:	0f 84 4b 01 00 00    	je     0x140014878
14001472d:	83 f8 22             	cmp    $0x22,%eax
140014730:	0f 84 42 01 00 00    	je     0x140014878
140014736:	e9 3c ff ff ff       	jmp    0x140014677
14001473b:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
14001473f:	48 83 c1 04          	add    $0x4,%rcx
140014743:	e8 1c 7b 00 00       	call   0x14001c264
140014748:	48 8b f0             	mov    %rax,%rsi
14001474b:	48 85 c0             	test   %rax,%rax
14001474e:	0f 84 23 ff ff ff    	je     0x140014677
140014754:	4c 8b 45 30          	mov    0x30(%rbp),%r8
140014758:	4c 8d 78 04          	lea    0x4(%rax),%r15
14001475c:	48 8d 45 f0          	lea    -0x10(%rbp),%rax
140014760:	4d 8b ce             	mov    %r14,%r9
140014763:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140014768:	49 8b d7             	mov    %r15,%rdx
14001476b:	48 83 4c 24 20 ff    	orq    $0xffffffffffffffff,0x20(%rsp)
140014771:	33 c9                	xor    %ecx,%ecx
140014773:	e8 1c c9 00 00       	call   0x140021094
140014778:	85 c0                	test   %eax,%eax
14001477a:	74 1a                	je     0x140014796
14001477c:	83 f8 16             	cmp    $0x16,%eax
14001477f:	0f 84 f3 00 00 00    	je     0x140014878
140014785:	83 f8 22             	cmp    $0x22,%eax
140014788:	0f 84 ea 00 00 00    	je     0x140014878
14001478e:	48 8b ce             	mov    %rsi,%rcx
140014791:	e9 dc fe ff ff       	jmp    0x140014672
140014796:	48 8b 07             	mov    (%rdi),%rax
140014799:	48 8b 5d f0          	mov    -0x10(%rbp),%rbx
14001479d:	48 63 08             	movslq (%rax),%rcx
1400147a0:	48 c1 e1 05          	shl    $0x5,%rcx
1400147a4:	48 8b 54 19 30       	mov    0x30(%rcx,%rbx,1),%rdx
1400147a9:	48 85 d2             	test   %rdx,%rdx
1400147ac:	74 30                	je     0x1400147de
1400147ae:	83 c8 ff             	or     $0xffffffff,%eax
1400147b1:	f0 0f c1 02          	lock xadd %eax,(%rdx)
1400147b5:	83 f8 01             	cmp    $0x1,%eax
1400147b8:	75 24                	jne    0x1400147de
1400147ba:	48 8b 07             	mov    (%rdi),%rax
1400147bd:	48 63 08             	movslq (%rax),%rcx
1400147c0:	48 c1 e1 05          	shl    $0x5,%rcx
1400147c4:	48 8b 4c 19 30       	mov    0x30(%rcx,%rbx,1),%rcx
1400147c9:	e8 ba 66 00 00       	call   0x14001ae88
1400147ce:	48 8b 07             	mov    (%rdi),%rax
1400147d1:	48 63 08             	movslq (%rax),%rcx
1400147d4:	48 c1 e1 05          	shl    $0x5,%rcx
1400147d8:	48 83 64 19 30 00    	andq   $0x0,0x30(%rcx,%rbx,1)
1400147de:	41 f6 85 a8 03 00 00 	testb  $0x2,0x3a8(%r13)
1400147e5:	02
1400147e6:	75 4d                	jne    0x140014835
1400147e8:	f6 05 91 fd 02 00 01 	testb  $0x1,0x2fd91(%rip)        # 0x140044580
1400147ef:	75 44                	jne    0x140014835
1400147f1:	48 8b 07             	mov    (%rdi),%rax
1400147f4:	48 63 08             	movslq (%rax),%rcx
1400147f7:	48 c1 e1 05          	shl    $0x5,%rcx
1400147fb:	48 8b 54 19 30       	mov    0x30(%rcx,%rbx,1),%rdx
140014800:	48 85 d2             	test   %rdx,%rdx
140014803:	74 30                	je     0x140014835
140014805:	83 c8 ff             	or     $0xffffffff,%eax
140014808:	f0 0f c1 02          	lock xadd %eax,(%rdx)
14001480c:	83 f8 01             	cmp    $0x1,%eax
14001480f:	75 24                	jne    0x140014835
140014811:	48 8b 07             	mov    (%rdi),%rax
140014814:	48 63 08             	movslq (%rax),%rcx
140014817:	48 c1 e1 05          	shl    $0x5,%rcx
14001481b:	48 8b 4c 19 30       	mov    0x30(%rcx,%rbx,1),%rcx
140014820:	e8 63 66 00 00       	call   0x14001ae88
140014825:	48 8b 07             	mov    (%rdi),%rax
140014828:	48 63 08             	movslq (%rax),%rcx
14001482b:	48 c1 e1 05          	shl    $0x5,%rcx
14001482f:	48 83 64 19 30 00    	andq   $0x0,0x30(%rcx,%rbx,1)
140014835:	8b 4b 10             	mov    0x10(%rbx),%ecx
140014838:	49 8b c7             	mov    %r15,%rax
14001483b:	89 0e                	mov    %ecx,(%rsi)
14001483d:	48 8b 0f             	mov    (%rdi),%rcx
140014840:	48 63 11             	movslq (%rcx),%rdx
140014843:	48 c1 e2 05          	shl    $0x5,%rdx
140014847:	48 89 74 1a 30       	mov    %rsi,0x30(%rdx,%rbx,1)
14001484c:	48 8b 0f             	mov    (%rdi),%rcx
14001484f:	48 63 11             	movslq (%rcx),%rdx
140014852:	48 ff c2             	inc    %rdx
140014855:	48 c1 e2 05          	shl    $0x5,%rdx
140014859:	4c 89 3c 1a          	mov    %r15,(%rdx,%rbx,1)
14001485d:	e9 17 fe ff ff       	jmp    0x140014679
140014862:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
140014868:	45 33 c9             	xor    %r9d,%r9d
14001486b:	45 33 c0             	xor    %r8d,%r8d
14001486e:	33 d2                	xor    %edx,%edx
140014870:	33 c9                	xor    %ecx,%ecx
140014872:	e8 71 bf ff ff       	call   0x1400107e8
140014877:	cc                   	int3
140014878:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
14001487e:	45 33 c9             	xor    %r9d,%r9d
140014881:	45 33 c0             	xor    %r8d,%r8d
140014884:	33 d2                	xor    %edx,%edx
140014886:	33 c9                	xor    %ecx,%ecx
140014888:	e8 5b bf ff ff       	call   0x1400107e8
14001488d:	cc                   	int3
14001488e:	cc                   	int3
14001488f:	cc                   	int3
140014890:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140014895:	89 4c 24 08          	mov    %ecx,0x8(%rsp)
140014899:	55                   	push   %rbp
14001489a:	48 8b ec             	mov    %rsp,%rbp
14001489d:	48 83 ec 40          	sub    $0x40,%rsp
1400148a1:	e8 7e 74 00 00       	call   0x14001bd24
1400148a6:	48 8d 45 10          	lea    0x10(%rbp),%rax
1400148aa:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
1400148ae:	4c 8d 4d 28          	lea    0x28(%rbp),%r9
1400148b2:	48 8d 45 18          	lea    0x18(%rbp),%rax
1400148b6:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
1400148ba:	4c 8d 45 e8          	lea    -0x18(%rbp),%r8
1400148be:	b8 04 00 00 00       	mov    $0x4,%eax
1400148c3:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
1400148c7:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
1400148cb:	89 45 28             	mov    %eax,0x28(%rbp)
1400148ce:	89 45 e0             	mov    %eax,-0x20(%rbp)
1400148d1:	e8 da fc ff ff       	call   0x1400145b0
1400148d6:	48 83 c4 40          	add    $0x40,%rsp
1400148da:	5d                   	pop    %rbp
1400148db:	c3                   	ret
1400148dc:	48 83 ec 28          	sub    $0x28,%rsp
1400148e0:	e8 e3 c8 00 00       	call   0x1400211c8
1400148e5:	48 85 c0             	test   %rax,%rax
1400148e8:	74 0a                	je     0x1400148f4
1400148ea:	b9 16 00 00 00       	mov    $0x16,%ecx
1400148ef:	e8 24 c9 00 00       	call   0x140021218
1400148f4:	f6 05 dd f8 02 00 02 	testb  $0x2,0x2f8dd(%rip)        # 0x1400441d8
1400148fb:	74 2a                	je     0x140014927
1400148fd:	b9 17 00 00 00       	mov    $0x17,%ecx
140014902:	ff 15 a0 78 01 00    	call   *0x178a0(%rip)        # 0x14002c1a8
140014908:	85 c0                	test   %eax,%eax
14001490a:	74 07                	je     0x140014913
14001490c:	b9 07 00 00 00       	mov    $0x7,%ecx
140014911:	cd 29                	int    $0x29
140014913:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140014919:	ba 15 00 00 40       	mov    $0x40000015,%edx
14001491e:	41 8d 48 02          	lea    0x2(%r8),%ecx
140014922:	e8 5d bc ff ff       	call   0x140010584
140014927:	b9 03 00 00 00       	mov    $0x3,%ecx
14001492c:	e8 93 37 00 00       	call   0x1400180c4
140014931:	cc                   	int3
140014932:	cc                   	int3
140014933:	cc                   	int3
140014934:	33 c0                	xor    %eax,%eax
140014936:	4c 8d 0d 33 e3 01 00 	lea    0x1e333(%rip),%r9        # 0x140032c70
14001493d:	49 8b d1             	mov    %r9,%rdx
140014940:	44 8d 40 08          	lea    0x8(%rax),%r8d
140014944:	3b 0a                	cmp    (%rdx),%ecx
140014946:	74 2b                	je     0x140014973
140014948:	ff c0                	inc    %eax
14001494a:	49 03 d0             	add    %r8,%rdx
14001494d:	83 f8 2d             	cmp    $0x2d,%eax
140014950:	72 f2                	jb     0x140014944
140014952:	8d 41 ed             	lea    -0x13(%rcx),%eax
140014955:	83 f8 11             	cmp    $0x11,%eax
140014958:	77 06                	ja     0x140014960
14001495a:	b8 0d 00 00 00       	mov    $0xd,%eax
14001495f:	c3                   	ret
140014960:	81 c1 44 ff ff ff    	add    $0xffffff44,%ecx
140014966:	b8 16 00 00 00       	mov    $0x16,%eax
14001496b:	83 f9 0e             	cmp    $0xe,%ecx
14001496e:	41 0f 46 c0          	cmovbe %r8d,%eax
140014972:	c3                   	ret
140014973:	41 8b 44 c1 04       	mov    0x4(%r9,%rax,8),%eax
140014978:	c3                   	ret
140014979:	cc                   	int3
14001497a:	cc                   	int3
14001497b:	cc                   	int3
14001497c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140014981:	57                   	push   %rdi
140014982:	48 83 ec 20          	sub    $0x20,%rsp
140014986:	8b f9                	mov    %ecx,%edi
140014988:	e8 2f 6a 00 00       	call   0x14001b3bc
14001498d:	48 85 c0             	test   %rax,%rax
140014990:	75 09                	jne    0x14001499b
140014992:	48 8d 05 47 f8 02 00 	lea    0x2f847(%rip),%rax        # 0x1400441e0
140014999:	eb 04                	jmp    0x14001499f
14001499b:	48 83 c0 24          	add    $0x24,%rax
14001499f:	89 38                	mov    %edi,(%rax)
1400149a1:	e8 16 6a 00 00       	call   0x14001b3bc
1400149a6:	48 8d 1d 2f f8 02 00 	lea    0x2f82f(%rip),%rbx        # 0x1400441dc
1400149ad:	48 85 c0             	test   %rax,%rax
1400149b0:	74 04                	je     0x1400149b6
1400149b2:	48 8d 58 20          	lea    0x20(%rax),%rbx
1400149b6:	8b cf                	mov    %edi,%ecx
1400149b8:	e8 77 ff ff ff       	call   0x140014934
1400149bd:	89 03                	mov    %eax,(%rbx)
1400149bf:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400149c4:	48 83 c4 20          	add    $0x20,%rsp
1400149c8:	5f                   	pop    %rdi
1400149c9:	c3                   	ret
1400149ca:	cc                   	int3
1400149cb:	cc                   	int3
1400149cc:	48 83 ec 28          	sub    $0x28,%rsp
1400149d0:	e8 e7 69 00 00       	call   0x14001b3bc
1400149d5:	48 85 c0             	test   %rax,%rax
1400149d8:	75 09                	jne    0x1400149e3
1400149da:	48 8d 05 ff f7 02 00 	lea    0x2f7ff(%rip),%rax        # 0x1400441e0
1400149e1:	eb 04                	jmp    0x1400149e7
1400149e3:	48 83 c0 24          	add    $0x24,%rax
1400149e7:	48 83 c4 28          	add    $0x28,%rsp
1400149eb:	c3                   	ret
1400149ec:	48 83 ec 28          	sub    $0x28,%rsp
1400149f0:	e8 c7 69 00 00       	call   0x14001b3bc
1400149f5:	48 85 c0             	test   %rax,%rax
1400149f8:	75 09                	jne    0x140014a03
1400149fa:	48 8d 05 db f7 02 00 	lea    0x2f7db(%rip),%rax        # 0x1400441dc
140014a01:	eb 04                	jmp    0x140014a07
140014a03:	48 83 c0 20          	add    $0x20,%rax
140014a07:	48 83 c4 28          	add    $0x28,%rsp
140014a0b:	c3                   	ret
140014a0c:	33 c0                	xor    %eax,%eax
140014a0e:	38 01                	cmp    %al,(%rcx)
140014a10:	74 0e                	je     0x140014a20
140014a12:	48 3b c2             	cmp    %rdx,%rax
140014a15:	74 09                	je     0x140014a20
140014a17:	48 ff c0             	inc    %rax
140014a1a:	80 3c 08 00          	cmpb   $0x0,(%rax,%rcx,1)
140014a1e:	75 f2                	jne    0x140014a12
140014a20:	c3                   	ret
140014a21:	cc                   	int3
140014a22:	cc                   	int3
140014a23:	cc                   	int3
140014a24:	cc                   	int3
140014a25:	cc                   	int3
140014a26:	cc                   	int3
140014a27:	cc                   	int3
140014a28:	cc                   	int3
140014a29:	cc                   	int3
140014a2a:	cc                   	int3
140014a2b:	cc                   	int3
140014a2c:	cc                   	int3
140014a2d:	cc                   	int3
140014a2e:	cc                   	int3
140014a2f:	cc                   	int3
140014a30:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140014a35:	53                   	push   %rbx
140014a36:	55                   	push   %rbp
140014a37:	56                   	push   %rsi
140014a38:	57                   	push   %rdi
140014a39:	41 54                	push   %r12
140014a3b:	41 56                	push   %r14
140014a3d:	41 57                	push   %r15
140014a3f:	48 81 ec 20 02 00 00 	sub    $0x220,%rsp
140014a46:	44 8b 11             	mov    (%rcx),%r10d
140014a49:	4c 8b f2             	mov    %rdx,%r14
140014a4c:	48 8b f1             	mov    %rcx,%rsi
140014a4f:	45 85 d2             	test   %r10d,%r10d
140014a52:	0f 84 ed 03 00 00    	je     0x140014e45
140014a58:	8b 3a                	mov    (%rdx),%edi
140014a5a:	85 ff                	test   %edi,%edi
140014a5c:	0f 84 e3 03 00 00    	je     0x140014e45
140014a62:	41 ff ca             	dec    %r10d
140014a65:	8d 47 ff             	lea    -0x1(%rdi),%eax
140014a68:	85 c0                	test   %eax,%eax
140014a6a:	0f 85 e2 00 00 00    	jne    0x140014b52
140014a70:	44 8b 62 04          	mov    0x4(%rdx),%r12d
140014a74:	33 ed                	xor    %ebp,%ebp
140014a76:	41 83 fc 01          	cmp    $0x1,%r12d
140014a7a:	75 26                	jne    0x140014aa2
140014a7c:	8b 59 04             	mov    0x4(%rcx),%ebx