18002bc36:	48 85 f6             	test   %rsi,%rsi
18002bc39:	74 08                	je     0x18002bc43
18002bc3b:	48 8b ce             	mov    %rsi,%rcx
18002bc3e:	e8 e5 30 08 00       	call   0x1800aed28
18002bc43:	4d 85 f6             	test   %r14,%r14
18002bc46:	74 08                	je     0x18002bc50
18002bc48:	49 8b ce             	mov    %r14,%rcx
18002bc4b:	e8 d8 30 08 00       	call   0x1800aed28
18002bc50:	33 c0                	xor    %eax,%eax
18002bc52:	48 8d 7c 24 60       	lea    0x60(%rsp),%rdi
18002bc57:	8d 48 10             	lea    0x10(%rax),%ecx
18002bc5a:	f3 aa                	rep stos %al,%es:(%rdi)
18002bc5c:	8b c3                	mov    %ebx,%eax
18002bc5e:	48 8b 9c 24 10 02 00 	mov    0x210(%rsp),%rbx
18002bc65:	00
18002bc66:	48 81 c4 d0 01 00 00 	add    $0x1d0,%rsp
18002bc6d:	41 5f                	pop    %r15
18002bc6f:	41 5e                	pop    %r14
18002bc71:	41 5d                	pop    %r13
18002bc73:	41 5c                	pop    %r12
18002bc75:	5f                   	pop    %rdi
18002bc76:	5e                   	pop    %rsi
18002bc77:	5d                   	pop    %rbp
18002bc78:	c3                   	ret
18002bc79:	cc                   	int3
18002bc7a:	cc                   	int3
18002bc7b:	cc                   	int3
18002bc7c:	48 8b c4             	mov    %rsp,%rax
18002bc7f:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002bc83:	48 89 70 10          	mov    %rsi,0x10(%rax)
18002bc87:	44 89 48 20          	mov    %r9d,0x20(%rax)
18002bc8b:	55                   	push   %rbp
18002bc8c:	57                   	push   %rdi
18002bc8d:	41 54                	push   %r12
18002bc8f:	41 56                	push   %r14
18002bc91:	41 57                	push   %r15
18002bc93:	48 8d a8 e8 fe ff ff 	lea    -0x118(%rax),%rbp
18002bc9a:	48 81 ec f0 01 00 00 	sub    $0x1f0,%rsp
18002bca1:	83 64 24 48 00       	andl   $0x0,0x48(%rsp)
18002bca6:	45 32 ff             	xor    %r15b,%r15b
18002bca9:	48 83 3d 97 92 17 00 	cmpq   $0x0,0x179297(%rip)        # 0x1801a4f48
18002bcb0:	00
18002bcb1:	45 0f b7 e0          	movzwl %r8w,%r12d
18002bcb5:	44 8b f2             	mov    %edx,%r14d
18002bcb8:	c6 05 15 7c 17 00 01 	movb   $0x1,0x177c15(%rip)        # 0x1801a38d4
18002bcbf:	48 8b f9             	mov    %rcx,%rdi
18002bcc2:	bb 00 00 21 c0       	mov    $0xc0210000,%ebx
18002bcc7:	0f 84 e2 00 00 00    	je     0x18002bdaf
18002bccd:	f7 41 70 00 01 00 00 	testl  $0x100,0x70(%rcx)
18002bcd4:	0f 84 d5 00 00 00    	je     0x18002bdaf
18002bcda:	8b 05 00 92 17 00    	mov    0x179200(%rip),%eax        # 0x1801a4ee0
18002bce0:	be 00 04 00 00       	mov    $0x400,%esi
18002bce5:	85 c6                	test   %eax,%esi
18002bce7:	74 2d                	je     0x18002bd16
18002bce9:	83 64 24 20 00       	andl   $0x0,0x20(%rsp)
18002bcee:	33 d2                	xor    %edx,%edx
18002bcf0:	45 33 c9             	xor    %r9d,%r9d
18002bcf3:	45 33 c0             	xor    %r8d,%r8d
18002bcf6:	8d 4a 03             	lea    0x3(%rdx),%ecx
18002bcf9:	e8 96 ce ff ff       	call   0x180028b94
18002bcfe:	44 8b 8d 38 01 00 00 	mov    0x138(%rbp),%r9d
18002bd05:	8b 05 d5 91 17 00    	mov    0x1791d5(%rip),%eax        # 0x1801a4ee0
18002bd0b:	41 83 c9 40          	or     $0x40,%r9d
18002bd0f:	44 89 8d 38 01 00 00 	mov    %r9d,0x138(%rbp)
18002bd16:	b9 00 20 00 00       	mov    $0x2000,%ecx
18002bd1b:	0f ba e0 0c          	bt     $0xc,%eax
18002bd1f:	72 04                	jb     0x18002bd25
18002bd21:	85 c1                	test   %eax,%ecx
18002bd23:	74 30                	je     0x18002bd55
18002bd25:	0f ba e0 12          	bt     $0x12,%eax
18002bd29:	73 07                	jae    0x18002bd32
18002bd2b:	41 0f ba e9 09       	bts    $0x9,%r9d
18002bd30:	eb 1c                	jmp    0x18002bd4e
18002bd32:	0f ba e0 19          	bt     $0x19,%eax
18002bd36:	73 05                	jae    0x18002bd3d
18002bd38:	44 0b ce             	or     %esi,%r9d
18002bd3b:	eb 11                	jmp    0x18002bd4e
18002bd3d:	85 4f 70             	test   %ecx,0x70(%rdi)
18002bd40:	74 07                	je     0x18002bd49
18002bd42:	41 0f ba e9 08       	bts    $0x8,%r9d
18002bd47:	eb 05                	jmp    0x18002bd4e
18002bd49:	41 0f ba e9 07       	bts    $0x7,%r9d
18002bd4e:	44 89 8d 38 01 00 00 	mov    %r9d,0x138(%rbp)
18002bd55:	0f ba e0 13          	bt     $0x13,%eax
18002bd59:	73 54                	jae    0x18002bdaf
18002bd5b:	33 d2                	xor    %edx,%edx
18002bd5d:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
18002bd61:	41 b8 90 00 00 00    	mov    $0x90,%r8d
18002bd67:	e8 14 9f 10 00       	call   0x180135c80
18002bd6c:	48 8d 85 38 01 00 00 	lea    0x138(%rbp),%rax
18002bd73:	c7 45 a0 0c 00 00 00 	movl   $0xc,-0x60(%rbp)
18002bd7a:	48 89 45 a8          	mov    %rax,-0x58(%rbp)
18002bd7e:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
18002bd82:	48 8b 05 bf 91 17 00 	mov    0x1791bf(%rip),%rax        # 0x1801a4f48
18002bd89:	ff d0                	call   *%rax
18002bd8b:	0f 1f 00             	nopl   (%rax)
18002bd8e:	8b d8                	mov    %eax,%ebx
18002bd90:	b8 00 00 00 80       	mov    $0x80000000,%eax
18002bd95:	8d 0c 03             	lea    (%rbx,%rax,1),%ecx
18002bd98:	85 c8                	test   %ecx,%eax
18002bd9a:	75 0c                	jne    0x18002bda8
18002bd9c:	81 fb 00 00 21 c0    	cmp    $0xc0210000,%ebx
18002bda2:	0f 85 a7 01 00 00    	jne    0x18002bf4f
18002bda8:	83 8d 38 01 00 00 01 	orl    $0x1,0x138(%rbp)
18002bdaf:	b8 20 00 00 00       	mov    $0x20,%eax
18002bdb4:	41 83 fe 06          	cmp    $0x6,%r14d
18002bdb8:	72 36                	jb     0x18002bdf0
18002bdba:	84 47 70             	test   %al,0x70(%rdi)
18002bdbd:	74 31                	je     0x18002bdf0
18002bdbf:	4c 8d 85 38 01 00 00 	lea    0x138(%rbp),%r8
18002bdc6:	41 0f b7 d4          	movzwl %r12w,%edx
18002bdca:	48 8b cf             	mov    %rdi,%rcx
18002bdcd:	e8 a2 f2 ff ff       	call   0x18002b074
18002bdd2:	8b d8                	mov    %eax,%ebx
18002bdd4:	85 c0                	test   %eax,%eax
18002bdd6:	78 0d                	js     0x18002bde5
18002bdd8:	c7 44 24 48 14 00 00 	movl   $0x14,0x48(%rsp)
18002bddf:	00
18002bde0:	e9 71 01 00 00       	jmp    0x18002bf56
18002bde5:	3d 20 01 00 c0       	cmp    $0xc0000120,%eax
18002bdea:	0f 84 5f 01 00 00    	je     0x18002bf4f
18002bdf0:	41 83 fe 09          	cmp    $0x9,%r14d
18002bdf4:	72 3a                	jb     0x18002be30
18002bdf6:	f7 47 70 00 00 01 00 	testl  $0x10000,0x70(%rdi)
18002bdfd:	74 31                	je     0x18002be30
18002bdff:	4c 8d 85 38 01 00 00 	lea    0x138(%rbp),%r8
18002be06:	41 0f b7 d4          	movzwl %r12w,%edx
18002be0a:	48 8b cf             	mov    %rdi,%rcx
18002be0d:	e8 7e f7 ff ff       	call   0x18002b590
18002be12:	8b d8                	mov    %eax,%ebx
18002be14:	85 c0                	test   %eax,%eax
18002be16:	78 0d                	js     0x18002be25
18002be18:	c7 44 24 48 80 00 00 	movl   $0x80,0x48(%rsp)
18002be1f:	00
18002be20:	e9 31 01 00 00       	jmp    0x18002bf56
18002be25:	3d 20 01 00 c0       	cmp    $0xc0000120,%eax
18002be2a:	0f 84 1f 01 00 00    	je     0x18002bf4f
18002be30:	41 83 fe 07          	cmp    $0x7,%r14d
18002be34:	72 72                	jb     0x18002bea8
18002be36:	8b 77 70             	mov    0x70(%rdi),%esi
18002be39:	40 84 f6             	test   %sil,%sil
18002be3c:	79 6a                	jns    0x18002bea8
18002be3e:	33 d2                	xor    %edx,%edx
18002be40:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
18002be44:	41 b7 01             	mov    $0x1,%r15b
18002be47:	44 88 7c 24 30       	mov    %r15b,0x30(%rsp)
18002be4c:	44 8d 42 52          	lea    0x52(%rdx),%r8d
18002be50:	e8 2b 9e 10 00       	call   0x180135c80
18002be55:	48 83 3d eb 90 17 00 	cmpq   $0x0,0x1790eb(%rip)        # 0x1801a4f48
18002be5c:	00
18002be5d:	75 0e                	jne    0x18002be6d
18002be5f:	0f ba f6 07          	btr    $0x7,%esi
18002be63:	89 77 70             	mov    %esi,0x70(%rdi)
18002be66:	bb 00 00 21 c0       	mov    $0xc0210000,%ebx
18002be6b:	eb 3b                	jmp    0x18002bea8
18002be6d:	4c 8d 4d 30          	lea    0x30(%rbp),%r9
18002be71:	48 8b cf             	mov    %rdi,%rcx
18002be74:	4c 8d 85 38 01 00 00 	lea    0x138(%rbp),%r8
18002be7b:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18002be80:	e8 b3 f5 ff ff       	call   0x18002b438
18002be85:	8b d8                	mov    %eax,%ebx
18002be87:	85 c0                	test   %eax,%eax
18002be89:	78 0d                	js     0x18002be98
18002be8b:	c7 44 24 48 24 00 00 	movl   $0x24,0x48(%rsp)
18002be92:	00
18002be93:	e9 be 00 00 00       	jmp    0x18002bf56
18002be98:	3d 20 01 00 c0       	cmp    $0xc0000120,%eax
18002be9d:	0f 84 ac 00 00 00    	je     0x18002bf4f
18002bea3:	44 8a 7c 24 30       	mov    0x30(%rsp),%r15b
18002bea8:	41 83 fe 08          	cmp    $0x8,%r14d
18002beac:	72 30                	jb     0x18002bede
18002beae:	f6 47 70 40          	testb  $0x40,0x70(%rdi)
18002beb2:	74 2a                	je     0x18002bede
18002beb4:	4c 8d 85 38 01 00 00 	lea    0x138(%rbp),%r8
18002bebb:	41 0f b7 d4          	movzwl %r12w,%edx
18002bebf:	48 8b cf             	mov    %rdi,%rcx
18002bec2:	e8 49 f9 ff ff       	call   0x18002b810
18002bec7:	8b d8                	mov    %eax,%ebx
18002bec9:	85 c0                	test   %eax,%eax
18002becb:	78 0a                	js     0x18002bed7
18002becd:	c7 44 24 48 40 00 00 	movl   $0x40,0x48(%rsp)
18002bed4:	00
18002bed5:	eb 7f                	jmp    0x18002bf56
18002bed7:	3d 20 01 00 c0       	cmp    $0xc0000120,%eax
18002bedc:	74 71                	je     0x18002bf4f
18002bede:	41 83 fe 07          	cmp    $0x7,%r14d
18002bee2:	72 6b                	jb     0x18002bf4f
18002bee4:	8b 77 70             	mov    0x70(%rdi),%esi
18002bee7:	40 84 f6             	test   %sil,%sil
18002beea:	79 63                	jns    0x18002bf4f
18002beec:	45 84 ff             	test   %r15b,%r15b
18002beef:	74 5e                	je     0x18002bf4f
18002bef1:	33 d2                	xor    %edx,%edx
18002bef3:	c6 44 24 30 00       	movb   $0x0,0x30(%rsp)
18002bef8:	48 8d 8d 90 00 00 00 	lea    0x90(%rbp),%rcx
18002beff:	44 8d 42 52          	lea    0x52(%rdx),%r8d
18002bf03:	e8 78 9d 10 00       	call   0x180135c80
18002bf08:	48 83 3d 38 90 17 00 	cmpq   $0x0,0x179038(%rip)        # 0x1801a4f48
18002bf0f:	00
18002bf10:	75 0e                	jne    0x18002bf20
18002bf12:	0f ba f6 07          	btr    $0x7,%esi
18002bf16:	89 77 70             	mov    %esi,0x70(%rdi)
18002bf19:	bb 00 00 21 c0       	mov    $0xc0210000,%ebx
18002bf1e:	eb 2f                	jmp    0x18002bf4f
18002bf20:	4c 8d 8d 90 00 00 00 	lea    0x90(%rbp),%r9
18002bf27:	48 8b cf             	mov    %rdi,%rcx
18002bf2a:	4c 8d 85 38 01 00 00 	lea    0x138(%rbp),%r8
18002bf31:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
18002bf36:	e8 fd f4 ff ff       	call   0x18002b438
18002bf3b:	8b d8                	mov    %eax,%ebx
18002bf3d:	b9 20 00 00 00       	mov    $0x20,%ecx
18002bf42:	8b 44 24 48          	mov    0x48(%rsp),%eax
18002bf46:	85 db                	test   %ebx,%ebx
18002bf48:	0f 49 c1             	cmovns %ecx,%eax
18002bf4b:	89 44 24 48          	mov    %eax,0x48(%rsp)
18002bf4f:	83 7c 24 48 00       	cmpl   $0x0,0x48(%rsp)
18002bf54:	74 0f                	je     0x18002bf65
18002bf56:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
18002bf5b:	b9 0a 00 00 10       	mov    $0x1000000a,%ecx
18002bf60:	e8 47 2b 05 00       	call   0x18007eaac
18002bf65:	85 db                	test   %ebx,%ebx
18002bf67:	79 16                	jns    0x18002bf7f
18002bf69:	81 fb 17 00 00 c0    	cmp    $0xc0000017,%ebx
18002bf6f:	74 0e                	je     0x18002bf7f
18002bf71:	81 fb 20 01 00 c0    	cmp    $0xc0000120,%ebx
18002bf77:	b8 00 00 21 c0       	mov    $0xc0210000,%eax
18002bf7c:	0f 45 d8             	cmovne %eax,%ebx
18002bf7f:	48 8b 3d c2 8f 17 00 	mov    0x178fc2(%rip),%rdi        # 0x1801a4f48
18002bf86:	48 85 ff             	test   %rdi,%rdi
18002bf89:	74 24                	je     0x18002bfaf
18002bf8b:	33 d2                	xor    %edx,%edx
18002bf8d:	48 8d 4d a4          	lea    -0x5c(%rbp),%rcx
18002bf91:	41 b8 8c 00 00 00    	mov    $0x8c,%r8d
18002bf97:	e8 e4 9c 10 00       	call   0x180135c80
18002bf9c:	48 8b c7             	mov    %rdi,%rax
18002bf9f:	c7 45 a0 0d 00 00 00 	movl   $0xd,-0x60(%rbp)
18002bfa6:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
18002bfaa:	ff d0                	call   *%rax
18002bfac:	0f 1f 00             	nopl   (%rax)
18002bfaf:	4c 8d 9c 24 f0 01 00 	lea    0x1f0(%rsp),%r11
18002bfb6:	00
18002bfb7:	c6 05 16 79 17 00 00 	movb   $0x0,0x177916(%rip)        # 0x1801a38d4
18002bfbe:	49 8b 73 38          	mov    0x38(%r11),%rsi
18002bfc2:	8b c3                	mov    %ebx,%eax
18002bfc4:	49 8b 5b 30          	mov    0x30(%r11),%rbx
18002bfc8:	49 8b e3             	mov    %r11,%rsp
18002bfcb:	41 5f                	pop    %r15
18002bfcd:	41 5e                	pop    %r14
18002bfcf:	41 5c                	pop    %r12
18002bfd1:	5f                   	pop    %rdi
18002bfd2:	5d                   	pop    %rbp
18002bfd3:	c3                   	ret
18002bfd4:	cc                   	int3
18002bfd5:	cc                   	int3
18002bfd6:	cc                   	int3
18002bfd7:	cc                   	int3
18002bfd8:	48 8b c4             	mov    %rsp,%rax
18002bfdb:	48 89 58 08          	mov    %rbx,0x8(%rax)
18002bfdf:	48 89 70 10          	mov    %rsi,0x10(%rax)
18002bfe3:	48 89 78 20          	mov    %rdi,0x20(%rax)
18002bfe7:	41 56                	push   %r14
18002bfe9:	48 83 ec 20          	sub    $0x20,%rsp
18002bfed:	48 83 60 18 00       	andq   $0x0,0x18(%rax)
18002bff2:	4c 8b f2             	mov    %rdx,%r14
18002bff5:	48 8d 50 18          	lea    0x18(%rax),%rdx
18002bff9:	e8 f6 4b 08 00       	call   0x1800b0bf4
18002bffe:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18002c003:	8b d8                	mov    %eax,%ebx
18002c005:	85 c0                	test   %eax,%eax
18002c007:	0f 88 88 00 00 00    	js     0x18002c095
18002c00d:	0f b7 06             	movzwl (%rsi),%eax
18002c010:	83 f8 08             	cmp    $0x8,%eax
18002c013:	72 7b                	jb     0x18002c090
18002c015:	83 c0 f8             	add    $0xfffffff8,%eax
18002c018:	83 f8 11             	cmp    $0x11,%eax
18002c01b:	73 07                	jae    0x18002c024
18002c01d:	bb 06 02 00 c0       	mov    $0xc0000206,%ebx
18002c022:	eb 71                	jmp    0x18002c095
18002c024:	48 8d 7e 08          	lea    0x8(%rsi),%rdi
18002c028:	81 3f 67 73 69 6e    	cmpl   $0x6e697367,(%rdi)
18002c02e:	74 07                	je     0x18002c037
18002c030:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
18002c035:	eb 5e                	jmp    0x18002c095
18002c037:	39 47 04             	cmp    %eax,0x4(%rdi)
18002c03a:	75 e1                	jne    0x18002c01d
18002c03c:	8b 57 0c             	mov    0xc(%rdi),%edx
18002c03f:	8d 42 11             	lea    0x11(%rdx),%eax
18002c042:	83 f8 11             	cmp    $0x11,%eax
18002c045:	72 49                	jb     0x18002c090
18002c047:	39 47 04             	cmp    %eax,0x4(%rdi)
18002c04a:	75 d1                	jne    0x18002c01d
18002c04c:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
18002c050:	48 03 d1             	add    %rcx,%rdx
18002c053:	48 3b d1             	cmp    %rcx,%rdx
18002c056:	72 38                	jb     0x18002c090
18002c058:	8b 4f 04             	mov    0x4(%rdi),%ecx
18002c05b:	48 8d 04 39          	lea    (%rcx,%rdi,1),%rax
18002c05f:	48 3b c7             	cmp    %rdi,%rax
18002c062:	72 2c                	jb     0x18002c090
18002c064:	33 db                	xor    %ebx,%ebx
18002c066:	48 3b d0             	cmp    %rax,%rdx
18002c069:	77 b2                	ja     0x18002c01d
18002c06b:	e8 e0 dd 06 00       	call   0x180099e50
18002c070:	49 89 06             	mov    %rax,(%r14)
18002c073:	48 85 c0             	test   %rax,%rax
18002c076:	75 07                	jne    0x18002c07f
18002c078:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18002c07d:	eb 16                	jmp    0x18002c095
18002c07f:	44 8b 47 04          	mov    0x4(%rdi),%r8d
18002c083:	48 8b d7             	mov    %rdi,%rdx
18002c086:	48 8b c8             	mov    %rax,%rcx
18002c089:	e8 32 99 10 00       	call   0x1801359c0
18002c08e:	eb 05                	jmp    0x18002c095
18002c090:	bb 95 00 00 c0       	mov    $0xc0000095,%ebx
18002c095:	48 85 f6             	test   %rsi,%rsi
18002c098:	74 08                	je     0x18002c0a2
18002c09a:	48 8b ce             	mov    %rsi,%rcx
18002c09d:	e8 86 2c 08 00       	call   0x1800aed28
18002c0a2:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18002c0a7:	8b c3                	mov    %ebx,%eax
18002c0a9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18002c0ae:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18002c0b3:	48 83 c4 20          	add    $0x20,%rsp
18002c0b7:	41 5e                	pop    %r14
18002c0b9:	c3                   	ret
18002c0ba:	cc                   	int3
18002c0bb:	cc                   	int3
18002c0bc:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
18002c0c1:	55                   	push   %rbp
18002c0c2:	53                   	push   %rbx
18002c0c3:	56                   	push   %rsi
18002c0c4:	57                   	push   %rdi
18002c0c5:	41 54                	push   %r12
18002c0c7:	41 55                	push   %r13
18002c0c9:	41 56                	push   %r14
18002c0cb:	41 57                	push   %r15
18002c0cd:	48 8b ec             	mov    %rsp,%rbp
18002c0d0:	48 83 ec 78          	sub    $0x78,%rsp
18002c0d4:	4c 8b f9             	mov    %rcx,%r15
18002c0d7:	4c 8d 4d 48          	lea    0x48(%rbp),%r9
18002c0db:	33 c9                	xor    %ecx,%ecx
18002c0dd:	0f b7 c1             	movzwl %cx,%eax
18002c0e0:	48 89 4d d8          	mov    %rcx,-0x28(%rbp)
18002c0e4:	8b f1                	mov    %ecx,%esi
18002c0e6:	88 4d 58             	mov    %cl,0x58(%rbp)
18002c0e9:	4d 8b 2f             	mov    (%r15),%r13
18002c0ec:	44 8b e1             	mov    %ecx,%r12d
18002c0ef:	49 83 c5 40          	add    $0x40,%r13
18002c0f3:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
18002c0f7:	8b d9                	mov    %ecx,%ebx