18005bb94:	e8 7b ad fe ff       	call   0x180046914
18005bb99:	48 85 c0             	test   %rax,%rax
18005bb9c:	74 0d                	je     0x18005bbab
18005bb9e:	48 8b c8             	mov    %rax,%rcx
18005bba1:	e8 c2 b3 fe ff       	call   0x180046f68
18005bba6:	48 8b f8             	mov    %rax,%rdi
18005bba9:	eb 02                	jmp    0x18005bbad
18005bbab:	33 ff                	xor    %edi,%edi
18005bbad:	48 85 ff             	test   %rdi,%rdi
18005bbb0:	75 0b                	jne    0x18005bbbd
18005bbb2:	41 be 9a 00 00 c0    	mov    $0xc000009a,%r14d
18005bbb8:	e9 ad 00 00 00       	jmp    0x18005bc6a
18005bbbd:	44 8b 8e 80 00 00 00 	mov    0x80(%rsi),%r9d
18005bbc4:	48 8d 4f 60          	lea    0x60(%rdi),%rcx
18005bbc8:	45 33 c0             	xor    %r8d,%r8d
18005bbcb:	41 8d 50 03          	lea    0x3(%r8),%edx
18005bbcf:	e8 c8 af fe ff       	call   0x180046b9c
18005bbd4:	44 8b f0             	mov    %eax,%r14d
18005bbd7:	85 c0                	test   %eax,%eax
18005bbd9:	78 77                	js     0x18005bc52
18005bbdb:	0f ba 6f 3c 1d       	btsl   $0x1d,0x3c(%rdi)
18005bbe0:	48 89 6f 78          	mov    %rbp,0x78(%rdi)
18005bbe4:	8b 8e 80 00 00 00    	mov    0x80(%rsi),%ecx
18005bbea:	89 8f 80 00 00 00    	mov    %ecx,0x80(%rdi)
18005bbf0:	8b 8e 84 00 00 00    	mov    0x84(%rsi),%ecx
18005bbf6:	89 8f 84 00 00 00    	mov    %ecx,0x84(%rdi)
18005bbfc:	48 8b cb             	mov    %rbx,%rcx
18005bbff:	44 8b 86 88 00 00 00 	mov    0x88(%rsi),%r8d
18005bc06:	8b 96 84 00 00 00    	mov    0x84(%rsi),%edx
18005bc0c:	e8 6b 57 ff ff       	call   0x18005137c
18005bc11:	89 87 88 00 00 00    	mov    %eax,0x88(%rdi)
18005bc17:	48 8b d7             	mov    %rdi,%rdx
18005bc1a:	8a 4b 2b             	mov    0x2b(%rbx),%cl
18005bc1d:	b8 01 00 00 00       	mov    $0x1,%eax
18005bc22:	d3 e0                	shl    %cl,%eax
18005bc24:	49 8b cd             	mov    %r13,%rcx
18005bc27:	ff c8                	dec    %eax
18005bc29:	c6 87 98 00 00 00 03 	movb   $0x3,0x98(%rdi)
18005bc30:	89 87 8c 00 00 00    	mov    %eax,0x8c(%rdi)
18005bc36:	c6 87 9a 00 00 00 04 	movb   $0x4,0x9a(%rdi)
18005bc3d:	44 89 bf 9c 00 00 00 	mov    %r15d,0x9c(%rdi)
18005bc44:	48 89 9f d8 00 00 00 	mov    %rbx,0xd8(%rdi)
18005bc4b:	e8 5c b4 fe ff       	call   0x1800470ac
18005bc50:	33 ff                	xor    %edi,%edi
18005bc52:	48 85 ff             	test   %rdi,%rdi
18005bc55:	74 13                	je     0x18005bc6a
18005bc57:	48 8b 07             	mov    (%rdi),%rax
18005bc5a:	ba 01 00 00 00       	mov    $0x1,%edx
18005bc5f:	48 8b cf             	mov    %rdi,%rcx
18005bc62:	48 8b 00             	mov    (%rax),%rax
18005bc65:	ff d0                	call   *%rax
18005bc67:	0f 1f 00             	nopl   (%rax)
18005bc6a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
18005bc6f:	41 8b c6             	mov    %r14d,%eax
18005bc72:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
18005bc77:	48 83 c4 30          	add    $0x30,%rsp
18005bc7b:	41 5f                	pop    %r15
18005bc7d:	41 5e                	pop    %r14
18005bc7f:	41 5d                	pop    %r13
18005bc81:	5f                   	pop    %rdi
18005bc82:	5e                   	pop    %rsi
18005bc83:	c3                   	ret
18005bc84:	cc                   	int3
18005bc85:	cc                   	int3
18005bc86:	cc                   	int3
18005bc87:	cc                   	int3
18005bc88:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18005bc8d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18005bc92:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18005bc97:	57                   	push   %rdi
18005bc98:	41 56                	push   %r14
18005bc9a:	41 57                	push   %r15
18005bc9c:	48 83 ec 20          	sub    $0x20,%rsp
18005bca0:	45 33 d2             	xor    %r10d,%r10d
18005bca3:	33 ff                	xor    %edi,%edi
18005bca5:	4c 8b f2             	mov    %rdx,%r14
18005bca8:	48 8b e9             	mov    %rcx,%rbp
18005bcab:	4d 85 c0             	test   %r8,%r8
18005bcae:	74 0a                	je     0x18005bcba
18005bcb0:	bf 02 00 00 c0       	mov    $0xc0000002,%edi
18005bcb5:	e9 15 01 00 00       	jmp    0x18005bdcf
18005bcba:	44 0f b6 49 2b       	movzbl 0x2b(%rcx),%r9d
18005bcbf:	45 33 c0             	xor    %r8d,%r8d
18005bcc2:	44 8b ba 84 00 00 00 	mov    0x84(%rdx),%r15d
18005bcc9:	45 85 c9             	test   %r9d,%r9d
18005bccc:	0f 84 fd 00 00 00    	je     0x18005bdcf
18005bcd2:	41 8b d7             	mov    %r15d,%edx
18005bcd5:	48 8b cd             	mov    %rbp,%rcx
18005bcd8:	e8 07 58 ff ff       	call   0x1800514e4
18005bcdd:	84 c0                	test   %al,%al
18005bcdf:	41 8d 4a 01          	lea    0x1(%r10),%ecx
18005bce3:	41 0f 44 ca          	cmove  %r10d,%ecx
18005bce7:	41 ff c0             	inc    %r8d
18005bcea:	44 8b d1             	mov    %ecx,%r10d
18005bced:	45 3b c1             	cmp    %r9d,%r8d
18005bcf0:	72 e0                	jb     0x18005bcd2
18005bcf2:	83 f9 02             	cmp    $0x2,%ecx
18005bcf5:	0f 82 d4 00 00 00    	jb     0x18005bdcf
18005bcfb:	33 f6                	xor    %esi,%esi
18005bcfd:	45 84 c9             	test   %r9b,%r9b
18005bd00:	0f 84 c9 00 00 00    	je     0x18005bdcf
18005bd06:	44 8b c6             	mov    %esi,%r8d
18005bd09:	41 8b d7             	mov    %r15d,%edx
18005bd0c:	48 8b cd             	mov    %rbp,%rcx
18005bd0f:	e8 d0 57 ff ff       	call   0x1800514e4
18005bd14:	84 c0                	test   %al,%al
18005bd16:	0f 84 87 00 00 00    	je     0x18005bda3
18005bd1c:	b9 e0 00 00 00       	mov    $0xe0,%ecx
18005bd21:	e8 ee ab fe ff       	call   0x180046914
18005bd26:	48 85 c0             	test   %rax,%rax
18005bd29:	74 0d                	je     0x18005bd38
18005bd2b:	48 8b c8             	mov    %rax,%rcx
18005bd2e:	e8 35 b2 fe ff       	call   0x180046f68
18005bd33:	48 8b d8             	mov    %rax,%rbx
18005bd36:	eb 02                	jmp    0x18005bd3a
18005bd38:	33 db                	xor    %ebx,%ebx
18005bd3a:	48 85 db             	test   %rbx,%rbx
18005bd3d:	74 73                	je     0x18005bdb2
18005bd3f:	8a 4d 2a             	mov    0x2a(%rbp),%cl
18005bd42:	45 33 c0             	xor    %r8d,%r8d
18005bd45:	41 b9 01 00 00 00    	mov    $0x1,%r9d
18005bd4b:	49 d3 e1             	shl    %cl,%r9
18005bd4e:	48 8d 4b 60          	lea    0x60(%rbx),%rcx
18005bd52:	41 8d 50 03          	lea    0x3(%r8),%edx
18005bd56:	e8 41 ae fe ff       	call   0x180046b9c
18005bd5b:	8b f8                	mov    %eax,%edi
18005bd5d:	85 c0                	test   %eax,%eax
18005bd5f:	78 56                	js     0x18005bdb7
18005bd61:	49 8b 4e 78          	mov    0x78(%r14),%rcx
18005bd65:	48 8b d3             	mov    %rbx,%rdx
18005bd68:	48 89 4b 78          	mov    %rcx,0x78(%rbx)
18005bd6c:	41 8b 8e 80 00 00 00 	mov    0x80(%r14),%ecx
18005bd73:	89 8b 80 00 00 00    	mov    %ecx,0x80(%rbx)
18005bd79:	49 8b ce             	mov    %r14,%rcx
18005bd7c:	44 89 bb 84 00 00 00 	mov    %r15d,0x84(%rbx)
18005bd83:	89 b3 88 00 00 00    	mov    %esi,0x88(%rbx)
18005bd89:	c6 83 98 00 00 00 03 	movb   $0x3,0x98(%rbx)
18005bd90:	c6 83 9a 00 00 00 01 	movb   $0x1,0x9a(%rbx)
18005bd97:	48 89 ab d8 00 00 00 	mov    %rbp,0xd8(%rbx)
18005bd9e:	e8 09 b3 fe ff       	call   0x1800470ac
18005bda3:	0f b6 45 2b          	movzbl 0x2b(%rbp),%eax
18005bda7:	ff c6                	inc    %esi
18005bda9:	3b f0                	cmp    %eax,%esi
18005bdab:	73 22                	jae    0x18005bdcf
18005bdad:	e9 54 ff ff ff       	jmp    0x18005bd06
18005bdb2:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
18005bdb7:	48 85 db             	test   %rbx,%rbx
18005bdba:	74 13                	je     0x18005bdcf
18005bdbc:	48 8b 03             	mov    (%rbx),%rax
18005bdbf:	ba 01 00 00 00       	mov    $0x1,%edx
18005bdc4:	48 8b cb             	mov    %rbx,%rcx
18005bdc7:	48 8b 00             	mov    (%rax),%rax
18005bdca:	ff d0                	call   *%rax
18005bdcc:	0f 1f 00             	nopl   (%rax)
18005bdcf:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18005bdd4:	8b c7                	mov    %edi,%eax
18005bdd6:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18005bddb:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18005bde0:	48 83 c4 20          	add    $0x20,%rsp
18005bde4:	41 5f                	pop    %r15
18005bde6:	41 5e                	pop    %r14
18005bde8:	5f                   	pop    %rdi
18005bde9:	c3                   	ret
18005bdea:	cc                   	int3
18005bdeb:	cc                   	int3
18005bdec:	48 8b c4             	mov    %rsp,%rax
18005bdef:	48 89 58 08          	mov    %rbx,0x8(%rax)
18005bdf3:	48 89 70 20          	mov    %rsi,0x20(%rax)
18005bdf7:	57                   	push   %rdi
18005bdf8:	48 83 ec 20          	sub    $0x20,%rsp
18005bdfc:	83 60 10 00          	andl   $0x0,0x10(%rax)
18005be00:	48 8b fa             	mov    %rdx,%rdi
18005be03:	48 83 60 18 00       	andq   $0x0,0x18(%rax)
18005be08:	48 8b f1             	mov    %rcx,%rsi
18005be0b:	8b 9a a0 00 00 00    	mov    0xa0(%rdx),%ebx
18005be11:	48 83 ba a8 00 00 00 	cmpq   $0x0,0xa8(%rdx)
18005be18:	00
18005be19:	74 1c                	je     0x18005be37
18005be1b:	85 db                	test   %ebx,%ebx
18005be1d:	78 05                	js     0x18005be24
18005be1f:	bb 00 00 e7 00       	mov    $0xe70000,%ebx
18005be24:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
18005be29:	8b c3                	mov    %ebx,%eax
18005be2b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18005be30:	48 83 c4 20          	add    $0x20,%rsp
18005be34:	5f                   	pop    %rdi
18005be35:	c3                   	ret
18005be36:	cc                   	int3
18005be37:	4c 8d 4c 24 38       	lea    0x38(%rsp),%r9
18005be3c:	48 c7 82 a8 00 00 00 	movq   $0x1,0xa8(%rdx)
18005be43:	01 00 00 00
18005be47:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
18005be4c:	e8 8b 00 00 00       	call   0x18005bedc
18005be51:	4c 8b 4c 24 40       	mov    0x40(%rsp),%r9
18005be56:	4d 85 c9             	test   %r9,%r9
18005be59:	74 c9                	je     0x18005be24
18005be5b:	8b 44 24 38          	mov    0x38(%rsp),%eax
18005be5f:	85 c0                	test   %eax,%eax
18005be61:	74 c1                	je     0x18005be24
18005be63:	c7 87 a0 00 00 00 00 	movl   $0x0,0xa0(%rdi)
18005be6a:	00 00 00
18005be6d:	41 0f ba 69 3c 1d    	btsl   $0x1d,0x3c(%r9)
18005be73:	41 83 89 88 00 00 00 	orl    $0xffffffff,0x88(%r9)
18005be7a:	ff
18005be7b:	41 89 81 8c 00 00 00 	mov    %eax,0x8c(%r9)
18005be82:	49 8d 41 28          	lea    0x28(%r9),%rax
18005be86:	41 c6 81 98 00 00 00 	movb   $0x4,0x98(%r9)
18005be8d:	04
18005be8e:	41 c6 81 9a 00 00 00 	movb   $0x1,0x9a(%r9)
18005be95:	01
18005be96:	48 8b 10             	mov    (%rax),%rdx
18005be99:	48 39 42 08          	cmp    %rax,0x8(%rdx)
18005be9d:	75 33                	jne    0x18005bed2
18005be9f:	48 8b 48 08          	mov    0x8(%rax),%rcx
18005bea3:	48 39 01             	cmp    %rax,(%rcx)
18005bea6:	75 2a                	jne    0x18005bed2
18005bea8:	48 89 11             	mov    %rdx,(%rcx)
18005beab:	48 89 4a 08          	mov    %rcx,0x8(%rdx)
18005beaf:	49 8b d1             	mov    %r9,%rdx
18005beb2:	48 8b cf             	mov    %rdi,%rcx
18005beb5:	e8 f2 b1 fe ff       	call   0x1800470ac
18005beba:	41 b0 0a             	mov    $0xa,%r8b
18005bebd:	49 8b d1             	mov    %r9,%rdx
18005bec0:	48 8b ce             	mov    %rsi,%rcx
18005bec3:	e8 48 b6 fe ff       	call   0x180047510
18005bec8:	bb 16 00 00 c0       	mov    $0xc0000016,%ebx
18005becd:	e9 52 ff ff ff       	jmp    0x18005be24
18005bed2:	b9 03 00 00 00       	mov    $0x3,%ecx
18005bed7:	cd 29                	int    $0x29
18005bed9:	cc                   	int3
18005beda:	cc                   	int3
18005bedb:	cc                   	int3
18005bedc:	48 8b c4             	mov    %rsp,%rax
18005bedf:	4c 89 48 20          	mov    %r9,0x20(%rax)
18005bee3:	4c 89 40 18          	mov    %r8,0x18(%rax)
18005bee7:	48 89 50 10          	mov    %rdx,0x10(%rax)
18005beeb:	48 89 48 08          	mov    %rcx,0x8(%rax)
18005beef:	53                   	push   %rbx
18005bef0:	55                   	push   %rbp
18005bef1:	56                   	push   %rsi
18005bef2:	57                   	push   %rdi
18005bef3:	41 54                	push   %r12
18005bef5:	41 55                	push   %r13
18005bef7:	41 56                	push   %r14
18005bef9:	41 57                	push   %r15
18005befb:	48 83 ec 38          	sub    $0x38,%rsp
18005beff:	48 8b f2             	mov    %rdx,%rsi
18005bf02:	33 ed                	xor    %ebp,%ebp
18005bf04:	33 d2                	xor    %edx,%edx
18005bf06:	48 83 c6 18          	add    $0x18,%rsi
18005bf0a:	21 50 b4             	and    %edx,-0x4c(%rax)
18005bf0d:	45 33 e4             	xor    %r12d,%r12d
18005bf10:	21 50 a8             	and    %edx,-0x58(%rax)
18005bf13:	4c 8b d1             	mov    %rcx,%r10
18005bf16:	49 21 10             	and    %rdx,(%r8)
18005bf19:	48 8b 1e             	mov    (%rsi),%rbx
18005bf1c:	41 21 11             	and    %edx,(%r9)
18005bf1f:	89 54 24 28          	mov    %edx,0x28(%rsp)
18005bf23:	48 3b de             	cmp    %rsi,%rbx
18005bf26:	0f 84 21 01 00 00    	je     0x18005c04d
18005bf2c:	48 21 53 48          	and    %rdx,0x48(%rbx)
18005bf30:	8b 43 78             	mov    0x78(%rbx),%eax
18005bf33:	3d 9c 00 00 c0       	cmp    $0xc000009c,%eax
18005bf38:	74 07                	je     0x18005bf41
18005bf3a:	3d 83 04 00 c0       	cmp    $0xc0000483,%eax
18005bf3f:	75 0b                	jne    0x18005bf4c
18005bf41:	8b 43 60             	mov    0x60(%rbx),%eax
18005bf44:	48 8d 4c 24 2c       	lea    0x2c(%rsp),%rcx
18005bf49:	0f ab 01             	bts    %eax,(%rcx)
18005bf4c:	48 8b 1b             	mov    (%rbx),%rbx
18005bf4f:	48 3b de             	cmp    %rsi,%rbx
18005bf52:	75 d8                	jne    0x18005bf2c
18005bf54:	48 8b 1e             	mov    (%rsi),%rbx
18005bf57:	48 3b de             	cmp    %rsi,%rbx
18005bf5a:	0f 84 ed 00 00 00    	je     0x18005c04d
18005bf60:	4c 8d 73 d8          	lea    -0x28(%rbx),%r14
18005bf64:	41 8b 86 a0 00 00 00 	mov    0xa0(%r14),%eax
18005bf6b:	85 c0                	test   %eax,%eax
18005bf6d:	0f 88 be 00 00 00    	js     0x18005c031
18005bf73:	8b 4c 24 20          	mov    0x20(%rsp),%ecx
18005bf77:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
18005bf7c:	41 8b 86 88 00 00 00 	mov    0x88(%r14),%eax
18005bf83:	41 0f ab 00          	bts    %eax,(%r8)
18005bf87:	49 83 7e 70 01       	cmpq   $0x1,0x70(%r14)
18005bf8c:	89 4c 24 24          	mov    %ecx,0x24(%rsp)
18005bf90:	0f 84 9b 00 00 00    	je     0x18005c031
18005bf96:	48 8b 3b             	mov    (%rbx),%rdi
18005bf99:	45 33 ff             	xor    %r15d,%r15d
18005bf9c:	4d 8b 6e 68          	mov    0x68(%r14),%r13
18005bfa0:	48 3b fe             	cmp    %rsi,%rdi
18005bfa3:	74 62                	je     0x18005c007
18005bfa5:	4c 8b b4 24 88 00 00 	mov    0x88(%rsp),%r14
18005bfac:	00
18005bfad:	8b 47 78             	mov    0x78(%rdi),%eax
18005bfb0:	85 c0                	test   %eax,%eax
18005bfb2:	78 37                	js     0x18005bfeb
18005bfb4:	48 8b 57 40          	mov    0x40(%rdi),%rdx
18005bfb8:	49 8b cd             	mov    %r13,%rcx
18005bfbb:	45 8b 86 80 00 00 00 	mov    0x80(%r14),%r8d
18005bfc2:	e8 99 7e 0d 00       	call   0x180133e60
18005bfc7:	41 8b 8e 80 00 00 00 	mov    0x80(%r14),%ecx
18005bfce:	48 3b c8             	cmp    %rax,%rcx
18005bfd1:	75 0d                	jne    0x18005bfe0
18005bfd3:	41 ff c7             	inc    %r15d
18005bfd6:	48 c7 47 48 01 00 00 	movq   $0x1,0x48(%rdi)
18005bfdd:	00
18005bfde:	eb 0b                	jmp    0x18005bfeb
18005bfe0:	8b 47 60             	mov    0x60(%rdi),%eax
18005bfe3:	48 8d 4c 24 24       	lea    0x24(%rsp),%rcx
18005bfe8:	0f ab 01             	bts    %eax,(%rcx)
18005bfeb:	48 8b 3f             	mov    (%rdi),%rdi
18005bfee:	48 3b fe             	cmp    %rsi,%rdi
18005bff1:	75 ba                	jne    0x18005bfad
18005bff3:	8b 4c 24 24          	mov    0x24(%rsp),%ecx
18005bff7:	4c 8d 73 d8          	lea    -0x28(%rbx),%r14
18005bffb:	8b 54 24 28          	mov    0x28(%rsp),%edx
18005bfff:	4c 8b 94 24 80 00 00 	mov    0x80(%rsp),%r10
18005c006:	00
18005c007:	4d 85 e4             	test   %r12,%r12
18005c00a:	74 05                	je     0x18005c011
18005c00c:	44 3b fa             	cmp    %edx,%r15d
18005c00f:	76 0c                	jbe    0x18005c01d
18005c011:	41 8b d7             	mov    %r15d,%edx
18005c014:	4d 8b e6             	mov    %r14,%r12
18005c017:	89 54 24 28          	mov    %edx,0x28(%rsp)
18005c01b:	8b e9                	mov    %ecx,%ebp
18005c01d:	85 c9                	test   %ecx,%ecx
18005c01f:	74 1c                	je     0x18005c03d
18005c021:	41 8b 42 4c          	mov    0x4c(%r10),%eax
18005c025:	25 00 00 00 e0       	and    $0xe0000000,%eax
18005c02a:	3d 00 00 00 80       	cmp    $0x80000000,%eax
18005c02f:	74 0c                	je     0x18005c03d
18005c031:	48 8b 1b             	mov    (%rbx),%rbx
18005c034:	48 3b de             	cmp    %rsi,%rbx
18005c037:	0f 85 23 ff ff ff    	jne    0x18005bf60
18005c03d:	4c 8b 8c 24 98 00 00 	mov    0x98(%rsp),%r9
18005c044:	00
18005c045:	4c 8b 84 24 90 00 00 	mov    0x90(%rsp),%r8
18005c04c:	00
18005c04d:	0b 6c 24 2c          	or     0x2c(%rsp),%ebp
18005c051:	4d 85 e4             	test   %r12,%r12
18005c054:	74 0a                	je     0x18005c060
18005c056:	85 ed                	test   %ebp,%ebp
18005c058:	74 06                	je     0x18005c060
18005c05a:	4d 89 20             	mov    %r12,(%r8)
18005c05d:	41 89 29             	mov    %ebp,(%r9)
18005c060:	48 83 c4 38          	add    $0x38,%rsp
18005c064:	41 5f                	pop    %r15
18005c066:	41 5e                	pop    %r14
18005c068:	41 5d                	pop    %r13