1400154a0:	4c 8b cb             	mov    %rbx,%r9
1400154a3:	49 8b d6             	mov    %r14,%rdx
1400154a6:	bb 00 04 00 00       	mov    $0x400,%ebx
1400154ab:	44 8b c3             	mov    %ebx,%r8d
1400154ae:	e8 61 ff ff ff       	call   0x140015414
1400154b3:	84 c0                	test   %al,%al
1400154b5:	74 64                	je     0x14001551b
1400154b7:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
1400154bb:	48 8b c1             	mov    %rcx,%rax
1400154be:	48 ff c0             	inc    %rax
1400154c1:	66 41 39 2c 46       	cmp    %bp,(%r14,%rax,2)
1400154c6:	75 f6                	jne    0x1400154be
1400154c8:	48 8d 50 01          	lea    0x1(%rax),%rdx
1400154cc:	48 3b d3             	cmp    %rbx,%rdx
1400154cf:	73 4a                	jae    0x14001551b
1400154d1:	66 41 c7 04 46 5c 00 	movw   $0x5c,(%r14,%rax,2)
1400154d8:	4d 8d 0c 56          	lea    (%r14,%rdx,2),%r9
1400154dc:	66 41 89 29          	mov    %bp,(%r9)
1400154e0:	48 85 ff             	test   %rdi,%rdi
1400154e3:	74 32                	je     0x140015517
1400154e5:	66 39 2f             	cmp    %bp,(%rdi)
1400154e8:	74 2d                	je     0x140015517
1400154ea:	48 ff c1             	inc    %rcx
1400154ed:	66 39 2c 4f          	cmp    %bp,(%rdi,%rcx,2)
1400154f1:	75 f7                	jne    0x1400154ea
1400154f3:	48 8d 42 01          	lea    0x1(%rdx),%rax
1400154f7:	48 03 c1             	add    %rcx,%rax
1400154fa:	48 3b c3             	cmp    %rbx,%rax
1400154fd:	77 1c                	ja     0x14001551b
1400154ff:	48 ff c1             	inc    %rcx
140015502:	4c 8d 04 4f          	lea    (%rdi,%rcx,2),%r8
140015506:	49 8b c9             	mov    %r9,%rcx
140015509:	0f ae e8             	lfence
14001550c:	4c 2b c7             	sub    %rdi,%r8
14001550f:	48 8b d7             	mov    %rdi,%rdx
140015512:	e8 e5 04 1f 00       	call   0x1402059fc
140015517:	b0 01                	mov    $0x1,%al
140015519:	eb 02                	jmp    0x14001551d
14001551b:	32 c0                	xor    %al,%al
14001551d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140015522:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140015527:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14001552c:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140015531:	48 83 c4 20          	add    $0x20,%rsp
140015535:	41 5e                	pop    %r14
140015537:	c3                   	ret
140015538:	40 53                	rex push %rbx
14001553a:	48 83 ec 30          	sub    $0x30,%rsp
14001553e:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
140015543:	48 8b c2             	mov    %rdx,%rax
140015546:	48 8b d9             	mov    %rcx,%rbx
140015549:	76 03                	jbe    0x14001554e
14001554b:	48 8b 02             	mov    (%rdx),%rax
14001554e:	48 8d 0d 63 14 22 00 	lea    0x221463(%rip),%rcx        # 0x1402369b8
140015555:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14001555a:	33 c0                	xor    %eax,%eax
14001555c:	48 89 0b             	mov    %rcx,(%rbx)
14001555f:	48 8d 53 08          	lea    0x8(%rbx),%rdx
140015563:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140015568:	0f 57 c0             	xorps  %xmm0,%xmm0
14001556b:	89 44 24 29          	mov    %eax,0x29(%rsp)
14001556f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140015574:	66 89 44 24 2d       	mov    %ax,0x2d(%rsp)
140015579:	0f 11 02             	movups %xmm0,(%rdx)
14001557c:	88 44 24 2f          	mov    %al,0x2f(%rsp)
140015580:	ff 15 6a d1 1f 00    	call   *0x1fd16a(%rip)        # 0x1402126f0
140015586:	48 8d 05 43 14 22 00 	lea    0x221443(%rip),%rax        # 0x1402369d0
14001558d:	48 89 03             	mov    %rax,(%rbx)
140015590:	48 8b c3             	mov    %rbx,%rax
140015593:	48 83 c4 30          	add    $0x30,%rsp
140015597:	5b                   	pop    %rbx
140015598:	c3                   	ret
140015599:	90                   	nop
14001559a:	90                   	nop
14001559b:	90                   	nop
14001559c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400155a1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400155a6:	57                   	push   %rdi
1400155a7:	48 83 ec 20          	sub    $0x20,%rsp
1400155ab:	48 8b f1             	mov    %rcx,%rsi
1400155ae:	48 8b da             	mov    %rdx,%rbx
1400155b1:	48 8d 0c 55 02 00 00 	lea    0x2(,%rdx,2),%rcx
1400155b8:	00
1400155b9:	ff 15 91 d5 1f 00    	call   *0x1fd591(%rip)        # 0x140212b50
1400155bf:	48 8b f8             	mov    %rax,%rdi
1400155c2:	48 85 c0             	test   %rax,%rax
1400155c5:	74 26                	je     0x1400155ed
1400155c7:	48 8d 53 01          	lea    0x1(%rbx),%rdx
1400155cb:	4c 8b cb             	mov    %rbx,%r9
1400155ce:	4c 8b c6             	mov    %rsi,%r8
1400155d1:	48 8b c8             	mov    %rax,%rcx
1400155d4:	ff 15 16 d7 1f 00    	call   *0x1fd716(%rip)        # 0x140212cf0
1400155da:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400155df:	48 8b c7             	mov    %rdi,%rax
1400155e2:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400155e7:	48 83 c4 20          	add    $0x20,%rsp
1400155eb:	5f                   	pop    %rdi
1400155ec:	c3                   	ret
1400155ed:	33 d2                	xor    %edx,%edx
1400155ef:	b9 10 30 10 01       	mov    $0x1103010,%ecx
1400155f4:	e8 eb 5c ff ff       	call   0x14000b2e4
1400155f9:	cc                   	int3
1400155fa:	90                   	nop
1400155fb:	90                   	nop
1400155fc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140015601:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140015606:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14001560b:	57                   	push   %rdi
14001560c:	41 56                	push   %r14
14001560e:	41 57                	push   %r15
140015610:	48 83 ec 20          	sub    $0x20,%rsp
140015614:	49 8b f1             	mov    %r9,%rsi
140015617:	49 8b e8             	mov    %r8,%rbp
14001561a:	4c 8b fa             	mov    %rdx,%r15
14001561d:	48 8b d9             	mov    %rcx,%rbx
140015620:	4d 85 c0             	test   %r8,%r8
140015623:	0f 84 0b 01 00 00    	je     0x140015734
140015629:	4d 85 c9             	test   %r9,%r9
14001562c:	0f 84 0f 01 00 00    	je     0x140015741
140015632:	48 8d 79 38          	lea    0x38(%rcx),%rdi
140015636:	80 3f 00             	cmpb   $0x0,(%rdi)
140015639:	74 3b                	je     0x140015676
14001563b:	48 8b 49 28          	mov    0x28(%rcx),%rcx
14001563f:	e8 e8 75 ff ff       	call   0x14000cc2c
140015644:	48 8b 0b             	mov    (%rbx),%rcx
140015647:	4c 8b f7             	mov    %rdi,%r14
14001564a:	48 83 23 00          	andq   $0x0,(%rbx)
14001564e:	48 85 c9             	test   %rcx,%rcx
140015651:	74 0a                	je     0x14001565d
140015653:	ff 15 e7 d4 1f 00    	call   *0x1fd4e7(%rip)        # 0x140212b40
140015659:	4c 8d 73 38          	lea    0x38(%rbx),%r14
14001565d:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140015661:	48 83 63 18 00       	andq   $0x0,0x18(%rbx)
140015666:	48 85 c9             	test   %rcx,%rcx
140015669:	74 06                	je     0x140015671
14001566b:	ff 15 cf d4 1f 00    	call   *0x1fd4cf(%rip)        # 0x140212b40
140015671:	c6 07 00             	movb   $0x0,(%rdi)
140015674:	eb 03                	jmp    0x140015679
140015676:	4c 8b f7             	mov    %rdi,%r14
140015679:	48 8b d6             	mov    %rsi,%rdx
14001567c:	48 8b cd             	mov    %rbp,%rcx
14001567f:	e8 18 ff ff ff       	call   0x14001559c
140015684:	48 89 03             	mov    %rax,(%rbx)
140015687:	48 81 fe ff ff 00 00 	cmp    $0xffff,%rsi
14001568e:	0f 87 9a 00 00 00    	ja     0x14001572e
140015694:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140015699:	b8 e0 ff 00 00       	mov    $0xffe0,%eax
14001569e:	66 21 43 0a          	and    %ax,0xa(%rbx)
1400156a2:	66 89 73 08          	mov    %si,0x8(%rbx)
1400156a6:	49 8b 47 10          	mov    0x10(%r15),%rax
1400156aa:	48 83 63 18 00       	andq   $0x0,0x18(%rbx)
1400156af:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1400156b4:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400156b8:	48 b8 cc cc cc cc cc 	movabs $0xcccccccccccccccc,%rax
1400156bf:	cc cc cc
1400156c2:	48 89 43 20          	mov    %rax,0x20(%rbx)
1400156c6:	b8 f0 ff 00 00       	mov    $0xfff0,%eax
1400156cb:	66 23 43 34          	and    0x34(%rbx),%ax
1400156cf:	66 89 43 34          	mov    %ax,0x34(%rbx)
1400156d3:	0f b7 d0             	movzwl %ax,%edx
1400156d6:	66 41 33 57 1c       	xor    0x1c(%r15),%dx
1400156db:	66 83 e2 30          	and    $0x30,%dx
1400156df:	66 33 d0             	xor    %ax,%dx
1400156e2:	66 89 53 34          	mov    %dx,0x34(%rbx)
1400156e6:	0f b7 ca             	movzwl %dx,%ecx
1400156e9:	41 8a 47 18          	mov    0x18(%r15),%al
1400156ed:	88 43 30             	mov    %al,0x30(%rbx)
1400156f0:	48 89 5b 28          	mov    %rbx,0x28(%rbx)
1400156f4:	66 41 33 4f 1c       	xor    0x1c(%r15),%cx
1400156f9:	66 83 e1 40          	and    $0x40,%cx
1400156fd:	66 33 ca             	xor    %dx,%cx
140015700:	ba 80 00 00 00       	mov    $0x80,%edx
140015705:	66 89 4b 34          	mov    %cx,0x34(%rbx)
140015709:	0f b7 c1             	movzwl %cx,%eax
14001570c:	66 41 33 47 1c       	xor    0x1c(%r15),%ax
140015711:	66 23 c2             	and    %dx,%ax
140015714:	41 c6 06 01          	movb   $0x1,(%r14)
140015718:	66 33 c1             	xor    %cx,%ax
14001571b:	66 89 43 34          	mov    %ax,0x34(%rbx)
14001571f:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140015724:	48 83 c4 20          	add    $0x20,%rsp
140015728:	41 5f                	pop    %r15
14001572a:	41 5e                	pop    %r14
14001572c:	5f                   	pop    %rdi
14001572d:	c3                   	ret
14001572e:	e8 91 70 ff ff       	call   0x14000c7c4
140015733:	cc                   	int3
140015734:	33 d2                	xor    %edx,%edx
140015736:	b9 cb a3 5d 00       	mov    $0x5da3cb,%ecx
14001573b:	e8 a4 5b ff ff       	call   0x14000b2e4
140015740:	cc                   	int3
140015741:	33 d2                	xor    %edx,%edx
140015743:	b9 cc a3 5d 00       	mov    $0x5da3cc,%ecx
140015748:	e8 97 5b ff ff       	call   0x14000b2e4
14001574d:	cc                   	int3
14001574e:	90                   	nop
14001574f:	90                   	nop
140015750:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140015755:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14001575a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14001575f:	57                   	push   %rdi
140015760:	41 54                	push   %r12
140015762:	41 55                	push   %r13
140015764:	41 56                	push   %r14
140015766:	41 57                	push   %r15
140015768:	48 83 ec 20          	sub    $0x20,%rsp
14001576c:	45 33 f6             	xor    %r14d,%r14d
14001576f:	4d 8b e1             	mov    %r9,%r12
140015772:	4d 8b f8             	mov    %r8,%r15
140015775:	4c 8b ea             	mov    %rdx,%r13
140015778:	48 8b d9             	mov    %rcx,%rbx
14001577b:	4d 85 c0             	test   %r8,%r8
14001577e:	0f 84 5a 01 00 00    	je     0x1400158de
140015784:	8b 74 24 70          	mov    0x70(%rsp),%esi
140015788:	41 8d 46 0f          	lea    0xf(%r14),%eax
14001578c:	3b f0                	cmp    %eax,%esi
14001578e:	0f 87 57 01 00 00    	ja     0x1400158eb
140015794:	b8 9e 88 00 00       	mov    $0x889e,%eax
140015799:	0f a3 f0             	bt     %esi,%eax
14001579c:	0f 83 49 01 00 00    	jae    0x1400158eb
1400157a2:	48 8d 79 38          	lea    0x38(%rcx),%rdi
1400157a6:	44 38 37             	cmp    %r14b,(%rdi)
1400157a9:	74 3f                	je     0x1400157ea
1400157ab:	48 8b 49 28          	mov    0x28(%rcx),%rcx
1400157af:	e8 78 74 ff ff       	call   0x14000cc2c
1400157b4:	48 8b 0b             	mov    (%rbx),%rcx
1400157b7:	48 8b ef             	mov    %rdi,%rbp
1400157ba:	4c 89 33             	mov    %r14,(%rbx)
1400157bd:	48 85 c9             	test   %rcx,%rcx
1400157c0:	74 0a                	je     0x1400157cc
1400157c2:	ff 15 78 d3 1f 00    	call   *0x1fd378(%rip)        # 0x140212b40
1400157c8:	48 8d 6b 38          	lea    0x38(%rbx),%rbp
1400157cc:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400157d0:	4c 89 73 18          	mov    %r14,0x18(%rbx)
1400157d4:	4c 8b f7             	mov    %rdi,%r14
1400157d7:	48 85 c9             	test   %rcx,%rcx
1400157da:	74 09                	je     0x1400157e5
1400157dc:	ff 15 5e d3 1f 00    	call   *0x1fd35e(%rip)        # 0x140212b40
1400157e2:	4c 8b f5             	mov    %rbp,%r14
1400157e5:	c6 07 00             	movb   $0x0,(%rdi)
1400157e8:	eb 03                	jmp    0x1400157ed
1400157ea:	4c 8b f7             	mov    %rdi,%r14
1400157ed:	49 8b 4d 10          	mov    0x10(%r13),%rcx
1400157f1:	bf 28 00 00 00       	mov    $0x28,%edi
1400157f6:	0f b7 51 08          	movzwl 0x8(%rcx),%edx
1400157fa:	48 8b 09             	mov    (%rcx),%rcx
1400157fd:	e8 9a fd ff ff       	call   0x14001559c
140015802:	48 89 03             	mov    %rax,(%rbx)
140015805:	49 8b 45 10          	mov    0x10(%r13),%rax
140015809:	0f b7 48 08          	movzwl 0x8(%rax),%ecx
14001580d:	66 89 4b 08          	mov    %cx,0x8(%rbx)
140015811:	49 8b 45 10          	mov    0x10(%r13),%rax
140015815:	0f b7 4b 0a          	movzwl 0xa(%rbx),%ecx
140015819:	66 33 48 0a          	xor    0xa(%rax),%cx
14001581d:	66 83 e1 1f          	and    $0x1f,%cx
140015821:	66 31 4b 0a          	xor    %cx,0xa(%rbx)
140015825:	49 8b 45 10          	mov    0x10(%r13),%rax
140015829:	48 8b 48 10          	mov    0x10(%rax),%rcx
14001582d:	48 89 4b 10          	mov    %rcx,0x10(%rbx)
140015831:	0f b7 4b 34          	movzwl 0x34(%rbx),%ecx
140015835:	66 33 ce             	xor    %si,%cx
140015838:	66 83 e1 0f          	and    $0xf,%cx
14001583c:	66 33 4b 34          	xor    0x34(%rbx),%cx
140015840:	66 89 4b 34          	mov    %cx,0x34(%rbx)
140015844:	0f b7 c1             	movzwl %cx,%eax
140015847:	66 41 33 45 1c       	xor    0x1c(%r13),%ax
14001584c:	66 83 e0 30          	and    $0x30,%ax
140015850:	66 33 c1             	xor    %cx,%ax
140015853:	48 8d 0d a6 20 23 00 	lea    0x2320a6(%rip),%rcx        # 0x140247900
14001585a:	66 89 43 34          	mov    %ax,0x34(%rbx)
14001585e:	41 8a 45 18          	mov    0x18(%r13),%al
140015862:	88 43 30             	mov    %al,0x30(%rbx)
140015865:	48 b8 cc cc cc cc cc 	movabs $0xcccccccccccccccc,%rax
14001586c:	cc cc cc
14001586f:	48 89 43 20          	mov    %rax,0x20(%rbx)
140015873:	49 8b c4             	mov    %r12,%rax
140015876:	48 f7 d8             	neg    %rax
140015879:	48 1b d2             	sbb    %rdx,%rdx
14001587c:	49 23 d4             	and    %r12,%rdx
14001587f:	4d 85 e4             	test   %r12,%r12
140015882:	49 0f 45 cf          	cmovne %r15,%rcx
140015886:	e8 11 fd ff ff       	call   0x14001559c
14001588b:	0f b7 4b 34          	movzwl 0x34(%rbx),%ecx
14001588f:	8d 57 58             	lea    0x58(%rdi),%edx
140015892:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140015897:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
14001589c:	48 89 43 18          	mov    %rax,0x18(%rbx)
1400158a0:	48 89 1c 1f          	mov    %rbx,(%rdi,%rbx,1)
1400158a4:	66 41 33 4d 1c       	xor    0x1c(%r13),%cx
1400158a9:	66 83 e1 40          	and    $0x40,%cx
1400158ad:	66 33 4b 34          	xor    0x34(%rbx),%cx
1400158b1:	66 89 4b 34          	mov    %cx,0x34(%rbx)
1400158b5:	0f b7 c1             	movzwl %cx,%eax
1400158b8:	66 41 33 45 1c       	xor    0x1c(%r13),%ax
1400158bd:	66 23 c2             	and    %dx,%ax
1400158c0:	41 c6 06 01          	movb   $0x1,(%r14)
1400158c4:	66 33 c1             	xor    %cx,%ax
1400158c7:	66 89 43 34          	mov    %ax,0x34(%rbx)
1400158cb:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
1400158d0:	48 83 c4 20          	add    $0x20,%rsp
1400158d4:	41 5f                	pop    %r15
1400158d6:	41 5e                	pop    %r14
1400158d8:	41 5d                	pop    %r13
1400158da:	41 5c                	pop    %r12
1400158dc:	5f                   	pop    %rdi
1400158dd:	c3                   	ret
1400158de:	33 d2                	xor    %edx,%edx
1400158e0:	b9 ce a3 5d 00       	mov    $0x5da3ce,%ecx
1400158e5:	e8 fa 59 ff ff       	call   0x14000b2e4
1400158ea:	cc                   	int3
1400158eb:	33 d2                	xor    %edx,%edx
1400158ed:	b9 db 46 14 00       	mov    $0x1446db,%ecx
1400158f2:	e8 ed 59 ff ff       	call   0x14000b2e4
1400158f7:	cc                   	int3
1400158f8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400158fd:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140015902:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
140015907:	41 56                	push   %r14
140015909:	48 83 ec 20          	sub    $0x20,%rsp
14001590d:	4a 8d 34 02          	lea    (%rdx,%r8,1),%rsi
140015911:	48 8b f9             	mov    %rcx,%rdi
140015914:	48 03 f6             	add    %rsi,%rsi
140015917:	4d 8b f1             	mov    %r9,%r14
14001591a:	48 8b ce             	mov    %rsi,%rcx
14001591d:	ff 15 2d d2 1f 00    	call   *0x1fd22d(%rip)        # 0x140212b50
140015923:	48 8b d8             	mov    %rax,%rbx
140015926:	48 85 c0             	test   %rax,%rax
140015929:	74 15                	je     0x140015940
14001592b:	48 8b 0f             	mov    (%rdi),%rcx
14001592e:	48 85 c9             	test   %rcx,%rcx
140015931:	74 0a                	je     0x14001593d
140015933:	48 83 27 00          	andq   $0x0,(%rdi)
140015937:	ff 15 03 d2 1f 00    	call   *0x1fd203(%rip)        # 0x140212b40
14001593d:	48 89 1f             	mov    %rbx,(%rdi)
140015940:	48 85 db             	test   %rbx,%rbx
140015943:	41 0f 95 c0          	setne  %r8b
140015947:	4d 85 f6             	test   %r14,%r14
14001594a:	74 15                	je     0x140015961
14001594c:	48 8b d6             	mov    %rsi,%rdx
14001594f:	48 8b c3             	mov    %rbx,%rax
140015952:	48 d1 ea             	shr    $1,%rdx
140015955:	48 f7 d8             	neg    %rax
140015958:	48 1b c9             	sbb    %rcx,%rcx
14001595b:	48 23 ca             	and    %rdx,%rcx
14001595e:	49 89 0e             	mov    %rcx,(%r14)
140015961:	48 8b 54 24 50       	mov    0x50(%rsp),%rdx
140015966:	48 85 d2             	test   %rdx,%rdx
140015969:	74 0c                	je     0x140015977
14001596b:	48 f7 db             	neg    %rbx
14001596e:	48 1b c9             	sbb    %rcx,%rcx