180060be9:	e8 ca 17 ff ff       	call   0x1800523b8
180060bee:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180060bf3:	8b c6                	mov    %esi,%eax
180060bf5:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
180060bfa:	48 83 c4 20          	add    $0x20,%rsp
180060bfe:	5f                   	pop    %rdi
180060bff:	c3                   	ret
180060c00:	cc                   	int3
180060c01:	cc                   	int3
180060c02:	cc                   	int3
180060c03:	cc                   	int3
180060c04:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180060c09:	57                   	push   %rdi
180060c0a:	48 83 ec 20          	sub    $0x20,%rsp
180060c0e:	48 8b fa             	mov    %rdx,%rdi
180060c11:	48 8b d9             	mov    %rcx,%rbx
180060c14:	e8 f3 80 ff ff       	call   0x180058d0c
180060c19:	48 85 ff             	test   %rdi,%rdi
180060c1c:	74 35                	je     0x180060c53
180060c1e:	48 8b 07             	mov    (%rdi),%rax
180060c21:	48 8b cf             	mov    %rdi,%rcx
180060c24:	48 8b 53 10          	mov    0x10(%rbx),%rdx
180060c28:	48 8b 40 68          	mov    0x68(%rax),%rax
180060c2c:	ff d0                	call   *%rax
180060c2e:	0f 1f 00             	nopl   (%rax)
180060c31:	48 85 c0             	test   %rax,%rax
180060c34:	74 1d                	je     0x180060c53
180060c36:	8a 48 48             	mov    0x48(%rax),%cl
180060c39:	88 4b 48             	mov    %cl,0x48(%rbx)
180060c3c:	48 8b 50 58          	mov    0x58(%rax),%rdx
180060c40:	8b 48 50             	mov    0x50(%rax),%ecx
180060c43:	48 89 53 58          	mov    %rdx,0x58(%rbx)
180060c47:	89 4b 50             	mov    %ecx,0x50(%rbx)
180060c4a:	83 60 50 00          	andl   $0x0,0x50(%rax)
180060c4e:	48 83 60 58 00       	andq   $0x0,0x58(%rax)
180060c53:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180060c58:	48 83 c4 20          	add    $0x20,%rsp
180060c5c:	5f                   	pop    %rdi
180060c5d:	c3                   	ret
180060c5e:	cc                   	int3
180060c5f:	cc                   	int3
180060c60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180060c65:	44 8b 59 08          	mov    0x8(%rcx),%r11d
180060c69:	bb 01 00 00 00       	mov    $0x1,%ebx
180060c6e:	8a 41 04             	mov    0x4(%rcx),%al
180060c71:	44 8a cb             	mov    %bl,%r9b
180060c74:	45 8d 14 13          	lea    (%r11,%rdx,1),%r10d
180060c78:	84 c0                	test   %al,%al
180060c7a:	74 31                	je     0x180060cad
180060c7c:	3c ee                	cmp    $0xee,%al
180060c7e:	74 2d                	je     0x180060cad
180060c80:	45 32 c9             	xor    %r9b,%r9b
180060c83:	3c 05                	cmp    $0x5,%al
180060c85:	74 04                	je     0x180060c8b
180060c87:	3c 0f                	cmp    $0xf,%al
180060c89:	75 05                	jne    0x180060c90
180060c8b:	45 85 db             	test   %r11d,%r11d
180060c8e:	74 1d                	je     0x180060cad
180060c90:	4d 3b d0             	cmp    %r8,%r10
180060c93:	73 18                	jae    0x180060cad
180060c95:	8b 49 0c             	mov    0xc(%rcx),%ecx
180060c98:	4b 8d 14 40          	lea    (%r8,%r8,2),%rdx
180060c9c:	48 d1 ea             	shr    $1,%rdx
180060c9f:	49 2b d2             	sub    %r10,%rdx
180060ca2:	45 0f b6 c9          	movzbl %r9b,%r9d
180060ca6:	48 3b ca             	cmp    %rdx,%rcx
180060ca9:	44 0f 46 cb          	cmovbe %ebx,%r9d
180060cad:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
180060cb2:	41 8a c1             	mov    %r9b,%al
180060cb5:	c3                   	ret
180060cb6:	cc                   	int3
180060cb7:	cc                   	int3
180060cb8:	0f 57 c9             	xorps  %xmm1,%xmm1
180060cbb:	b8 20 00 00 00       	mov    $0x20,%eax
180060cc0:	f3 0f 6f 01          	movdqu (%rcx),%xmm0
180060cc4:	48 8d 49 10          	lea    0x10(%rcx),%rcx
180060cc8:	66 0f fe c1          	paddd  %xmm1,%xmm0
180060ccc:	66 0f 6f c8          	movdqa %xmm0,%xmm1
180060cd0:	48 83 e8 01          	sub    $0x1,%rax
180060cd4:	75 ea                	jne    0x180060cc0
180060cd6:	66 0f 73 d8 08       	psrldq $0x8,%xmm0
180060cdb:	66 0f fe c8          	paddd  %xmm0,%xmm1
180060cdf:	66 0f 6f c1          	movdqa %xmm1,%xmm0
180060ce3:	66 0f 73 d8 04       	psrldq $0x4,%xmm0
180060ce8:	66 0f fe c8          	paddd  %xmm0,%xmm1
180060cec:	66 0f 7e c8          	movd   %xmm1,%eax
180060cf0:	f7 d0                	not    %eax
180060cf2:	ff c0                	inc    %eax
180060cf4:	c3                   	ret
180060cf5:	cc                   	int3
180060cf6:	cc                   	int3
180060cf7:	cc                   	int3
180060cf8:	48 89 11             	mov    %rdx,(%rcx)
180060cfb:	41 b8 00 04 00 00    	mov    $0x400,%r8d
180060d01:	48 8b 82 d0 00 00 00 	mov    0xd0(%rdx),%rax
180060d08:	48 85 c0             	test   %rax,%rax
180060d0b:	74 05                	je     0x180060d12
180060d0d:	49 3b c0             	cmp    %r8,%rax
180060d10:	7e 0a                	jle    0x180060d1c
180060d12:	4c 89 82 d0 00 00 00 	mov    %r8,0xd0(%rdx)
180060d19:	48 8b 11             	mov    (%rcx),%rdx
180060d1c:	8b 82 dc 00 00 00    	mov    0xdc(%rdx),%eax
180060d22:	41 b8 ff 00 00 00    	mov    $0xff,%r8d
180060d28:	85 c0                	test   %eax,%eax
180060d2a:	74 05                	je     0x180060d31
180060d2c:	41 3b c0             	cmp    %r8d,%eax
180060d2f:	76 0a                	jbe    0x180060d3b
180060d31:	44 89 82 dc 00 00 00 	mov    %r8d,0xdc(%rdx)
180060d38:	48 8b 11             	mov    (%rcx),%rdx
180060d3b:	8b 82 e0 00 00 00    	mov    0xe0(%rdx),%eax
180060d41:	ff c8                	dec    %eax
180060d43:	83 f8 3e             	cmp    $0x3e,%eax
180060d46:	76 0a                	jbe    0x180060d52
180060d48:	c7 82 e0 00 00 00 3f 	movl   $0x3f,0xe0(%rdx)
180060d4f:	00 00 00
180060d52:	c3                   	ret
180060d53:	cc                   	int3
180060d54:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
180060d59:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
180060d5e:	53                   	push   %rbx
180060d5f:	55                   	push   %rbp
180060d60:	56                   	push   %rsi
180060d61:	57                   	push   %rdi
180060d62:	41 54                	push   %r12
180060d64:	41 55                	push   %r13
180060d66:	41 56                	push   %r14
180060d68:	41 57                	push   %r15
180060d6a:	48 83 ec 48          	sub    $0x48,%rsp
180060d6e:	48 8b 01             	mov    (%rcx),%rax
180060d71:	45 33 ed             	xor    %r13d,%r13d
180060d74:	b9 70 02 00 00       	mov    $0x270,%ecx
180060d79:	44 88 ac 24 a0 00 00 	mov    %r13b,0xa0(%rsp)
180060d80:	00
180060d81:	45 8b e5             	mov    %r13d,%r12d
180060d84:	44 89 6c 24 20       	mov    %r13d,0x20(%rsp)
180060d89:	45 8b fd             	mov    %r13d,%r15d
180060d8c:	44 89 ac 24 a8 00 00 	mov    %r13d,0xa8(%rsp)
180060d93:	00
180060d94:	48 8b a8 00 01 00 00 	mov    0x100(%rax),%rbp
180060d9b:	41 8b f5             	mov    %r13d,%esi
180060d9e:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
180060da3:	4c 89 2a             	mov    %r13,(%rdx)
180060da6:	e8 69 5b fe ff       	call   0x180046914
180060dab:	48 8b d8             	mov    %rax,%rbx
180060dae:	48 85 c0             	test   %rax,%rax
180060db1:	75 0a                	jne    0x180060dbd
180060db3:	be 9a 00 00 c0       	mov    $0xc000009a,%esi
180060db8:	e9 75 02 00 00       	jmp    0x180061032
180060dbd:	48 8d 48 04          	lea    0x4(%rax),%rcx
180060dc1:	33 d2                	xor    %edx,%edx
180060dc3:	41 b8 6c 02 00 00    	mov    $0x26c,%r8d
180060dc9:	e8 b2 4e 0d 00       	call   0x180135c80
180060dce:	44 89 2b             	mov    %r13d,(%rbx)
180060dd1:	48 8b cd             	mov    %rbp,%rcx
180060dd4:	8b 85 b8 01 00 00    	mov    0x1b8(%rbp),%eax
180060dda:	89 43 08             	mov    %eax,0x8(%rbx)
180060ddd:	e8 d6 fe ff ff       	call   0x180060cb8
180060de2:	89 43 0c             	mov    %eax,0xc(%rbx)
180060de5:	b8 55 aa 00 00       	mov    $0xaa55,%eax
180060dea:	66 39 85 fe 01 00 00 	cmp    %ax,0x1fe(%rbp)
180060df1:	0f 85 26 02 00 00    	jne    0x18006101d
180060df7:	48 8d 85 c2 01 00 00 	lea    0x1c2(%rbp),%rax
180060dfe:	48 8b ac 24 90 00 00 	mov    0x90(%rsp),%rbp
180060e05:	00
180060e06:	4c 8b f0             	mov    %rax,%r14
180060e09:	8b b4 24 a8 00 00 00 	mov    0xa8(%rsp),%esi
180060e10:	48 c7 44 24 28 04 00 	movq   $0x4,0x28(%rsp)
180060e17:	00 00
180060e19:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
180060e1e:	44 89 64 24 24       	mov    %r12d,0x24(%rsp)
180060e23:	41 8b c7             	mov    %r15d,%eax
180060e26:	48 8d 3c c0          	lea    (%rax,%rax,8),%rdi
180060e2a:	41 8a 06             	mov    (%r14),%al
180060e2d:	48 03 ff             	add    %rdi,%rdi
180060e30:	3c 05                	cmp    $0x5,%al
180060e32:	74 08                	je     0x180060e3c
180060e34:	3c 0f                	cmp    $0xf,%al
180060e36:	74 04                	je     0x180060e3c
180060e38:	8b c6                	mov    %esi,%eax
180060e3a:	eb 1a                	jmp    0x180060e56
180060e3c:	4d 85 ed             	test   %r13,%r13
180060e3f:	74 0e                	je     0x180060e4f
180060e41:	b0 01                	mov    $0x1,%al
180060e43:	88 84 24 a0 00 00 00 	mov    %al,0xa0(%rsp)
180060e4a:	e9 d0 00 00 00       	jmp    0x180060f1f
180060e4f:	4d 8d 6e fc          	lea    -0x4(%r14),%r13
180060e53:	41 8b c4             	mov    %r12d,%eax
180060e56:	4c 8b 45 00          	mov    0x0(%rbp),%r8
180060e5a:	49 8d 4e fc          	lea    -0x4(%r14),%rcx
180060e5e:	8b d0                	mov    %eax,%edx
180060e60:	89 84 24 a8 00 00 00 	mov    %eax,0xa8(%rsp)
180060e67:	4d 8b 80 f0 00 00 00 	mov    0xf0(%r8),%r8
180060e6e:	e8 ed fd ff ff       	call   0x180060c60
180060e73:	45 33 c9             	xor    %r9d,%r9d
180060e76:	84 c0                	test   %al,%al
180060e78:	75 0e                	jne    0x180060e88
180060e7a:	b0 01                	mov    $0x1,%al
180060e7c:	88 84 24 a0 00 00 00 	mov    %al,0xa0(%rsp)
180060e83:	e9 92 00 00 00       	jmp    0x180060f1a
180060e88:	44 8b 84 24 a8 00 00 	mov    0xa8(%rsp),%r8d
180060e8f:	00
180060e90:	44 89 4c fb 30       	mov    %r9d,0x30(%rbx,%rdi,8)
180060e95:	41 8b 46 04          	mov    0x4(%r14),%eax
180060e99:	4c 03 c0             	add    %rax,%r8
180060e9c:	48 8b 45 00          	mov    0x0(%rbp),%rax
180060ea0:	8b 88 e8 00 00 00    	mov    0xe8(%rax),%ecx
180060ea6:	49 d3 e0             	shl    %cl,%r8
180060ea9:	4c 89 44 fb 38       	mov    %r8,0x38(%rbx,%rdi,8)
180060eae:	48 8b 45 00          	mov    0x0(%rbp),%rax
180060eb2:	41 8b 56 08          	mov    0x8(%r14),%edx
180060eb6:	8b 88 e8 00 00 00    	mov    0xe8(%rax),%ecx
180060ebc:	83 4c fb 48 ff       	orl    $0xffffffff,0x48(%rbx,%rdi,8)
180060ec1:	48 d3 e2             	shl    %cl,%rdx
180060ec4:	48 89 54 fb 40       	mov    %rdx,0x40(%rbx,%rdi,8)
180060ec9:	41 8a 06             	mov    (%r14),%al
180060ecc:	88 44 fb 50          	mov    %al,0x50(%rbx,%rdi,8)
180060ed0:	41 80 7e fc 80       	cmpb   $0x80,-0x4(%r14)
180060ed5:	0f 94 c0             	sete   %al
180060ed8:	88 44 fb 51          	mov    %al,0x51(%rbx,%rdi,8)
180060edc:	41 0f b6 06          	movzbl (%r14),%eax
180060ee0:	3c 0f                	cmp    $0xf,%al
180060ee2:	77 0d                	ja     0x180060ef1
180060ee4:	b9 21 80 00 00       	mov    $0x8021,%ecx
180060ee9:	0f a3 c1             	bt     %eax,%ecx
180060eec:	41 8a c1             	mov    %r9b,%al
180060eef:	72 02                	jb     0x180060ef3
180060ef1:	b0 01                	mov    $0x1,%al
180060ef3:	88 44 fb 52          	mov    %al,0x52(%rbx,%rdi,8)
180060ef7:	41 ff c7             	inc    %r15d
180060efa:	41 8b 46 04          	mov    0x4(%r14),%eax
180060efe:	89 44 fb 54          	mov    %eax,0x54(%rbx,%rdi,8)
180060f02:	8b 43 08             	mov    0x8(%rbx),%eax
180060f05:	89 44 fb 58          	mov    %eax,0x58(%rbx,%rdi,8)
180060f09:	8a 84 24 a0 00 00 00 	mov    0xa0(%rsp),%al
180060f10:	44 89 4c fb 5c       	mov    %r9d,0x5c(%rbx,%rdi,8)
180060f15:	4c 89 44 fb 60       	mov    %r8,0x60(%rbx,%rdi,8)
180060f1a:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
180060f1f:	49 83 c6 10          	add    $0x10,%r14
180060f23:	48 83 e9 01          	sub    $0x1,%rcx
180060f27:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
180060f2c:	0f 85 f1 fe ff ff    	jne    0x180060e23
180060f32:	8b 74 24 20          	mov    0x20(%rsp),%esi
180060f36:	48 8b 6c 24 30       	mov    0x30(%rsp),%rbp
180060f3b:	84 c0                	test   %al,%al
180060f3d:	0f 85 da 00 00 00    	jne    0x18006101d
180060f43:	4d 85 ed             	test   %r13,%r13
180060f46:	0f 84 d1 00 00 00    	je     0x18006101d
180060f4c:	41 8b 45 08          	mov    0x8(%r13),%eax
180060f50:	43 8d 3c ff          	lea    (%r15,%r15,8),%edi
180060f54:	45 33 ed             	xor    %r13d,%r13d
180060f57:	46 8d 34 20          	lea    (%rax,%r12,1),%r14d
180060f5b:	44 8b e0             	mov    %eax,%r12d
180060f5e:	8b 44 24 24          	mov    0x24(%rsp),%eax
180060f62:	85 c0                	test   %eax,%eax
180060f64:	44 89 b4 24 a8 00 00 	mov    %r14d,0xa8(%rsp)
180060f6b:	00
180060f6c:	44 0f 45 e0          	cmovne %eax,%r12d
180060f70:	c1 e7 04             	shl    $0x4,%edi
180060f73:	8d 8f 70 02 00 00    	lea    0x270(%rdi),%ecx
180060f79:	e8 96 59 fe ff       	call   0x180046914
180060f7e:	48 8b f0             	mov    %rax,%rsi
180060f81:	48 85 c0             	test   %rax,%rax
180060f84:	0f 84 bc 00 00 00    	je     0x180061046
180060f8a:	8d 57 30             	lea    0x30(%rdi),%edx
180060f8d:	48 8b c8             	mov    %rax,%rcx
180060f90:	4c 63 c2             	movslq %edx,%r8
180060f93:	48 8b d3             	mov    %rbx,%rdx
180060f96:	e8 25 4a 0d 00       	call   0x1801359c0
180060f9b:	41 8b d7             	mov    %r15d,%edx
180060f9e:	41 b8 40 02 00 00    	mov    $0x240,%r8d
180060fa4:	48 8d 0c d2          	lea    (%rdx,%rdx,8),%rcx
180060fa8:	33 d2                	xor    %edx,%edx
180060faa:	48 c1 e1 04          	shl    $0x4,%rcx
180060fae:	48 83 c1 30          	add    $0x30,%rcx
180060fb2:	48 03 ce             	add    %rsi,%rcx
180060fb5:	e8 c6 4c 0d 00       	call   0x180135c80
180060fba:	48 8b cb             	mov    %rbx,%rcx
180060fbd:	e8 9a 59 fe ff       	call   0x18004695c
180060fc2:	4c 8b 94 24 90 00 00 	mov    0x90(%rsp),%r10
180060fc9:	00
180060fca:	45 8d 45 01          	lea    0x1(%r13),%r8d
180060fce:	41 8b d6             	mov    %r14d,%edx
180060fd1:	48 8b de             	mov    %rsi,%rbx
180060fd4:	4d 8b 12             	mov    (%r10),%r10
180060fd7:	41 8b 8a e8 00 00 00 	mov    0xe8(%r10),%ecx
180060fde:	49 8b 02             	mov    (%r10),%rax
180060fe1:	4d 8b 8a 00 01 00 00 	mov    0x100(%r10),%r9
180060fe8:	41 d3 e0             	shl    %cl,%r8d
180060feb:	48 d3 e2             	shl    %cl,%rdx
180060fee:	49 8b ca             	mov    %r10,%rcx
180060ff1:	48 8b 40 38          	mov    0x38(%rax),%rax
180060ff5:	ff d0                	call   *%rax
180060ff7:	0f 1f 00             	nopl   (%rax)
180060ffa:	89 44 24 20          	mov    %eax,0x20(%rsp)
180060ffe:	8b f0                	mov    %eax,%esi
180061000:	85 c0                	test   %eax,%eax
180061002:	78 47                	js     0x18006104b
180061004:	b8 55 aa 00 00       	mov    $0xaa55,%eax
180061009:	66 39 85 fe 01 00 00 	cmp    %ax,0x1fe(%rbp)
180061010:	48 8d 85 c2 01 00 00 	lea    0x1c2(%rbp),%rax
180061017:	0f 84 e1 fd ff ff    	je     0x180060dfe
18006101d:	41 8d 47 03          	lea    0x3(%r15),%eax
180061021:	83 e0 fc             	and    $0xfffffffc,%eax
180061024:	89 43 04             	mov    %eax,0x4(%rbx)
180061027:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
18006102e:	00
18006102f:	48 89 18             	mov    %rbx,(%rax)
180061032:	8b c6                	mov    %esi,%eax
180061034:	48 83 c4 48          	add    $0x48,%rsp
180061038:	41 5f                	pop    %r15
18006103a:	41 5e                	pop    %r14
18006103c:	41 5d                	pop    %r13
18006103e:	41 5c                	pop    %r12
180061040:	5f                   	pop    %rdi
180061041:	5e                   	pop    %rsi
180061042:	5d                   	pop    %rbp
180061043:	5b                   	pop    %rbx
180061044:	c3                   	ret
180061045:	cc                   	int3
180061046:	be 9a 00 00 c0       	mov    $0xc000009a,%esi
18006104b:	48 85 db             	test   %rbx,%rbx
18006104e:	74 e2                	je     0x180061032
180061050:	48 8b cb             	mov    %rbx,%rcx
180061053:	e8 04 59 fe ff       	call   0x18004695c
180061058:	eb d8                	jmp    0x180061032
18006105a:	cc                   	int3
18006105b:	cc                   	int3
18006105c:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180061061:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
180061066:	56                   	push   %rsi
180061067:	57                   	push   %rdi
180061068:	41 54                	push   %r12
18006106a:	41 56                	push   %r14
18006106c:	41 57                	push   %r15
18006106e:	48 83 ec 20          	sub    $0x20,%rsp
180061072:	48 8b 01             	mov    (%rcx),%rax
180061075:	33 ff                	xor    %edi,%edi
180061077:	48 21 3a             	and    %rdi,(%rdx)
18006107a:	33 ed                	xor    %ebp,%ebp
18006107c:	4c 8b e2             	mov    %rdx,%r12
18006107f:	48 89 6c 24 50       	mov    %rbp,0x50(%rsp)
180061084:	4c 8b f9             	mov    %rcx,%r15
180061087:	44 8b f7             	mov    %edi,%r14d
18006108a:	8b 98 c0 00 00 00    	mov    0xc0(%rax),%ebx
180061090:	48 8b b0 00 01 00 00 	mov    0x100(%rax),%rsi
180061097:	f7 d3                	not    %ebx
180061099:	83 e3 01             	and    $0x1,%ebx
18006109c:	83 c3 01             	add    $0x1,%ebx
18006109f:	74 3b                	je     0x1800610dc
1800610a1:	4c 8b c6             	mov    %rsi,%r8