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)
18006bec1:	41 b8 20 00 00 00    	mov    $0x20,%r8d
18006bec7:	49 8b d7             	mov    %r15,%rdx
18006beca:	48 8b cd             	mov    %rbp,%rcx
18006becd:	e8 de f7 ff ff       	call   0x18006b6b0
18006bed2:	85 c0                	test   %eax,%eax
18006bed4:	78 04                	js     0x18006beda
18006bed6:	48 01 73 40          	add    %rsi,0x40(%rbx)
18006beda:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
18006bedf:	49 8b 5b 38          	mov    0x38(%r11),%rbx
18006bee3:	49 8b 6b 40          	mov    0x40(%r11),%rbp
18006bee7:	49 8b e3             	mov    %r11,%rsp
18006beea:	41 5f                	pop    %r15
18006beec:	41 5e                	pop    %r14
18006beee:	41 5c                	pop    %r12
18006bef0:	5f                   	pop    %rdi
18006bef1:	5e                   	pop    %rsi
18006bef2:	c3                   	ret
18006bef3:	cc                   	int3
18006bef4:	48 8b c4             	mov    %rsp,%rax
18006bef7:	48 89 58 08          	mov    %rbx,0x8(%rax)
18006befb:	48 89 68 10          	mov    %rbp,0x10(%rax)
18006beff:	48 89 70 18          	mov    %rsi,0x18(%rax)
18006bf03:	48 89 78 20          	mov    %rdi,0x20(%rax)
18006bf07:	41 56                	push   %r14
18006bf09:	48 83 ec 20          	sub    $0x20,%rsp
18006bf0d:	48 8b 59 08          	mov    0x8(%rcx),%rbx
18006bf11:	48 b8 20 20 20 20 20 	movabs $0x2020202020202020,%rax
18006bf18:	20 20 20
18006bf1b:	33 ed                	xor    %ebp,%ebp
18006bf1d:	48 89 02             	mov    %rax,(%rdx)
18006bf20:	66 89 42 08          	mov    %ax,0x8(%rdx)
18006bf24:	4c 8b f2             	mov    %rdx,%r14
18006bf27:	88 42 0a             	mov    %al,0xa(%rdx)
18006bf2a:	48 8b f1             	mov    %rcx,%rsi
18006bf2d:	0f b7 01             	movzwl (%rcx),%eax
18006bf30:	8b fd                	mov    %ebp,%edi
18006bf32:	4c 8d 04 43          	lea    (%rbx,%rax,2),%r8
18006bf36:	49 3b d8             	cmp    %r8,%rbx
18006bf39:	73 34                	jae    0x18006bf6f
18006bf3b:	66 39 2b             	cmp    %bp,(%rbx)
18006bf3e:	74 2f                	je     0x18006bf6f
18006bf40:	83 ff 0b             	cmp    $0xb,%edi
18006bf43:	73 2a                	jae    0x18006bf6f
18006bf45:	0f b7 0b             	movzwl (%rbx),%ecx
18006bf48:	e8 7b fb 0b 00       	call   0x18012bac8
18006bf4d:	85 c0                	test   %eax,%eax
18006bf4f:	74 0a                	je     0x18006bf5b
18006bf51:	8a 03                	mov    (%rbx),%al
18006bf53:	8b cf                	mov    %edi,%ecx
18006bf55:	ff c7                	inc    %edi
18006bf57:	42 88 04 31          	mov    %al,(%rcx,%r14,1)
18006bf5b:	0f b7 0e             	movzwl (%rsi),%ecx
18006bf5e:	48 83 c3 02          	add    $0x2,%rbx
18006bf62:	48 8b 46 08          	mov    0x8(%rsi),%rax
18006bf66:	48 8d 0c 48          	lea    (%rax,%rcx,2),%rcx
18006bf6a:	48 3b d9             	cmp    %rcx,%rbx
18006bf6d:	72 cc                	jb     0x18006bf3b
18006bf6f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18006bf74:	33 c0                	xor    %eax,%eax
18006bf76:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18006bf7b:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18006bf80:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18006bf85:	48 83 c4 20          	add    $0x20,%rsp
18006bf89:	41 5e                	pop    %r14
18006bf8b:	c3                   	ret
18006bf8c:	cc                   	int3
18006bf8d:	cc                   	int3
18006bf8e:	cc                   	int3
18006bf8f:	cc                   	int3
18006bf90:	48 8b c4             	mov    %rsp,%rax
18006bf93:	48 89 58 20          	mov    %rbx,0x20(%rax)
18006bf97:	44 89 40 18          	mov    %r8d,0x18(%rax)
18006bf9b:	48 89 50 10          	mov    %rdx,0x10(%rax)
18006bf9f:	55                   	push   %rbp
18006bfa0:	56                   	push   %rsi
18006bfa1:	57                   	push   %rdi
18006bfa2:	41 54                	push   %r12
18006bfa4:	41 55                	push   %r13
18006bfa6:	41 56                	push   %r14
18006bfa8:	41 57                	push   %r15
18006bfaa:	48 8d 68 a9          	lea    -0x57(%rax),%rbp
18006bfae:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
18006bfb5:	4c 8b f1             	mov    %rcx,%r14
18006bfb8:	45 8b e1             	mov    %r9d,%r12d
18006bfbb:	33 c9                	xor    %ecx,%ecx
18006bfbd:	41 8b f0             	mov    %r8d,%esi
18006bfc0:	4c 8b ea             	mov    %rdx,%r13
18006bfc3:	4d 85 f6             	test   %r14,%r14
18006bfc6:	0f 84 5c 02 00 00    	je     0x18006c228
18006bfcc:	48 85 d2             	test   %rdx,%rdx
18006bfcf:	0f 84 53 02 00 00    	je     0x18006c228
18006bfd5:	49 8b 46 78          	mov    0x78(%r14),%rax
18006bfd9:	44 8b f9             	mov    %ecx,%r15d
18006bfdc:	88 4d bf             	mov    %cl,-0x41(%rbp)
18006bfdf:	48 89 4d d7          	mov    %rcx,-0x29(%rbp)
18006bfe3:	88 4d 5f             	mov    %cl,0x5f(%rbp)
18006bfe6:	48 8d 4d 0f          	lea    0xf(%rbp),%rcx
18006bfea:	44 8b 50 60          	mov    0x60(%rax),%r10d
18006bfee:	48 8b 05 83 8b 13 00 	mov    0x138b83(%rip),%rax        # 0x1801a4b78
18006bff5:	4a 8b 3c d0          	mov    (%rax,%r10,8),%rdi
18006bff9:	e8 c6 16 01 00       	call   0x18007d6c4
18006bffe:	48 8d 55 df          	lea    -0x21(%rbp),%rdx
18006c002:	48 8d 4d 0f          	lea    0xf(%rbp),%rcx
18006c006:	e8 e9 fe ff ff       	call   0x18006bef4
18006c00b:	8b d8                	mov    %eax,%ebx
18006c00d:	85 c0                	test   %eax,%eax
18006c00f:	0f 88 08 02 00 00    	js     0x18006c21d
18006c015:	49 8b ce             	mov    %r14,%rcx
18006c018:	e8 7b f4 ff ff       	call   0x18006b498
18006c01d:	0f b7 45 e7          	movzwl -0x19(%rbp),%eax
18006c021:	0f 57 c0             	xorps  %xmm0,%xmm0
18006c024:	0f 11 45 ef          	movups %xmm0,-0x11(%rbp)
18006c028:	66 89 45 f7          	mov    %ax,-0x9(%rbp)
18006c02c:	8a 45 e9             	mov    -0x17(%rbp),%al
18006c02f:	88 45 f9             	mov    %al,-0x7(%rbp)
18006c032:	0f 11 45 ff          	movups %xmm0,-0x1(%rbp)
18006c036:	f2 0f 10 45 df       	movsd  -0x21(%rbp),%xmm0
18006c03b:	f2 0f 11 45 ef       	movsd  %xmm0,-0x11(%rbp)
18006c040:	41 f6 c4 01          	test   $0x1,%r12b
18006c044:	74 18                	je     0x18006c05e
18006c046:	80 4d fa 10          	orb    $0x10,-0x6(%rbp)
18006c04a:	0f b6 77 02          	movzbl 0x2(%rdi),%esi
18006c04e:	0f b7 07             	movzwl (%rdi),%eax
18006c051:	0f af f0             	imul   %eax,%esi
18006c054:	c6 45 5f 01          	movb   $0x1,0x5f(%rbp)
18006c058:	c1 e6 02             	shl    $0x2,%esi
18006c05b:	89 75 6f             	mov    %esi,0x6f(%rbp)
18006c05e:	33 db                	xor    %ebx,%ebx
18006c060:	44 8b e3             	mov    %ebx,%r12d
18006c063:	85 f6                	test   %esi,%esi
18006c065:	0f 84 27 01 00 00    	je     0x18006c192
18006c06b:	44 0f b7 0f          	movzwl (%rdi),%r9d
18006c06f:	44 0f b6 47 02       	movzbl 0x2(%rdi),%r8d
18006c074:	41 8b c9             	mov    %r9d,%ecx
18006c077:	41 0f af c8          	imul   %r8d,%ecx
18006c07b:	83 f9 01             	cmp    $0x1,%ecx
18006c07e:	75 04                	jne    0x18006c084
18006c080:	8b c6                	mov    %esi,%eax
18006c082:	eb 11                	jmp    0x18006c095
18006c084:	33 d2                	xor    %edx,%edx
18006c086:	8d 41 ff             	lea    -0x1(%rcx),%eax
18006c089:	03 c6                	add    %esi,%eax
18006c08b:	f7 f1                	div    %ecx
18006c08d:	41 0f af c1          	imul   %r9d,%eax
18006c091:	41 0f af c0          	imul   %r8d,%eax
18006c095:	33 d2                	xor    %edx,%edx
18006c097:	89 5d c3             	mov    %ebx,-0x3d(%rbp)
18006c09a:	f7 f1                	div    %ecx
18006c09c:	44 8b eb             	mov    %ebx,%r13d
18006c09f:	89 45 d3             	mov    %eax,-0x2d(%rbp)
18006c0a2:	85 c0                	test   %eax,%eax
18006c0a4:	0f 84 dc 00 00 00    	je     0x18006c186
18006c0aa:	4c 8d 45 c7          	lea    -0x39(%rbp),%r8
18006c0ae:	41 8b d5             	mov    %r13d,%edx
18006c0b1:	49 8b ce             	mov    %r14,%rcx
18006c0b4:	e8 8b fc ff ff       	call   0x18006bd44
18006c0b9:	8b d8                	mov    %eax,%ebx
18006c0bb:	85 c0                	test   %eax,%eax
18006c0bd:	0f 88 4d 01 00 00    	js     0x18006c210
18006c0c3:	44 8b 6d c7          	mov    -0x39(%rbp),%r13d
18006c0c7:	33 db                	xor    %ebx,%ebx
18006c0c9:	45 85 e4             	test   %r12d,%r12d
18006c0cc:	45 0f 44 e5          	cmove  %r13d,%r12d
18006c0d0:	44 89 65 cf          	mov    %r12d,-0x31(%rbp)
18006c0d4:	38 5d 5f             	cmp    %bl,0x5f(%rbp)
18006c0d7:	0f 84 98 00 00 00    	je     0x18006c175
18006c0dd:	4d 85 ff             	test   %r15,%r15
18006c0e0:	75 22                	jne    0x18006c104
18006c0e2:	0f b7 0f             	movzwl (%rdi),%ecx
18006c0e5:	e8 66 dd 02 00       	call   0x180099e50
18006c0ea:	4c 8b f8             	mov    %rax,%r15
18006c0ed:	48 85 c0             	test   %rax,%rax
18006c0f0:	0f 84 2b 01 00 00    	je     0x18006c221
18006c0f6:	44 0f b7 07          	movzwl (%rdi),%r8d
18006c0fa:	33 d2                	xor    %edx,%edx