14000561d:	74 1d                	je     0x14000563c
14000561f:	48 8b d3             	mov    %rbx,%rdx
140005622:	49 8b cf             	mov    %r15,%rcx
140005625:	e8 9a e6 ff ff       	call   0x140003cc4
14000562a:	49 83 c7 08          	add    $0x8,%r15
14000562e:	4c 89 bc 24 88 00 00 	mov    %r15,0x88(%rsp)
140005635:	00
140005636:	48 83 c3 08          	add    $0x8,%rbx
14000563a:	eb de                	jmp    0x14000561a
14000563c:	4d 8b cd             	mov    %r13,%r9
14000563f:	4c 8b 84 24 50 01 00 	mov    0x150(%rsp),%r8
140005646:	00
140005647:	48 8b d7             	mov    %rdi,%rdx
14000564a:	48 8b ce             	mov    %rsi,%rcx
14000564d:	e8 3a fc ff ff       	call   0x14000528c
140005652:	48 81 c4 00 01 00 00 	add    $0x100,%rsp
140005659:	41 5f                	pop    %r15
14000565b:	41 5e                	pop    %r14
14000565d:	41 5d                	pop    %r13
14000565f:	41 5c                	pop    %r12
140005661:	5f                   	pop    %rdi
140005662:	5e                   	pop    %rsi
140005663:	5b                   	pop    %rbx
140005664:	c3                   	ret
140005665:	cc                   	int3
140005666:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14000566b:	48 8b c7             	mov    %rdi,%rax
14000566e:	48 2b c3             	sub    %rbx,%rax
140005671:	48 c1 f8 03          	sar    $0x3,%rax
140005675:	49 8b cf             	mov    %r15,%rcx
140005678:	48 c1 e1 03          	shl    $0x3,%rcx
14000567c:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140005681:	4c 3b f8             	cmp    %rax,%r15
140005684:	0f 83 fe 00 00 00    	jae    0x140005788
14000568a:	4c 8b ff             	mov    %rdi,%r15
14000568d:	4c 2b f9             	sub    %rcx,%r15
140005690:	48 89 bc 24 98 00 00 	mov    %rdi,0x98(%rsp)
140005697:	00
140005698:	4c 8b e7             	mov    %rdi,%r12
14000569b:	48 89 bc 24 a0 00 00 	mov    %rdi,0xa0(%rsp)
1400056a2:	00
1400056a3:	48 89 b4 24 a8 00 00 	mov    %rsi,0xa8(%rsp)
1400056aa:	00
1400056ab:	4d 8b ef             	mov    %r15,%r13
1400056ae:	4c 3b ff             	cmp    %rdi,%r15
1400056b1:	74 20                	je     0x1400056d3
1400056b3:	49 8b d5             	mov    %r13,%rdx
1400056b6:	49 8b cc             	mov    %r12,%rcx
1400056b9:	e8 06 e6 ff ff       	call   0x140003cc4
1400056be:	49 83 c4 08          	add    $0x8,%r12
1400056c2:	4c 89 a4 24 a0 00 00 	mov    %r12,0xa0(%rsp)
1400056c9:	00
1400056ca:	49 83 c5 08          	add    $0x8,%r13
1400056ce:	4c 3b ef             	cmp    %rdi,%r13
1400056d1:	75 e0                	jne    0x1400056b3
1400056d3:	4c 89 66 08          	mov    %r12,0x8(%rsi)
1400056d7:	4c 3b fb             	cmp    %rbx,%r15
1400056da:	74 22                	je     0x1400056fe
1400056dc:	4c 8b 74 24 28       	mov    0x28(%rsp),%r14
1400056e1:	49 83 ef 08          	sub    $0x8,%r15
1400056e5:	4b 8d 0c 37          	lea    (%r15,%r14,1),%rcx
1400056e9:	49 8b d7             	mov    %r15,%rdx
1400056ec:	e8 ab d9 ff ff       	call   0x14000309c
1400056f1:	4c 3b fb             	cmp    %rbx,%r15
1400056f4:	75 eb                	jne    0x1400056e1
1400056f6:	4c 8b b4 24 50 01 00 	mov    0x150(%rsp),%r14
1400056fd:	00
1400056fe:	48 8b fb             	mov    %rbx,%rdi
140005701:	4c 8b 7c 24 28       	mov    0x28(%rsp),%r15
140005706:	4c 03 fb             	add    %rbx,%r15
140005709:	49 3b df             	cmp    %r15,%rbx
14000570c:	74 33                	je     0x140005741
14000570e:	49 83 cc ff          	or     $0xffffffffffffffff,%r12
140005712:	48 8b 17             	mov    (%rdi),%rdx
140005715:	48 83 ea 18          	sub    $0x18,%rdx
140005719:	41 8b c4             	mov    %r12d,%eax
14000571c:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
140005721:	41 03 c4             	add    %r12d,%eax
140005724:	85 c0                	test   %eax,%eax
140005726:	7f 10                	jg     0x140005738
140005728:	48 8b 0a             	mov    (%rdx),%rcx
14000572b:	48 8b 01             	mov    (%rcx),%rax
14000572e:	48 8b 40 08          	mov    0x8(%rax),%rax
140005732:	ff 15 98 4f 00 00    	call   *0x4f98(%rip)        # 0x14000a6d0
140005738:	48 83 c7 08          	add    $0x8,%rdi
14000573c:	49 3b ff             	cmp    %r15,%rdi
14000573f:	75 d1                	jne    0x140005712
140005741:	48 89 9c 24 b0 00 00 	mov    %rbx,0xb0(%rsp)
140005748:	00
140005749:	48 89 9c 24 b8 00 00 	mov    %rbx,0xb8(%rsp)
140005750:	00
140005751:	48 89 b4 24 c0 00 00 	mov    %rsi,0xc0(%rsp)
140005758:	00
140005759:	48 8b bc 24 58 01 00 	mov    0x158(%rsp),%rdi
140005760:	00
140005761:	4c 3b f7             	cmp    %rdi,%r14
140005764:	74 1d                	je     0x140005783
140005766:	49 8b d6             	mov    %r14,%rdx
140005769:	48 8b cb             	mov    %rbx,%rcx
14000576c:	e8 53 e5 ff ff       	call   0x140003cc4
140005771:	48 83 c3 08          	add    $0x8,%rbx
140005775:	48 89 9c 24 b8 00 00 	mov    %rbx,0xb8(%rsp)
14000577c:	00
14000577d:	49 83 c6 08          	add    $0x8,%r14
140005781:	eb de                	jmp    0x140005761
140005783:	e9 cd 00 00 00       	jmp    0x140005855
140005788:	4c 8d 3c 19          	lea    (%rcx,%rbx,1),%r15
14000578c:	4c 89 bc 24 50 01 00 	mov    %r15,0x150(%rsp)
140005793:	00
140005794:	4c 8b e3             	mov    %rbx,%r12
140005797:	4c 89 bc 24 c8 00 00 	mov    %r15,0xc8(%rsp)
14000579e:	00
14000579f:	4c 89 bc 24 d0 00 00 	mov    %r15,0xd0(%rsp)
1400057a6:	00
1400057a7:	48 89 b4 24 d8 00 00 	mov    %rsi,0xd8(%rsp)
1400057ae:	00
1400057af:	48 3b df             	cmp    %rdi,%rbx
1400057b2:	74 20                	je     0x1400057d4
1400057b4:	49 8b d4             	mov    %r12,%rdx
1400057b7:	49 8b cf             	mov    %r15,%rcx
1400057ba:	e8 05 e5 ff ff       	call   0x140003cc4
1400057bf:	49 83 c7 08          	add    $0x8,%r15
1400057c3:	4c 89 bc 24 d0 00 00 	mov    %r15,0xd0(%rsp)
1400057ca:	00
1400057cb:	49 83 c4 08          	add    $0x8,%r12
1400057cf:	4c 3b e7             	cmp    %rdi,%r12
1400057d2:	75 e0                	jne    0x1400057b4
1400057d4:	4c 89 7e 08          	mov    %r15,0x8(%rsi)
1400057d8:	4c 8b fb             	mov    %rbx,%r15
1400057db:	48 3b df             	cmp    %rdi,%rbx
1400057de:	74 33                	je     0x140005813
1400057e0:	49 83 cc ff          	or     $0xffffffffffffffff,%r12
1400057e4:	49 8b 17             	mov    (%r15),%rdx
1400057e7:	48 83 ea 18          	sub    $0x18,%rdx
1400057eb:	41 8b c4             	mov    %r12d,%eax
1400057ee:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
1400057f3:	41 03 c4             	add    %r12d,%eax
1400057f6:	85 c0                	test   %eax,%eax
1400057f8:	7f 10                	jg     0x14000580a
1400057fa:	48 8b 0a             	mov    (%rdx),%rcx
1400057fd:	48 8b 01             	mov    (%rcx),%rax
140005800:	48 8b 40 08          	mov    0x8(%rax),%rax
140005804:	ff 15 c6 4e 00 00    	call   *0x4ec6(%rip)        # 0x14000a6d0
14000580a:	49 83 c7 08          	add    $0x8,%r15
14000580e:	4c 3b ff             	cmp    %rdi,%r15
140005811:	75 d1                	jne    0x1400057e4
140005813:	48 89 9c 24 e0 00 00 	mov    %rbx,0xe0(%rsp)
14000581a:	00
14000581b:	48 89 9c 24 e8 00 00 	mov    %rbx,0xe8(%rsp)
140005822:	00
140005823:	48 89 b4 24 f0 00 00 	mov    %rsi,0xf0(%rsp)
14000582a:	00
14000582b:	48 8b bc 24 58 01 00 	mov    0x158(%rsp),%rdi
140005832:	00
140005833:	4c 3b f7             	cmp    %rdi,%r14
140005836:	74 1d                	je     0x140005855
140005838:	49 8b d6             	mov    %r14,%rdx
14000583b:	48 8b cb             	mov    %rbx,%rcx
14000583e:	e8 81 e4 ff ff       	call   0x140003cc4
140005843:	48 83 c3 08          	add    $0x8,%rbx
140005847:	48 89 9c 24 e8 00 00 	mov    %rbx,0xe8(%rsp)
14000584e:	00
14000584f:	49 83 c6 08          	add    $0x8,%r14
140005853:	eb de                	jmp    0x140005833
140005855:	e9 f8 fd ff ff       	jmp    0x140005652
14000585a:	e8 0d fa ff ff       	call   0x14000526c
14000585f:	cc                   	int3
140005860:	cc                   	int3
140005861:	cc                   	int3
140005862:	cc                   	int3
140005863:	cc                   	int3
140005864:	cc                   	int3
140005865:	cc                   	int3
140005866:	cc                   	int3
140005867:	cc                   	int3
140005868:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14000586d:	57                   	push   %rdi
14000586e:	48 83 ec 20          	sub    $0x20,%rsp
140005872:	48 8b 79 08          	mov    0x8(%rcx),%rdi
140005876:	48 8b 19             	mov    (%rcx),%rbx
140005879:	eb 29                	jmp    0x1400058a4
14000587b:	48 8b 13             	mov    (%rbx),%rdx
14000587e:	48 83 ea 18          	sub    $0x18,%rdx
140005882:	83 c8 ff             	or     $0xffffffff,%eax
140005885:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
14000588a:	83 e8 01             	sub    $0x1,%eax
14000588d:	7f 11                	jg     0x1400058a0
14000588f:	48 8b 0a             	mov    (%rdx),%rcx
140005892:	48 8b 01             	mov    (%rcx),%rax
140005895:	48 8b 40 08          	mov    0x8(%rax),%rax
140005899:	ff 15 31 4e 00 00    	call   *0x4e31(%rip)        # 0x14000a6d0
14000589f:	90                   	nop
1400058a0:	48 83 c3 08          	add    $0x8,%rbx
1400058a4:	48 3b df             	cmp    %rdi,%rbx
1400058a7:	75 d2                	jne    0x14000587b
1400058a9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400058ae:	48 83 c4 20          	add    $0x20,%rsp
1400058b2:	5f                   	pop    %rdi
1400058b3:	c3                   	ret
1400058b4:	cc                   	int3
1400058b5:	cc                   	int3
1400058b6:	cc                   	int3
1400058b7:	cc                   	int3
1400058b8:	cc                   	int3
1400058b9:	cc                   	int3
1400058ba:	cc                   	int3
1400058bb:	cc                   	int3
1400058bc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400058c1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400058c6:	57                   	push   %rdi
1400058c7:	48 83 ec 20          	sub    $0x20,%rsp
1400058cb:	49 8b d8             	mov    %r8,%rbx
1400058ce:	48 8b f2             	mov    %rdx,%rsi
1400058d1:	48 8b f9             	mov    %rcx,%rdi
1400058d4:	48 3b ca             	cmp    %rdx,%rcx
1400058d7:	74 18                	je     0x1400058f1
1400058d9:	48 8b d7             	mov    %rdi,%rdx
1400058dc:	48 8b cb             	mov    %rbx,%rcx
1400058df:	e8 b8 d7 ff ff       	call   0x14000309c
1400058e4:	48 83 c3 08          	add    $0x8,%rbx
1400058e8:	48 83 c7 08          	add    $0x8,%rdi
1400058ec:	48 3b fe             	cmp    %rsi,%rdi
1400058ef:	75 e8                	jne    0x1400058d9
1400058f1:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400058f6:	48 8b c3             	mov    %rbx,%rax
1400058f9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400058fe:	48 83 c4 20          	add    $0x20,%rsp
140005902:	5f                   	pop    %rdi
140005903:	c3                   	ret
140005904:	cc                   	int3
140005905:	cc                   	int3
140005906:	cc                   	int3
140005907:	cc                   	int3
140005908:	cc                   	int3
140005909:	cc                   	int3
14000590a:	cc                   	int3
14000590b:	cc                   	int3
14000590c:	48 83 ec 28          	sub    $0x28,%rsp
140005910:	48 8b 09             	mov    (%rcx),%rcx
140005913:	48 85 c9             	test   %rcx,%rcx
140005916:	74 0c                	je     0x140005924
140005918:	48 ff 15 a9 4a 00 00 	rex.W call *0x4aa9(%rip)        # 0x14000a3c8
14000591f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140005924:	48 83 c4 28          	add    $0x28,%rsp
140005928:	c3                   	ret
140005929:	cc                   	int3
14000592a:	cc                   	int3
14000592b:	cc                   	int3
14000592c:	cc                   	int3
14000592d:	cc                   	int3
14000592e:	cc                   	int3
14000592f:	cc                   	int3
140005930:	4c 8b dc             	mov    %rsp,%r11
140005933:	49 89 5b 08          	mov    %rbx,0x8(%r11)
140005937:	49 89 73 18          	mov    %rsi,0x18(%r11)
14000593b:	49 89 7b 20          	mov    %rdi,0x20(%r11)
14000593f:	55                   	push   %rbp
140005940:	41 56                	push   %r14
140005942:	41 57                	push   %r15
140005944:	48 8b ec             	mov    %rsp,%rbp
140005947:	48 83 ec 60          	sub    $0x60,%rsp
14000594b:	4d 8b f1             	mov    %r9,%r14
14000594e:	49 8b f8             	mov    %r8,%rdi
140005951:	45 33 ff             	xor    %r15d,%r15d
140005954:	44 89 7d 28          	mov    %r15d,0x28(%rbp)
140005958:	4c 89 7d e0          	mov    %r15,-0x20(%rbp)
14000595c:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
140005960:	49 89 43 a8          	mov    %rax,-0x58(%r11)
140005964:	41 b9 19 00 02 00    	mov    $0x20019,%r9d
14000596a:	45 33 c0             	xor    %r8d,%r8d
14000596d:	48 8b 12             	mov    (%rdx),%rdx
140005970:	48 ff 15 61 4a 00 00 	rex.W call *0x4a61(%rip)        # 0x14000a3d8
140005977:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000597c:	85 c0                	test   %eax,%eax
14000597e:	0f 85 91 01 00 00    	jne    0x140005b15
140005984:	44 89 7d d0          	mov    %r15d,-0x30(%rbp)
140005988:	44 89 7d d4          	mov    %r15d,-0x2c(%rbp)
14000598c:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
140005990:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140005995:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
14000599a:	4c 8d 4d d4          	lea    -0x2c(%rbp),%r9
14000599e:	45 33 c0             	xor    %r8d,%r8d
1400059a1:	48 8b 17             	mov    (%rdi),%rdx
1400059a4:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
1400059a8:	48 ff 15 21 4a 00 00 	rex.W call *0x4a21(%rip)        # 0x14000a3d0
1400059af:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400059b4:	85 c0                	test   %eax,%eax
1400059b6:	0f 85 59 01 00 00    	jne    0x140005b15
1400059bc:	8b 45 d0             	mov    -0x30(%rbp),%eax
1400059bf:	85 c0                	test   %eax,%eax
1400059c1:	0f 84 4e 01 00 00    	je     0x140005b15
1400059c7:	41 8d 77 01          	lea    0x1(%r15),%esi
1400059cb:	39 75 d4             	cmp    %esi,-0x2c(%rbp)
1400059ce:	0f 85 41 01 00 00    	jne    0x140005b15
1400059d4:	8b c8                	mov    %eax,%ecx
1400059d6:	48 8d 15 0b 8f 00 00 	lea    0x8f0b(%rip),%rdx        # 0x14000e8e8
1400059dd:	e8 d2 2c 00 00       	call   0x1400086b4
1400059e2:	48 8b d8             	mov    %rax,%rbx
1400059e5:	48 89 45 d8          	mov    %rax,-0x28(%rbp)
1400059e9:	48 85 c0             	test   %rax,%rax
1400059ec:	0f 84 16 01 00 00    	je     0x140005b08
1400059f2:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1400059f6:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400059fb:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140005a00:	45 33 c9             	xor    %r9d,%r9d
140005a03:	45 33 c0             	xor    %r8d,%r8d
140005a06:	48 8b 17             	mov    (%rdi),%rdx
140005a09:	48 8b 4d e0          	mov    -0x20(%rbp),%rcx
140005a0d:	48 ff 15 bc 49 00 00 	rex.W call *0x49bc(%rip)        # 0x14000a3d0
140005a14:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140005a19:	85 c0                	test   %eax,%eax
140005a1b:	0f 85 e7 00 00 00    	jne    0x140005b08
140005a21:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
140005a25:	41 83 f8 02          	cmp    $0x2,%r8d
140005a29:	0f 82 d9 00 00 00    	jb     0x140005b08
140005a2f:	41 8b c8             	mov    %r8d,%ecx
140005a32:	48 d1 e9             	shr    $1,%rcx
140005a35:	48 8b c3             	mov    %rbx,%rax
140005a38:	74 0f                	je     0x140005a49
140005a3a:	66 44 39 38          	cmp    %r15w,(%rax)
140005a3e:	74 0c                	je     0x140005a4c
140005a40:	48 83 c0 02          	add    $0x2,%rax
140005a44:	48 2b ce             	sub    %rsi,%rcx
140005a47:	75 f1                	jne    0x140005a3a
140005a49:	49 8b c7             	mov    %r15,%rax
140005a4c:	48 8b d3             	mov    %rbx,%rdx
140005a4f:	48 85 c0             	test   %rax,%rax
140005a52:	74 11                	je     0x140005a65
140005a54:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
140005a58:	e8 5b e6 ff ff       	call   0x1400040b8
140005a5d:	90                   	nop
140005a5e:	8b fe                	mov    %esi,%edi
140005a60:	89 75 28             	mov    %esi,0x28(%rbp)
140005a63:	eb 1f                	jmp    0x140005a84
140005a65:	41 d1 e8             	shr    $1,%r8d
140005a68:	4c 8d 0d 19 86 00 00 	lea    0x8619(%rip),%r9        # 0x14000e088
140005a6f:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
140005a73:	e8 f8 e2 ff ff       	call   0x140003d70
140005a78:	48 8d 45 e8          	lea    -0x18(%rbp),%rax
140005a7c:	bf 02 00 00 00       	mov    $0x2,%edi
140005a81:	89 7d 28             	mov    %edi,0x28(%rbp)
140005a84:	48 8b d0             	mov    %rax,%rdx
140005a87:	49 8b ce             	mov    %r14,%rcx
140005a8a:	e8 0d d6 ff ff       	call   0x14000309c
140005a8f:	90                   	nop
140005a90:	41 83 ce ff          	or     $0xffffffff,%r14d
140005a94:	40 f6 c7 02          	test   $0x2,%dil
140005a98:	74 34                	je     0x140005ace
140005a9a:	83 e7 fd             	and    $0xfffffffd,%edi
140005a9d:	89 7d 28             	mov    %edi,0x28(%rbp)