18004c661:	74 0a                	je     0x18004c66d
18004c663:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
18004c668:	e8 b7 17 03 00       	call   0x18007de24
18004c66d:	0f 28 45 e0          	movaps -0x20(%rbp),%xmm0
18004c671:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
18004c676:	8b 4d 58             	mov    0x58(%rbp),%ecx
18004c679:	41 be 01 00 00 00    	mov    $0x1,%r14d
18004c67f:	66 0f 7f 44 24 50    	movdqa %xmm0,0x50(%rsp)
18004c685:	45 8b c6             	mov    %r14d,%r8d
18004c688:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
18004c68d:	66 48 0f 7e c2       	movq   %xmm0,%rdx
18004c692:	e8 85 bd 01 00       	call   0x18006841c
18004c697:	8b d8                	mov    %eax,%ebx
18004c699:	85 c0                	test   %eax,%eax
18004c69b:	78 0c                	js     0x18004c6a9
18004c69d:	8b 74 24 40          	mov    0x40(%rsp),%esi
18004c6a1:	8b 5d 60             	mov    0x60(%rbp),%ebx
18004c6a4:	e9 22 fd ff ff       	jmp    0x18004c3cb
18004c6a9:	81 fb 0f 00 00 c0    	cmp    $0xc000000f,%ebx
18004c6af:	b8 0d 00 3a c0       	mov    $0xc03a000d,%eax
18004c6b4:	0f 44 d8             	cmove  %eax,%ebx
18004c6b7:	85 db                	test   %ebx,%ebx
18004c6b9:	79 3b                	jns    0x18004c6f6
18004c6bb:	8b 74 24 40          	mov    0x40(%rsp),%esi
18004c6bf:	eb 15                	jmp    0x18004c6d6
18004c6c1:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
18004c6c6:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
18004c6ca:	48 89 01             	mov    %rax,(%rcx)
18004c6cd:	33 c0                	xor    %eax,%eax
18004c6cf:	eb 38                	jmp    0x18004c709
18004c6d1:	bb 9a 00 00 c0       	mov    $0xc000009a,%ebx
18004c6d6:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
18004c6db:	48 85 c9             	test   %rcx,%rcx
18004c6de:	74 05                	je     0x18004c6e5
18004c6e0:	e8 43 00 00 00       	call   0x18004c728
18004c6e5:	83 fe ff             	cmp    $0xffffffff,%esi
18004c6e8:	74 0c                	je     0x18004c6f6
18004c6ea:	3b 75 60             	cmp    0x60(%rbp),%esi
18004c6ed:	74 07                	je     0x18004c6f6
18004c6ef:	8b ce                	mov    %esi,%ecx
18004c6f1:	e8 0a be 01 00       	call   0x180068500
18004c6f6:	4c 39 64 24 58       	cmp    %r12,0x58(%rsp)
18004c6fb:	74 0a                	je     0x18004c707
18004c6fd:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
18004c702:	e8 1d 17 03 00       	call   0x18007de24
18004c707:	8b c3                	mov    %ebx,%eax
18004c709:	48 8b 9c 24 50 01 00 	mov    0x150(%rsp),%rbx
18004c710:	00
18004c711:	48 81 c4 10 01 00 00 	add    $0x110,%rsp
18004c718:	41 5f                	pop    %r15
18004c71a:	41 5e                	pop    %r14
18004c71c:	41 5d                	pop    %r13
18004c71e:	41 5c                	pop    %r12
18004c720:	5f                   	pop    %rdi
18004c721:	5e                   	pop    %rsi
18004c722:	5d                   	pop    %rbp
18004c723:	c3                   	ret
18004c724:	cc                   	int3
18004c725:	cc                   	int3
18004c726:	cc                   	int3
18004c727:	cc                   	int3
18004c728:	48 85 c9             	test   %rcx,%rcx
18004c72b:	74 57                	je     0x18004c784
18004c72d:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004c732:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18004c737:	57                   	push   %rdi
18004c738:	48 83 ec 20          	sub    $0x20,%rsp
18004c73c:	48 8b f9             	mov    %rcx,%rdi
18004c73f:	48 8b d9             	mov    %rcx,%rbx
18004c742:	48 8b b3 20 0b 00 00 	mov    0xb20(%rbx),%rsi
18004c749:	48 8b cb             	mov    %rbx,%rcx
18004c74c:	e8 c3 03 00 00       	call   0x18004cb14
18004c751:	48 3b df             	cmp    %rdi,%rbx
18004c754:	74 17                	je     0x18004c76d
18004c756:	8b 8b 18 0b 00 00    	mov    0xb18(%rbx),%ecx
18004c75c:	83 f9 ff             	cmp    $0xffffffff,%ecx
18004c75f:	74 0c                	je     0x18004c76d
18004c761:	e8 9a bd 01 00       	call   0x180068500
18004c766:	83 8b 18 0b 00 00 ff 	orl    $0xffffffff,0xb18(%rbx)
18004c76d:	48 8b de             	mov    %rsi,%rbx
18004c770:	48 85 f6             	test   %rsi,%rsi
18004c773:	75 cd                	jne    0x18004c742
18004c775:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004c77a:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18004c77f:	48 83 c4 20          	add    $0x20,%rsp
18004c783:	5f                   	pop    %rdi
18004c784:	c3                   	ret
18004c785:	cc                   	int3
18004c786:	cc                   	int3
18004c787:	cc                   	int3
18004c788:	48 83 ec 38          	sub    $0x38,%rsp
18004c78c:	8b 44 24 60          	mov    0x60(%rsp),%eax
18004c790:	89 44 24 28          	mov    %eax,0x28(%rsp)
18004c794:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
18004c799:	4d 8b c8             	mov    %r8,%r9
18004c79c:	4c 8b c2             	mov    %rdx,%r8
18004c79f:	b2 01                	mov    $0x1,%dl
18004c7a1:	e8 6e 09 00 00       	call   0x18004d114
18004c7a6:	48 83 c4 38          	add    $0x38,%rsp
18004c7aa:	c3                   	ret
18004c7ab:	cc                   	int3
18004c7ac:	48 83 ec 38          	sub    $0x38,%rsp
18004c7b0:	80 b9 72 0b 00 00 00 	cmpb   $0x0,0xb72(%rcx)
18004c7b7:	74 07                	je     0x18004c7c0
18004c7b9:	b8 bb 00 00 c0       	mov    $0xc00000bb,%eax
18004c7be:	eb 1a                	jmp    0x18004c7da
18004c7c0:	8b 44 24 60          	mov    0x60(%rsp),%eax
18004c7c4:	89 44 24 28          	mov    %eax,0x28(%rsp)
18004c7c8:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
18004c7cd:	4d 8b c8             	mov    %r8,%r9
18004c7d0:	4c 8b c2             	mov    %rdx,%r8
18004c7d3:	33 d2                	xor    %edx,%edx
18004c7d5:	e8 3a 09 00 00       	call   0x18004d114
18004c7da:	48 83 c4 38          	add    $0x38,%rsp
18004c7de:	c3                   	ret
18004c7df:	cc                   	int3
18004c7e0:	48 8b 81 80 00 00 00 	mov    0x80(%rcx),%rax
18004c7e7:	48 89 02             	mov    %rax,(%rdx)
18004c7ea:	8b 81 40 09 00 00    	mov    0x940(%rcx),%eax
18004c7f0:	41 89 00             	mov    %eax,(%r8)
18004c7f3:	48 8b 02             	mov    (%rdx),%rax
18004c7f6:	49 89 41 08          	mov    %rax,0x8(%r9)
18004c7fa:	48 8b 02             	mov    (%rdx),%rax
18004c7fd:	49 89 01             	mov    %rax,(%r9)
18004c800:	8b 81 90 00 00 00    	mov    0x90(%rcx),%eax
18004c806:	d1 e8                	shr    $1,%eax
18004c808:	a8 01                	test   $0x1,%al
18004c80a:	74 0a                	je     0x18004c816
18004c80c:	41 c7 41 10 07 00 00 	movl   $0x7,0x10(%r9)
18004c813:	00
18004c814:	c3                   	ret
18004c815:	cc                   	int3
18004c816:	8a 81 90 00 00 00    	mov    0x90(%rcx),%al
18004c81c:	24 01                	and    $0x1,%al
18004c81e:	f6 d8                	neg    %al
18004c820:	1b c0                	sbb    %eax,%eax
18004c822:	83 c0 06             	add    $0x6,%eax
18004c825:	41 89 41 10          	mov    %eax,0x10(%r9)
18004c829:	c3                   	ret
18004c82a:	cc                   	int3
18004c82b:	cc                   	int3
18004c82c:	48 83 ec 28          	sub    $0x28,%rsp
18004c830:	48 ff c1             	inc    %rcx
18004c833:	48 c1 e1 0c          	shl    $0xc,%rcx
18004c837:	e8 14 d6 04 00       	call   0x180099e50
18004c83c:	48 8b c8             	mov    %rax,%rcx
18004c83f:	48 85 c0             	test   %rax,%rax
18004c842:	74 10                	je     0x18004c854
18004c844:	48 05 00 10 00 00    	add    $0x1000,%rax
18004c84a:	48 25 00 f0 ff ff    	and    $0xfffffffffffff000,%rax
18004c850:	48 89 48 f8          	mov    %rcx,-0x8(%rax)
18004c854:	48 83 c4 28          	add    $0x28,%rsp
18004c858:	c3                   	ret
18004c859:	cc                   	int3
18004c85a:	cc                   	int3
18004c85b:	cc                   	int3
18004c85c:	48 8b c4             	mov    %rsp,%rax
18004c85f:	48 89 58 08          	mov    %rbx,0x8(%rax)
18004c863:	48 89 68 10          	mov    %rbp,0x10(%rax)
18004c867:	48 89 70 18          	mov    %rsi,0x18(%rax)
18004c86b:	48 89 78 20          	mov    %rdi,0x20(%rax)
18004c86f:	41 56                	push   %r14
18004c871:	48 83 ec 20          	sub    $0x20,%rsp
18004c875:	4c 8b f1             	mov    %rcx,%r14
18004c878:	41 8b f1             	mov    %r9d,%esi
18004c87b:	4a 8d 0c c5 70 00 00 	lea    0x70(,%r8,8),%rcx
18004c882:	00
18004c883:	49 8b f8             	mov    %r8,%rdi
18004c886:	48 8b ea             	mov    %rdx,%rbp
18004c889:	e8 c2 d5 04 00       	call   0x180099e50
18004c88e:	48 8b d8             	mov    %rax,%rbx
18004c891:	48 85 c0             	test   %rax,%rax
18004c894:	74 1f                	je     0x18004c8b5
18004c896:	33 d2                	xor    %edx,%edx
18004c898:	48 8b c8             	mov    %rax,%rcx
18004c89b:	44 8d 42 70          	lea    0x70(%rdx),%r8d
18004c89f:	e8 dc 93 0e 00       	call   0x180135c80
18004c8a4:	48 89 6b 40          	mov    %rbp,0x40(%rbx)
18004c8a8:	33 c0                	xor    %eax,%eax
18004c8aa:	89 7b 68             	mov    %edi,0x68(%rbx)
18004c8ad:	89 73 6c             	mov    %esi,0x6c(%rbx)
18004c8b0:	49 89 1e             	mov    %rbx,(%r14)
18004c8b3:	eb 05                	jmp    0x18004c8ba
18004c8b5:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
18004c8ba:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18004c8bf:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18004c8c4:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18004c8c9:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18004c8ce:	48 83 c4 20          	add    $0x20,%rsp
18004c8d2:	41 5e                	pop    %r14
18004c8d4:	c3                   	ret
18004c8d5:	cc                   	int3
18004c8d6:	cc                   	int3
18004c8d7:	cc                   	int3
18004c8d8:	40 53                	rex push %rbx
18004c8da:	48 83 ec 20          	sub    $0x20,%rsp
18004c8de:	48 8b d9             	mov    %rcx,%rbx
18004c8e1:	e8 3e 00 00 00       	call   0x18004c924
18004c8e6:	89 03                	mov    %eax,(%rbx)
18004c8e8:	e8 37 00 00 00       	call   0x18004c924
18004c8ed:	89 43 04             	mov    %eax,0x4(%rbx)
18004c8f0:	e8 2f 00 00 00       	call   0x18004c924
18004c8f5:	89 43 08             	mov    %eax,0x8(%rbx)
18004c8f8:	e8 27 00 00 00       	call   0x18004c924
18004c8fd:	80 63 08 3f          	andb   $0x3f,0x8(%rbx)
18004c901:	80 4b 08 80          	orb    $0x80,0x8(%rbx)
18004c905:	89 43 0c             	mov    %eax,0xc(%rbx)
18004c908:	b8 ff 0f 00 00       	mov    $0xfff,%eax
18004c90d:	66 21 43 06          	and    %ax,0x6(%rbx)
18004c911:	b8 00 40 00 00       	mov    $0x4000,%eax
18004c916:	66 09 43 06          	or     %ax,0x6(%rbx)
18004c91a:	33 c0                	xor    %eax,%eax
18004c91c:	48 83 c4 20          	add    $0x20,%rsp
18004c920:	5b                   	pop    %rbx
18004c921:	c3                   	ret
18004c922:	cc                   	int3
18004c923:	cc                   	int3
18004c924:	80 3d 45 83 15 00 00 	cmpb   $0x0,0x158345(%rip)        # 0x1801a4c70
18004c92b:	75 16                	jne    0x18004c943
18004c92d:	0f 31                	rdtsc
18004c92f:	48 c1 e2 20          	shl    $0x20,%rdx
18004c933:	48 0b c2             	or     %rdx,%rax
18004c936:	c6 05 33 83 15 00 01 	movb   $0x1,0x158333(%rip)        # 0x1801a4c70
18004c93d:	89 05 11 83 15 00    	mov    %eax,0x158311(%rip)        # 0x1801a4c54
18004c943:	48 8d 0d 0a 83 15 00 	lea    0x15830a(%rip),%rcx        # 0x1801a4c54
18004c94a:	e9 71 49 00 00       	jmp    0x1800512c0
18004c94f:	cc                   	int3
18004c950:	c6 42 18 01          	movb   $0x1,0x18(%rdx)
18004c954:	c3                   	ret
18004c955:	cc                   	int3
18004c956:	cc                   	int3
18004c957:	cc                   	int3
18004c958:	48 8b c4             	mov    %rsp,%rax
18004c95b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18004c95f:	48 89 68 10          	mov    %rbp,0x10(%rax)
18004c963:	48 89 70 18          	mov    %rsi,0x18(%rax)
18004c967:	48 89 78 20          	mov    %rdi,0x20(%rax)
18004c96b:	41 56                	push   %r14
18004c96d:	48 83 ec 30          	sub    $0x30,%rsp
18004c971:	8b 5c 24 60          	mov    0x60(%rsp),%ebx
18004c975:	4c 8d 51 f8          	lea    -0x8(%rcx),%r10
18004c979:	41 8b f9             	mov    %r9d,%edi
18004c97c:	48 8b ea             	mov    %rdx,%rbp
18004c97f:	44 8b 8a e0 01 00 00 	mov    0x1e0(%rdx),%r9d
18004c986:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
18004c98b:	41 3b f9             	cmp    %r9d,%edi
18004c98e:	73 10                	jae    0x18004c9a0
18004c990:	41 8b c9             	mov    %r9d,%ecx
18004c993:	2b cf                	sub    %edi,%ecx
18004c995:	41 2b f9             	sub    %r9d,%edi
18004c998:	48 03 d1             	add    %rcx,%rdx
18004c99b:	03 df                	add    %edi,%ebx
18004c99d:	41 8b f9             	mov    %r9d,%edi
18004c9a0:	8b 8d e4 01 00 00    	mov    0x1e4(%rbp),%ecx
18004c9a6:	41 2b f9             	sub    %r9d,%edi
18004c9a9:	8d 04 1f             	lea    (%rdi,%rbx,1),%eax
18004c9ac:	3b c1                	cmp    %ecx,%eax
18004c9ae:	76 04                	jbe    0x18004c9b4
18004c9b0:	8b d9                	mov    %ecx,%ebx
18004c9b2:	2b df                	sub    %edi,%ebx
18004c9b4:	48 8b b5 d8 01 00 00 	mov    0x1d8(%rbp),%rsi
18004c9bb:	45 85 c0             	test   %r8d,%r8d
18004c9be:	0f 84 19 01 00 00    	je     0x18004cadd
18004c9c4:	41 83 e8 01          	sub    $0x1,%r8d
18004c9c8:	0f 84 fc 00 00 00    	je     0x18004caca
18004c9ce:	41 83 e8 01          	sub    $0x1,%r8d
18004c9d2:	0f 84 df 00 00 00    	je     0x18004cab7
18004c9d8:	41 83 e8 01          	sub    $0x1,%r8d
18004c9dc:	0f 84 d5 00 00 00    	je     0x18004cab7
18004c9e2:	41 83 e8 01          	sub    $0x1,%r8d
18004c9e6:	0f 84 cb 00 00 00    	je     0x18004cab7
18004c9ec:	41 83 f8 01          	cmp    $0x1,%r8d
18004c9f0:	74 25                	je     0x18004ca17
18004c9f2:	33 d2                	xor    %edx,%edx
18004c9f4:	85 db                	test   %ebx,%ebx
18004c9f6:	74 15                	je     0x18004ca0d
18004c9f8:	8d 04 3a             	lea    (%rdx,%rdi,1),%eax
18004c9fb:	48 83 3c 30 00       	cmpq   $0x0,(%rax,%rsi,1)
18004ca00:	0f 85 c0 00 00 00    	jne    0x18004cac6
18004ca06:	83 c2 08             	add    $0x8,%edx
18004ca09:	3b d3                	cmp    %ebx,%edx
18004ca0b:	72 eb                	jb     0x18004c9f8
18004ca0d:	b8 17 01 00 00       	mov    $0x117,%eax
18004ca12:	e9 e1 00 00 00       	jmp    0x18004caf8
18004ca17:	4d 8b b2 20 0b 00 00 	mov    0xb20(%r10),%r14
18004ca1e:	4d 85 f6             	test   %r14,%r14
18004ca21:	75 0a                	jne    0x18004ca2d
18004ca23:	b8 e5 00 00 c0       	mov    $0xc00000e5,%eax
18004ca28:	e9 cb 00 00 00       	jmp    0x18004caf8
18004ca2d:	b9 00 02 00 00       	mov    $0x200,%ecx
18004ca32:	e8 19 d4 04 00       	call   0x180099e50
18004ca37:	4c 8b c0             	mov    %rax,%r8
18004ca3a:	48 85 c0             	test   %rax,%rax
18004ca3d:	75 0a                	jne    0x18004ca49
18004ca3f:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
18004ca44:	e9 af 00 00 00       	jmp    0x18004caf8
18004ca49:	4c 89 b0 d8 01 00 00 	mov    %r14,0x1d8(%rax)
18004ca50:	48 8b 8d d0 01 00 00 	mov    0x1d0(%rbp),%rcx
18004ca57:	41 89 98 f4 01 00 00 	mov    %ebx,0x1f4(%r8)
18004ca5e:	8b d7                	mov    %edi,%edx
18004ca60:	48 03 ca             	add    %rdx,%rcx
18004ca63:	48 89 88 e0 01 00 00 	mov    %rcx,0x1e0(%rax)
18004ca6a:	48 8d 04 37          	lea    (%rdi,%rsi,1),%rax
18004ca6e:	49 89 80 e8 01 00 00 	mov    %rax,0x1e8(%r8)
18004ca75:	48 8d 0d e4 81 15 00 	lea    0x1581e4(%rip),%rcx        # 0x1801a4c60
18004ca7c:	8b 85 e8 01 00 00    	mov    0x1e8(%rbp),%eax
18004ca82:	41 89 80 f8 01 00 00 	mov    %eax,0x1f8(%r8)
18004ca89:	41 c6 80 fc 01 00 00 	movb   $0x1,0x1fc(%r8)
18004ca90:	01
18004ca91:	48 8b 05 d0 81 15 00 	mov    0x1581d0(%rip),%rax        # 0x1801a4c68
18004ca98:	48 39 08             	cmp    %rcx,(%rax)
18004ca9b:	74 07                	je     0x18004caa4
18004ca9d:	b9 03 00 00 00       	mov    $0x3,%ecx
18004caa2:	cd 29                	int    $0x29
18004caa4:	49 89 08             	mov    %rcx,(%r8)
18004caa7:	49 89 40 08          	mov    %rax,0x8(%r8)
18004caab:	4c 89 00             	mov    %r8,(%rax)
18004caae:	4c 89 05 b3 81 15 00 	mov    %r8,0x1581b3(%rip)        # 0x1801a4c68
18004cab5:	eb 0f                	jmp    0x18004cac6
18004cab7:	8b cf                	mov    %edi,%ecx
18004cab9:	33 d2                	xor    %edx,%edx
18004cabb:	48 03 ce             	add    %rsi,%rcx
18004cabe:	44 8b c3             	mov    %ebx,%r8d
18004cac1:	e8 ba 91 0e 00       	call   0x180135c80
18004cac6:	33 c0                	xor    %eax,%eax
18004cac8:	eb 2e                	jmp    0x18004caf8
18004caca:	44 8b c7             	mov    %edi,%r8d
18004cacd:	44 8b cb             	mov    %ebx,%r9d
18004cad0:	4c 03 c6             	add    %rsi,%r8
18004cad3:	49 8b ca             	mov    %r10,%rcx
18004cad6:	e8 25 02 00 00       	call   0x18004cd00
18004cadb:	eb 1b                	jmp    0x18004caf8
18004cadd:	8b 85 e8 01 00 00    	mov    0x1e8(%rbp),%eax
18004cae3:	44 8b cb             	mov    %ebx,%r9d
18004cae6:	44 8b c7             	mov    %edi,%r8d
18004cae9:	49 8b ca             	mov    %r10,%rcx
18004caec:	4c 03 c6             	add    %rsi,%r8
18004caef:	89 44 24 20          	mov    %eax,0x20(%rsp)
18004caf3:	e8 30 01 00 00       	call   0x18004cc28
18004caf8:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18004cafd:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18004cb02:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18004cb07:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
18004cb0c:	48 83 c4 30          	add    $0x30,%rsp
18004cb10:	41 5e                	pop    %r14
18004cb12:	c3                   	ret
18004cb13:	cc                   	int3
18004cb14:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18004cb19:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18004cb1e:	57                   	push   %rdi