180020c74:	33 d2                	xor    %edx,%edx
180020c76:	e8 05 50 11 00       	call   0x180135c80
180020c7b:	8b 84 24 98 00 00 00 	mov    0x98(%rsp),%eax
180020c82:	44 8b cf             	mov    %edi,%r9d
180020c85:	89 44 24 30          	mov    %eax,0x30(%rsp)
180020c89:	4c 8b c6             	mov    %rsi,%r8
180020c8c:	8b 44 24 70          	mov    0x70(%rsp),%eax
180020c90:	8b d5                	mov    %ebp,%edx
180020c92:	89 44 24 28          	mov    %eax,0x28(%rsp)
180020c96:	49 8b ce             	mov    %r14,%rcx
180020c99:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
180020c9e:	e8 a1 fd ff ff       	call   0x180020a44
180020ca3:	0f 57 c0             	xorps  %xmm0,%xmm0
180020ca6:	33 c9                	xor    %ecx,%ecx
180020ca8:	0f 11 05 81 f3 14 00 	movups %xmm0,0x14f381(%rip)        # 0x180170030
180020caf:	89 0d 8b f3 14 00    	mov    %ecx,0x14f38b(%rip)        # 0x180170040
180020cb5:	eb 05                	jmp    0x180020cbc
180020cb7:	b8 28 04 00 c0       	mov    $0xc0000428,%eax
180020cbc:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
180020cc1:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
180020cc6:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
180020ccb:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
180020cd0:	48 83 c4 40          	add    $0x40,%rsp
180020cd4:	41 5e                	pop    %r14
180020cd6:	c3                   	ret
180020cd7:	cc                   	int3
180020cd8:	48 8b c4             	mov    %rsp,%rax
180020cdb:	48 89 58 08          	mov    %rbx,0x8(%rax)
180020cdf:	48 89 70 10          	mov    %rsi,0x10(%rax)
180020ce3:	48 89 78 18          	mov    %rdi,0x18(%rax)
180020ce7:	4c 89 70 20          	mov    %r14,0x20(%rax)
180020ceb:	8a 01                	mov    (%rcx),%al
180020ced:	4c 8d 51 01          	lea    0x1(%rcx),%r10
180020cf1:	4d 8b f0             	mov    %r8,%r14
180020cf4:	24 1f                	and    $0x1f,%al
180020cf6:	41 83 c8 ff          	or     $0xffffffff,%r8d
180020cfa:	49 8b f1             	mov    %r9,%rsi
180020cfd:	41 03 d0             	add    %r8d,%edx
180020d00:	3c 1f                	cmp    $0x1f,%al
180020d02:	75 3d                	jne    0x180020d41
180020d04:	41 bb 02 00 00 00    	mov    $0x2,%r11d
180020d0a:	85 d2                	test   %edx,%edx
180020d0c:	74 18                	je     0x180020d26
180020d0e:	41 8d 4b ff          	lea    -0x1(%r11),%ecx
180020d12:	41 8a 02             	mov    (%r10),%al
180020d15:	41 03 d0             	add    %r8d,%edx
180020d18:	4c 03 d1             	add    %rcx,%r10
180020d1b:	84 c0                	test   %al,%al
180020d1d:	79 2a                	jns    0x180020d49
180020d1f:	44 03 d9             	add    %ecx,%r11d
180020d22:	85 d2                	test   %edx,%edx
180020d24:	75 ec                	jne    0x180020d12
180020d26:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
180020d2b:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180020d30:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
180020d35:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
180020d3a:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
180020d3f:	c3                   	ret
180020d40:	cc                   	int3
180020d41:	b9 01 00 00 00       	mov    $0x1,%ecx
180020d46:	44 8b d9             	mov    %ecx,%r11d
180020d49:	3b d1                	cmp    %ecx,%edx
180020d4b:	72 d9                	jb     0x180020d26
180020d4d:	41 0f b6 02          	movzbl (%r10),%eax
180020d51:	3c 80                	cmp    $0x80,%al
180020d53:	75 07                	jne    0x180020d5c
180020d55:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
180020d5a:	eb cf                	jmp    0x180020d2b
180020d5c:	84 c0                	test   %al,%al
180020d5e:	79 3b                	jns    0x180020d9b
180020d60:	24 7f                	and    $0x7f,%al
180020d62:	3c 04                	cmp    $0x4,%al
180020d64:	76 05                	jbe    0x180020d6b
180020d66:	83 c8 ff             	or     $0xffffffff,%eax
180020d69:	eb c0                	jmp    0x180020d2b
180020d6b:	44 0f b6 c8          	movzbl %al,%r9d
180020d6f:	44 3b ca             	cmp    %edx,%r9d
180020d72:	73 b2                	jae    0x180020d26
180020d74:	45 33 c0             	xor    %r8d,%r8d
180020d77:	49 8d 5a 01          	lea    0x1(%r10),%rbx
180020d7b:	41 8b f9             	mov    %r9d,%edi
180020d7e:	84 c0                	test   %al,%al
180020d80:	74 13                	je     0x180020d95
180020d82:	0f b6 03             	movzbl (%rbx),%eax
180020d85:	2b f9                	sub    %ecx,%edi
180020d87:	41 c1 e0 08          	shl    $0x8,%r8d
180020d8b:	48 03 d9             	add    %rcx,%rbx
180020d8e:	44 03 c0             	add    %eax,%r8d
180020d91:	85 ff                	test   %edi,%edi
180020d93:	7f ed                	jg     0x180020d82
180020d95:	41 8d 49 01          	lea    0x1(%r9),%ecx
180020d99:	eb 03                	jmp    0x180020d9e
180020d9b:	44 8b c0             	mov    %eax,%r8d
180020d9e:	2b d1                	sub    %ecx,%edx
180020da0:	44 3b c2             	cmp    %edx,%r8d
180020da3:	77 81                	ja     0x180020d26
180020da5:	8b c1                	mov    %ecx,%eax
180020da7:	49 03 c2             	add    %r10,%rax
180020daa:	45 89 06             	mov    %r8d,(%r14)
180020dad:	48 89 06             	mov    %rax,(%rsi)
180020db0:	42 8d 04 19          	lea    (%rcx,%r11,1),%eax
180020db4:	e9 72 ff ff ff       	jmp    0x180020d2b
180020db9:	cc                   	int3
180020dba:	cc                   	int3
180020dbb:	cc                   	int3
180020dbc:	40 55                	rex push %rbp
180020dbe:	53                   	push   %rbx
180020dbf:	56                   	push   %rsi
180020dc0:	57                   	push   %rdi
180020dc1:	41 54                	push   %r12
180020dc3:	41 55                	push   %r13
180020dc5:	41 56                	push   %r14
180020dc7:	41 57                	push   %r15
180020dc9:	48 8d 6c 24 f1       	lea    -0xf(%rsp),%rbp
180020dce:	48 81 ec f8 00 00 00 	sub    $0xf8,%rsp
180020dd5:	48 8b 05 94 bb 14 00 	mov    0x14bb94(%rip),%rax        # 0x18016c970
180020ddc:	48 33 c4             	xor    %rsp,%rax
180020ddf:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
180020de3:	4c 8b 55 7f          	mov    0x7f(%rbp),%r10
180020de7:	45 33 db             	xor    %r11d,%r11d
180020dea:	41 8b 00             	mov    (%r8),%eax
180020ded:	44 8b fa             	mov    %edx,%r15d
180020df0:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
180020df5:	41 8a d3             	mov    %r11b,%dl
180020df8:	88 54 24 20          	mov    %dl,0x20(%rsp)
180020dfc:	48 8b f9             	mov    %rcx,%rdi
180020dff:	4c 89 54 24 30       	mov    %r10,0x30(%rsp)
180020e04:	48 8b d9             	mov    %rcx,%rbx
180020e07:	89 44 24 40          	mov    %eax,0x40(%rsp)
180020e0b:	41 8b f3             	mov    %r11d,%esi
180020e0e:	45 8b e3             	mov    %r11d,%r12d
180020e11:	41 81 ff ff ff ff 7f 	cmp    $0x7fffffff,%r15d
180020e18:	0f 83 28 02 00 00    	jae    0x180021046
180020e1e:	85 c0                	test   %eax,%eax
180020e20:	0f 84 e7 00 00 00    	je     0x180020f0d
180020e26:	49 8d 41 04          	lea    0x4(%r9),%rax
180020e2a:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
180020e2f:	44 8b 68 fc          	mov    -0x4(%rax),%r13d
180020e33:	48 8b 48 04          	mov    0x4(%rax),%rcx
180020e37:	8b 00                	mov    (%rax),%eax
180020e39:	89 44 24 24          	mov    %eax,0x24(%rsp)
180020e3d:	45 0f b6 f5          	movzbl %r13b,%r14d
180020e41:	41 f7 c5 00 00 00 c0 	test   $0xc0000000,%r13d
180020e48:	74 0d                	je     0x180020e57
180020e4a:	4d 85 d2             	test   %r10,%r10
180020e4d:	74 08                	je     0x180020e57
180020e4f:	41 b0 01             	mov    $0x1,%r8b
180020e52:	3b 45 77             	cmp    0x77(%rbp),%eax
180020e55:	72 03                	jb     0x180020e5a
180020e57:	45 8a c3             	mov    %r11b,%r8b
180020e5a:	44 88 44 24 21       	mov    %r8b,0x21(%rsp)
180020e5f:	44 89 5c 24 28       	mov    %r11d,0x28(%rsp)
180020e64:	4c 89 5c 24 48       	mov    %r11,0x48(%rsp)
180020e69:	41 83 fe 05          	cmp    $0x5,%r14d
180020e6d:	75 1f                	jne    0x180020e8e
180020e6f:	85 f6                	test   %esi,%esi
180020e71:	0f 84 ca 01 00 00    	je     0x180021041
180020e77:	ff ce                	dec    %esi
180020e79:	8b c6                	mov    %esi,%eax
180020e7b:	48 03 c0             	add    %rax,%rax
180020e7e:	48 8b 5c c4 60       	mov    0x60(%rsp,%rax,8),%rbx
180020e83:	44 8b 7c c4 68       	mov    0x68(%rsp,%rax,8),%r15d
180020e88:	8a 54 c5 83          	mov    -0x7d(%rbp,%rax,8),%dl
180020e8c:	eb 5a                	jmp    0x180020ee8
180020e8e:	84 d2                	test   %dl,%dl
180020e90:	75 1c                	jne    0x180020eae
180020e92:	45 85 ff             	test   %r15d,%r15d
180020e95:	0f 85 9c 00 00 00    	jne    0x180020f37
180020e9b:	41 8d 46 fe          	lea    -0x2(%r14),%eax
180020e9f:	a9 fd ff ff ff       	test   $0xfffffffd,%eax
180020ea4:	0f 85 97 01 00 00    	jne    0x180021041
180020eaa:	8b 44 24 24          	mov    0x24(%rsp),%eax
180020eae:	45 84 c0             	test   %r8b,%r8b
180020eb1:	74 0c                	je     0x180020ebf
180020eb3:	48 03 c0             	add    %rax,%rax
180020eb6:	4d 89 5c c2 08       	mov    %r11,0x8(%r10,%rax,8)
180020ebb:	45 89 1c c2          	mov    %r11d,(%r10,%rax,8)
180020ebf:	41 8d 46 fd          	lea    -0x3(%r14),%eax
180020ec3:	83 f8 01             	cmp    $0x1,%eax
180020ec6:	77 24                	ja     0x180020eec
180020ec8:	83 fe 08             	cmp    $0x8,%esi
180020ecb:	0f 83 70 01 00 00    	jae    0x180021041
180020ed1:	8b c6                	mov    %esi,%eax
180020ed3:	48 03 c0             	add    %rax,%rax
180020ed6:	ff c6                	inc    %esi
180020ed8:	88 54 c5 83          	mov    %dl,-0x7d(%rbp,%rax,8)
180020edc:	b2 01                	mov    $0x1,%dl
180020ede:	48 89 5c c4 60       	mov    %rbx,0x60(%rsp,%rax,8)
180020ee3:	44 89 7c c4 68       	mov    %r15d,0x68(%rsp,%rax,8)
180020ee8:	88 54 24 20          	mov    %dl,0x20(%rsp)
180020eec:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
180020ef1:	41 ff c4             	inc    %r12d
180020ef4:	48 83 c0 10          	add    $0x10,%rax
180020ef8:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
180020efd:	44 3b 64 24 40       	cmp    0x40(%rsp),%r12d
180020f02:	0f 82 27 ff ff ff    	jb     0x180020e2f
180020f08:	4c 8b 44 24 38       	mov    0x38(%rsp),%r8
180020f0d:	2b df                	sub    %edi,%ebx
180020f0f:	8b fb                	mov    %ebx,%edi
180020f11:	45 89 20             	mov    %r12d,(%r8)
180020f14:	8b c7                	mov    %edi,%eax
180020f16:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
180020f1a:	48 33 cc             	xor    %rsp,%rcx
180020f1d:	e8 0a 4c ff ff       	call   0x180015b2c
180020f22:	48 81 c4 f8 00 00 00 	add    $0xf8,%rsp
180020f29:	41 5f                	pop    %r15
180020f2b:	41 5e                	pop    %r14
180020f2d:	41 5d                	pop    %r13
180020f2f:	41 5c                	pop    %r12
180020f31:	5f                   	pop    %rdi
180020f32:	5e                   	pop    %rsi
180020f33:	5b                   	pop    %rbx
180020f34:	5d                   	pop    %rbp
180020f35:	c3                   	ret
180020f36:	cc                   	int3
180020f37:	48 85 c9             	test   %rcx,%rcx
180020f3a:	74 35                	je     0x180020f71
180020f3c:	8a 01                	mov    (%rcx),%al
180020f3e:	8a 13                	mov    (%rbx),%dl
180020f40:	84 c0                	test   %al,%al
180020f42:	74 11                	je     0x180020f55
180020f44:	3a c2                	cmp    %dl,%al
180020f46:	74 09                	je     0x180020f51
180020f48:	48 ff c1             	inc    %rcx
180020f4b:	8a 01                	mov    (%rcx),%al
180020f4d:	84 c0                	test   %al,%al
180020f4f:	75 f3                	jne    0x180020f44
180020f51:	84 c0                	test   %al,%al
180020f53:	75 1c                	jne    0x180020f71
180020f55:	41 8d 46 fe          	lea    -0x2(%r14),%eax
180020f59:	a9 fd ff ff ff       	test   $0xfffffffd,%eax
180020f5e:	0f 85 dd 00 00 00    	jne    0x180021041
180020f64:	8b 44 24 24          	mov    0x24(%rsp),%eax
180020f68:	8a 54 24 20          	mov    0x20(%rsp),%dl
180020f6c:	e9 3d ff ff ff       	jmp    0x180020eae
180020f71:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
180020f76:	41 8b d7             	mov    %r15d,%edx
180020f79:	4c 8d 44 24 28       	lea    0x28(%rsp),%r8
180020f7e:	48 8b cb             	mov    %rbx,%rcx
180020f81:	e8 52 fd ff ff       	call   0x180020cd8
180020f86:	45 33 db             	xor    %r11d,%r11d
180020f89:	85 c0                	test   %eax,%eax
180020f8b:	0f 8e b0 00 00 00    	jle    0x180021041
180020f91:	44 8b 44 24 28       	mov    0x28(%rsp),%r8d
180020f96:	4c 8b 4c 24 48       	mov    0x48(%rsp),%r9
180020f9b:	4c 8b 54 24 30       	mov    0x30(%rsp),%r10
180020fa0:	41 8d 14 00          	lea    (%r8,%rax,1),%edx
180020fa4:	44 38 5c 24 21       	cmp    %r11b,0x21(%rsp)
180020fa9:	74 49                	je     0x180020ff4
180020fab:	41 0f ba e5 1e       	bt     $0x1e,%r13d
180020fb0:	73 2d                	jae    0x180020fdf
180020fb2:	8b 4c 24 24          	mov    0x24(%rsp),%ecx
180020fb6:	48 03 c9             	add    %rcx,%rcx
180020fb9:	4d 89 4c ca 08       	mov    %r9,0x8(%r10,%rcx,8)
180020fbe:	45 89 04 ca          	mov    %r8d,(%r10,%rcx,8)
180020fc2:	80 3b 03             	cmpb   $0x3,(%rbx)
180020fc5:	75 2d                	jne    0x180020ff4
180020fc7:	45 85 c0             	test   %r8d,%r8d
180020fca:	74 28                	je     0x180020ff4
180020fcc:	49 8d 41 01          	lea    0x1(%r9),%rax
180020fd0:	49 89 44 ca 08       	mov    %rax,0x8(%r10,%rcx,8)
180020fd5:	41 8d 40 ff          	lea    -0x1(%r8),%eax
180020fd9:	41 89 04 ca          	mov    %eax,(%r10,%rcx,8)
180020fdd:	eb 15                	jmp    0x180020ff4
180020fdf:	45 85 ed             	test   %r13d,%r13d
180020fe2:	79 10                	jns    0x180020ff4
180020fe4:	8b 44 24 24          	mov    0x24(%rsp),%eax
180020fe8:	48 03 c0             	add    %rax,%rax
180020feb:	49 89 5c c2 08       	mov    %rbx,0x8(%r10,%rax,8)
180020ff0:	41 89 14 c2          	mov    %edx,(%r10,%rax,8)
180020ff4:	45 84 ed             	test   %r13b,%r13b
180020ff7:	74 48                	je     0x180021041
180020ff9:	41 83 fe 02          	cmp    $0x2,%r14d
180020ffd:	76 38                	jbe    0x180021037
180020fff:	41 83 fe 04          	cmp    $0x4,%r14d
180021003:	77 3c                	ja     0x180021041
180021005:	83 fe 08             	cmp    $0x8,%esi
180021008:	73 37                	jae    0x180021041
18002100a:	44 2b fa             	sub    %edx,%r15d
18002100d:	8b ce                	mov    %esi,%ecx
18002100f:	48 03 c9             	add    %rcx,%rcx
180021012:	8b c2                	mov    %edx,%eax
180021014:	48 03 c3             	add    %rbx,%rax
180021017:	49 8b d9             	mov    %r9,%rbx
18002101a:	ff c6                	inc    %esi
18002101c:	44 89 7c cc 68       	mov    %r15d,0x68(%rsp,%rcx,8)
180021021:	45 8b f8             	mov    %r8d,%r15d
180021024:	48 89 44 cc 60       	mov    %rax,0x60(%rsp,%rcx,8)
180021029:	44 88 5c cd 83       	mov    %r11b,-0x7d(%rbp,%rcx,8)
18002102e:	8a 54 24 20          	mov    0x20(%rsp),%dl
180021032:	e9 b5 fe ff ff       	jmp    0x180020eec
180021037:	8b c2                	mov    %edx,%eax
180021039:	48 03 d8             	add    %rax,%rbx
18002103c:	44 2b fa             	sub    %edx,%r15d
18002103f:	eb ed                	jmp    0x18002102e
180021041:	4c 8b 44 24 38       	mov    0x38(%rsp),%r8
180021046:	2b fb                	sub    %ebx,%edi
180021048:	ff cf                	dec    %edi
18002104a:	e9 c2 fe ff ff       	jmp    0x180020f11
18002104f:	cc                   	int3
180021050:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180021055:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18002105a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18002105f:	57                   	push   %rdi
180021060:	41 56                	push   %r14
180021062:	41 57                	push   %r15
180021064:	48 83 ec 20          	sub    $0x20,%rsp
180021068:	44 8b 31             	mov    (%rcx),%r14d
18002106b:	33 db                	xor    %ebx,%ebx
18002106d:	4c 8b 79 08          	mov    0x8(%rcx),%r15
180021071:	49 8b f0             	mov    %r8,%rsi
180021074:	8b ea                	mov    %edx,%ebp
180021076:	85 d2                	test   %edx,%edx
180021078:	74 26                	je     0x1800210a0
18002107a:	49 8d 78 28          	lea    0x28(%r8),%rdi
18002107e:	44 3b 77 f8          	cmp    -0x8(%rdi),%r14d
180021082:	75 12                	jne    0x180021096
180021084:	48 8b 17             	mov    (%rdi),%rdx
180021087:	4d 8b c6             	mov    %r14,%r8
18002108a:	49 8b cf             	mov    %r15,%rcx
18002108d:	e8 ee a0 10 00       	call   0x18012b180
180021092:	85 c0                	test   %eax,%eax
180021094:	74 26                	je     0x1800210bc
180021096:	ff c3                	inc    %ebx
180021098:	48 83 c7 50          	add    $0x50,%rdi
18002109c:	3b dd                	cmp    %ebp,%ebx
18002109e:	72 de                	jb     0x18002107e
1800210a0:	33 c0                	xor    %eax,%eax
1800210a2:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800210a7:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800210ac:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800210b1:	48 83 c4 20          	add    $0x20,%rsp
1800210b5:	41 5f                	pop    %r15
1800210b7:	41 5e                	pop    %r14
1800210b9:	5f                   	pop    %rdi
1800210ba:	c3                   	ret
1800210bb:	cc                   	int3
1800210bc:	48 8d 04 9b          	lea    (%rbx,%rbx,4),%rax
1800210c0:	48 c1 e0 04          	shl    $0x4,%rax
1800210c4:	48 03 c6             	add    %rsi,%rax
1800210c7:	eb d9                	jmp    0x1800210a2
1800210c9:	cc                   	int3
1800210ca:	cc                   	int3
1800210cb:	cc                   	int3
1800210cc:	40 53                	rex push %rbx
1800210ce:	56                   	push   %rsi
1800210cf:	57                   	push   %rdi
1800210d0:	48 81 ec 60 01 00 00 	sub    $0x160,%rsp
1800210d7:	48 8b 05 92 b8 14 00 	mov    0x14b892(%rip),%rax        # 0x18016c970
1800210de:	48 33 c4             	xor    %rsp,%rax