140589373:	49 8b ce             	mov    %r14,%rcx
140589376:	e8 55 1a ff ff       	call   0x14057add0
14058937b:	4d 8b 75 08          	mov    0x8(%r13),%r14
14058937f:	4d 85 f6             	test   %r14,%r14
140589382:	74 15                	je     0x140589399
140589384:	49 8b ce             	mov    %r14,%rcx
140589387:	e8 04 88 21 00       	call   0x1407a1b90
14058938c:	ba 38 00 00 00       	mov    $0x38,%edx
140589391:	49 8b ce             	mov    %r14,%rcx
140589394:	e8 ab 1d 89 00       	call   0x140e1b144
140589399:	ba 10 00 00 00       	mov    $0x10,%edx
14058939e:	49 8b cd             	mov    %r13,%rcx
1405893a1:	e8 9e 1d 89 00       	call   0x140e1b144
1405893a6:	90                   	nop
1405893a7:	48 85 db             	test   %rbx,%rbx
1405893aa:	74 27                	je     0x1405893d3
1405893ac:	8b 43 10             	mov    0x10(%rbx),%eax
1405893af:	ff c8                	dec    %eax
1405893b1:	89 43 10             	mov    %eax,0x10(%rbx)
1405893b4:	85 c0                	test   %eax,%eax
1405893b6:	7f 1b                	jg     0x1405893d3
1405893b8:	0f 88 81 02 00 00    	js     0x14058963f
1405893be:	48 8b 03             	mov    (%rbx),%rax
1405893c1:	ba 01 00 00 00       	mov    $0x1,%edx
1405893c6:	48 8b cb             	mov    %rbx,%rcx
1405893c9:	48 8b 00             	mov    (%rax),%rax
1405893cc:	ff 15 4e a6 9f 00    	call   *0x9fa64e(%rip)        # 0x140f83a20
1405893d2:	90                   	nop
1405893d3:	48 85 ff             	test   %rdi,%rdi
1405893d6:	74 27                	je     0x1405893ff
1405893d8:	8b 47 10             	mov    0x10(%rdi),%eax
1405893db:	ff c8                	dec    %eax
1405893dd:	89 47 10             	mov    %eax,0x10(%rdi)
1405893e0:	85 c0                	test   %eax,%eax
1405893e2:	7f 1b                	jg     0x1405893ff
1405893e4:	0f 88 60 02 00 00    	js     0x14058964a
1405893ea:	48 8b 07             	mov    (%rdi),%rax
1405893ed:	ba 01 00 00 00       	mov    $0x1,%edx
1405893f2:	48 8b cf             	mov    %rdi,%rcx
1405893f5:	48 8b 00             	mov    (%rax),%rax
1405893f8:	ff 15 22 a6 9f 00    	call   *0x9fa622(%rip)        # 0x140f83a20
1405893fe:	90                   	nop
1405893ff:	48 85 f6             	test   %rsi,%rsi
140589402:	74 27                	je     0x14058942b
140589404:	8b 46 10             	mov    0x10(%rsi),%eax
140589407:	ff c8                	dec    %eax
140589409:	89 46 10             	mov    %eax,0x10(%rsi)
14058940c:	85 c0                	test   %eax,%eax
14058940e:	7f 1b                	jg     0x14058942b
140589410:	0f 88 5e 01 00 00    	js     0x140589574
140589416:	48 8b 06             	mov    (%rsi),%rax
140589419:	ba 01 00 00 00       	mov    $0x1,%edx
14058941e:	48 8b ce             	mov    %rsi,%rcx
140589421:	48 8b 00             	mov    (%rax),%rax
140589424:	ff 15 f6 a5 9f 00    	call   *0x9fa5f6(%rip)        # 0x140f83a20
14058942a:	90                   	nop
14058942b:	bf 38 00 00 00       	mov    $0x38,%edi
140589430:	49 8b df             	mov    %r15,%rbx
140589433:	49 8b cf             	mov    %r15,%rcx
140589436:	e8 55 87 21 00       	call   0x1407a1b90
14058943b:	8b d7                	mov    %edi,%edx
14058943d:	48 8b cb             	mov    %rbx,%rcx
140589440:	e8 ff 1c 89 00       	call   0x140e1b144
140589445:	4c 8d 45 a0          	lea    -0x60(%rbp),%r8
140589449:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
14058944d:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
140589451:	e8 5a 07 00 00       	call   0x140589bb0
140589456:	0f 10 00             	movups (%rax),%xmm0
140589459:	0f 29 45 b0          	movaps %xmm0,-0x50(%rbp)
14058945d:	0f 10 48 10          	movups 0x10(%rax),%xmm1
140589461:	0f 29 4d c0          	movaps %xmm1,-0x40(%rbp)
140589465:	4c 8b 75 88          	mov    -0x78(%rbp),%r14
140589469:	33 f6                	xor    %esi,%esi
14058946b:	e9 8a f9 ff ff       	jmp    0x140588dfa
140589470:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
140589474:	e8 a7 c1 ff ff       	call   0x140585620
140589479:	49 8b 8e 88 00 00 00 	mov    0x88(%r14),%rcx
140589480:	e8 ab 00 ff ff       	call   0x140579530
140589485:	49 8b be 88 00 00 00 	mov    0x88(%r14),%rdi
14058948c:	48 85 ff             	test   %rdi,%rdi
14058948f:	74 27                	je     0x1405894b8
140589491:	48 8b cf             	mov    %rdi,%rcx
140589494:	e8 97 00 ff ff       	call   0x140579530
140589499:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
14058949d:	48 8b 11             	mov    (%rcx),%rdx
1405894a0:	48 85 d2             	test   %rdx,%rdx
1405894a3:	74 06                	je     0x1405894ab
1405894a5:	e8 06 fb fe ff       	call   0x140578fb0
1405894aa:	90                   	nop
1405894ab:	ba 58 00 00 00       	mov    $0x58,%edx
1405894b0:	48 8b cf             	mov    %rdi,%rcx
1405894b3:	e8 8c 1c 89 00       	call   0x140e1b144
1405894b8:	49 8b 86 80 00 00 00 	mov    0x80(%r14),%rax
1405894bf:	49 89 86 88 00 00 00 	mov    %rax,0x88(%r14)
1405894c6:	b9 58 00 00 00       	mov    $0x58,%ecx
1405894cb:	e8 38 1c 89 00       	call   0x140e1b108
1405894d0:	48 89 85 80 00 00 00 	mov    %rax,0x80(%rbp)
1405894d7:	48 85 c0             	test   %rax,%rax
1405894da:	74 44                	je     0x140589520
1405894dc:	c7 00 00 00 00 00    	movl   $0x0,(%rax)
1405894e2:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%rax)
1405894e9:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%rax)
1405894f0:	66 89 70 0c          	mov    %si,0xc(%rax)
1405894f4:	c7 40 10 ff ff ff ff 	movl   $0xffffffff,0x10(%rax)
1405894fb:	48 c7 40 14 00 00 00 	movq   $0x0,0x14(%rax)
140589502:	00
140589503:	48 89 70 20          	mov    %rsi,0x20(%rax)
140589507:	89 70 28             	mov    %esi,0x28(%rax)
14058950a:	48 89 70 30          	mov    %rsi,0x30(%rax)
14058950e:	48 89 70 38          	mov    %rsi,0x38(%rax)
140589512:	48 89 70 40          	mov    %rsi,0x40(%rax)
140589516:	48 89 70 48          	mov    %rsi,0x48(%rax)
14058951a:	48 89 70 50          	mov    %rsi,0x50(%rax)
14058951e:	eb 03                	jmp    0x140589523
140589520:	48 8b c6             	mov    %rsi,%rax
140589523:	49 89 86 80 00 00 00 	mov    %rax,0x80(%r14)
14058952a:	48 8d 0d cf 52 00 00 	lea    0x52cf(%rip),%rcx        # 0x14058e800
140589531:	48 89 48 38          	mov    %rcx,0x38(%rax)
140589535:	49 8b d6             	mov    %r14,%rdx
140589538:	49 8b cc             	mov    %r12,%rcx
14058953b:	e8 80 1c 00 00       	call   0x14058b1c0
140589540:	eb 1e                	jmp    0x140589560
140589542:	48 8b ca             	mov    %rdx,%rcx
140589545:	e8 b6 0b c2 ff       	call   0x1401aa100
14058954a:	4c 8b c0             	mov    %rax,%r8
14058954d:	48 8d 15 dc 80 a8 00 	lea    0xa880dc(%rip),%rdx        # 0x141011630
140589554:	48 8b 0d 9d 7f ea 00 	mov    0xea7f9d(%rip),%rcx        # 0x1414314f8
14058955b:	e8 40 a7 20 00       	call   0x140793ca0
140589560:	48 81 c4 38 01 00 00 	add    $0x138,%rsp
140589567:	41 5f                	pop    %r15
140589569:	41 5e                	pop    %r14
14058956b:	41 5d                	pop    %r13
14058956d:	41 5c                	pop    %r12
14058956f:	5f                   	pop    %rdi
140589570:	5e                   	pop    %rsi
140589571:	5b                   	pop    %rbx
140589572:	5d                   	pop    %rbp
140589573:	c3                   	ret
140589574:	b9 02 00 00 00       	mov    $0x2,%ecx
140589579:	e8 82 11 20 00       	call   0x14078a700
14058957e:	90                   	nop
14058957f:	48 8d 15 ea 82 a8 00 	lea    0xa882ea(%rip),%rdx        # 0x141011870
140589586:	48 8b 0d 6b 7f ea 00 	mov    0xea7f6b(%rip),%rcx        # 0x1414314f8
14058958d:	e8 7e a6 20 00       	call   0x140793c10
140589592:	90                   	nop
140589593:	b9 01 00 00 00       	mov    $0x1,%ecx
140589598:	e8 63 11 20 00       	call   0x14078a700
14058959d:	cc                   	int3
14058959e:	33 c9                	xor    %ecx,%ecx
1405895a0:	e8 5b 11 20 00       	call   0x14078a700
1405895a5:	90                   	nop
1405895a6:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895ab:	e8 50 11 20 00       	call   0x14078a700
1405895b0:	90                   	nop
1405895b1:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895b6:	e8 45 11 20 00       	call   0x14078a700
1405895bb:	90                   	nop
1405895bc:	b9 01 00 00 00       	mov    $0x1,%ecx
1405895c1:	e8 3a 11 20 00       	call   0x14078a700
1405895c6:	cc                   	int3
1405895c7:	33 c9                	xor    %ecx,%ecx
1405895c9:	e8 32 11 20 00       	call   0x14078a700
1405895ce:	90                   	nop
1405895cf:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895d4:	e8 27 11 20 00       	call   0x14078a700
1405895d9:	90                   	nop
1405895da:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895df:	e8 1c 11 20 00       	call   0x14078a700
1405895e4:	90                   	nop
1405895e5:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895ea:	e8 11 11 20 00       	call   0x14078a700
1405895ef:	90                   	nop
1405895f0:	b9 02 00 00 00       	mov    $0x2,%ecx
1405895f5:	e8 06 11 20 00       	call   0x14078a700
1405895fa:	90                   	nop
1405895fb:	b9 01 00 00 00       	mov    $0x1,%ecx
140589600:	e8 fb 10 20 00       	call   0x14078a700
140589605:	cc                   	int3
140589606:	33 c9                	xor    %ecx,%ecx
140589608:	e8 f3 10 20 00       	call   0x14078a700
14058960d:	cc                   	int3
14058960e:	b9 01 00 00 00       	mov    $0x1,%ecx
140589613:	e8 e8 10 20 00       	call   0x14078a700
140589618:	cc                   	int3
140589619:	33 c9                	xor    %ecx,%ecx
14058961b:	e8 e0 10 20 00       	call   0x14078a700
140589620:	cc                   	int3
140589621:	b9 01 00 00 00       	mov    $0x1,%ecx
140589626:	e8 d5 10 20 00       	call   0x14078a700
14058962b:	cc                   	int3
14058962c:	33 c9                	xor    %ecx,%ecx
14058962e:	e8 cd 10 20 00       	call   0x14078a700
140589633:	90                   	nop
140589634:	b9 02 00 00 00       	mov    $0x2,%ecx
140589639:	e8 c2 10 20 00       	call   0x14078a700
14058963e:	90                   	nop
14058963f:	b9 02 00 00 00       	mov    $0x2,%ecx
140589644:	e8 b7 10 20 00       	call   0x14078a700
140589649:	90                   	nop
14058964a:	b9 02 00 00 00       	mov    $0x2,%ecx
14058964f:	e8 ac 10 20 00       	call   0x14078a700
140589654:	cc                   	int3
140589655:	cc                   	int3
140589656:	cc                   	int3
140589657:	cc                   	int3
140589658:	cc                   	int3
140589659:	cc                   	int3
14058965a:	cc                   	int3
14058965b:	cc                   	int3
14058965c:	cc                   	int3
14058965d:	cc                   	int3
14058965e:	cc                   	int3
14058965f:	cc                   	int3
140589660:	48 83 ec 38          	sub    $0x38,%rsp
140589664:	4c 8b 89 80 00 00 00 	mov    0x80(%rcx),%r9
14058966b:	4d 8b d1             	mov    %r9,%r10
14058966e:	49 8b 41 08          	mov    0x8(%r9),%rax
140589672:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
140589676:	75 18                	jne    0x140589690
140589678:	48 39 50 20          	cmp    %rdx,0x20(%rax)
14058967c:	73 06                	jae    0x140589684
14058967e:	48 8b 40 10          	mov    0x10(%rax),%rax
140589682:	eb 06                	jmp    0x14058968a
140589684:	4c 8b c8             	mov    %rax,%r9
140589687:	48 8b 00             	mov    (%rax),%rax
14058968a:	80 78 19 00          	cmpb   $0x0,0x19(%rax)
14058968e:	74 e8                	je     0x140589678
140589690:	41 80 79 19 00       	cmpb   $0x0,0x19(%r9)
140589695:	75 38                	jne    0x1405896cf
140589697:	49 3b 51 20          	cmp    0x20(%r9),%rdx
14058969b:	72 32                	jb     0x1405896cf
14058969d:	4d 3b ca             	cmp    %r10,%r9
1405896a0:	74 2d                	je     0x1405896cf
1405896a2:	49 8b 51 28          	mov    0x28(%r9),%rdx
1405896a6:	48 85 d2             	test   %rdx,%rdx
1405896a9:	74 24                	je     0x1405896cf
1405896ab:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
1405896b0:	48 8d 05 f9 ed a4 00 	lea    0xa4edf9(%rip),%rax        # 0x140fd84b0
1405896b7:	41 b8 02 00 00 00    	mov    $0x2,%r8d
1405896bd:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1405896c2:	45 33 c9             	xor    %r9d,%r9d
1405896c5:	e8 46 03 00 00       	call   0x140589a10
1405896ca:	48 83 c4 38          	add    $0x38,%rsp
1405896ce:	c3                   	ret
1405896cf:	48 8b 0d 22 7e ea 00 	mov    0xea7e22(%rip),%rcx        # 0x1414314f8
1405896d6:	48 8d 15 eb 80 a8 00 	lea    0xa880eb(%rip),%rdx        # 0x1410117c8
1405896dd:	48 83 c4 38          	add    $0x38,%rsp
1405896e1:	e9 da 9e 20 00       	jmp    0x1407935c0
1405896e6:	cc                   	int3
1405896e7:	cc                   	int3
1405896e8:	cc                   	int3
1405896e9:	cc                   	int3
1405896ea:	cc                   	int3
1405896eb:	cc                   	int3
1405896ec:	cc                   	int3
1405896ed:	cc                   	int3
1405896ee:	cc                   	int3
1405896ef:	cc                   	int3
1405896f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1405896f5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1405896fa:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1405896ff:	57                   	push   %rdi
140589700:	41 54                	push   %r12
140589702:	41 55                	push   %r13
140589704:	41 56                	push   %r14
140589706:	41 57                	push   %r15
140589708:	48 83 ec 60          	sub    $0x60,%rsp
14058970c:	45 0f b6 e1          	movzbl %r9b,%r12d
140589710:	41 8b f0             	mov    %r8d,%esi
140589713:	4c 8b fa             	mov    %rdx,%r15
140589716:	4c 8b e9             	mov    %rcx,%r13
140589719:	45 33 f6             	xor    %r14d,%r14d
14058971c:	4c 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%r8
140589723:	00
140589724:	48 8b ac 24 b0 00 00 	mov    0xb0(%rsp),%rbp
14058972b:	00
14058972c:	48 8b d5             	mov    %rbp,%rdx
14058972f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140589734:	e8 d7 43 50 00       	call   0x140a8db10
140589739:	85 c0                	test   %eax,%eax
14058973b:	0f 88 50 02 00 00    	js     0x140589991
140589741:	4c 39 74 24 30       	cmp    %r14,0x30(%rsp)
140589746:	0f 84 45 02 00 00    	je     0x140589991
14058974c:	49 8b 4f 48          	mov    0x48(%r15),%rcx
140589750:	48 85 c9             	test   %rcx,%rcx
140589753:	0f 84 af 01 00 00    	je     0x140589908
140589759:	e8 d2 bd 28 00       	call   0x140815530
14058975e:	84 c0                	test   %al,%al
140589760:	0f 84 a2 01 00 00    	je     0x140589908
140589766:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14058976b:	8b ce                	mov    %esi,%ecx
14058976d:	85 f6                	test   %esi,%esi
14058976f:	0f 84 86 00 00 00    	je     0x1405897fb
140589775:	83 e9 01             	sub    $0x1,%ecx
140589778:	74 45                	je     0x1405897bf
14058977a:	83 f9 01             	cmp    $0x1,%ecx
14058977d:	0f 85 31 02 00 00    	jne    0x1405899b4
140589783:	ba 02 00 00 00       	mov    $0x2,%edx
140589788:	48 8b 0d 31 7d ea 00 	mov    0xea7d31(%rip),%rcx        # 0x1414314c0
14058978f:	e8 5c 47 1c 00       	call   0x14074def0
140589794:	48 8b 38             	mov    (%rax),%rdi
140589797:	48 85 ff             	test   %rdi,%rdi
14058979a:	74 1c                	je     0x1405897b8
14058979c:	8b 47 10             	mov    0x10(%rdi),%eax
14058979f:	ff c0                	inc    %eax
1405897a1:	89 47 10             	mov    %eax,0x10(%rdi)
1405897a4:	83 f8 01             	cmp    $0x1,%eax
1405897a7:	0f 8e 1e 02 00 00    	jle    0x1405899cb
1405897ad:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1405897b2:	0f 84 1b 02 00 00    	je     0x1405899d3
1405897b8:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1405897bd:	eb 73                	jmp    0x140589832
1405897bf:	ba 01 00 00 00       	mov    $0x1,%edx
1405897c4:	48 8b 0d f5 7c ea 00 	mov    0xea7cf5(%rip),%rcx        # 0x1414314c0
1405897cb:	e8 20 47 1c 00       	call   0x14074def0
1405897d0:	48 8b 38             	mov    (%rax),%rdi
1405897d3:	48 85 ff             	test   %rdi,%rdi
1405897d6:	74 1c                	je     0x1405897f4
1405897d8:	8b 47 10             	mov    0x10(%rdi),%eax
1405897db:	ff c0                	inc    %eax
1405897dd:	89 47 10             	mov    %eax,0x10(%rdi)
1405897e0:	83 f8 01             	cmp    $0x1,%eax
1405897e3:	0f 8e f5 01 00 00    	jle    0x1405899de
1405897e9:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1405897ee:	0f 84 f2 01 00 00    	je     0x1405899e6
1405897f4:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1405897f9:	eb 37                	jmp    0x140589832
1405897fb:	33 d2                	xor    %edx,%edx
1405897fd:	48 8b 0d bc 7c ea 00 	mov    0xea7cbc(%rip),%rcx        # 0x1414314c0
140589804:	e8 e7 46 1c 00       	call   0x14074def0
140589809:	48 8b 38             	mov    (%rax),%rdi
14058980c:	48 85 ff             	test   %rdi,%rdi
14058980f:	74 1c                	je     0x14058982d
140589811:	8b 47 10             	mov    0x10(%rdi),%eax
140589814:	ff c0                	inc    %eax
140589816:	89 47 10             	mov    %eax,0x10(%rdi)
140589819:	83 f8 01             	cmp    $0x1,%eax
14058981c:	0f 8e cf 01 00 00    	jle    0x1405899f1
140589822:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140589827:	0f 84 cc 01 00 00    	je     0x1405899f9
14058982d:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140589832:	48 8b df             	mov    %rdi,%rbx
140589835:	b9 28 00 00 00       	mov    $0x28,%ecx
14058983a:	e8 c9 18 89 00       	call   0x140e1b108
14058983f:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
140589844:	48 85 c0             	test   %rax,%rax
140589847:	74 42                	je     0x14058988b
140589849:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
14058984e:	48 89 54 24 50       	mov    %rdx,0x50(%rsp)
140589853:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx