18000fa68:	48 8b 49 30          	mov    0x30(%rcx),%rcx
18000fa6c:	41 b8 05 00 00 00    	mov    $0x5,%r8d
18000fa72:	e8 f5 04 02 00       	call   0x18002ff6c
18000fa77:	33 f6                	xor    %esi,%esi
18000fa79:	4c 8b c0             	mov    %rax,%r8
18000fa7c:	48 85 c0             	test   %rax,%rax
18000fa7f:	0f 84 9b 00 00 00    	je     0x18000fb20
18000fa85:	44 8b 4c 24 30       	mov    0x30(%rsp),%r9d
18000fa8a:	45 85 c9             	test   %r9d,%r9d
18000fa8d:	0f 84 8d 00 00 00    	je     0x18000fb20
18000fa93:	8b 7f 10             	mov    0x10(%rdi),%edi
18000fa96:	8b d7                	mov    %edi,%edx
18000fa98:	48 03 53 30          	add    0x30(%rbx),%rdx
18000fa9c:	eb 04                	jmp    0x18000faa2
18000fa9e:	48 83 c2 08          	add    $0x8,%rdx
18000faa2:	48 39 32             	cmp    %rsi,(%rdx)
18000faa5:	75 f7                	jne    0x18000fa9e
18000faa7:	2b 53 30             	sub    0x30(%rbx),%edx
18000faaa:	45 85 c9             	test   %r9d,%r9d
18000faad:	74 71                	je     0x18000fb20
18000faaf:	bd ff 0f 00 00       	mov    $0xfff,%ebp
18000fab4:	41 8b 00             	mov    (%r8),%eax
18000fab7:	3b c2                	cmp    %edx,%eax
18000fab9:	73 59                	jae    0x18000fb14
18000fabb:	05 00 10 00 00       	add    $0x1000,%eax
18000fac0:	3b c7                	cmp    %edi,%eax
18000fac2:	76 50                	jbe    0x18000fb14
18000fac4:	41 8b 40 04          	mov    0x4(%r8),%eax
18000fac8:	4d 8d 50 08          	lea    0x8(%r8),%r10
18000facc:	49 8d 4a f8          	lea    -0x8(%r10),%rcx
18000fad0:	48 8b de             	mov    %rsi,%rbx
18000fad3:	48 03 c8             	add    %rax,%rcx
18000fad6:	4c 8b d9             	mov    %rcx,%r11
18000fad9:	4d 2b da             	sub    %r10,%r11
18000fadc:	49 ff c3             	inc    %r11
18000fadf:	49 d1 eb             	shr    $1,%r11
18000fae2:	4c 3b d1             	cmp    %rcx,%r10
18000fae5:	4c 0f 47 de          	cmova  %rsi,%r11
18000fae9:	4d 85 db             	test   %r11,%r11
18000faec:	74 26                	je     0x18000fb14
18000faee:	41 0f b7 0a          	movzwl (%r10),%ecx
18000faf2:	8b c1                	mov    %ecx,%eax
18000faf4:	23 c5                	and    %ebp,%eax
18000faf6:	41 03 00             	add    (%r8),%eax
18000faf9:	3b c7                	cmp    %edi,%eax
18000fafb:	72 0b                	jb     0x18000fb08
18000fafd:	3b c2                	cmp    %edx,%eax
18000faff:	73 07                	jae    0x18000fb08
18000fb01:	66 23 cd             	and    %bp,%cx
18000fb04:	66 41 89 0a          	mov    %cx,(%r10)
18000fb08:	49 83 c2 02          	add    $0x2,%r10
18000fb0c:	48 ff c3             	inc    %rbx
18000fb0f:	49 3b db             	cmp    %r11,%rbx
18000fb12:	72 da                	jb     0x18000faee
18000fb14:	41 8b 40 04          	mov    0x4(%r8),%eax
18000fb18:	4c 03 c0             	add    %rax,%r8
18000fb1b:	44 2b c8             	sub    %eax,%r9d
18000fb1e:	75 94                	jne    0x18000fab4
18000fb20:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
18000fb25:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
18000fb2a:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
18000fb2f:	48 83 c4 20          	add    $0x20,%rsp
18000fb33:	5f                   	pop    %rdi
18000fb34:	c3                   	ret
18000fb35:	cc                   	int3
18000fb36:	cc                   	int3
18000fb37:	cc                   	int3
18000fb38:	48 85 d2             	test   %rdx,%rdx
18000fb3b:	75 07                	jne    0x18000fb44
18000fb3d:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000fb42:	c3                   	ret
18000fb43:	cc                   	int3
18000fb44:	83 22 00             	andl   $0x0,(%rdx)
18000fb47:	f6 c1 0c             	test   $0xc,%cl
18000fb4a:	75 10                	jne    0x18000fb5c
18000fb4c:	8b 0d ce 56 19 00    	mov    0x1956ce(%rip),%ecx        # 0x1801a5220
18000fb52:	89 0a                	mov    %ecx,(%rdx)
18000fb54:	03 0d a6 56 19 00    	add    0x1956a6(%rip),%ecx        # 0x1801a5200
18000fb5a:	89 0a                	mov    %ecx,(%rdx)
18000fb5c:	33 c0                	xor    %eax,%eax
18000fb5e:	c3                   	ret
18000fb5f:	cc                   	int3
18000fb60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18000fb65:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18000fb6a:	57                   	push   %rdi
18000fb6b:	48 83 ec 20          	sub    $0x20,%rsp
18000fb6f:	49 8b f8             	mov    %r8,%rdi
18000fb72:	48 8b da             	mov    %rdx,%rbx
18000fb75:	48 8b f1             	mov    %rcx,%rsi
18000fb78:	48 85 c9             	test   %rcx,%rcx
18000fb7b:	74 42                	je     0x18000fbbf
18000fb7d:	48 85 d2             	test   %rdx,%rdx
18000fb80:	74 3d                	je     0x18000fbbf
18000fb82:	4d 85 c0             	test   %r8,%r8
18000fb85:	74 38                	je     0x18000fbbf
18000fb87:	e8 30 fe ff ff       	call   0x18000f9bc
18000fb8c:	85 c0                	test   %eax,%eax
18000fb8e:	78 34                	js     0x18000fbc4
18000fb90:	41 b0 01             	mov    $0x1,%r8b
18000fb93:	c6 03 00             	movb   $0x0,(%rbx)
18000fb96:	48 8d 15 e3 ff 15 00 	lea    0x15ffe3(%rip),%rdx        # 0x18016fb80
18000fb9d:	48 8b ce             	mov    %rsi,%rcx
18000fba0:	e8 5f db 06 00       	call   0x18007d704
18000fba5:	84 c0                	test   %al,%al
18000fba7:	75 12                	jne    0x18000fbbb
18000fba9:	48 8d 15 d0 ff 15 00 	lea    0x15ffd0(%rip),%rdx        # 0x18016fb80
18000fbb0:	c6 03 01             	movb   $0x1,(%rbx)
18000fbb3:	48 8b cf             	mov    %rdi,%rcx
18000fbb6:	e8 75 e3 06 00       	call   0x18007df30
18000fbbb:	33 c0                	xor    %eax,%eax
18000fbbd:	eb 05                	jmp    0x18000fbc4
18000fbbf:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000fbc4:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18000fbc9:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18000fbce:	48 83 c4 20          	add    $0x20,%rsp
18000fbd2:	5f                   	pop    %rdi
18000fbd3:	c3                   	ret
18000fbd4:	cc                   	int3
18000fbd5:	cc                   	int3
18000fbd6:	cc                   	int3
18000fbd7:	cc                   	int3
18000fbd8:	83 22 00             	andl   $0x0,(%rdx)
18000fbdb:	8b 02                	mov    (%rdx),%eax
18000fbdd:	f6 c1 0c             	test   $0xc,%cl
18000fbe0:	b9 10 00 00 00       	mov    $0x10,%ecx
18000fbe5:	0f 44 c1             	cmove  %ecx,%eax
18000fbe8:	89 02                	mov    %eax,(%rdx)
18000fbea:	33 c0                	xor    %eax,%eax
18000fbec:	c3                   	ret
18000fbed:	cc                   	int3
18000fbee:	cc                   	int3
18000fbef:	cc                   	int3
18000fbf0:	48 8b c4             	mov    %rsp,%rax
18000fbf3:	48 89 58 08          	mov    %rbx,0x8(%rax)
18000fbf7:	48 89 68 10          	mov    %rbp,0x10(%rax)
18000fbfb:	48 89 70 18          	mov    %rsi,0x18(%rax)
18000fbff:	48 89 78 20          	mov    %rdi,0x20(%rax)
18000fc03:	41 56                	push   %r14
18000fc05:	48 83 ec 20          	sub    $0x20,%rsp
18000fc09:	33 db                	xor    %ebx,%ebx
18000fc0b:	48 8b f2             	mov    %rdx,%rsi
18000fc0e:	48 85 c9             	test   %rcx,%rcx
18000fc11:	74 77                	je     0x18000fc8a
18000fc13:	66 39 19             	cmp    %bx,(%rcx)
18000fc16:	74 72                	je     0x18000fc8a
18000fc18:	48 85 d2             	test   %rdx,%rdx
18000fc1b:	74 6d                	je     0x18000fc8a
18000fc1d:	48 8b 15 14 57 19 00 	mov    0x195714(%rip),%rdx        # 0x1801a5338
18000fc24:	e8 cb bc 11 00       	call   0x18012b8f4
18000fc29:	48 8b c8             	mov    %rax,%rcx
18000fc2c:	48 85 c0             	test   %rax,%rax
18000fc2f:	74 52                	je     0x18000fc83
18000fc31:	48 8b 15 00 57 19 00 	mov    0x195700(%rip),%rdx        # 0x1801a5338
18000fc38:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
18000fc3c:	48 8b c7             	mov    %rdi,%rax
18000fc3f:	48 ff c0             	inc    %rax
18000fc42:	66 39 1c 42          	cmp    %bx,(%rdx,%rax,2)
18000fc46:	75 f7                	jne    0x18000fc3f
18000fc48:	4c 8d 34 41          	lea    (%rcx,%rax,2),%r14
18000fc4c:	48 ff c7             	inc    %rdi
18000fc4f:	66 41 39 1c 7e       	cmp    %bx,(%r14,%rdi,2)
18000fc54:	75 f6                	jne    0x18000fc4c
18000fc56:	48 83 c7 0d          	add    $0xd,%rdi
18000fc5a:	48 8d 0c 3f          	lea    (%rdi,%rdi,1),%rcx
18000fc5e:	e8 ed a1 08 00       	call   0x180099e50
18000fc63:	48 8b e8             	mov    %rax,%rbp
18000fc66:	48 85 c0             	test   %rax,%rax
18000fc69:	74 18                	je     0x18000fc83
18000fc6b:	4d 8b ce             	mov    %r14,%r9
18000fc6e:	4c 8d 05 f3 79 13 00 	lea    0x1379f3(%rip),%r8        # 0x180147668
18000fc75:	48 8b d7             	mov    %rdi,%rdx
18000fc78:	48 8b c8             	mov    %rax,%rcx
18000fc7b:	e8 bc de 11 00       	call   0x18012db3c
18000fc80:	48 8b dd             	mov    %rbp,%rbx
18000fc83:	48 89 1e             	mov    %rbx,(%rsi)
18000fc86:	33 c0                	xor    %eax,%eax
18000fc88:	eb 05                	jmp    0x18000fc8f
18000fc8a:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000fc8f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18000fc94:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18000fc99:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18000fc9e:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18000fca3:	48 83 c4 20          	add    $0x20,%rsp
18000fca7:	41 5e                	pop    %r14
18000fca9:	c3                   	ret
18000fcaa:	cc                   	int3
18000fcab:	cc                   	int3
18000fcac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18000fcb1:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18000fcb6:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
18000fcbb:	55                   	push   %rbp
18000fcbc:	41 54                	push   %r12
18000fcbe:	41 55                	push   %r13
18000fcc0:	41 56                	push   %r14
18000fcc2:	41 57                	push   %r15
18000fcc4:	48 8b ec             	mov    %rsp,%rbp
18000fcc7:	48 83 ec 50          	sub    $0x50,%rsp
18000fccb:	4c 8b fa             	mov    %rdx,%r15
18000fcce:	c7 45 f0 20 00 22 00 	movl   $0x220020,-0x10(%rbp)
18000fcd5:	33 d2                	xor    %edx,%edx
18000fcd7:	48 8d 05 aa 79 13 00 	lea    0x1379aa(%rip),%rax        # 0x180147688
18000fcde:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
18000fce2:	4d 8b e1             	mov    %r9,%r12
18000fce5:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
18000fce9:	4d 8b e8             	mov    %r8,%r13
18000fcec:	89 55 e0             	mov    %edx,-0x20(%rbp)
18000fcef:	48 8b f9             	mov    %rcx,%rdi
18000fcf2:	4d 85 ff             	test   %r15,%r15
18000fcf5:	0f 84 4f 01 00 00    	je     0x18000fe4a
18000fcfb:	4d 85 c0             	test   %r8,%r8
18000fcfe:	0f 84 46 01 00 00    	je     0x18000fe4a
18000fd04:	4d 85 c9             	test   %r9,%r9
18000fd07:	0f 84 3d 01 00 00    	je     0x18000fe4a
18000fd0d:	4c 8b 75 50          	mov    0x50(%rbp),%r14
18000fd11:	4d 85 f6             	test   %r14,%r14
18000fd14:	0f 84 30 01 00 00    	je     0x18000fe4a
18000fd1a:	48 8b 5d 58          	mov    0x58(%rbp),%rbx
18000fd1e:	48 85 db             	test   %rbx,%rbx
18000fd21:	0f 84 23 01 00 00    	je     0x18000fe4a
18000fd27:	48 8b 75 60          	mov    0x60(%rbp),%rsi
18000fd2b:	48 85 f6             	test   %rsi,%rsi
18000fd2e:	0f 84 16 01 00 00    	je     0x18000fe4a
18000fd34:	48 39 53 08          	cmp    %rdx,0x8(%rbx)
18000fd38:	74 0a                	je     0x18000fd44
18000fd3a:	48 8b cb             	mov    %rbx,%rcx
18000fd3d:	e8 e2 e0 06 00       	call   0x18007de24
18000fd42:	33 d2                	xor    %edx,%edx
18000fd44:	48 39 56 08          	cmp    %rdx,0x8(%rsi)
18000fd48:	74 0a                	je     0x18000fd54
18000fd4a:	48 8b ce             	mov    %rsi,%rcx
18000fd4d:	e8 d2 e0 06 00       	call   0x18007de24
18000fd52:	33 d2                	xor    %edx,%edx
18000fd54:	41 88 16             	mov    %dl,(%r14)
18000fd57:	f7 07 00 02 00 00    	testl  $0x200,(%rdi)
18000fd5d:	74 3b                	je     0x18000fd9a
18000fd5f:	49 8b 4f 08          	mov    0x8(%r15),%rcx
18000fd63:	48 8d 15 ee 5a 13 00 	lea    0x135aee(%rip),%rdx        # 0x180145858
18000fd6a:	e8 7d b0 11 00       	call   0x18012adec
18000fd6f:	85 c0                	test   %eax,%eax
18000fd71:	74 16                	je     0x18000fd89
18000fd73:	49 8b 4f 08          	mov    0x8(%r15),%rcx
18000fd77:	48 8d 15 0a 5b 13 00 	lea    0x135b0a(%rip),%rdx        # 0x180145888
18000fd7e:	e8 69 b0 11 00       	call   0x18012adec
18000fd83:	33 d2                	xor    %edx,%edx
18000fd85:	85 c0                	test   %eax,%eax
18000fd87:	75 11                	jne    0x18000fd9a
18000fd89:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
18000fd8d:	48 8b cb             	mov    %rbx,%rcx
18000fd90:	e8 9b e1 06 00       	call   0x18007df30
18000fd95:	e9 b5 00 00 00       	jmp    0x18000fe4f
18000fd9a:	8b 07                	mov    (%rdi),%eax
18000fd9c:	0f ba e0 09          	bt     $0x9,%eax
18000fda0:	48 8b 0d 09 54 19 00 	mov    0x195409(%rip),%rcx        # 0x1801a51b0
18000fda7:	48 0f 42 0d f1 53 19 	cmovb  0x1953f1(%rip),%rcx        # 0x1801a51a0
18000fdae:	00
18000fdaf:	83 e0 ef             	and    $0xffffffef,%eax
18000fdb2:	89 07                	mov    %eax,(%rdi)
18000fdb4:	48 85 c9             	test   %rcx,%rcx
18000fdb7:	74 33                	je     0x18000fdec
18000fdb9:	88 55 38             	mov    %dl,0x38(%rbp)
18000fdbc:	48 8d 45 e0          	lea    -0x20(%rbp),%rax
18000fdc0:	49 8b d7             	mov    %r15,%rdx
18000fdc3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18000fdc8:	4c 8d 4d 38          	lea    0x38(%rbp),%r9
18000fdcc:	4d 8b c4             	mov    %r12,%r8
18000fdcf:	e8 e8 cb 0f 00       	call   0x18010c9bc
18000fdd4:	45 33 e4             	xor    %r12d,%r12d
18000fdd7:	85 c0                	test   %eax,%eax
18000fdd9:	78 74                	js     0x18000fe4f
18000fddb:	44 38 65 38          	cmp    %r12b,0x38(%rbp)
18000fddf:	74 0b                	je     0x18000fdec
18000fde1:	66 44 39 65 e0       	cmp    %r12w,-0x20(%rbp)
18000fde6:	75 08                	jne    0x18000fdf0
18000fde8:	41 c6 06 01          	movb   $0x1,(%r14)
18000fdec:	33 c0                	xor    %eax,%eax
18000fdee:	eb 5f                	jmp    0x18000fe4f
18000fdf0:	e8 c7 fb ff ff       	call   0x18000f9bc
18000fdf5:	85 c0                	test   %eax,%eax
18000fdf7:	78 56                	js     0x18000fe4f
18000fdf9:	41 b0 01             	mov    $0x1,%r8b
18000fdfc:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
18000fe00:	49 8b cf             	mov    %r15,%rcx
18000fe03:	e8 fc d8 06 00       	call   0x18007d704
18000fe08:	84 c0                	test   %al,%al
18000fe0a:	75 10                	jne    0x18000fe1c
18000fe0c:	48 8d 55 e0          	lea    -0x20(%rbp),%rdx
18000fe10:	48 8b cb             	mov    %rbx,%rcx
18000fe13:	e8 18 e1 06 00       	call   0x18007df30
18000fe18:	85 c0                	test   %eax,%eax
18000fe1a:	78 33                	js     0x18000fe4f
18000fe1c:	41 b0 01             	mov    $0x1,%r8b
18000fe1f:	48 8d 15 5a fd 15 00 	lea    0x15fd5a(%rip),%rdx        # 0x18016fb80
18000fe26:	49 8b cd             	mov    %r13,%rcx
18000fe29:	e8 d6 d8 06 00       	call   0x18007d704
18000fe2e:	84 c0                	test   %al,%al
18000fe30:	75 13                	jne    0x18000fe45
18000fe32:	48 8d 15 47 fd 15 00 	lea    0x15fd47(%rip),%rdx        # 0x18016fb80
18000fe39:	48 8b ce             	mov    %rsi,%rcx
18000fe3c:	e8 ef e0 06 00       	call   0x18007df30
18000fe41:	85 c0                	test   %eax,%eax
18000fe43:	78 0a                	js     0x18000fe4f
18000fe45:	83 0f 10             	orl    $0x10,(%rdi)
18000fe48:	eb a2                	jmp    0x18000fdec
18000fe4a:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
18000fe4f:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
18000fe54:	49 8b 5b 30          	mov    0x30(%r11),%rbx
18000fe58:	49 8b 73 40          	mov    0x40(%r11),%rsi
18000fe5c:	49 8b 7b 48          	mov    0x48(%r11),%rdi
18000fe60:	49 8b e3             	mov    %r11,%rsp
18000fe63:	41 5f                	pop    %r15
18000fe65:	41 5e                	pop    %r14
18000fe67:	41 5d                	pop    %r13
18000fe69:	41 5c                	pop    %r12
18000fe6b:	5d                   	pop    %rbp
18000fe6c:	c3                   	ret
18000fe6d:	cc                   	int3
18000fe6e:	cc                   	int3
18000fe6f:	cc                   	int3
18000fe70:	4c 8b dc             	mov    %rsp,%r11
18000fe73:	49 89 5b 08          	mov    %rbx,0x8(%r11)
18000fe77:	49 89 6b 10          	mov    %rbp,0x10(%r11)
18000fe7b:	49 89 73 18          	mov    %rsi,0x18(%r11)
18000fe7f:	57                   	push   %rdi
18000fe80:	48 83 ec 40          	sub    $0x40,%rsp
18000fe84:	33 ed                	xor    %ebp,%ebp
18000fe86:	c7 44 24 30 08 00 0a 	movl   $0xa0008,0x30(%rsp)
18000fe8d:	00
18000fe8e:	48 8d 05 1b 78 13 00 	lea    0x13781b(%rip),%rax        # 0x1801476b0
18000fe95:	48 8b da             	mov    %rdx,%rbx
18000fe98:	49 89 43 f0          	mov    %rax,-0x10(%r11)
18000fe9c:	48 8b f9             	mov    %rcx,%rdi
18000fe9f:	48 85 c9             	test   %rcx,%rcx
18000fea2:	74 59                	je     0x18000fefd
18000fea4:	48 85 d2             	test   %rdx,%rdx
18000fea7:	74 54                	je     0x18000fefd
18000fea9:	8b 52 0c             	mov    0xc(%rdx),%edx
18000feac:	48 03 51 30          	add    0x30(%rcx),%rdx
18000feb0:	49 8d 4b d8          	lea    -0x28(%r11),%rcx
18000feb4:	49 89 6b e0          	mov    %rbp,-0x20(%r11)
18000feb8:	89 6c 24 20          	mov    %ebp,0x20(%rsp)
18000febc:	e8 1b e0 06 00       	call   0x18007dedc
18000fec1:	8b f0                	mov    %eax,%esi
18000fec3:	85 c0                	test   %eax,%eax
18000fec5:	78 21                	js     0x18000fee8
18000fec7:	41 b0 01             	mov    $0x1,%r8b
18000feca:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
18000fecf:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18000fed4:	e8 8b db 06 00       	call   0x18007da64
18000fed9:	84 c0                	test   %al,%al
18000fedb:	74 0b                	je     0x18000fee8