18001faed:	4c 8b fa             	mov    %rdx,%r15
18001faf0:	81 f9 04 80 00 00    	cmp    $0x8004,%ecx
18001faf6:	75 05                	jne    0x18001fafd
18001faf8:	8d 73 14             	lea    0x14(%rbx),%esi
18001fafb:	eb 0d                	jmp    0x18001fb0a
18001fafd:	81 f9 0c 80 00 00    	cmp    $0x800c,%ecx
18001fb03:	75 77                	jne    0x18001fb7c
18001fb05:	be 20 00 00 00       	mov    $0x20,%esi
18001fb0a:	85 ff                	test   %edi,%edi
18001fb0c:	74 6e                	je     0x18001fb7c
18001fb0e:	48 8d 05 9b d2 14 00 	lea    0x14d29b(%rip),%rax        # 0x18016cdb0
18001fb15:	c7 44 24 50 03 00 00 	movl   $0x3,0x50(%rsp)
18001fb1c:	00
18001fb1d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18001fb22:	4c 8d 0d a7 9c 12 00 	lea    0x129ca7(%rip),%r9        # 0x1801497d0
18001fb29:	4c 8d 44 24 50       	lea    0x50(%rsp),%r8
18001fb2e:	c7 44 24 20 04 00 00 	movl   $0x4,0x20(%rsp)
18001fb35:	00
18001fb36:	8b d7                	mov    %edi,%edx
18001fb38:	49 8b ce             	mov    %r14,%rcx
18001fb3b:	e8 7c 12 00 00       	call   0x180020dbc
18001fb40:	85 c0                	test   %eax,%eax
18001fb42:	8b e8                	mov    %eax,%ebp
18001fb44:	0f 4f 2d 75 d2 14 00 	cmovg  0x14d275(%rip),%ebp        # 0x18016cdc0
18001fb4b:	85 ed                	test   %ebp,%ebp
18001fb4d:	78 2d                	js     0x18001fb7c
18001fb4f:	39 35 7b d2 14 00    	cmp    %esi,0x14d27b(%rip)        # 0x18016cdd0
18001fb55:	75 16                	jne    0x18001fb6d
18001fb57:	48 8b 0d 7a d2 14 00 	mov    0x14d27a(%rip),%rcx        # 0x18016cdd8
18001fb5e:	49 8b d7             	mov    %r15,%rdx
18001fb61:	44 8b c6             	mov    %esi,%r8d
18001fb64:	e8 17 b6 10 00       	call   0x18012b180
18001fb69:	85 c0                	test   %eax,%eax
18001fb6b:	74 0a                	je     0x18001fb77
18001fb6d:	48 63 c5             	movslq %ebp,%rax
18001fb70:	4c 03 f0             	add    %rax,%r14
18001fb73:	2b fd                	sub    %ebp,%edi
18001fb75:	eb 95                	jmp    0x18001fb0c
18001fb77:	bb 01 00 00 00       	mov    $0x1,%ebx
18001fb7c:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
18001fb81:	8b c3                	mov    %ebx,%eax
18001fb83:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
18001fb88:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
18001fb8d:	48 83 c4 30          	add    $0x30,%rsp
18001fb91:	41 5f                	pop    %r15
18001fb93:	41 5e                	pop    %r14
18001fb95:	5f                   	pop    %rdi
18001fb96:	c3                   	ret
18001fb97:	cc                   	int3
18001fb98:	4c 8b dc             	mov    %rsp,%r11
18001fb9b:	48 81 ec a8 00 00 00 	sub    $0xa8,%rsp
18001fba2:	49 8d 43 a8          	lea    -0x58(%r11),%rax
18001fba6:	49 89 43 a0          	mov    %rax,-0x60(%r11)
18001fbaa:	48 8b 84 24 f0 00 00 	mov    0xf0(%rsp),%rax
18001fbb1:	00
18001fbb2:	49 89 43 98          	mov    %rax,-0x68(%r11)
18001fbb6:	48 8b 84 24 e8 00 00 	mov    0xe8(%rsp),%rax
18001fbbd:	00
18001fbbe:	49 89 43 90          	mov    %rax,-0x70(%r11)
18001fbc2:	48 8b 84 24 e0 00 00 	mov    0xe0(%rsp),%rax
18001fbc9:	00
18001fbca:	49 89 43 88          	mov    %rax,-0x78(%r11)
18001fbce:	48 8b 84 24 d8 00 00 	mov    0xd8(%rsp),%rax
18001fbd5:	00
18001fbd6:	49 89 43 80          	mov    %rax,-0x80(%r11)
18001fbda:	e8 09 00 00 00       	call   0x18001fbe8
18001fbdf:	48 81 c4 a8 00 00 00 	add    $0xa8,%rsp
18001fbe6:	c3                   	ret
18001fbe7:	cc                   	int3
18001fbe8:	4c 8b dc             	mov    %rsp,%r11
18001fbeb:	49 89 5b 08          	mov    %rbx,0x8(%r11)
18001fbef:	49 89 73 10          	mov    %rsi,0x10(%r11)
18001fbf3:	57                   	push   %rdi
18001fbf4:	48 83 ec 40          	sub    $0x40,%rsp
18001fbf8:	49 83 63 e8 00       	andq   $0x0,-0x18(%r11)
18001fbfd:	49 8b f0             	mov    %r8,%rsi
18001fc00:	48 8b 84 24 90 00 00 	mov    0x90(%rsp),%rax
18001fc07:	00
18001fc08:	49 83 63 e0 00       	andq   $0x0,-0x20(%r11)
18001fc0d:	48 8b bc 24 98 00 00 	mov    0x98(%rsp),%rdi
18001fc14:	00
18001fc15:	4c 8b 44 24 78       	mov    0x78(%rsp),%r8
18001fc1a:	4c 8b cf             	mov    %rdi,%r9
18001fc1d:	49 89 43 d8          	mov    %rax,-0x28(%r11)
18001fc21:	e8 1a 25 00 00       	call   0x180022140
18001fc26:	8b d8                	mov    %eax,%ebx
18001fc28:	85 c0                	test   %eax,%eax
18001fc2a:	78 46                	js     0x18001fc72
18001fc2c:	83 3f 09             	cmpl   $0x9,(%rdi)
18001fc2f:	75 3c                	jne    0x18001fc6d
18001fc31:	48 8b 57 08          	mov    0x8(%rdi),%rdx
18001fc35:	41 b8 09 00 00 00    	mov    $0x9,%r8d
18001fc3b:	48 8b ce             	mov    %rsi,%rcx
18001fc3e:	e8 1d 42 11 00       	call   0x180133e60
18001fc43:	48 83 f8 09          	cmp    $0x9,%rax
18001fc47:	75 24                	jne    0x18001fc6d
18001fc49:	8b 57 10             	mov    0x10(%rdi),%edx
18001fc4c:	85 d2                	test   %edx,%edx
18001fc4e:	74 1d                	je     0x18001fc6d
18001fc50:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
18001fc54:	4c 8b 8c 24 80 00 00 	mov    0x80(%rsp),%r9
18001fc5b:	00
18001fc5c:	4c 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8
18001fc63:	00
18001fc64:	e8 6f 10 00 00       	call   0x180020cd8
18001fc69:	85 c0                	test   %eax,%eax
18001fc6b:	79 05                	jns    0x18001fc72
18001fc6d:	bb 28 04 00 c0       	mov    $0xc0000428,%ebx
18001fc72:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
18001fc77:	8b c3                	mov    %ebx,%eax
18001fc79:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18001fc7e:	48 83 c4 40          	add    $0x40,%rsp
18001fc82:	5f                   	pop    %rdi
18001fc83:	c3                   	ret
18001fc84:	cc                   	int3
18001fc85:	cc                   	int3
18001fc86:	cc                   	int3
18001fc87:	cc                   	int3
18001fc88:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18001fc8d:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18001fc92:	57                   	push   %rdi
18001fc93:	48 81 ec c0 00 00 00 	sub    $0xc0,%rsp
18001fc9a:	48 8b 05 cf cc 14 00 	mov    0x14cccf(%rip),%rax        # 0x18016c970
18001fca1:	48 33 c4             	xor    %rsp,%rax
18001fca4:	48 89 84 24 b0 00 00 	mov    %rax,0xb0(%rsp)
18001fcab:	00
18001fcac:	83 64 24 24 00       	andl   $0x0,0x24(%rsp)
18001fcb1:	4c 8b c2             	mov    %rdx,%r8
18001fcb4:	83 39 00             	cmpl   $0x0,(%rcx)
18001fcb7:	48 8b f9             	mov    %rcx,%rdi
18001fcba:	74 7a                	je     0x18001fd36
18001fcbc:	48 83 79 10 00       	cmpq   $0x0,0x10(%rcx)
18001fcc1:	74 73                	je     0x18001fd36
18001fcc3:	f7 41 08 00 00 ff ff 	testl  $0xffff0000,0x8(%rcx)
18001fcca:	75 6a                	jne    0x18001fd36
18001fccc:	c7 44 24 20 7f 00 00 	movl   $0x7f,0x20(%rsp)
18001fcd3:	00
18001fcd4:	48 8d 44 24 30       	lea    0x30(%rsp),%rax
18001fcd9:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18001fcde:	48 85 d2             	test   %rdx,%rdx
18001fce1:	74 53                	je     0x18001fd36
18001fce3:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18001fce8:	49 8b c8             	mov    %r8,%rcx
18001fceb:	e8 50 14 00 00       	call   0x180021140
18001fcf0:	85 c0                	test   %eax,%eax
18001fcf2:	78 42                	js     0x18001fd36
18001fcf4:	48 8b 47 10          	mov    0x10(%rdi),%rax
18001fcf8:	33 db                	xor    %ebx,%ebx
18001fcfa:	8b 78 20             	mov    0x20(%rax),%edi
18001fcfd:	85 ff                	test   %edi,%edi
18001fcff:	74 2e                	je     0x18001fd2f
18001fd01:	48 8b 70 18          	mov    0x18(%rax),%rsi
18001fd05:	8b d3                	mov    %ebx,%edx
18001fd07:	48 03 d2             	add    %rdx,%rdx
18001fd0a:	8b 04 d6             	mov    (%rsi,%rdx,8),%eax
18001fd0d:	3b 44 24 20          	cmp    0x20(%rsp),%eax
18001fd11:	75 16                	jne    0x18001fd29
18001fd13:	48 8b 54 d6 08       	mov    0x8(%rsi,%rdx,8),%rdx
18001fd18:	44 8b c0             	mov    %eax,%r8d
18001fd1b:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
18001fd20:	e8 5b b4 10 00       	call   0x18012b180
18001fd25:	85 c0                	test   %eax,%eax
18001fd27:	74 06                	je     0x18001fd2f
18001fd29:	ff c3                	inc    %ebx
18001fd2b:	3b df                	cmp    %edi,%ebx
18001fd2d:	72 d6                	jb     0x18001fd05
18001fd2f:	3b df                	cmp    %edi,%ebx
18001fd31:	0f 95 c0             	setne  %al
18001fd34:	eb 02                	jmp    0x18001fd38
18001fd36:	32 c0                	xor    %al,%al
18001fd38:	48 8b 8c 24 b0 00 00 	mov    0xb0(%rsp),%rcx
18001fd3f:	00
18001fd40:	48 33 cc             	xor    %rsp,%rcx
18001fd43:	e8 e4 5d ff ff       	call   0x180015b2c
18001fd48:	4c 8d 9c 24 c0 00 00 	lea    0xc0(%rsp),%r11
18001fd4f:	00
18001fd50:	49 8b 5b 10          	mov    0x10(%r11),%rbx
18001fd54:	49 8b 73 20          	mov    0x20(%r11),%rsi
18001fd58:	49 8b e3             	mov    %r11,%rsp
18001fd5b:	5f                   	pop    %rdi
18001fd5c:	c3                   	ret
18001fd5d:	cc                   	int3
18001fd5e:	cc                   	int3
18001fd5f:	cc                   	int3
18001fd60:	48 89 0d d9 54 17 00 	mov    %rcx,0x1754d9(%rip)        # 0x180195240
18001fd67:	c3                   	ret
18001fd68:	cc                   	int3
18001fd69:	cc                   	int3
18001fd6a:	cc                   	int3
18001fd6b:	cc                   	int3
18001fd6c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18001fd71:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
18001fd76:	4c 8b 0d c3 54 17 00 	mov    0x1754c3(%rip),%r9        # 0x180195240
18001fd7d:	45 32 d2             	xor    %r10b,%r10b
18001fd80:	45 33 db             	xor    %r11d,%r11d
18001fd83:	41 8b 19             	mov    (%r9),%ebx
18001fd86:	85 db                	test   %ebx,%ebx
18001fd88:	74 74                	je     0x18001fdfe
18001fd8a:	4d 8b 49 08          	mov    0x8(%r9),%r9
18001fd8e:	4b 8d 04 5b          	lea    (%r11,%r11,2),%rax
18001fd92:	48 03 c0             	add    %rax,%rax
18001fd95:	41 39 14 c1          	cmp    %edx,(%r9,%rax,8)
18001fd99:	74 0a                	je     0x18001fda5
18001fd9b:	41 ff c3             	inc    %r11d
18001fd9e:	44 3b db             	cmp    %ebx,%r11d
18001fda1:	72 eb                	jb     0x18001fd8e
18001fda3:	eb 59                	jmp    0x18001fdfe
18001fda5:	4b 8d 04 5b          	lea    (%r11,%r11,2),%rax
18001fda9:	48 03 c0             	add    %rax,%rax
18001fdac:	41 8b 54 c1 04       	mov    0x4(%r9,%rax,8),%edx
18001fdb1:	0f ba e2 10          	bt     $0x10,%edx
18001fdb5:	72 04                	jb     0x18001fdbb
18001fdb7:	85 d1                	test   %edx,%ecx
18001fdb9:	74 43                	je     0x18001fdfe
18001fdbb:	41 b2 01             	mov    $0x1,%r10b
18001fdbe:	4d 85 c0             	test   %r8,%r8
18001fdc1:	74 3b                	je     0x18001fdfe
18001fdc3:	81 f9 00 00 40 00    	cmp    $0x400000,%ecx
18001fdc9:	74 08                	je     0x18001fdd3
18001fdcb:	81 f9 00 00 00 04    	cmp    $0x4000000,%ecx
18001fdd1:	75 07                	jne    0x18001fdda
18001fdd3:	49 8b 44 c1 08       	mov    0x8(%r9,%rax,8),%rax
18001fdd8:	eb 1c                	jmp    0x18001fdf6
18001fdda:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
18001fde0:	75 07                	jne    0x18001fde9
18001fde2:	49 8b 44 c1 10       	mov    0x10(%r9,%rax,8),%rax
18001fde7:	eb 0d                	jmp    0x18001fdf6
18001fde9:	81 f9 00 40 00 00    	cmp    $0x4000,%ecx
18001fdef:	75 0a                	jne    0x18001fdfb
18001fdf1:	49 8b 44 c1 18       	mov    0x18(%r9,%rax,8),%rax
18001fdf6:	49 89 00             	mov    %rax,(%r8)
18001fdf9:	eb 03                	jmp    0x18001fdfe
18001fdfb:	45 32 d2             	xor    %r10b,%r10b
18001fdfe:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18001fe03:	41 8a c2             	mov    %r10b,%al
18001fe06:	48 8b 7c 24 10       	mov    0x10(%rsp),%rdi
18001fe0b:	c3                   	ret
18001fe0c:	cc                   	int3
18001fe0d:	cc                   	int3
18001fe0e:	cc                   	int3
18001fe0f:	cc                   	int3
18001fe10:	4c 8b dc             	mov    %rsp,%r11
18001fe13:	49 89 5b 10          	mov    %rbx,0x10(%r11)
18001fe17:	49 89 73 18          	mov    %rsi,0x18(%r11)
18001fe1b:	57                   	push   %rdi
18001fe1c:	48 83 ec 60          	sub    $0x60,%rsp
18001fe20:	48 8b 05 49 cb 14 00 	mov    0x14cb49(%rip),%rax        # 0x18016c970
18001fe27:	48 33 c4             	xor    %rsp,%rax
18001fe2a:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
18001fe2f:	48 8b 05 0a 54 17 00 	mov    0x17540a(%rip),%rax        # 0x180195240
18001fe36:	33 db                	xor    %ebx,%ebx
18001fe38:	89 5c 24 30          	mov    %ebx,0x30(%rsp)
18001fe3c:	48 8b f9             	mov    %rcx,%rdi
18001fe3f:	48 85 c0             	test   %rax,%rax
18001fe42:	0f 84 9c 00 00 00    	je     0x18001fee4
18001fe48:	39 18                	cmp    %ebx,(%rax)
18001fe4a:	0f 84 94 00 00 00    	je     0x18001fee4
18001fe50:	4c 8d 41 68          	lea    0x68(%rcx),%r8
18001fe54:	b9 0c 80 00 00       	mov    $0x800c,%ecx
18001fe59:	49 8d 43 c8          	lea    -0x38(%r11),%rax
18001fe5d:	8d 73 01             	lea    0x1(%rbx),%esi
18001fe60:	49 89 43 b8          	mov    %rax,-0x48(%r11)
18001fe64:	8b d6                	mov    %esi,%edx
18001fe66:	4d 8d 4b d0          	lea    -0x30(%r11),%r9
18001fe6a:	e8 89 ee ff ff       	call   0x18001ecf8
18001fe6f:	85 c0                	test   %eax,%eax
18001fe71:	78 71                	js     0x18001fee4
18001fe73:	4c 8b 15 c6 53 17 00 	mov    0x1753c6(%rip),%r10        # 0x180195240
18001fe7a:	8b cb                	mov    %ebx,%ecx
18001fe7c:	44 8b 0f             	mov    (%rdi),%r9d
18001fe7f:	45 8b 02             	mov    (%r10),%r8d
18001fe82:	45 85 c0             	test   %r8d,%r8d
18001fe85:	74 59                	je     0x18001fee0
18001fe87:	4d 8b 52 08          	mov    0x8(%r10),%r10
18001fe8b:	8b d1                	mov    %ecx,%edx
18001fe8d:	48 8d 04 52          	lea    (%rdx,%rdx,2),%rax
18001fe91:	48 03 c0             	add    %rax,%rax
18001fe94:	45 3b 0c c2          	cmp    (%r10,%rax,8),%r9d
18001fe98:	74 09                	je     0x18001fea3
18001fe9a:	03 ce                	add    %esi,%ecx
18001fe9c:	41 3b c8             	cmp    %r8d,%ecx
18001fe9f:	72 ea                	jb     0x18001fe8b
18001fea1:	eb 3d                	jmp    0x18001fee0
18001fea3:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
18001fea7:	48 03 d2             	add    %rdx,%rdx
18001feaa:	41 8b 44 d2 20       	mov    0x20(%r10,%rdx,8),%eax
18001feaf:	85 c0                	test   %eax,%eax
18001feb1:	74 2d                	je     0x18001fee0
18001feb3:	49 8b 54 d2 28       	mov    0x28(%r10,%rdx,8),%rdx
18001feb8:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
18001febd:	44 8b c0             	mov    %eax,%r8d
18001fec0:	41 b9 20 00 00 00    	mov    $0x20,%r9d
18001fec6:	48 8d 05 3b 00 00 00 	lea    0x3b(%rip),%rax        # 0x18001ff08
18001fecd:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18001fed2:	e8 b5 ba 10 00       	call   0x18012b98c
18001fed7:	48 85 c0             	test   %rax,%rax
18001feda:	0f b6 db             	movzbl %bl,%ebx
18001fedd:	0f 45 de             	cmovne %esi,%ebx
18001fee0:	8a c3                	mov    %bl,%al
18001fee2:	eb 02                	jmp    0x18001fee6
18001fee4:	32 c0                	xor    %al,%al
18001fee6:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
18001feeb:	48 33 cc             	xor    %rsp,%rcx
18001feee:	e8 39 5c ff ff       	call   0x180015b2c
18001fef3:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
18001fef8:	49 8b 5b 18          	mov    0x18(%r11),%rbx
18001fefc:	49 8b 73 20          	mov    0x20(%r11),%rsi
18001ff00:	49 8b e3             	mov    %r11,%rsp
18001ff03:	5f                   	pop    %rdi
18001ff04:	c3                   	ret
18001ff05:	cc                   	int3
18001ff06:	cc                   	int3
18001ff07:	cc                   	int3
18001ff08:	48 83 ec 28          	sub    $0x28,%rsp
18001ff0c:	41 b8 20 00 00 00    	mov    $0x20,%r8d
18001ff12:	e8 69 b2 10 00       	call   0x18012b180
18001ff17:	48 83 c4 28          	add    $0x28,%rsp
18001ff1b:	c3                   	ret
18001ff1c:	cc                   	int3
18001ff1d:	cc                   	int3
18001ff1e:	cc                   	int3
18001ff1f:	cc                   	int3
18001ff20:	48 8b c4             	mov    %rsp,%rax
18001ff23:	53                   	push   %rbx
18001ff24:	48 83 ec 30          	sub    $0x30,%rsp
18001ff28:	49 8b d8             	mov    %r8,%rbx
18001ff2b:	c7 40 20 14 00 00 00 	movl   $0x14,0x20(%rax)
18001ff32:	48 89 58 f0          	mov    %rbx,-0x10(%rax)
18001ff36:	4c 8d 0d 83 96 12 00 	lea    0x129683(%rip),%r9        # 0x1801495c0
18001ff3d:	4c 8d 40 20          	lea    0x20(%rax),%r8
18001ff41:	c7 40 e8 0f 00 00 00 	movl   $0xf,-0x18(%rax)
18001ff48:	e8 6f 0e 00 00       	call   0x180020dbc
18001ff4d:	8b c8                	mov    %eax,%ecx
18001ff4f:	85 c0                	test   %eax,%eax
18001ff51:	7e 35                	jle    0x18001ff88
18001ff53:	8b 83 c0 00 00 00    	mov    0xc0(%rbx),%eax
18001ff59:	8b 4b 10             	mov    0x10(%rbx),%ecx
18001ff5c:	85 c0                	test   %eax,%eax
18001ff5e:	74 0f                	je     0x18001ff6f
18001ff60:	48 ff 83 c8 00 00 00 	incq   0xc8(%rbx)
18001ff67:	ff c8                	dec    %eax
18001ff69:	89 83 c0 00 00 00    	mov    %eax,0xc0(%rbx)
18001ff6f:	8b 83 d0 00 00 00    	mov    0xd0(%rbx),%eax
18001ff75:	85 c0                	test   %eax,%eax
18001ff77:	74 0f                	je     0x18001ff88
18001ff79:	48 ff 83 d8 00 00 00 	incq   0xd8(%rbx)
18001ff80:	ff c8                	dec    %eax
18001ff82:	89 83 d0 00 00 00    	mov    %eax,0xd0(%rbx)
18001ff88:	8b c1                	mov    %ecx,%eax
18001ff8a:	48 83 c4 30          	add    $0x30,%rsp