18006ba57:	45 3b fd             	cmp    %r13d,%r15d
18006ba5a:	76 26                	jbe    0x18006ba82
18006ba5c:	4c 8b 74 24 68       	mov    0x68(%rsp),%r14
18006ba61:	48 8b 54 24 58       	mov    0x58(%rsp),%rdx
18006ba66:	4d 03 f0             	add    %r8,%r14
18006ba69:	44 8b 4c 24 38       	mov    0x38(%rsp),%r9d
18006ba6e:	4c 89 74 24 68       	mov    %r14,0x68(%rsp)
18006ba73:	85 c9                	test   %ecx,%ecx
18006ba75:	0f 85 dc fd ff ff    	jne    0x18006b857
18006ba7b:	eb 05                	jmp    0x18006ba82
18006ba7d:	be 02 01 00 c0       	mov    $0xc0000102,%esi
18006ba82:	48 8b 85 f8 00 00 00 	mov    0xf8(%rbp),%rax
18006ba89:	48 85 c0             	test   %rax,%rax
18006ba8c:	74 03                	je     0x18006ba91
18006ba8e:	44 89 28             	mov    %r13d,(%rax)
18006ba91:	48 8b 9c 24 f0 01 00 	mov    0x1f0(%rsp),%rbx
18006ba98:	00
18006ba99:	8b c6                	mov    %esi,%eax
18006ba9b:	48 81 c4 a0 01 00 00 	add    $0x1a0,%rsp
18006baa2:	41 5f                	pop    %r15
18006baa4:	41 5e                	pop    %r14
18006baa6:	41 5d                	pop    %r13
18006baa8:	41 5c                	pop    %r12
18006baaa:	5f                   	pop    %rdi
18006baab:	5e                   	pop    %rsi
18006baac:	5d                   	pop    %rbp
18006baad:	c3                   	ret
18006baae:	cc                   	int3
18006baaf:	cc                   	int3
18006bab0:	45 33 db             	xor    %r11d,%r11d
18006bab3:	44 8b ca             	mov    %edx,%r9d
18006bab6:	4c 8b d1             	mov    %rcx,%r10
18006bab9:	66 44 39 59 0e       	cmp    %r11w,0xe(%rcx)
18006babe:	0f 84 a2 00 00 00    	je     0x18006bb66
18006bac4:	66 44 39 59 0a       	cmp    %r11w,0xa(%rcx)
18006bac9:	74 07                	je     0x18006bad2
18006bacb:	44 0f b7 41 0a       	movzwl 0xa(%rcx),%r8d
18006bad0:	eb 04                	jmp    0x18006bad6
18006bad2:	44 8b 41 18          	mov    0x18(%rcx),%r8d
18006bad6:	0f b7 41 08          	movzwl 0x8(%rcx),%eax
18006bada:	33 d2                	xor    %edx,%edx
18006badc:	0f b7 09             	movzwl (%rcx),%ecx
18006badf:	48 c1 e0 05          	shl    $0x5,%rax
18006bae3:	48 f7 f1             	div    %rcx
18006bae6:	41 0f b7 4a 0e       	movzwl 0xe(%r10),%ecx
18006baeb:	41 0f b6 52 06       	movzbl 0x6(%r10),%edx
18006baf0:	4c 2b c0             	sub    %rax,%r8
18006baf3:	48 0f af d1          	imul   %rcx,%rdx
18006baf7:	41 0f b7 4a 04       	movzwl 0x4(%r10),%ecx
18006bafc:	4c 2b c2             	sub    %rdx,%r8
18006baff:	33 d2                	xor    %edx,%edx
18006bb01:	4c 2b c1             	sub    %rcx,%r8
18006bb04:	41 0f b6 4a 02       	movzbl 0x2(%r10),%ecx
18006bb09:	49 8b c0             	mov    %r8,%rax
18006bb0c:	48 f7 f1             	div    %rcx
18006bb0f:	b9 f7 0f 00 00       	mov    $0xff7,%ecx
18006bb14:	48 3b c1             	cmp    %rcx,%rax
18006bb17:	72 23                	jb     0x18006bb3c
18006bb19:	41 0f b7 c9          	movzwl %r9w,%ecx
18006bb1d:	85 c9                	test   %ecx,%ecx
18006bb1f:	74 75                	je     0x18006bb96
18006bb21:	8d 81 10 00 ff ff    	lea    -0xfff0(%rcx),%eax
18006bb27:	83 f8 06             	cmp    $0x6,%eax
18006bb2a:	76 25                	jbe    0x18006bb51
18006bb2c:	81 f9 f7 ff 00 00    	cmp    $0xfff7,%ecx
18006bb32:	74 5b                	je     0x18006bb8f
18006bb34:	81 f9 f8 ff 00 00    	cmp    $0xfff8,%ecx
18006bb3a:	eb 43                	jmp    0x18006bb7f
18006bb3c:	41 81 e1 ff 0f 00 00 	and    $0xfff,%r9d
18006bb43:	74 51                	je     0x18006bb96
18006bb45:	41 8d 81 10 f0 ff ff 	lea    -0xff0(%r9),%eax
18006bb4c:	83 f8 06             	cmp    $0x6,%eax
18006bb4f:	77 07                	ja     0x18006bb58
18006bb51:	b8 01 00 00 00       	mov    $0x1,%eax
18006bb56:	c3                   	ret
18006bb57:	cc                   	int3
18006bb58:	44 3b c9             	cmp    %ecx,%r9d
18006bb5b:	74 32                	je     0x18006bb8f
18006bb5d:	41 81 f9 f8 0f 00 00 	cmp    $0xff8,%r9d
18006bb64:	eb 19                	jmp    0x18006bb7f
18006bb66:	41 81 e1 ff ff ff 0f 	and    $0xfffffff,%r9d
18006bb6d:	74 27                	je     0x18006bb96
18006bb6f:	41 81 f9 f7 ff ff 0f 	cmp    $0xffffff7,%r9d
18006bb76:	74 17                	je     0x18006bb8f
18006bb78:	41 81 f9 f8 ff ff 0f 	cmp    $0xffffff8,%r9d
18006bb7f:	72 07                	jb     0x18006bb88
18006bb81:	b8 03 00 00 00       	mov    $0x3,%eax
18006bb86:	c3                   	ret
18006bb87:	cc                   	int3
18006bb88:	b8 04 00 00 00       	mov    $0x4,%eax
18006bb8d:	c3                   	ret
18006bb8e:	cc                   	int3
18006bb8f:	b8 02 00 00 00       	mov    $0x2,%eax
18006bb94:	c3                   	ret
18006bb95:	cc                   	int3
18006bb96:	33 c0                	xor    %eax,%eax
18006bb98:	c3                   	ret
18006bb99:	cc                   	int3
18006bb9a:	cc                   	int3
18006bb9b:	cc                   	int3
18006bb9c:	40 53                	rex push %rbx
18006bb9e:	48 83 ec 20          	sub    $0x20,%rsp
18006bba2:	8b da                	mov    %edx,%ebx
18006bba4:	e8 53 e4 02 00       	call   0x180099ffc
18006bba9:	48 8b 05 c8 8f 13 00 	mov    0x138fc8(%rip),%rax        # 0x1801a4b78
18006bbb0:	48 83 24 d8 00       	andq   $0x0,(%rax,%rbx,8)
18006bbb5:	33 c0                	xor    %eax,%eax
18006bbb7:	48 83 c4 20          	add    $0x20,%rsp
18006bbbb:	5b                   	pop    %rbx
18006bbbc:	c3                   	ret
18006bbbd:	cc                   	int3
18006bbbe:	cc                   	int3
18006bbbf:	cc                   	int3
18006bbc0:	48 8b c4             	mov    %rsp,%rax
18006bbc3:	4c 89 48 20          	mov    %r9,0x20(%rax)
18006bbc7:	4c 89 40 18          	mov    %r8,0x18(%rax)
18006bbcb:	88 50 10             	mov    %dl,0x10(%rax)
18006bbce:	48 89 48 08          	mov    %rcx,0x8(%rax)
18006bbd2:	53                   	push   %rbx
18006bbd3:	55                   	push   %rbp
18006bbd4:	56                   	push   %rsi
18006bbd5:	57                   	push   %rdi
18006bbd6:	41 54                	push   %r12
18006bbd8:	41 55                	push   %r13
18006bbda:	41 56                	push   %r14
18006bbdc:	41 57                	push   %r15
18006bbde:	48 83 ec 58          	sub    $0x58,%rsp
18006bbe2:	44 0f b7 39          	movzwl (%rcx),%r15d
18006bbe6:	33 f6                	xor    %esi,%esi
18006bbe8:	49 d1 ef             	shr    $1,%r15
18006bbeb:	48 b9 c5 4e ec c4 4e 	movabs $0x4ec4ec4ec4ec4ec5,%rcx
18006bbf2:	ec c4 4e
18006bbf5:	48 8b c1             	mov    %rcx,%rax
18006bbf8:	49 8d 7f 0c          	lea    0xc(%r15),%rdi
18006bbfc:	48 f7 e7             	mul    %rdi
18006bbff:	48 8b c1             	mov    %rcx,%rax
18006bc02:	4c 8b f2             	mov    %rdx,%r14
18006bc05:	49 f7 e7             	mul    %r15
18006bc08:	49 c1 ee 02          	shr    $0x2,%r14
18006bc0c:	48 c1 ea 02          	shr    $0x2,%rdx
18006bc10:	48 6b c2 0d          	imul   $0xd,%rdx,%rax
18006bc14:	41 0f b6 fe          	movzbl %r14b,%edi
18006bc18:	8b cf                	mov    %edi,%ecx
18006bc1a:	4c 2b f8             	sub    %rax,%r15
18006bc1d:	48 c1 e1 05          	shl    $0x5,%rcx
18006bc21:	e8 2a e2 02 00       	call   0x180099e50
18006bc26:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18006bc2b:	4c 8b e8             	mov    %rax,%r13
18006bc2e:	48 85 c0             	test   %rax,%rax
18006bc31:	75 0a                	jne    0x18006bc3d
18006bc33:	be 17 00 00 c0       	mov    $0xc0000017,%esi
18006bc38:	e9 f1 00 00 00       	jmp    0x18006bd2e
18006bc3d:	41 8a ee             	mov    %r14b,%bpl
18006bc40:	45 84 f6             	test   %r14b,%r14b
18006bc43:	0f 84 cf 00 00 00    	je     0x18006bd18
18006bc49:	4c 8b ac 24 a0 00 00 	mov    0xa0(%rsp),%r13
18006bc50:	00
18006bc51:	48 8d 58 0c          	lea    0xc(%rax),%rbx
18006bc55:	4c 6b e7 1a          	imul   $0x1a,%rdi,%r12
18006bc59:	8a 84 24 a8 00 00 00 	mov    0xa8(%rsp),%al
18006bc60:	88 43 01             	mov    %al,0x1(%rbx)
18006bc63:	40 88 6b f4          	mov    %bpl,-0xc(%rbx)
18006bc67:	66 c7 43 ff 0f 00    	movw   $0xf,-0x1(%rbx)
18006bc6d:	66 89 73 0e          	mov    %si,0xe(%rbx)
18006bc71:	49 8b 4d 08          	mov    0x8(%r13),%rcx
18006bc75:	48 83 c1 e6          	add    $0xffffffffffffffe6,%rcx
18006bc79:	49 03 cc             	add    %r12,%rcx
18006bc7c:	41 3a ee             	cmp    %r14b,%bpl
18006bc7f:	75 59                	jne    0x18006bcda
18006bc81:	40 8a c5             	mov    %bpl,%al
18006bc84:	0c 40                	or     $0x40,%al
18006bc86:	88 43 f4             	mov    %al,-0xc(%rbx)
18006bc89:	45 84 ff             	test   %r15b,%r15b
18006bc8c:	74 4c                	je     0x18006bcda
18006bc8e:	41 0f b6 c7          	movzbl %r15b,%eax
18006bc92:	48 8b d1             	mov    %rcx,%rdx
18006bc95:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
18006bc9a:	48 8d 3c 00          	lea    (%rax,%rax,1),%rdi
18006bc9e:	4c 8b c7             	mov    %rdi,%r8
18006bca1:	e8 1a 9d 0c 00       	call   0x1801359c0
18006bca6:	41 8d 4f 01          	lea    0x1(%r15),%ecx
18006bcaa:	66 89 74 3c 28       	mov    %si,0x28(%rsp,%rdi,1)
18006bcaf:	80 f9 0d             	cmp    $0xd,%cl
18006bcb2:	73 21                	jae    0x18006bcd5
18006bcb4:	0f b6 c1             	movzbl %cl,%eax
18006bcb7:	48 8d 7c 24 28       	lea    0x28(%rsp),%rdi
18006bcbc:	48 8d 3c 47          	lea    (%rdi,%rax,2),%rdi
18006bcc0:	b8 0d 00 00 00       	mov    $0xd,%eax
18006bcc5:	2a c1                	sub    %cl,%al
18006bcc7:	0f b6 c8             	movzbl %al,%ecx
18006bcca:	b8 ff ff 00 00       	mov    $0xffff,%eax
18006bccf:	0f b7 c0             	movzwl %ax,%eax
18006bcd2:	66 f3 ab             	rep stos %ax,%es:(%rdi)
18006bcd5:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
18006bcda:	f2 0f 10 01          	movsd  (%rcx),%xmm0
18006bcde:	49 83 ec 1a          	sub    $0x1a,%r12
18006bce2:	f2 0f 11 43 f5       	movsd  %xmm0,-0xb(%rbx)
18006bce7:	0f b7 41 08          	movzwl 0x8(%rcx),%eax
18006bceb:	66 89 43 fd          	mov    %ax,-0x3(%rbx)
18006bcef:	f2 0f 10 41 0a       	movsd  0xa(%rcx),%xmm0
18006bcf4:	f2 0f 11 43 02       	movsd  %xmm0,0x2(%rbx)
18006bcf9:	8b 41 12             	mov    0x12(%rcx),%eax
18006bcfc:	89 43 0a             	mov    %eax,0xa(%rbx)
18006bcff:	8b 49 16             	mov    0x16(%rcx),%ecx
18006bd02:	89 4b 10             	mov    %ecx,0x10(%rbx)
18006bd05:	48 83 c3 20          	add    $0x20,%rbx
18006bd09:	40 80 c5 ff          	add    $0xff,%bpl
18006bd0d:	0f 85 46 ff ff ff    	jne    0x18006bc59
18006bd13:	4c 8b 6c 24 20       	mov    0x20(%rsp),%r13
18006bd18:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
18006bd1f:	00
18006bd20:	4c 89 29             	mov    %r13,(%rcx)
18006bd23:	48 8b 8c 24 b8 00 00 	mov    0xb8(%rsp),%rcx
18006bd2a:	00
18006bd2b:	44 88 31             	mov    %r14b,(%rcx)
18006bd2e:	8b c6                	mov    %esi,%eax
18006bd30:	48 83 c4 58          	add    $0x58,%rsp
18006bd34:	41 5f                	pop    %r15
18006bd36:	41 5e                	pop    %r14
18006bd38:	41 5d                	pop    %r13
18006bd3a:	41 5c                	pop    %r12
18006bd3c:	5f                   	pop    %rdi
18006bd3d:	5e                   	pop    %rsi
18006bd3e:	5d                   	pop    %rbp
18006bd3f:	5b                   	pop    %rbx
18006bd40:	c3                   	ret
18006bd41:	cc                   	int3
18006bd42:	cc                   	int3
18006bd43:	cc                   	int3
18006bd44:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18006bd49:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18006bd4e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18006bd53:	57                   	push   %rdi
18006bd54:	41 56                	push   %r14
18006bd56:	41 57                	push   %r15
18006bd58:	48 83 ec 20          	sub    $0x20,%rsp
18006bd5c:	48 8b 41 78          	mov    0x78(%rcx),%rax
18006bd60:	4d 8b f8             	mov    %r8,%r15
18006bd63:	8b fa                	mov    %edx,%edi
18006bd65:	48 8b f1             	mov    %rcx,%rsi
18006bd68:	44 8b 48 60          	mov    0x60(%rax),%r9d
18006bd6c:	48 8b 05 05 8e 13 00 	mov    0x138e05(%rip),%rax        # 0x1801a4b78
18006bd73:	4e 8b 34 c8          	mov    (%rax,%r9,8),%r14
18006bd77:	41 8b 9e 38 06 00 00 	mov    0x638(%r14),%ebx
18006bd7e:	8b d3                	mov    %ebx,%edx
18006bd80:	48 8b ce             	mov    %rsi,%rcx
18006bd83:	8b eb                	mov    %ebx,%ebp
18006bd85:	e8 f6 f2 ff ff       	call   0x18006b080
18006bd8a:	83 f8 01             	cmp    $0x1,%eax
18006bd8d:	74 69                	je     0x18006bdf8
18006bd8f:	8b d0                	mov    %eax,%edx
18006bd91:	49 8b ce             	mov    %r14,%rcx
18006bd94:	ff c3                	inc    %ebx
18006bd96:	e8 15 fd ff ff       	call   0x18006bab0
18006bd9b:	85 c0                	test   %eax,%eax
18006bd9d:	75 df                	jne    0x18006bd7e
18006bd9f:	41 89 9e 38 06 00 00 	mov    %ebx,0x638(%r14)
18006bda6:	85 ff                	test   %edi,%edi
18006bda8:	74 17                	je     0x18006bdc1
18006bdaa:	44 8b cd             	mov    %ebp,%r9d
18006bdad:	8d 50 04             	lea    0x4(%rax),%edx
18006bdb0:	44 8b c7             	mov    %edi,%r8d
18006bdb3:	48 8b ce             	mov    %rsi,%rcx
18006bdb6:	e8 81 f4 ff ff       	call   0x18006b23c
18006bdbb:	8b d8                	mov    %eax,%ebx
18006bdbd:	85 c0                	test   %eax,%eax
18006bdbf:	78 3c                	js     0x18006bdfd
18006bdc1:	45 33 c9             	xor    %r9d,%r9d
18006bdc4:	44 8b c5             	mov    %ebp,%r8d
18006bdc7:	48 8b ce             	mov    %rsi,%rcx
18006bdca:	45 8d 71 03          	lea    0x3(%r9),%r14d
18006bdce:	41 8b d6             	mov    %r14d,%edx
18006bdd1:	e8 66 f4 ff ff       	call   0x18006b23c
18006bdd6:	8b d8                	mov    %eax,%ebx
18006bdd8:	85 c0                	test   %eax,%eax
18006bdda:	79 17                	jns    0x18006bdf3
18006bddc:	85 ff                	test   %edi,%edi
18006bdde:	74 1d                	je     0x18006bdfd
18006bde0:	45 33 c9             	xor    %r9d,%r9d
18006bde3:	44 8b c7             	mov    %edi,%r8d
18006bde6:	41 8b d6             	mov    %r14d,%edx
18006bde9:	48 8b ce             	mov    %rsi,%rcx
18006bdec:	e8 4b f4 ff ff       	call   0x18006b23c
18006bdf1:	eb 0a                	jmp    0x18006bdfd
18006bdf3:	41 89 2f             	mov    %ebp,(%r15)
18006bdf6:	eb 05                	jmp    0x18006bdfd
18006bdf8:	bb 7f 00 00 c0       	mov    $0xc000007f,%ebx
18006bdfd:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18006be02:	8b c3                	mov    %ebx,%eax
18006be04:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18006be09:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18006be0e:	48 83 c4 20          	add    $0x20,%rsp
18006be12:	41 5f                	pop    %r15
18006be14:	41 5e                	pop    %r14
18006be16:	5f                   	pop    %rdi
18006be17:	c3                   	ret
18006be18:	cc                   	int3
18006be19:	cc                   	int3
18006be1a:	cc                   	int3
18006be1b:	cc                   	int3
18006be1c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18006be21:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
18006be26:	56                   	push   %rsi
18006be27:	57                   	push   %rdi
18006be28:	41 54                	push   %r12
18006be2a:	41 56                	push   %r14
18006be2c:	41 57                	push   %r15
18006be2e:	48 83 ec 50          	sub    $0x50,%rsp
18006be32:	48 8b 59 78          	mov    0x78(%rcx),%rbx
18006be36:	4d 8b e0             	mov    %r8,%r12
18006be39:	41 0f b6 f9          	movzbl %r9b,%edi
18006be3d:	4c 8b fa             	mov    %rdx,%r15
18006be40:	48 8b e9             	mov    %rcx,%rbp
18006be43:	4c 8d 84 24 80 00 00 	lea    0x80(%rsp),%r8
18006be4a:	00
18006be4b:	48 8b cd             	mov    %rbp,%rcx
18006be4e:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18006be53:	e8 44 ed ff ff       	call   0x18006ab9c
18006be58:	85 c0                	test   %eax,%eax
18006be5a:	79 e7                	jns    0x18006be43
18006be5c:	48 83 43 48 e0       	addq   $0xffffffffffffffe0,0x48(%rbx)
18006be61:	8d 77 01             	lea    0x1(%rdi),%esi
18006be64:	8b 43 1c             	mov    0x1c(%rbx),%eax
18006be67:	44 8b f7             	mov    %edi,%r14d
18006be6a:	48 2b 43 48          	sub    0x48(%rbx),%rax
18006be6e:	48 c1 e6 05          	shl    $0x5,%rsi
18006be72:	48 3b c6             	cmp    %rsi,%rax
18006be75:	73 07                	jae    0x18006be7e
18006be77:	b8 27 04 00 c0       	mov    $0xc0000427,%eax
18006be7c:	eb 5c                	jmp    0x18006beda
18006be7e:	33 ff                	xor    %edi,%edi
18006be80:	45 85 f6             	test   %r14d,%r14d
18006be83:	74 2f                	je     0x18006beb4
18006be85:	8b d7                	mov    %edi,%edx
18006be87:	4c 8d 8c 24 98 00 00 	lea    0x98(%rsp),%r9
18006be8e:	00
18006be8f:	48 c1 e2 05          	shl    $0x5,%rdx
18006be93:	41 b8 20 00 00 00    	mov    $0x20,%r8d
18006be99:	49 03 d4             	add    %r12,%rdx
18006be9c:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
18006bea1:	48 8b cd             	mov    %rbp,%rcx
18006bea4:	e8 07 f8 ff ff       	call   0x18006b6b0
18006bea9:	85 c0                	test   %eax,%eax
18006beab:	78 2d                	js     0x18006beda
18006bead:	ff c7                	inc    %edi
18006beaf:	41 3b fe             	cmp    %r14d,%edi
18006beb2:	72 d1                	jb     0x18006be85
18006beb4:	4c 8d 8c 24 98 00 00 	lea    0x98(%rsp),%r9
18006bebb:	00
18006bebc:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)