1400013cb:	48 85 c9             	test   %rcx,%rcx
1400013ce:	75 04                	jne    0x1400013d4
1400013d0:	33 c0                	xor    %eax,%eax
1400013d2:	eb 14                	jmp    0x1400013e8
1400013d4:	48 ff 15 6d 92 00 00 	rex.W call *0x926d(%rip)        # 0x14000a648
1400013db:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400013e0:	48 83 25 58 cc 00 00 	andq   $0x0,0xcc58(%rip)        # 0x14000e040
1400013e7:	00
1400013e8:	48 83 c4 28          	add    $0x28,%rsp
1400013ec:	c3                   	ret
1400013ed:	cc                   	int3
1400013ee:	cc                   	int3
1400013ef:	cc                   	int3
1400013f0:	cc                   	int3
1400013f1:	cc                   	int3
1400013f2:	cc                   	int3
1400013f3:	cc                   	int3
1400013f4:	66 90                	xchg   %ax,%ax
1400013f6:	c3                   	ret
1400013f7:	cc                   	int3
1400013f8:	cc                   	int3
1400013f9:	cc                   	int3
1400013fa:	cc                   	int3
1400013fb:	cc                   	int3
1400013fc:	cc                   	int3
1400013fd:	cc                   	int3
1400013fe:	cc                   	int3
1400013ff:	cc                   	int3
140001400:	48 8b c4             	mov    %rsp,%rax
140001403:	48 89 58 08          	mov    %rbx,0x8(%rax)
140001407:	48 89 70 10          	mov    %rsi,0x10(%rax)
14000140b:	48 89 78 18          	mov    %rdi,0x18(%rax)
14000140f:	55                   	push   %rbp
140001410:	41 56                	push   %r14
140001412:	41 57                	push   %r15
140001414:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
140001418:	48 81 ec e0 00 00 00 	sub    $0xe0,%rsp
14000141f:	48 8b 05 ca cd 00 00 	mov    0xcdca(%rip),%rax        # 0x14000e1f0
140001426:	48 33 c4             	xor    %rsp,%rax
140001429:	48 89 45 3f          	mov    %rax,0x3f(%rbp)
14000142d:	e8 4e ff ff ff       	call   0x140001380
140001432:	41 bf 01 00 00 00    	mov    $0x1,%r15d
140001438:	44 84 3d 81 d4 00 00 	test   %r15b,0xd481(%rip)        # 0x14000e8c0
14000143f:	74 18                	je     0x140001459
140001441:	48 8d 45 1f          	lea    0x1f(%rbp),%rax
140001445:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14000144a:	45 8b cf             	mov    %r15d,%r9d
14000144d:	48 8d 15 cc 95 00 00 	lea    0x95cc(%rip),%rdx        # 0x14000aa20
140001454:	e8 c3 fe ff ff       	call   0x14000131c
140001459:	45 33 f6             	xor    %r14d,%r14d
14000145c:	41 8d 56 02          	lea    0x2(%r14),%edx
140001460:	33 c9                	xor    %ecx,%ecx
140001462:	48 ff 15 f7 8d 00 00 	rex.W call *0x8df7(%rip)        # 0x14000a260
140001469:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000146e:	8b d8                	mov    %eax,%ebx
140001470:	41 0f b6 f6          	movzbl %r14b,%esi
140001474:	85 c0                	test   %eax,%eax
140001476:	41 0f 49 f7          	cmovns %r15d,%esi
14000147a:	33 c9                	xor    %ecx,%ecx
14000147c:	e8 8d 6f 00 00       	call   0x14000840e
140001481:	48 8b c8             	mov    %rax,%rcx
140001484:	48 ff 15 05 90 00 00 	rex.W call *0x9005(%rip)        # 0x14000a490
14000148b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140001490:	8b c8                	mov    %eax,%ecx
140001492:	bf 00 80 00 00       	mov    $0x8000,%edi
140001497:	8b d7                	mov    %edi,%edx
140001499:	48 ff 15 50 90 00 00 	rex.W call *0x9050(%rip)        # 0x14000a4f0
1400014a0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400014a5:	41 8b cf             	mov    %r15d,%ecx
1400014a8:	e8 61 6f 00 00       	call   0x14000840e
1400014ad:	48 8b c8             	mov    %rax,%rcx
1400014b0:	48 ff 15 d9 8f 00 00 	rex.W call *0x8fd9(%rip)        # 0x14000a490
1400014b7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400014bc:	8b c8                	mov    %eax,%ecx
1400014be:	8b d7                	mov    %edi,%edx
1400014c0:	48 ff 15 29 90 00 00 	rex.W call *0x9029(%rip)        # 0x14000a4f0
1400014c7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400014cc:	48 8b 05 b5 cb 00 00 	mov    0xcbb5(%rip),%rax        # 0x14000e088
1400014d3:	48 8d 0d ae cb 00 00 	lea    0xcbae(%rip),%rcx        # 0x14000e088
1400014da:	48 8b 40 18          	mov    0x18(%rax),%rax
1400014de:	ff 15 ec 91 00 00    	call   *0x91ec(%rip)        # 0x14000a6d0
1400014e4:	48 83 c0 18          	add    $0x18,%rax
1400014e8:	48 89 45 b7          	mov    %rax,-0x49(%rbp)
1400014ec:	85 db                	test   %ebx,%ebx
1400014ee:	78 41                	js     0x140001531
1400014f0:	48 8b 1d a9 91 00 00 	mov    0x91a9(%rip),%rbx        # 0x14000a6a0
1400014f7:	44 89 75 97          	mov    %r14d,-0x69(%rbp)
1400014fb:	45 8d 46 04          	lea    0x4(%r14),%r8d
1400014ff:	48 8d 55 97          	lea    -0x69(%rbp),%rdx
140001503:	48 8b cb             	mov    %rbx,%rcx
140001506:	48 ff 15 6b 91 00 00 	rex.W call *0x916b(%rip)        # 0x14000a678
14000150d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140001512:	44 39 75 97          	cmp    %r14d,-0x69(%rbp)
140001516:	74 14                	je     0x14000152c
140001518:	4c 8d 45 97          	lea    -0x69(%rbp),%r8
14000151c:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140001520:	48 8b cb             	mov    %rbx,%rcx
140001523:	e8 f4 05 00 00       	call   0x140001b1c
140001528:	8b d8                	mov    %eax,%ebx
14000152a:	eb 05                	jmp    0x140001531
14000152c:	bb 03 87 04 80       	mov    $0x80048703,%ebx
140001531:	48 8b 05 50 cb 00 00 	mov    0xcb50(%rip),%rax        # 0x14000e088
140001538:	48 8d 0d 49 cb 00 00 	lea    0xcb49(%rip),%rcx        # 0x14000e088
14000153f:	48 8b 40 18          	mov    0x18(%rax),%rax
140001543:	ff 15 87 91 00 00    	call   *0x9187(%rip)        # 0x14000a6d0
140001549:	48 83 c0 18          	add    $0x18,%rax
14000154d:	48 89 45 9f          	mov    %rax,-0x61(%rbp)
140001551:	85 db                	test   %ebx,%ebx
140001553:	78 13                	js     0x140001568
140001555:	48 8d 55 9f          	lea    -0x61(%rbp),%rdx
140001559:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
14000155d:	e8 b2 08 00 00       	call   0x140001e14
140001562:	8b d8                	mov    %eax,%ebx
140001564:	85 c0                	test   %eax,%eax
140001566:	79 13                	jns    0x14000157b
140001568:	44 8b c3             	mov    %ebx,%r8d
14000156b:	48 8d 15 ae 95 00 00 	lea    0x95ae(%rip),%rdx        # 0x14000ab20
140001572:	48 8d 4d 9f          	lea    -0x61(%rbp),%rcx
140001576:	e8 2d 0c 00 00       	call   0x1400021a8
14000157b:	bf 07 87 04 80       	mov    $0x80048707,%edi
140001580:	48 8b 45 9f          	mov    -0x61(%rbp),%rax
140001584:	44 39 70 f0          	cmp    %r14d,-0x10(%rax)
140001588:	74 1b                	je     0x1400015a5
14000158a:	48 8d 55 9f          	lea    -0x61(%rbp),%rdx
14000158e:	48 8b 0d f3 90 00 00 	mov    0x90f3(%rip),%rcx        # 0x14000a688
140001595:	e8 8e 06 00 00       	call   0x140001c28
14000159a:	8b f8                	mov    %eax,%edi
14000159c:	85 db                	test   %ebx,%ebx
14000159e:	78 22                	js     0x1400015c2
1400015a0:	85 c0                	test   %eax,%eax
1400015a2:	0f 48 d8             	cmovs  %eax,%ebx
1400015a5:	85 db                	test   %ebx,%ebx
1400015a7:	78 19                	js     0x1400015c2
1400015a9:	44 84 3d 10 d3 00 00 	test   %r15b,0xd310(%rip)        # 0x14000e8c0
1400015b0:	74 47                	je     0x1400015f9
1400015b2:	48 8d 45 2f          	lea    0x2f(%rbp),%rax
1400015b6:	45 8b cf             	mov    %r15d,%r9d
1400015b9:	48 8d 15 50 94 00 00 	lea    0x9450(%rip),%rdx        # 0x14000aa10
1400015c0:	eb 2d                	jmp    0x1400015ef
1400015c2:	f6 05 f7 d2 00 00 02 	testb  $0x2,0xd2f7(%rip)        # 0x14000e8c0
1400015c9:	74 2e                	je     0x1400015f9
1400015cb:	89 5d a7             	mov    %ebx,-0x59(%rbp)
1400015ce:	48 8d 45 a7          	lea    -0x59(%rbp),%rax
1400015d2:	48 89 45 df          	mov    %rax,-0x21(%rbp)
1400015d6:	48 c7 45 e7 04 00 00 	movq   $0x4,-0x19(%rbp)
1400015dd:	00
1400015de:	48 8d 45 cf          	lea    -0x31(%rbp),%rax
1400015e2:	41 b9 02 00 00 00    	mov    $0x2,%r9d
1400015e8:	48 8d 15 11 94 00 00 	lea    0x9411(%rip),%rdx        # 0x14000aa00
1400015ef:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400015f4:	e8 23 fd ff ff       	call   0x14000131c
1400015f9:	48 8b 05 08 ca 00 00 	mov    0xca08(%rip),%rax        # 0x14000e008
140001600:	0f 10 40 f0          	movups -0x10(%rax),%xmm0
140001604:	f3 0f 7f 45 bf       	movdqu %xmm0,-0x41(%rbp)
140001609:	0f 57 c9             	xorps  %xmm1,%xmm1
14000160c:	f3 0f 7f 0d 14 ca 00 	movdqu %xmm1,0xca14(%rip)        # 0x14000e028
140001613:	00
140001614:	4c 8d 0d 05 ca 00 00 	lea    0xca05(%rip),%r9        # 0x14000e020
14000161b:	4c 8d 05 de c9 00 00 	lea    0xc9de(%rip),%r8        # 0x14000e000
140001622:	48 8d 15 e7 f9 ff ff 	lea    -0x619(%rip),%rdx        # 0x140001010
140001629:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
14000162d:	48 ff 15 0c 90 00 00 	rex.W call *0x900c(%rip)        # 0x14000a640
140001634:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140001639:	85 c0                	test   %eax,%eax
14000163b:	75 21                	jne    0x14000165e
14000163d:	4c 8b 05 c4 c9 00 00 	mov    0xc9c4(%rip),%r8        # 0x14000e008
140001644:	45 0f b7 08          	movzwl (%r8),%r9d
140001648:	8d 50 02             	lea    0x2(%rax),%edx
14000164b:	48 8b 0d ce c9 00 00 	mov    0xc9ce(%rip),%rcx        # 0x14000e020
140001652:	48 ff 15 f7 8f 00 00 	rex.W call *0x8ff7(%rip)        # 0x14000a650
140001659:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000165e:	83 3d 9b c9 00 00 05 	cmpl   $0x5,0xc99b(%rip)        # 0x14000e000
140001665:	76 63                	jbe    0x1400016ca
140001667:	48 ba 00 00 00 00 00 	movabs $0x400000000000,%rdx
14000166e:	40 00 00
140001671:	48 85 15 98 c9 00 00 	test   %rdx,0xc998(%rip)        # 0x14000e010
140001678:	74 50                	je     0x1400016ca
14000167a:	48 8b 05 97 c9 00 00 	mov    0xc997(%rip),%rax        # 0x14000e018
140001681:	48 23 c2             	and    %rdx,%rax
140001684:	48 3b 05 8d c9 00 00 	cmp    0xc98d(%rip),%rax        # 0x14000e018
14000168b:	75 3d                	jne    0x1400016ca
14000168d:	89 5d af             	mov    %ebx,-0x51(%rbp)
140001690:	48 8d 45 af          	lea    -0x51(%rbp),%rax
140001694:	48 89 45 0f          	mov    %rax,0xf(%rbp)
140001698:	48 c7 45 17 04 00 00 	movq   $0x4,0x17(%rbp)
14000169f:	00
1400016a0:	48 8d 45 ef          	lea    -0x11(%rbp),%rax
1400016a4:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400016a9:	c7 44 24 20 03 00 00 	movl   $0x3,0x20(%rsp)
1400016b0:	00
1400016b1:	45 33 c9             	xor    %r9d,%r9d
1400016b4:	45 33 c0             	xor    %r8d,%r8d
1400016b7:	48 8d 15 93 a0 00 00 	lea    0xa093(%rip),%rdx        # 0x14000b751
1400016be:	48 8d 0d 3b c9 00 00 	lea    0xc93b(%rip),%rcx        # 0x14000e000
1400016c5:	e8 c6 f9 ff ff       	call   0x140001090
1400016ca:	48 8b 0d 4f c9 00 00 	mov    0xc94f(%rip),%rcx        # 0x14000e020
1400016d1:	44 89 35 28 c9 00 00 	mov    %r14d,0xc928(%rip)        # 0x14000e000
1400016d8:	4c 89 35 41 c9 00 00 	mov    %r14,0xc941(%rip)        # 0x14000e020
1400016df:	48 ff 15 62 8f 00 00 	rex.W call *0x8f62(%rip)        # 0x14000a648
1400016e6:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400016eb:	e8 d0 fc ff ff       	call   0x1400013c0
1400016f0:	40 84 f6             	test   %sil,%sil
1400016f3:	74 0c                	je     0x140001701
1400016f5:	48 ff 15 5c 8b 00 00 	rex.W call *0x8b5c(%rip)        # 0x14000a258
1400016fc:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140001701:	85 ff                	test   %edi,%edi
140001703:	41 0f 49 fe          	cmovns %r14d,%edi
140001707:	48 8b 55 9f          	mov    -0x61(%rbp),%rdx
14000170b:	48 83 c2 e8          	add    $0xffffffffffffffe8,%rdx
14000170f:	83 cb ff             	or     $0xffffffff,%ebx
140001712:	8b c3                	mov    %ebx,%eax
140001714:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
140001719:	03 c3                	add    %ebx,%eax
14000171b:	85 c0                	test   %eax,%eax
14000171d:	7f 11                	jg     0x140001730
14000171f:	48 8b 0a             	mov    (%rdx),%rcx
140001722:	48 8b 01             	mov    (%rcx),%rax
140001725:	48 8b 40 08          	mov    0x8(%rax),%rax
140001729:	ff 15 a1 8f 00 00    	call   *0x8fa1(%rip)        # 0x14000a6d0
14000172f:	90                   	nop
140001730:	48 8b 55 b7          	mov    -0x49(%rbp),%rdx
140001734:	48 83 c2 e8          	add    $0xffffffffffffffe8,%rdx
140001738:	8b c3                	mov    %ebx,%eax
14000173a:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
14000173f:	03 c3                	add    %ebx,%eax
140001741:	85 c0                	test   %eax,%eax
140001743:	7f 10                	jg     0x140001755
140001745:	48 8b 0a             	mov    (%rdx),%rcx
140001748:	48 8b 01             	mov    (%rcx),%rax
14000174b:	48 8b 40 08          	mov    0x8(%rax),%rax
14000174f:	ff 15 7b 8f 00 00    	call   *0x8f7b(%rip)        # 0x14000a6d0
140001755:	8b c7                	mov    %edi,%eax
140001757:	48 8b 4d 3f          	mov    0x3f(%rbp),%rcx
14000175b:	48 33 cc             	xor    %rsp,%rcx
14000175e:	e8 ed 61 00 00       	call   0x140007950
140001763:	4c 8d 9c 24 e0 00 00 	lea    0xe0(%rsp),%r11
14000176a:	00
14000176b:	49 8b 5b 20          	mov    0x20(%r11),%rbx
14000176f:	49 8b 73 28          	mov    0x28(%r11),%rsi
140001773:	49 8b 7b 30          	mov    0x30(%r11),%rdi
140001777:	49 8b e3             	mov    %r11,%rsp
14000177a:	41 5f                	pop    %r15
14000177c:	41 5e                	pop    %r14
14000177e:	5d                   	pop    %rbp
14000177f:	c3                   	ret
140001780:	cc                   	int3
140001781:	cc                   	int3
140001782:	cc                   	int3
140001783:	cc                   	int3
140001784:	cc                   	int3
140001785:	cc                   	int3
140001786:	cc                   	int3
140001787:	cc                   	int3
140001788:	48 83 ec 28          	sub    $0x28,%rsp
14000178c:	48 8b 11             	mov    (%rcx),%rdx
14000178f:	48 83 ea 18          	sub    $0x18,%rdx
140001793:	83 c8 ff             	or     $0xffffffff,%eax
140001796:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
14000179b:	83 e8 01             	sub    $0x1,%eax
14000179e:	7f 10                	jg     0x1400017b0
1400017a0:	48 8b 0a             	mov    (%rdx),%rcx
1400017a3:	48 8b 01             	mov    (%rcx),%rax
1400017a6:	48 8b 40 08          	mov    0x8(%rax),%rax
1400017aa:	ff 15 20 8f 00 00    	call   *0x8f20(%rip)        # 0x14000a6d0
1400017b0:	48 83 c4 28          	add    $0x28,%rsp
1400017b4:	c3                   	ret
1400017b5:	cc                   	int3
1400017b6:	cc                   	int3
1400017b7:	cc                   	int3
1400017b8:	cc                   	int3
1400017b9:	cc                   	int3
1400017ba:	cc                   	int3
1400017bb:	cc                   	int3
1400017bc:	89 11                	mov    %edx,(%rcx)
1400017be:	48 8b c1             	mov    %rcx,%rax
1400017c1:	c3                   	ret
1400017c2:	cc                   	int3
1400017c3:	cc                   	int3
1400017c4:	cc                   	int3
1400017c5:	cc                   	int3
1400017c6:	cc                   	int3
1400017c7:	cc                   	int3
1400017c8:	cc                   	int3
1400017c9:	cc                   	int3
1400017ca:	cc                   	int3
1400017cb:	cc                   	int3
1400017cc:	48 83 ec 28          	sub    $0x28,%rsp
1400017d0:	8b d1                	mov    %ecx,%edx
1400017d2:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
1400017d7:	e8 e0 ff ff ff       	call   0x1400017bc
1400017dc:	48 8d 15 d5 b2 00 00 	lea    0xb2d5(%rip),%rdx        # 0x14000cab8
1400017e3:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
1400017e8:	e8 37 71 00 00       	call   0x140008924
1400017ed:	cc                   	int3
1400017ee:	cc                   	int3
1400017ef:	cc                   	int3
1400017f0:	cc                   	int3
1400017f1:	cc                   	int3
1400017f2:	cc                   	int3
1400017f3:	cc                   	int3
1400017f4:	cc                   	int3
1400017f5:	cc                   	int3
1400017f6:	cc                   	int3
1400017f7:	cc                   	int3
1400017f8:	cc                   	int3
1400017f9:	cc                   	int3
1400017fa:	cc                   	int3
1400017fb:	cc                   	int3
1400017fc:	cc                   	int3
1400017fd:	cc                   	int3
1400017fe:	cc                   	int3
1400017ff:	cc                   	int3
140001800:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140001805:	57                   	push   %rdi
140001806:	48 83 ec 20          	sub    $0x20,%rsp
14000180a:	48 8b f9             	mov    %rcx,%rdi
14000180d:	85 d2                	test   %edx,%edx
14000180f:	78 74                	js     0x140001885
140001811:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140001816:	2b c2                	sub    %edx,%eax
140001818:	83 f8 01             	cmp    $0x1,%eax
14000181b:	7c 68                	jl     0x140001885
14000181d:	ff c2                	inc    %edx
14000181f:	8d 5a 07             	lea    0x7(%rdx),%ebx
140001822:	83 e3 f8             	and    $0xfffffff8,%ebx
140001825:	3b d3                	cmp    %ebx,%edx
140001827:	7f 5c                	jg     0x140001885
140001829:	49 63 c8             	movslq %r8d,%rcx
14000182c:	4c 63 c3             	movslq %ebx,%r8
14000182f:	85 db                	test   %ebx,%ebx
140001831:	75 05                	jne    0x140001838
140001833:	45 33 c0             	xor    %r8d,%r8d
140001836:	eb 18                	jmp    0x140001850
140001838:	33 d2                	xor    %edx,%edx
14000183a:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
14000183e:	49 f7 f0             	div    %r8
140001841:	48 3b c1             	cmp    %rcx,%rax
140001844:	72 3f                	jb     0x140001885
140001846:	4c 0f af c1          	imul   %rcx,%r8
14000184a:	49 83 f8 e7          	cmp    $0xffffffffffffffe7,%r8
14000184e:	77 35                	ja     0x140001885
140001850:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140001854:	49 83 c0 18          	add    $0x18,%r8
140001858:	33 d2                	xor    %edx,%edx
14000185a:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14000185e:	48 ff 15 7b 8a 00 00 	rex.W call *0x8a7b(%rip)        # 0x14000a2e0
140001865:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000186a:	48 85 c0             	test   %rax,%rax
14000186d:	74 16                	je     0x140001885
14000186f:	83 60 08 00          	andl   $0x0,0x8(%rax)