140031481:	4d 85 ff             	test   %r15,%r15
140031484:	79 59                	jns    0x1400314df
140031486:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
14003148b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140031490:	48 89 ca             	mov    %rcx,%rdx
140031493:	48 21 f2             	and    %rsi,%rdx
140031496:	48 ff ca             	dec    %rdx
140031499:	48 c1 e9 38          	shr    $0x38,%rcx
14003149d:	48 89 d0             	mov    %rdx,%rax
1400314a0:	4c 29 f8             	sub    %r15,%rax
1400314a3:	4c 39 e8             	cmp    %r13,%rax
1400314a6:	73 27                	jae    0x1400314cf
1400314a8:	4d 89 e8             	mov    %r13,%r8
1400314ab:	49 29 d0             	sub    %rdx,%r8
1400314ae:	4d 01 f8             	add    %r15,%r8
1400314b1:	0f 11 74 24 28       	movups %xmm6,0x28(%rsp)
1400314b6:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1400314bb:	48 89 f9             	mov    %rdi,%rcx
1400314be:	4d 89 f9             	mov    %r15,%r9
1400314c1:	e8 ca bc fe ff       	call   0x14001d190
1400314c6:	4c 89 7c 24 48       	mov    %r15,0x48(%rsp)
1400314cb:	8a 4c 24 57          	mov    0x57(%rsp),%cl
1400314cf:	48 89 f8             	mov    %rdi,%rax
1400314d2:	84 c9                	test   %cl,%cl
1400314d4:	0f 89 c4 fe ff ff    	jns    0x14003139e
1400314da:	e9 ba fe ff ff       	jmp    0x140031399
1400314df:	ba 0a 00 00 00       	mov    $0xa,%edx
1400314e4:	44 89 f9             	mov    %r15d,%ecx
1400314e7:	eb b4                	jmp    0x14003149d
1400314e9:	41 bf 0a 00 00 00    	mov    $0xa,%r15d
1400314ef:	0f 11 74 24 28       	movups %xmm6,0x28(%rsp)
1400314f4:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1400314f9:	41 b8 01 00 00 00    	mov    $0x1,%r8d
1400314ff:	48 89 f9             	mov    %rdi,%rcx
140031502:	4c 89 fa             	mov    %r15,%rdx
140031505:	4d 89 f9             	mov    %r15,%r9
140031508:	e8 83 bc fe ff       	call   0x14001d190
14003150d:	4c 89 f8             	mov    %r15,%rax
140031510:	e9 0c ff ff ff       	jmp    0x140031421
140031515:	80 7c 24 57 00       	cmpb   $0x0,0x57(%rsp)
14003151a:	79 0a                	jns    0x140031526
14003151c:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140031521:	e8 aa c9 03 00       	call   0x14006ded0
140031526:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
14003152b:	48 31 e1             	xor    %rsp,%rcx
14003152e:	48 3b 0d 0b fb 0c 00 	cmp    0xcfb0b(%rip),%rcx        # 0x140101040
140031535:	74 06                	je     0x14003153d
140031537:	e8 94 dd 03 00       	call   0x14006f2d0
14003153c:	cc                   	int3
14003153d:	48 89 e8             	mov    %rbp,%rax
140031540:	0f 28 74 24 70       	movaps 0x70(%rsp),%xmm6
140031545:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
14003154c:	5b                   	pop    %rbx
14003154d:	5d                   	pop    %rbp
14003154e:	5f                   	pop    %rdi
14003154f:	5e                   	pop    %rsi
140031550:	41 5c                	pop    %r12
140031552:	41 5d                	pop    %r13
140031554:	41 5e                	pop    %r14
140031556:	41 5f                	pop    %r15
140031558:	c3                   	ret
140031559:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14003155e:	49 89 44 24 10       	mov    %rax,0x10(%r12)
140031563:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
140031568:	41 0f 11 04 24       	movups %xmm0,(%r12)
14003156d:	e9 26 fd ff ff       	jmp    0x140031298
140031572:	45 31 ed             	xor    %r13d,%r13d
140031575:	e9 f0 fc ff ff       	jmp    0x14003126a
14003157a:	44 89 f8             	mov    %r15d,%eax
14003157d:	c1 e8 1f             	shr    $0x1f,%eax
140031580:	44 01 f8             	add    %r15d,%eax
140031583:	d1 f8                	sar    $1,%eax
140031585:	48 63 d0             	movslq %eax,%rdx
140031588:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14003158d:	66 41 b8 5c 00       	mov    $0x5c,%r8w
140031592:	e8 89 65 ff ff       	call   0x140027b20
140031597:	41 81 e7 01 00 00 80 	and    $0x80000001,%r15d
14003159e:	41 83 ff 01          	cmp    $0x1,%r15d
1400315a2:	75 13                	jne    0x1400315b7
1400315a4:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1400315a9:	66 ba 22 00          	mov    $0x22,%dx
1400315ad:	e8 4e ab 02 00       	call   0x14005c100
1400315b2:	e9 83 fe ff ff       	jmp    0x14003143a
1400315b7:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
1400315bc:	66 83 78 02 22       	cmpw   $0x22,0x2(%rax)
1400315c1:	0f 94 c1             	sete   %cl
1400315c4:	41 83 fc 01          	cmp    $0x1,%r12d
1400315c8:	0f 94 c2             	sete   %dl
1400315cb:	20 ca                	and    %cl,%dl
1400315cd:	80 fa 01             	cmp    $0x1,%dl
1400315d0:	74 10                	je     0x1400315e2
1400315d2:	31 c0                	xor    %eax,%eax
1400315d4:	45 85 e4             	test   %r12d,%r12d
1400315d7:	0f 94 c0             	sete   %al
1400315da:	41 89 c4             	mov    %eax,%r12d
1400315dd:	e9 58 fe ff ff       	jmp    0x14003143a
1400315e2:	48 83 c0 02          	add    $0x2,%rax
1400315e6:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1400315eb:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1400315f0:	66 ba 22 00          	mov    $0x22,%dx
1400315f4:	e8 07 ab 02 00       	call   0x14005c100
1400315f9:	45 31 e4             	xor    %r12d,%r12d
1400315fc:	e9 39 fe ff ff       	jmp    0x14003143a
140031601:	e8 7a dd 06 00       	call   0x14009f380
140031606:	66 c7 44 24 40 00 00 	movw   $0x0,0x40(%rsp)
14003160d:	c6 44 24 57 00       	movb   $0x0,0x57(%rsp)
140031612:	e9 2f fd ff ff       	jmp    0x140031346
140031617:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14003161c:	e8 8f 18 07 00       	call   0x1400a2eb0
140031621:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140031626:	49 89 47 10          	mov    %rax,0x10(%r15)
14003162a:	0f 28 44 24 40       	movaps 0x40(%rsp),%xmm0
14003162f:	41 0f 11 07          	movups %xmm0,(%r15)
140031633:	e9 e8 fc ff ff       	jmp    0x140031320
140031638:	0f 0b                	ud2
14003163a:	4d 85 f6             	test   %r14,%r14
14003163d:	74 f9                	je     0x140031638
14003163f:	4c 89 f1             	mov    %r14,%rcx
140031642:	48 89 fa             	mov    %rdi,%rdx
140031645:	49 89 d8             	mov    %rbx,%r8
140031648:	e8 63 93 fe ff       	call   0x14001a9b0
14003164d:	49 83 c6 18          	add    $0x18,%r14
140031651:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140031656:	e9 46 fb ff ff       	jmp    0x1400311a1
14003165b:	48 83 c7 02          	add    $0x2,%rdi
14003165f:	48 89 7c 24 60       	mov    %rdi,0x60(%rsp)
140031664:	48 89 f9             	mov    %rdi,%rcx
140031667:	66 ba 22 00          	mov    $0x22,%dx
14003166b:	e8 10 f9 03 00       	call   0x140070f80
140031670:	41 0f b6 5e 17       	movzbl 0x17(%r14),%ebx
140031675:	48 85 c0             	test   %rax,%rax
140031678:	74 1e                	je     0x140031698
14003167a:	84 db                	test   %bl,%bl
14003167c:	79 03                	jns    0x140031681
14003167e:	4d 8b 36             	mov    (%r14),%r14
140031681:	4c 29 f0             	sub    %r14,%rax
140031684:	48 83 c0 fe          	add    $0xfffffffffffffffe,%rax
140031688:	48 d1 f8             	sar    $1,%rax
14003168b:	48 89 c3             	mov    %rax,%rbx
14003168e:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140031693:	e9 d5 fa ff ff       	jmp    0x14003116d
140031698:	84 db                	test   %bl,%bl
14003169a:	79 04                	jns    0x1400316a0
14003169c:	49 8b 5e 08          	mov    0x8(%r14),%rbx
1400316a0:	48 ff cb             	dec    %rbx
1400316a3:	eb e9                	jmp    0x14003168e
1400316a5:	cc                   	int3
1400316a6:	cc                   	int3
1400316a7:	cc                   	int3
1400316a8:	cc                   	int3
1400316a9:	cc                   	int3
1400316aa:	cc                   	int3
1400316ab:	cc                   	int3
1400316ac:	cc                   	int3
1400316ad:	cc                   	int3
1400316ae:	cc                   	int3
1400316af:	cc                   	int3
1400316b0:	41 57                	push   %r15
1400316b2:	41 56                	push   %r14
1400316b4:	41 54                	push   %r12
1400316b6:	56                   	push   %rsi
1400316b7:	57                   	push   %rdi
1400316b8:	53                   	push   %rbx
1400316b9:	48 81 ec 98 00 00 00 	sub    $0x98,%rsp
1400316c0:	4c 89 c7             	mov    %r8,%rdi
1400316c3:	48 89 ce             	mov    %rcx,%rsi
1400316c6:	48 8b 05 73 f9 0c 00 	mov    0xcf973(%rip),%rax        # 0x140101040
1400316cd:	48 31 e0             	xor    %rsp,%rax
1400316d0:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
1400316d7:	00
1400316d8:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
1400316df:	aa aa aa
1400316e2:	48 8d 5c 24 70       	lea    0x70(%rsp),%rbx
1400316e7:	48 89 43 10          	mov    %rax,0x10(%rbx)
1400316eb:	0f 28 05 1e f2 0a 00 	movaps 0xaf21e(%rip),%xmm0        # 0x1400e0910
1400316f2:	0f 29 03             	movaps %xmm0,(%rbx)
1400316f5:	48 89 d9             	mov    %rbx,%rcx
1400316f8:	e8 03 fa ff ff       	call   0x140031100
1400316fd:	48 8b 03             	mov    (%rbx),%rax
140031700:	4c 8b 73 08          	mov    0x8(%rbx),%r14
140031704:	eb 12                	jmp    0x140031718
140031706:	48 8b 50 08          	mov    0x8(%rax),%rdx
14003170a:	48 83 fa 02          	cmp    $0x2,%rdx
14003170e:	0f 84 77 02 00 00    	je     0x14003198b
140031714:	48 83 c0 18          	add    $0x18,%rax
140031718:	4c 39 f0             	cmp    %r14,%rax
14003171b:	74 19                	je     0x140031736
14003171d:	48 0f be 48 17       	movsbq 0x17(%rax),%rcx
140031722:	48 89 ca             	mov    %rcx,%rdx
140031725:	48 85 c9             	test   %rcx,%rcx
140031728:	79 e0                	jns    0x14003170a
14003172a:	eb da                	jmp    0x140031706
14003172c:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140031731:	88 59 17             	mov    %bl,0x17(%rcx)
140031734:	eb 65                	jmp    0x14003179b
140031736:	49 bf f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%r15
14003173d:	ff ff 7f
140031740:	48 8b 5f 08          	mov    0x8(%rdi),%rbx
140031744:	4c 39 fb             	cmp    %r15,%rbx
140031747:	0f 87 6a 02 00 00    	ja     0x1400319b7
14003174d:	48 8b 3f             	mov    (%rdi),%rdi
140031750:	48 83 fb 0a          	cmp    $0xa,%rbx
140031754:	76 d6                	jbe    0x14003172c
140031756:	48 89 d8             	mov    %rbx,%rax
140031759:	48 83 c8 03          	or     $0x3,%rax
14003175d:	48 8d 48 01          	lea    0x1(%rax),%rcx
140031761:	48 83 f8 0b          	cmp    $0xb,%rax
140031765:	41 bc 0d 00 00 00    	mov    $0xd,%r12d
14003176b:	4c 0f 45 e1          	cmovne %rcx,%r12
14003176f:	4d 85 e4             	test   %r12,%r12
140031772:	0f 88 3a 02 00 00    	js     0x1400319b2
140031778:	4b 8d 0c 24          	lea    (%r12,%r12,1),%rcx
14003177c:	e8 13 c7 03 00       	call   0x14006de94
140031781:	48 89 c1             	mov    %rax,%rcx
140031784:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140031789:	4b 8d 04 27          	lea    (%r15,%r12,1),%rax
14003178d:	48 83 c0 09          	add    $0x9,%rax
140031791:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140031796:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
14003179b:	4c 8d 3c 59          	lea    (%rcx,%rbx,2),%r15
14003179f:	48 39 cf             	cmp    %rcx,%rdi
1400317a2:	0f 92 c0             	setb   %al
1400317a5:	4c 39 ff             	cmp    %r15,%rdi
1400317a8:	0f 93 c2             	setae  %dl
1400317ab:	08 c2                	or     %al,%dl
1400317ad:	0f 84 d6 01 00 00    	je     0x140031989
1400317b3:	48 85 db             	test   %rbx,%rbx
1400317b6:	74 0e                	je     0x1400317c6
1400317b8:	48 01 db             	add    %rbx,%rbx
1400317bb:	48 89 fa             	mov    %rdi,%rdx
1400317be:	49 89 d8             	mov    %rbx,%r8
1400317c1:	e8 aa c3 06 00       	call   0x14009db70
1400317c6:	66 41 c7 07 00 00    	movw   $0x0,(%r15)
1400317cc:	4c 8d 05 3d bd 0b 00 	lea    0xbbd3d(%rip),%r8        # 0x1400ed510
1400317d3:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
1400317d8:	41 b9 02 00 00 00    	mov    $0x2,%r9d
1400317de:	48 89 f9             	mov    %rdi,%rcx
1400317e1:	31 d2                	xor    %edx,%edx
1400317e3:	e8 b8 5e ff ff       	call   0x1400276a0
1400317e8:	48 8b 48 10          	mov    0x10(%rax),%rcx
1400317ec:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
1400317f1:	0f 10 00             	movups (%rax),%xmm0
1400317f4:	0f 29 44 24 50       	movaps %xmm0,0x50(%rsp)
1400317f9:	0f 57 c0             	xorps  %xmm0,%xmm0
1400317fc:	0f 11 00             	movups %xmm0,(%rax)
1400317ff:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
140031806:	00
140031807:	80 7f 17 00          	cmpb   $0x0,0x17(%rdi)
14003180b:	0f 88 b0 01 00 00    	js     0x1400319c1
140031811:	48 8b 54 24 70       	mov    0x70(%rsp),%rdx
140031816:	0f b6 5c 24 67       	movzbl 0x67(%rsp),%ebx
14003181b:	4c 39 f2             	cmp    %r14,%rdx
14003181e:	74 15                	je     0x140031835
140031820:	84 db                	test   %bl,%bl
140031822:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
140031827:	4c 8b 40 08          	mov    0x8(%rax),%r8
14003182b:	4c 0f 49 c3          	cmovns %rbx,%r8
14003182f:	48 0f 48 00          	cmovs  (%rax),%rax
140031833:	eb 15                	jmp    0x14003184a
140031835:	31 c0                	xor    %eax,%eax
140031837:	88 06                	mov    %al,(%rsi)
140031839:	88 46 18             	mov    %al,0x18(%rsi)
14003183c:	e9 bf 00 00 00       	jmp    0x140031900
140031841:	48 83 c2 18          	add    $0x18,%rdx
140031845:	4c 39 f2             	cmp    %r14,%rdx
140031848:	74 eb                	je     0x140031835
14003184a:	48 0f be 4a 17       	movsbq 0x17(%rdx),%rcx
14003184f:	49 89 ca             	mov    %rcx,%r10
140031852:	49 89 d1             	mov    %rdx,%r9
140031855:	48 85 c9             	test   %rcx,%rcx
140031858:	79 07                	jns    0x140031861
14003185a:	4c 8b 0a             	mov    (%rdx),%r9
14003185d:	4c 8b 52 08          	mov    0x8(%rdx),%r10
140031861:	4d 39 c2             	cmp    %r8,%r10
140031864:	72 db                	jb     0x140031841
140031866:	4d 85 c0             	test   %r8,%r8
140031869:	74 17                	je     0x140031882
14003186b:	45 31 d2             	xor    %r10d,%r10d
14003186e:	47 0f b7 1c 51       	movzwl (%r9,%r10,2),%r11d
140031873:	66 46 3b 1c 50       	cmp    (%rax,%r10,2),%r11w
140031878:	75 c7                	jne    0x140031841
14003187a:	49 ff c2             	inc    %r10
14003187d:	4d 39 d0             	cmp    %r10,%r8
140031880:	75 ec                	jne    0x14003186e
140031882:	84 c9                	test   %cl,%cl
140031884:	0f 89 46 01 00 00    	jns    0x1400319d0
14003188a:	4c 8b 4a 08          	mov    0x8(%rdx),%r9
14003188e:	4d 39 c1             	cmp    %r8,%r9
140031891:	0f 84 45 01 00 00    	je     0x1400319dc
140031897:	4d 39 c8             	cmp    %r9,%r8
14003189a:	0f 87 e9 00 00 00    	ja     0x140031989
1400318a0:	49 89 d1             	mov    %rdx,%r9
1400318a3:	84 c9                	test   %cl,%cl
1400318a5:	79 03                	jns    0x1400318aa
1400318a7:	4c 8b 0a             	mov    (%rdx),%r9
1400318aa:	66 43 83 3c 41 3d    	cmpw   $0x3d,(%r9,%r8,2)
1400318b0:	75 8f                	jne    0x140031841
1400318b2:	49 ff c0             	inc    %r8
1400318b5:	48 8d 84 24 8f 00 00 	lea    0x8f(%rsp),%rax
1400318bc:	00
1400318bd:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400318c2:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
1400318c7:	48 89 f9             	mov    %rdi,%rcx
1400318ca:	49 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%r9
1400318d1:	e8 da 60 ff ff       	call   0x1400279b0
1400318d6:	48 8b 47 10          	mov    0x10(%rdi),%rax
1400318da:	48 89 46 10          	mov    %rax,0x10(%rsi)
1400318de:	0f 28 07             	movaps (%rdi),%xmm0
1400318e1:	0f 11 06             	movups %xmm0,(%rsi)
1400318e4:	0f 57 c0             	xorps  %xmm0,%xmm0
1400318e7:	0f 29 07             	movaps %xmm0,(%rdi)
1400318ea:	48 c7 47 10 00 00 00 	movq   $0x0,0x10(%rdi)
1400318f1:	00
1400318f2:	c6 46 18 01          	movb   $0x1,0x18(%rsi)
1400318f6:	80 7f 17 00          	cmpb   $0x0,0x17(%rdi)
1400318fa:	0f 88 f3 00 00 00    	js     0x1400319f3
140031900:	84 db                	test   %bl,%bl
140031902:	79 0a                	jns    0x14003190e
140031904:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140031909:	e8 c2 c5 03 00       	call   0x14006ded0
14003190e:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
140031913:	48 85 ff             	test   %rdi,%rdi
140031916:	74 43                	je     0x14003195b
140031918:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
14003191d:	48 89 f9             	mov    %rdi,%rcx
140031920:	48 39 df             	cmp    %rbx,%rdi
140031923:	74 2c                	je     0x140031951
140031925:	48 83 c3 e8          	add    $0xffffffffffffffe8,%rbx
140031929:	eb 14                	jmp    0x14003193f
14003192b:	48 8b 0b             	mov    (%rbx),%rcx
14003192e:	e8 9d c5 03 00       	call   0x14006ded0
140031933:	48 8d 43 e8          	lea    -0x18(%rbx),%rax
140031937:	48 39 fb             	cmp    %rdi,%rbx
14003193a:	48 89 c3             	mov    %rax,%rbx
14003193d:	74 0d                	je     0x14003194c
14003193f:	48 85 db             	test   %rbx,%rbx
140031942:	74 45                	je     0x140031989
140031944:	80 7b 17 00          	cmpb   $0x0,0x17(%rbx)
140031948:	79 e9                	jns    0x140031933
14003194a:	eb df                	jmp    0x14003192b
14003194c:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
140031951:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
140031956:	e8 75 c5 03 00       	call   0x14006ded0
14003195b:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140031962:	00
140031963:	48 31 e1             	xor    %rsp,%rcx
140031966:	48 3b 0d d3 f6 0c 00 	cmp    0xcf6d3(%rip),%rcx        # 0x140101040
14003196d:	74 06                	je     0x140031975
14003196f:	e8 5c d9 03 00       	call   0x14006f2d0
140031974:	cc                   	int3