14003040f:	48 8b 09             	mov    (%rcx),%rcx
140030412:	e8 09 c3 ff ff       	call   0x14002c720
140030417:	84 c0                	test   %al,%al
140030419:	74 21                	je     0x14003043c
14003041b:	48 85 ff             	test   %rdi,%rdi
14003041e:	75 0b                	jne    0x14003042b
140030420:	48 8d 3d 69 f0 01 00 	lea    0x1f069(%rip),%rdi        # 0x14004f490
140030427:	48 89 7b 40          	mov    %rdi,0x40(%rbx)
14003042b:	48 63 d6             	movslq %esi,%rdx
14003042e:	48 8b cf             	mov    %rdi,%rcx
140030431:	c6 43 4c 01          	movb   $0x1,0x4c(%rbx)
140030435:	e8 52 b3 ff ff       	call   0x14002b78c
14003043a:	eb 1f                	jmp    0x14003045b
14003043c:	48 85 ff             	test   %rdi,%rdi
14003043f:	48 8d 0d 5a f0 01 00 	lea    0x1f05a(%rip),%rcx        # 0x14004f4a0
140030446:	8b d6                	mov    %esi,%edx
140030448:	48 0f 45 cf          	cmovne %rdi,%rcx
14003044c:	45 33 c0             	xor    %r8d,%r8d
14003044f:	48 89 4b 40          	mov    %rcx,0x40(%rbx)
140030453:	48 8b cb             	mov    %rbx,%rcx
140030456:	e8 15 00 00 00       	call   0x140030470
14003045b:	89 43 48             	mov    %eax,0x48(%rbx)
14003045e:	b0 01                	mov    $0x1,%al
140030460:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140030465:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14003046a:	48 83 c4 20          	add    $0x20,%rsp
14003046e:	5f                   	pop    %rdi
14003046f:	c3                   	ret
140030470:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140030475:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003047a:	57                   	push   %rdi
14003047b:	48 83 ec 20          	sub    $0x20,%rsp
14003047f:	48 8b 59 08          	mov    0x8(%rcx),%rbx
140030483:	8b f2                	mov    %edx,%esi
140030485:	48 8b f9             	mov    %rcx,%rdi
140030488:	80 7b 28 00          	cmpb   $0x0,0x28(%rbx)
14003048c:	75 08                	jne    0x140030496
14003048e:	48 8b cb             	mov    %rbx,%rcx
140030491:	e8 5a 00 00 00       	call   0x1400304f0
140030496:	4c 8b 4f 40          	mov    0x40(%rdi),%r9
14003049a:	45 33 d2             	xor    %r10d,%r10d
14003049d:	85 f6                	test   %esi,%esi
14003049f:	7e 2f                	jle    0x1400304d0
1400304a1:	41 80 39 00          	cmpb   $0x0,(%r9)
1400304a5:	74 29                	je     0x1400304d0
1400304a7:	41 0f b6 11          	movzbl (%r9),%edx
1400304ab:	48 8b 43 18          	mov    0x18(%rbx),%rax
1400304af:	48 8b 08             	mov    (%rax),%rcx
1400304b2:	44 0f b7 04 51       	movzwl (%rcx,%rdx,2),%r8d
1400304b7:	49 8d 49 01          	lea    0x1(%r9),%rcx
1400304bb:	41 0f ba e0 0f       	bt     $0xf,%r8d
1400304c0:	49 0f 43 c9          	cmovae %r9,%rcx
1400304c4:	41 ff c2             	inc    %r10d
1400304c7:	4c 8d 49 01          	lea    0x1(%rcx),%r9
1400304cb:	44 3b d6             	cmp    %esi,%r10d
1400304ce:	7c d1                	jl     0x1400304a1
1400304d0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400304d5:	41 8b c2             	mov    %r10d,%eax
1400304d8:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
1400304dd:	48 83 c4 20          	add    $0x20,%rsp
1400304e1:	5f                   	pop    %rdi
1400304e2:	c3                   	ret
1400304e3:	cc                   	int3
1400304e4:	cc                   	int3
1400304e5:	cc                   	int3
1400304e6:	cc                   	int3
1400304e7:	cc                   	int3
1400304e8:	cc                   	int3
1400304e9:	cc                   	int3
1400304ea:	cc                   	int3
1400304eb:	cc                   	int3
1400304ec:	cc                   	int3
1400304ed:	cc                   	int3
1400304ee:	cc                   	int3
1400304ef:	cc                   	int3
1400304f0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400304f5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400304fa:	57                   	push   %rdi
1400304fb:	48 83 ec 20          	sub    $0x20,%rsp
1400304ff:	48 8b f9             	mov    %rcx,%rdi
140030502:	e8 b1 ac ff ff       	call   0x14002b1b8
140030507:	48 8d 57 18          	lea    0x18(%rdi),%rdx
14003050b:	48 8b c8             	mov    %rax,%rcx
14003050e:	48 8b f0             	mov    %rax,%rsi
140030511:	4c 8b 80 90 00 00 00 	mov    0x90(%rax),%r8
140030518:	4c 89 02             	mov    %r8,(%rdx)
14003051b:	4c 8b 80 88 00 00 00 	mov    0x88(%rax),%r8
140030522:	4c 89 47 20          	mov    %r8,0x20(%rdi)
140030526:	4c 8b 47 08          	mov    0x8(%rdi),%r8
14003052a:	e8 f9 98 00 00       	call   0x140039e28
14003052f:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140030533:	48 8d 57 20          	lea    0x20(%rdi),%rdx
140030537:	48 8b ce             	mov    %rsi,%rcx
14003053a:	e8 55 99 00 00       	call   0x140039e94
14003053f:	8b 86 a8 03 00 00    	mov    0x3a8(%rsi),%eax
140030545:	a8 02                	test   $0x2,%al
140030547:	75 0d                	jne    0x140030556
140030549:	83 c8 02             	or     $0x2,%eax
14003054c:	89 86 a8 03 00 00    	mov    %eax,0x3a8(%rsi)
140030552:	c6 47 28 02          	movb   $0x2,0x28(%rdi)
140030556:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003055b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140030560:	48 83 c4 20          	add    $0x20,%rsp
140030564:	5f                   	pop    %rdi
140030565:	c3                   	ret
140030566:	cc                   	int3
140030567:	cc                   	int3
140030568:	45 85 c0             	test   %r8d,%r8d
14003056b:	0f 84 99 00 00 00    	je     0x14003060a
140030571:	48 8b c4             	mov    %rsp,%rax
140030574:	48 89 58 08          	mov    %rbx,0x8(%rax)
140030578:	48 89 68 10          	mov    %rbp,0x10(%rax)
14003057c:	48 89 70 18          	mov    %rsi,0x18(%rax)
140030580:	48 89 78 20          	mov    %rdi,0x20(%rax)
140030584:	41 56                	push   %r14
140030586:	48 83 ec 20          	sub    $0x20,%rsp
14003058a:	4c 8b f1             	mov    %rcx,%r14
14003058d:	49 63 f8             	movslq %r8d,%rdi
140030590:	48 8b 09             	mov    (%rcx),%rcx
140030593:	49 8b d9             	mov    %r9,%rbx
140030596:	48 8b 41 08          	mov    0x8(%rcx),%rax
14003059a:	48 39 41 10          	cmp    %rax,0x10(%rcx)
14003059e:	75 11                	jne    0x1400305b1
1400305a0:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
1400305a4:	74 05                	je     0x1400305ab
1400305a6:	41 01 39             	add    %edi,(%r9)
1400305a9:	eb 45                	jmp    0x1400305f0
1400305ab:	41 83 09 ff          	orl    $0xffffffff,(%r9)
1400305af:	eb 3f                	jmp    0x1400305f0
1400305b1:	48 2b 41 10          	sub    0x10(%rcx),%rax
1400305b5:	48 8b f7             	mov    %rdi,%rsi
1400305b8:	48 8b 09             	mov    (%rcx),%rcx
1400305bb:	48 3b c7             	cmp    %rdi,%rax
1400305be:	48 0f 42 f0          	cmovb  %rax,%rsi
1400305c2:	4c 8b c6             	mov    %rsi,%r8
1400305c5:	e8 06 6b ff ff       	call   0x1400270d0
1400305ca:	49 8b 06             	mov    (%r14),%rax
1400305cd:	48 01 30             	add    %rsi,(%rax)
1400305d0:	49 8b 06             	mov    (%r14),%rax
1400305d3:	48 01 70 10          	add    %rsi,0x10(%rax)
1400305d7:	49 8b 06             	mov    (%r14),%rax
1400305da:	80 78 18 00          	cmpb   $0x0,0x18(%rax)
1400305de:	74 04                	je     0x1400305e4
1400305e0:	01 3b                	add    %edi,(%rbx)
1400305e2:	eb 0c                	jmp    0x1400305f0
1400305e4:	48 3b f7             	cmp    %rdi,%rsi
1400305e7:	74 05                	je     0x1400305ee
1400305e9:	83 0b ff             	orl    $0xffffffff,(%rbx)
1400305ec:	eb 02                	jmp    0x1400305f0
1400305ee:	01 33                	add    %esi,(%rbx)
1400305f0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400305f5:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1400305fa:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1400305ff:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140030604:	48 83 c4 20          	add    $0x20,%rsp
140030608:	41 5e                	pop    %r14
14003060a:	c3                   	ret
14003060b:	cc                   	int3
14003060c:	45 85 c0             	test   %r8d,%r8d
14003060f:	0f 84 9b 00 00 00    	je     0x1400306b0
140030615:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003061a:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003061f:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140030624:	57                   	push   %rdi
140030625:	41 56                	push   %r14
140030627:	41 57                	push   %r15
140030629:	48 83 ec 20          	sub    $0x20,%rsp
14003062d:	4c 8b f9             	mov    %rcx,%r15
140030630:	49 63 f0             	movslq %r8d,%rsi
140030633:	48 8b 09             	mov    (%rcx),%rcx
140030636:	49 8b f9             	mov    %r9,%rdi
140030639:	48 8b 41 08          	mov    0x8(%rcx),%rax
14003063d:	48 39 41 10          	cmp    %rax,0x10(%rcx)
140030641:	75 11                	jne    0x140030654
140030643:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
140030647:	74 05                	je     0x14003064e
140030649:	41 01 31             	add    %esi,(%r9)
14003064c:	eb 4a                	jmp    0x140030698
14003064e:	41 83 09 ff          	orl    $0xffffffff,(%r9)
140030652:	eb 44                	jmp    0x140030698
140030654:	48 2b 41 10          	sub    0x10(%rcx),%rax
140030658:	4c 8b f6             	mov    %rsi,%r14
14003065b:	48 8b 09             	mov    (%rcx),%rcx
14003065e:	48 3b c6             	cmp    %rsi,%rax
140030661:	4c 0f 42 f0          	cmovb  %rax,%r14
140030665:	4b 8d 1c 36          	lea    (%r14,%r14,1),%rbx
140030669:	4c 8b c3             	mov    %rbx,%r8
14003066c:	e8 5f 6a ff ff       	call   0x1400270d0
140030671:	49 8b 07             	mov    (%r15),%rax
140030674:	48 01 18             	add    %rbx,(%rax)
140030677:	49 8b 07             	mov    (%r15),%rax
14003067a:	4c 01 70 10          	add    %r14,0x10(%rax)
14003067e:	49 8b 07             	mov    (%r15),%rax
140030681:	80 78 18 00          	cmpb   $0x0,0x18(%rax)
140030685:	74 04                	je     0x14003068b
140030687:	01 37                	add    %esi,(%rdi)
140030689:	eb 0d                	jmp    0x140030698
14003068b:	4c 3b f6             	cmp    %rsi,%r14
14003068e:	74 05                	je     0x140030695
140030690:	83 0f ff             	orl    $0xffffffff,(%rdi)
140030693:	eb 03                	jmp    0x140030698
140030695:	44 01 37             	add    %r14d,(%rdi)
140030698:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14003069d:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1400306a2:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1400306a7:	48 83 c4 20          	add    $0x20,%rsp
1400306ab:	41 5f                	pop    %r15
1400306ad:	41 5e                	pop    %r14
1400306af:	5f                   	pop    %rdi
1400306b0:	c3                   	ret
1400306b1:	cc                   	int3
1400306b2:	cc                   	int3
1400306b3:	cc                   	int3
1400306b4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400306b9:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400306be:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400306c3:	55                   	push   %rbp
1400306c4:	48 8b ec             	mov    %rsp,%rbp
1400306c7:	48 83 ec 70          	sub    $0x70,%rsp
1400306cb:	48 8b 45 30          	mov    0x30(%rbp),%rax
1400306cf:	33 f6                	xor    %esi,%esi
1400306d1:	48 89 75 c0          	mov    %rsi,-0x40(%rbp)
1400306d5:	48 8b da             	mov    %rdx,%rbx
1400306d8:	40 88 75 d0          	mov    %sil,-0x30(%rbp)
1400306dc:	40 88 75 e8          	mov    %sil,-0x18(%rbp)
1400306e0:	40 88 75 f0          	mov    %sil,-0x10(%rbp)
1400306e4:	40 88 75 f8          	mov    %sil,-0x8(%rbp)
1400306e8:	48 85 c0             	test   %rax,%rax
1400306eb:	74 05                	je     0x1400306f2
1400306ed:	0f 10 00             	movups (%rax),%xmm0
1400306f0:	eb 0f                	jmp    0x140030701
1400306f2:	39 35 d0 78 04 00    	cmp    %esi,0x478d0(%rip)        # 0x140077fc8
1400306f8:	75 10                	jne    0x14003070a
1400306fa:	0f 10 05 b7 1c 04 00 	movups 0x41cb7(%rip),%xmm0        # 0x1400723b8
140030701:	c6 45 e8 01          	movb   $0x1,-0x18(%rbp)
140030705:	f3 0f 7f 45 d8       	movdqu %xmm0,-0x28(%rbp)
14003070a:	4d 85 c9             	test   %r9,%r9
14003070d:	74 38                	je     0x140030747
14003070f:	48 85 db             	test   %rbx,%rbx
140030712:	74 33                	je     0x140030747
140030714:	4d 85 c0             	test   %r8,%r8
140030717:	74 2e                	je     0x140030747
140030719:	48 8b 45 38          	mov    0x38(%rbp),%rax
14003071d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140030722:	48 8d 45 c0          	lea    -0x40(%rbp),%rax
140030726:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14003072b:	e8 34 bb ff ff       	call   0x14002c264
140030730:	8b f8                	mov    %eax,%edi
140030732:	85 c0                	test   %eax,%eax
140030734:	79 03                	jns    0x140030739
140030736:	40 88 33             	mov    %sil,(%rbx)
140030739:	83 f8 fe             	cmp    $0xfffffffe,%eax
14003073c:	75 34                	jne    0x140030772
14003073e:	c7 45 ec 22 00 00 00 	movl   $0x22,-0x14(%rbp)
140030745:	eb 07                	jmp    0x14003074e
140030747:	c7 45 ec 16 00 00 00 	movl   $0x16,-0x14(%rbp)
14003074e:	48 8d 45 c0          	lea    -0x40(%rbp),%rax
140030752:	c6 45 f0 01          	movb   $0x1,-0x10(%rbp)
140030756:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14003075b:	45 33 c9             	xor    %r9d,%r9d
14003075e:	45 33 c0             	xor    %r8d,%r8d
140030761:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140030766:	33 d2                	xor    %edx,%edx
140030768:	33 c9                	xor    %ecx,%ecx
14003076a:	e8 69 ad ff ff       	call   0x14002b4d8
14003076f:	83 cf ff             	or     $0xffffffff,%edi
140030772:	80 7d e8 02          	cmpb   $0x2,-0x18(%rbp)
140030776:	75 0b                	jne    0x140030783
140030778:	48 8b 45 c0          	mov    -0x40(%rbp),%rax
14003077c:	83 a0 a8 03 00 00 fd 	andl   $0xfffffffd,0x3a8(%rax)
140030783:	40 38 75 f0          	cmp    %sil,-0x10(%rbp)
140030787:	74 0f                	je     0x140030798
140030789:	8b 5d ec             	mov    -0x14(%rbp),%ebx
14003078c:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
140030790:	e8 23 aa ff ff       	call   0x14002b1b8
140030795:	89 58 20             	mov    %ebx,0x20(%rax)
140030798:	40 38 75 f8          	cmp    %sil,-0x8(%rbp)
14003079c:	74 0f                	je     0x1400307ad
14003079e:	8b 5d f4             	mov    -0xc(%rbp),%ebx
1400307a1:	48 8d 4d c0          	lea    -0x40(%rbp),%rcx
1400307a5:	e8 0e aa ff ff       	call   0x14002b1b8
1400307aa:	89 58 24             	mov    %ebx,0x24(%rax)
1400307ad:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
1400307b2:	8b c7                	mov    %edi,%eax
1400307b4:	49 8b 5b 10          	mov    0x10(%r11),%rbx
1400307b8:	49 8b 73 18          	mov    0x18(%r11),%rsi
1400307bc:	49 8b 7b 20          	mov    0x20(%r11),%rdi
1400307c0:	49 8b e3             	mov    %r11,%rsp
1400307c3:	5d                   	pop    %rbp
1400307c4:	c3                   	ret
1400307c5:	cc                   	int3
1400307c6:	cc                   	int3
1400307c7:	cc                   	int3
1400307c8:	40 55                	rex push %rbp
1400307ca:	53                   	push   %rbx
1400307cb:	56                   	push   %rsi
1400307cc:	57                   	push   %rdi
1400307cd:	41 54                	push   %r12
1400307cf:	41 56                	push   %r14
1400307d1:	41 57                	push   %r15
1400307d3:	48 8d ac 24 f0 fb ff 	lea    -0x410(%rsp),%rbp
1400307da:	ff
1400307db:	48 81 ec 10 05 00 00 	sub    $0x510,%rsp
1400307e2:	48 8b 05 2f 18 04 00 	mov    0x4182f(%rip),%rax        # 0x140072018
1400307e9:	48 33 c4             	xor    %rsp,%rax
1400307ec:	48 89 85 00 04 00 00 	mov    %rax,0x400(%rbp)
1400307f3:	48 8b 85 70 04 00 00 	mov    0x470(%rbp),%rax
1400307fa:	45 33 e4             	xor    %r12d,%r12d
1400307fd:	4c 89 64 24 50       	mov    %r12,0x50(%rsp)
140030802:	49 8b d8             	mov    %r8,%rbx
140030805:	44 88 64 24 60       	mov    %r12b,0x60(%rsp)
14003080a:	48 8b f2             	mov    %rdx,%rsi
14003080d:	44 88 64 24 78       	mov    %r12b,0x78(%rsp)
140030812:	4c 8b f9             	mov    %rcx,%r15
140030815:	44 88 65 80          	mov    %r12b,-0x80(%rbp)
140030819:	44 88 65 88          	mov    %r12b,-0x78(%rbp)
14003081d:	48 85 c0             	test   %rax,%rax
140030820:	74 05                	je     0x140030827
140030822:	0f 10 00             	movups (%rax),%xmm0
140030825:	eb 10                	jmp    0x140030837
140030827:	44 39 25 9a 77 04 00 	cmp    %r12d,0x4779a(%rip)        # 0x140077fc8
14003082e:	75 12                	jne    0x140030842
140030830:	0f 10 05 81 1b 04 00 	movups 0x41b81(%rip),%xmm0        # 0x1400723b8
140030837:	c6 44 24 78 01       	movb   $0x1,0x78(%rsp)
14003083c:	f3 0f 7f 44 24 68    	movdqu %xmm0,0x68(%rsp)
140030842:	4d 85 c9             	test   %r9,%r9
140030845:	75 32                	jne    0x140030879
140030847:	48 8d 44 24 50       	lea    0x50(%rsp),%rax
14003084c:	c6 45 80 01          	movb   $0x1,-0x80(%rbp)
140030850:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140030855:	45 33 c9             	xor    %r9d,%r9d
140030858:	45 33 c0             	xor    %r8d,%r8d
14003085b:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140030860:	33 d2                	xor    %edx,%edx
140030862:	c7 44 24 7c 16 00 00 	movl   $0x16,0x7c(%rsp)
140030869:	00
14003086a:	33 c9                	xor    %ecx,%ecx
14003086c:	e8 67 ac ff ff       	call   0x14002b4d8
140030871:	83 cf ff             	or     $0xffffffff,%edi
140030874:	e9 45 01 00 00       	jmp    0x1400309be
140030879:	48 85 db             	test   %rbx,%rbx
14003087c:	74 05                	je     0x140030883
14003087e:	48 85 f6             	test   %rsi,%rsi
140030881:	74 c4                	je     0x140030847
140030883:	4d 8b f7             	mov    %r15,%r14
140030886:	44 89 64 24 49       	mov    %r12d,0x49(%rsp)
14003088b:	66 44 89 64 24 4d    	mov    %r12w,0x4d(%rsp)
140030891:	44 88 64 24 4f       	mov    %r12b,0x4f(%rsp)
140030896:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
14003089b:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)