180002c0d:	25 ff 01 00 00       	and    $0x1ff,%eax
180002c12:	8b ea                	mov    %edx,%ebp
180002c14:	41 3b c1             	cmp    %r9d,%eax
180002c17:	0f 85 2e 03 00 00    	jne    0x180002f4b
180002c1d:	4c 8b ac 24 d0 00 00 	mov    0xd0(%rsp),%r13
180002c24:	00
180002c25:	4d 85 ed             	test   %r13,%r13
180002c28:	0f 84 16 03 00 00    	je     0x180002f44
180002c2e:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
180002c32:	4c 8d 35 4f 22 14 00 	lea    0x14224f(%rip),%r14        # 0x180144e88
180002c39:	40 f6 c7 01          	test   $0x1,%dil
180002c3d:	74 62                	je     0x180002ca1
180002c3f:	48 8b ce             	mov    %rsi,%rcx
180002c42:	48 ff c1             	inc    %rcx
180002c45:	66 41 39 54 4d 00    	cmp    %dx,0x0(%r13,%rcx,2)
180002c4b:	75 f5                	jne    0x180002c42
180002c4d:	41 0f b7 04 24       	movzwl (%r12),%eax
180002c52:	48 83 c0 22          	add    $0x22,%rax
180002c56:	48 8d 1c 48          	lea    (%rax,%rcx,2),%rbx
180002c5a:	48 8b cb             	mov    %rbx,%rcx
180002c5d:	e8 ee 71 09 00       	call   0x180099e50
180002c62:	48 8b e8             	mov    %rax,%rbp
180002c65:	48 85 c0             	test   %rax,%rax
180002c68:	75 0a                	jne    0x180002c74
180002c6a:	be 17 00 00 c0       	mov    $0xc0000017,%esi
180002c6f:	e9 07 03 00 00       	jmp    0x180002f7b
180002c74:	4d 8b 4c 24 08       	mov    0x8(%r12),%r9
180002c79:	4c 8d 05 30 22 14 00 	lea    0x142230(%rip),%r8        # 0x180144eb0
180002c80:	48 d1 eb             	shr    $1,%rbx
180002c83:	48 8b cd             	mov    %rbp,%rcx
180002c86:	48 8b d3             	mov    %rbx,%rdx
180002c89:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
180002c8e:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
180002c93:	e8 a4 ae 12 00       	call   0x18012db3c
180002c98:	33 d2                	xor    %edx,%edx
180002c9a:	48 89 6c 24 40       	mov    %rbp,0x40(%rsp)
180002c9f:	eb 05                	jmp    0x180002ca6
180002ca1:	4c 89 6c 24 40       	mov    %r13,0x40(%rsp)
180002ca6:	48 8b de             	mov    %rsi,%rbx
180002ca9:	48 ff c3             	inc    %rbx
180002cac:	66 41 39 54 5d 00    	cmp    %dx,0x0(%r13,%rbx,2)
180002cb2:	75 f5                	jne    0x180002ca9
180002cb4:	48 8b 84 24 f0 00 00 	mov    0xf0(%rsp),%rax
180002cbb:	00
180002cbc:	ff c3                	inc    %ebx
180002cbe:	4c 8b e6             	mov    %rsi,%r12
180002cc1:	49 ff c4             	inc    %r12
180002cc4:	66 42 39 14 60       	cmp    %dx,(%rax,%r12,2)
180002cc9:	75 f6                	jne    0x180002cc1
180002ccb:	41 ff c4             	inc    %r12d
180002cce:	83 fb 40             	cmp    $0x40,%ebx
180002cd1:	72 0a                	jb     0x180002cdd
180002cd3:	be 0d 00 00 c0       	mov    $0xc000000d,%esi
180002cd8:	e9 91 02 00 00       	jmp    0x180002f6e
180002cdd:	41 8d 4c 24 08       	lea    0x8(%r12),%ecx
180002ce2:	8d 41 0a             	lea    0xa(%rcx),%eax
180002ce5:	83 f8 40             	cmp    $0x40,%eax
180002ce8:	73 e9                	jae    0x180002cd3
180002cea:	8d 04 19             	lea    (%rcx,%rbx,1),%eax
180002ced:	8d 04 45 68 00 00 00 	lea    0x68(,%rax,2),%eax
180002cf4:	8b f0                	mov    %eax,%esi
180002cf6:	8b c8                	mov    %eax,%ecx
180002cf8:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
180002cfd:	e8 4e 71 09 00       	call   0x180099e50
180002d02:	33 d2                	xor    %edx,%edx
180002d04:	4c 8b f0             	mov    %rax,%r14
180002d07:	48 85 c0             	test   %rax,%rax
180002d0a:	75 0a                	jne    0x180002d16
180002d0c:	be 17 00 00 c0       	mov    $0xc0000017,%esi
180002d11:	e9 58 02 00 00       	jmp    0x180002f6e
180002d16:	8b c7                	mov    %edi,%eax
180002d18:	4c 8b c6             	mov    %rsi,%r8
180002d1b:	83 e0 08             	and    $0x8,%eax
180002d1e:	49 8b ce             	mov    %r14,%rcx
180002d21:	89 84 24 e8 00 00 00 	mov    %eax,0xe8(%rsp)
180002d28:	e8 53 2f 13 00       	call   0x180135c80
180002d2d:	8b 84 24 e8 00 00 00 	mov    0xe8(%rsp),%eax
180002d34:	49 8d 4e 40          	lea    0x40(%r14),%rcx
180002d38:	f7 d8                	neg    %eax
180002d3a:	49 8d 56 28          	lea    0x28(%r14),%rdx
180002d3e:	48 8b 84 24 f8 00 00 	mov    0xf8(%rsp),%rax
180002d45:	00
180002d46:	4d 8d 4e 20          	lea    0x20(%r14),%r9
180002d4a:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180002d4f:	45 1b c0             	sbb    %r8d,%r8d
180002d52:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
180002d57:	41 83 e0 04          	and    $0x4,%r8d
180002d5b:	8b 8c 24 b0 00 00 00 	mov    0xb0(%rsp),%ecx
180002d62:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
180002d67:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
180002d6c:	e8 7f 0a 00 00       	call   0x1800037f0
180002d71:	33 d2                	xor    %edx,%edx
180002d73:	8b f0                	mov    %eax,%esi
180002d75:	85 c0                	test   %eax,%eax
180002d77:	0f 89 02 01 00 00    	jns    0x180002e7f
180002d7d:	48 8b 84 24 e0 00 00 	mov    0xe0(%rsp),%rax
180002d84:	00
180002d85:	48 85 c0             	test   %rax,%rax
180002d88:	0f 84 e9 00 00 00    	je     0x180002e77
180002d8e:	c6 84 24 c8 00 00 00 	movb   $0x1,0xc8(%rsp)
180002d95:	01
180002d96:	48 85 ed             	test   %rbp,%rbp
180002d99:	74 12                	je     0x180002dad
180002d9b:	48 8b cd             	mov    %rbp,%rcx
180002d9e:	e8 59 72 09 00       	call   0x180099ffc
180002da3:	48 8b 84 24 e0 00 00 	mov    0xe0(%rsp),%rax
180002daa:	00
180002dab:	33 d2                	xor    %edx,%edx
180002dad:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
180002db1:	48 ff c1             	inc    %rcx
180002db4:	66 39 14 48          	cmp    %dx,(%rax,%rcx,2)
180002db8:	75 f7                	jne    0x180002db1
180002dba:	48 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%rax
180002dc1:	00
180002dc2:	0f b7 00             	movzwl (%rax),%eax
180002dc5:	48 83 c0 22          	add    $0x22,%rax
180002dc9:	48 8d 34 48          	lea    (%rax,%rcx,2),%rsi
180002dcd:	48 8b ce             	mov    %rsi,%rcx
180002dd0:	e8 7b 70 09 00       	call   0x180099e50
180002dd5:	48 8b e8             	mov    %rax,%rbp
180002dd8:	48 85 c0             	test   %rax,%rax
180002ddb:	75 0a                	jne    0x180002de7
180002ddd:	be 17 00 00 c0       	mov    $0xc0000017,%esi
180002de2:	e9 6d 01 00 00       	jmp    0x180002f54
180002de7:	48 8b 84 24 e0 00 00 	mov    0xe0(%rsp),%rax
180002dee:	00
180002def:	4c 8d 05 ba 20 14 00 	lea    0x1420ba(%rip),%r8        # 0x180144eb0
180002df6:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180002dfb:	48 8b cd             	mov    %rbp,%rcx
180002dfe:	48 8d 05 83 20 14 00 	lea    0x142083(%rip),%rax        # 0x180144e88
180002e05:	48 d1 ee             	shr    $1,%rsi
180002e08:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180002e0d:	48 8b d6             	mov    %rsi,%rdx
180002e10:	48 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%rax
180002e17:	00
180002e18:	4c 8b 48 08          	mov    0x8(%rax),%r9
180002e1c:	e8 1b ad 12 00       	call   0x18012db3c
180002e21:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
180002e26:	33 d2                	xor    %edx,%edx
180002e28:	49 8b ce             	mov    %r14,%rcx
180002e2b:	e8 50 2e 13 00       	call   0x180135c80
180002e30:	48 8b 84 24 f8 00 00 	mov    0xf8(%rsp),%rax
180002e37:	00
180002e38:	4d 8d 4e 20          	lea    0x20(%r14),%r9
180002e3c:	f7 9c 24 e8 00 00 00 	negl   0xe8(%rsp)
180002e43:	48 8b d5             	mov    %rbp,%rdx
180002e46:	8b 8c 24 d8 00 00 00 	mov    0xd8(%rsp),%ecx
180002e4d:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
180002e52:	45 1b c0             	sbb    %r8d,%r8d
180002e55:	49 8d 46 40          	lea    0x40(%r14),%rax
180002e59:	41 83 e0 04          	and    $0x4,%r8d
180002e5d:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
180002e62:	41 ff c0             	inc    %r8d
180002e65:	49 8d 46 28          	lea    0x28(%r14),%rax
180002e69:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
180002e6e:	e8 7d 09 00 00       	call   0x1800037f0
180002e73:	8b f0                	mov    %eax,%esi
180002e75:	33 d2                	xor    %edx,%edx
180002e77:	85 f6                	test   %esi,%esi
180002e79:	0f 88 d5 00 00 00    	js     0x180002f54
180002e7f:	41 89 7e 18          	mov    %edi,0x18(%r14)
180002e83:	38 94 24 c8 00 00 00 	cmp    %dl,0xc8(%rsp)
180002e8a:	74 0a                	je     0x180002e96
180002e8c:	8b c7                	mov    %edi,%eax
180002e8e:	0f ba e8 08          	bts    $0x8,%eax
180002e92:	41 89 46 18          	mov    %eax,0x18(%r14)
180002e96:	40 84 ff             	test   %dil,%dil
180002e99:	79 27                	jns    0x180002ec2
180002e9b:	8b 8c 24 b0 00 00 00 	mov    0xb0(%rsp),%ecx
180002ea2:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
180002ea7:	41 b0 01             	mov    $0x1,%r8b
180002eaa:	e8 d9 2c 07 00       	call   0x180075b88
180002eaf:	4c 8b 7c 24 58       	mov    0x58(%rsp),%r15
180002eb4:	8b f0                	mov    %eax,%esi
180002eb6:	85 c0                	test   %eax,%eax
180002eb8:	0f 88 96 00 00 00    	js     0x180002f54
180002ebe:	4d 89 7e 58          	mov    %r15,0x58(%r14)
180002ec2:	49 8d 7e 68          	lea    0x68(%r14),%rdi
180002ec6:	4d 8b c5             	mov    %r13,%r8
180002ec9:	48 8b cf             	mov    %rdi,%rcx
180002ecc:	49 89 7e 10          	mov    %rdi,0x10(%r14)
180002ed0:	48 8b d3             	mov    %rbx,%rdx
180002ed3:	e8 74 ad 12 00       	call   0x18012dc4c
180002ed8:	48 8d 1c 5f          	lea    (%rdi,%rbx,2),%rbx
180002edc:	ba 08 00 00 00       	mov    $0x8,%edx
180002ee1:	48 8b cb             	mov    %rbx,%rcx
180002ee4:	49 89 5e 38          	mov    %rbx,0x38(%r14)
180002ee8:	4c 8d 05 a9 27 14 00 	lea    0x1427a9(%rip),%r8        # 0x180145698
180002eef:	e8 58 ad 12 00       	call   0x18012dc4c
180002ef4:	4c 8b 84 24 f0 00 00 	mov    0xf0(%rsp),%r8
180002efb:	00
180002efc:	48 83 c3 10          	add    $0x10,%rbx
180002f00:	48 8b cb             	mov    %rbx,%rcx
180002f03:	41 8b d4             	mov    %r12d,%edx
180002f06:	49 89 5e 30          	mov    %rbx,0x30(%r14)
180002f0a:	e8 3d ad 12 00       	call   0x18012dc4c
180002f0f:	48 8b 8c 24 c0 00 00 	mov    0xc0(%rsp),%rcx
180002f16:	00
180002f17:	48 8b 81 f0 00 00 00 	mov    0xf0(%rcx),%rax
180002f1e:	48 05 38 01 00 00    	add    $0x138,%rax
180002f24:	48 8b 08             	mov    (%rax),%rcx
180002f27:	48 39 41 08          	cmp    %rax,0x8(%rcx)
180002f2b:	74 07                	je     0x180002f34
180002f2d:	b9 03 00 00 00       	mov    $0x3,%ecx
180002f32:	cd 29                	int    $0x29
180002f34:	49 89 0e             	mov    %rcx,(%r14)
180002f37:	49 89 46 08          	mov    %rax,0x8(%r14)
180002f3b:	4c 89 71 08          	mov    %r14,0x8(%rcx)
180002f3f:	4c 89 30             	mov    %r14,(%rax)
180002f42:	eb 0c                	jmp    0x180002f50
180002f44:	be 0d 00 00 c0       	mov    $0xc000000d,%esi
180002f49:	eb 30                	jmp    0x180002f7b
180002f4b:	be 0d 00 00 c0       	mov    $0xc000000d,%esi
180002f50:	85 f6                	test   %esi,%esi
180002f52:	79 1a                	jns    0x180002f6e
180002f54:	4d 85 f6             	test   %r14,%r14
180002f57:	74 08                	je     0x180002f61
180002f59:	49 8b ce             	mov    %r14,%rcx
180002f5c:	e8 9b 70 09 00       	call   0x180099ffc
180002f61:	4d 85 ff             	test   %r15,%r15
180002f64:	74 08                	je     0x180002f6e
180002f66:	49 8b cf             	mov    %r15,%rcx
180002f69:	e8 8e 70 09 00       	call   0x180099ffc
180002f6e:	48 85 ed             	test   %rbp,%rbp
180002f71:	74 08                	je     0x180002f7b
180002f73:	48 8b cd             	mov    %rbp,%rcx
180002f76:	e8 81 70 09 00       	call   0x180099ffc
180002f7b:	8b c6                	mov    %esi,%eax
180002f7d:	48 83 c4 68          	add    $0x68,%rsp
180002f81:	41 5f                	pop    %r15
180002f83:	41 5e                	pop    %r14
180002f85:	41 5d                	pop    %r13
180002f87:	41 5c                	pop    %r12
180002f89:	5f                   	pop    %rdi
180002f8a:	5e                   	pop    %rsi
180002f8b:	5d                   	pop    %rbp
180002f8c:	5b                   	pop    %rbx
180002f8d:	c3                   	ret
180002f8e:	cc                   	int3
180002f8f:	cc                   	int3
180002f90:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180002f95:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180002f9a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180002f9f:	57                   	push   %rdi
180002fa0:	41 54                	push   %r12
180002fa2:	41 55                	push   %r13
180002fa4:	41 56                	push   %r14
180002fa6:	41 57                	push   %r15
180002fa8:	48 83 ec 40          	sub    $0x40,%rsp
180002fac:	48 8b 05 a5 23 1a 00 	mov    0x1a23a5(%rip),%rax        # 0x1801a5358
180002fb3:	4d 8b f1             	mov    %r9,%r14
180002fb6:	8b f1                	mov    %ecx,%esi
180002fb8:	4d 8b f8             	mov    %r8,%r15
180002fbb:	44 8a ea             	mov    %dl,%r13b
180002fbe:	48 8b 0c f0          	mov    (%rax,%rsi,8),%rcx
180002fc2:	48 85 c9             	test   %rcx,%rcx
180002fc5:	0f 84 ef 00 00 00    	je     0x1800030ba
180002fcb:	4d 85 c0             	test   %r8,%r8
180002fce:	0f 84 e6 00 00 00    	je     0x1800030ba
180002fd4:	4d 85 c9             	test   %r9,%r9
180002fd7:	0f 84 dd 00 00 00    	je     0x1800030ba
180002fdd:	48 8b ac 24 90 00 00 	mov    0x90(%rsp),%rbp
180002fe4:	00
180002fe5:	48 85 ed             	test   %rbp,%rbp
180002fe8:	0f 84 cc 00 00 00    	je     0x1800030ba
180002fee:	8b 91 f8 12 00 00    	mov    0x12f8(%rcx),%edx
180002ff4:	48 8d 79 10          	lea    0x10(%rcx),%rdi
180002ff8:	48 8b 47 08          	mov    0x8(%rdi),%rax
180002ffc:	48 8b cf             	mov    %rdi,%rcx
180002fff:	45 33 c0             	xor    %r8d,%r8d
180003002:	bb 34 00 00 c0       	mov    $0xc0000034,%ebx
180003007:	ff d0                	call   *%rax
180003009:	0f 1f 00             	nopl   (%rax)
18000300c:	4c 8b e0             	mov    %rax,%r12
18000300f:	48 85 c0             	test   %rax,%rax
180003012:	75 0a                	jne    0x18000301e
180003014:	bb 4c 01 00 c0       	mov    $0xc000014c,%ebx
180003019:	e9 a1 00 00 00       	jmp    0x1800030bf
18000301e:	48 8d 15 13 fa 13 00 	lea    0x13fa13(%rip),%rdx        # 0x180142a38
180003025:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
18000302a:	e8 95 a6 07 00       	call   0x18007d6c4
18000302f:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
180003034:	49 8b d4             	mov    %r12,%rdx
180003037:	48 8b cf             	mov    %rdi,%rcx
18000303a:	e8 2d 0b 10 00       	call   0x180103b6c
18000303f:	8b d0                	mov    %eax,%edx
180003041:	83 f8 ff             	cmp    $0xffffffff,%eax
180003044:	74 79                	je     0x1800030bf
180003046:	48 8b 47 08          	mov    0x8(%rdi),%rax
18000304a:	45 33 c0             	xor    %r8d,%r8d
18000304d:	48 8b cf             	mov    %rdi,%rcx
180003050:	ff d0                	call   *%rax
180003052:	0f 1f 00             	nopl   (%rax)
180003055:	4c 8b e0             	mov    %rax,%r12
180003058:	48 85 c0             	test   %rax,%rax
18000305b:	74 b7                	je     0x180003014
18000305d:	49 8b d7             	mov    %r15,%rdx
180003060:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
180003065:	e8 5a a6 07 00       	call   0x18007d6c4
18000306a:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
18000306f:	49 8b d4             	mov    %r12,%rdx
180003072:	48 8b cf             	mov    %rdi,%rcx
180003075:	e8 f2 0a 10 00       	call   0x180103b6c
18000307a:	8b d0                	mov    %eax,%edx
18000307c:	83 f8 ff             	cmp    $0xffffffff,%eax
18000307f:	74 3e                	je     0x1800030bf
180003081:	48 8b 47 08          	mov    0x8(%rdi),%rax
180003085:	45 33 c0             	xor    %r8d,%r8d
180003088:	48 8b cf             	mov    %rdi,%rcx
18000308b:	ff d0                	call   *%rax
18000308d:	0f 1f 00             	nopl   (%rax)
180003090:	48 85 c0             	test   %rax,%rax
180003093:	0f 84 7b ff ff ff    	je     0x180003014
180003099:	39 35 c1 22 1a 00    	cmp    %esi,0x1a22c1(%rip)        # 0x1801a5360
18000309f:	76 19                	jbe    0x1800030ba
1800030a1:	4d 8b ce             	mov    %r14,%r9
1800030a4:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1800030a9:	4c 8b c0             	mov    %rax,%r8
1800030ac:	41 8a d5             	mov    %r13b,%dl
1800030af:	8b ce                	mov    %esi,%ecx
1800030b1:	e8 2a 00 00 00       	call   0x1800030e0
1800030b6:	8b d8                	mov    %eax,%ebx
1800030b8:	eb 05                	jmp    0x1800030bf
1800030ba:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
1800030bf:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
1800030c4:	8b c3                	mov    %ebx,%eax
1800030c6:	49 8b 5b 30          	mov    0x30(%r11),%rbx
1800030ca:	49 8b 6b 38          	mov    0x38(%r11),%rbp
1800030ce:	49 8b 73 40          	mov    0x40(%r11),%rsi
1800030d2:	49 8b e3             	mov    %r11,%rsp
1800030d5:	41 5f                	pop    %r15
1800030d7:	41 5e                	pop    %r14
1800030d9:	41 5d                	pop    %r13
1800030db:	41 5c                	pop    %r12
1800030dd:	5f                   	pop    %rdi
1800030de:	c3                   	ret
1800030df:	cc                   	int3
1800030e0:	4c 8b dc             	mov    %rsp,%r11
1800030e3:	49 89 5b 08          	mov    %rbx,0x8(%r11)
1800030e7:	49 89 6b 10          	mov    %rbp,0x10(%r11)
1800030eb:	49 89 73 18          	mov    %rsi,0x18(%r11)
1800030ef:	49 89 7b 20          	mov    %rdi,0x20(%r11)
1800030f3:	41 56                	push   %r14
1800030f5:	48 83 ec 30          	sub    $0x30,%rsp
1800030f9:	48 8b 05 58 22 1a 00 	mov    0x1a2258(%rip),%rax        # 0x1801a5358
180003100:	49 8b e8             	mov    %r8,%rbp
180003103:	44 8b d1             	mov    %ecx,%r10d
180003106:	44 8a f2             	mov    %dl,%r14b
180003109:	4a 8b 34 d0          	mov    (%rax,%r10,8),%rsi
18000310d:	48 85 f6             	test   %rsi,%rsi