180012cfa:	48 c1 e9 0c          	shr    $0xc,%rcx
180012cfe:	4c 8d 45 ef          	lea    -0x11(%rbp),%r8
180012d02:	48 b8 ff ff ff ff 0f 	movabs $0xfffffffff,%rax
180012d09:	00 00 00
180012d0c:	48 8d 55 0f          	lea    0xf(%rbp),%rdx
180012d10:	48 23 c8             	and    %rax,%rcx
180012d13:	e8 c8 fb ff ff       	call   0x1800128e0
180012d18:	8b f0                	mov    %eax,%esi
180012d1a:	85 c0                	test   %eax,%eax
180012d1c:	0f 88 51 02 00 00    	js     0x180012f73
180012d22:	48 8b 45 ef          	mov    -0x11(%rbp),%rax
180012d26:	49 8b ce             	mov    %r14,%rcx
180012d29:	48 c1 e9 1e          	shr    $0x1e,%rcx
180012d2d:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012d33:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
180012d37:	48 89 4d c7          	mov    %rcx,-0x39(%rbp)
180012d3b:	48 8b 09             	mov    (%rcx),%rcx
180012d3e:	f6 c1 01             	test   $0x1,%cl
180012d41:	75 07                	jne    0x180012d4a
180012d43:	bf 02 00 00 00       	mov    $0x2,%edi
180012d48:	eb 52                	jmp    0x180012d9c
180012d4a:	48 c1 e9 0c          	shr    $0xc,%rcx
180012d4e:	4c 8d 45 e7          	lea    -0x19(%rbp),%r8
180012d52:	48 b8 ff ff ff ff 0f 	movabs $0xfffffffff,%rax
180012d59:	00 00 00
180012d5c:	48 8d 55 07          	lea    0x7(%rbp),%rdx
180012d60:	48 23 c8             	and    %rax,%rcx
180012d63:	e8 78 fb ff ff       	call   0x1800128e0
180012d68:	8b f0                	mov    %eax,%esi
180012d6a:	85 c0                	test   %eax,%eax
180012d6c:	0f 88 01 02 00 00    	js     0x180012f73
180012d72:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
180012d76:	49 8b ce             	mov    %r14,%rcx
180012d79:	48 c1 e9 15          	shr    $0x15,%rcx
180012d7d:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012d83:	48 8d 0c c8          	lea    (%rax,%rcx,8),%rcx
180012d87:	48 89 4d cf          	mov    %rcx,-0x31(%rbp)
180012d8b:	48 8b 09             	mov    (%rcx),%rcx
180012d8e:	f6 c1 01             	test   $0x1,%cl
180012d91:	0f 85 5c 01 00 00    	jne    0x180012ef3
180012d97:	bf 01 00 00 00       	mov    $0x1,%edi
180012d9c:	4c 8d 6d df          	lea    -0x21(%rbp),%r13
180012da0:	44 8b e3             	mov    %ebx,%r12d
180012da3:	ba 01 00 00 00       	mov    $0x1,%edx
180012da8:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
180012dac:	e8 a7 fb ff ff       	call   0x180012958
180012db1:	8b f0                	mov    %eax,%esi
180012db3:	85 c0                	test   %eax,%eax
180012db5:	0f 88 b8 01 00 00    	js     0x180012f73
180012dbb:	48 8b 4d bf          	mov    -0x41(%rbp),%rcx
180012dbf:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
180012dc3:	41 8b c4             	mov    %r12d,%eax
180012dc6:	48 8d 55 ff          	lea    -0x1(%rbp),%rdx
180012dca:	48 c1 f9 0c          	sar    $0xc,%rcx
180012dce:	4d 8d 04 c0          	lea    (%r8,%rax,8),%r8
180012dd2:	48 8d 14 c2          	lea    (%rdx,%rax,8),%rdx
180012dd6:	e8 05 fb ff ff       	call   0x1800128e0
180012ddb:	8b f0                	mov    %eax,%esi
180012ddd:	85 c0                	test   %eax,%eax
180012ddf:	0f 88 8e 01 00 00    	js     0x180012f73
180012de5:	49 8b 4d 00          	mov    0x0(%r13),%rcx
180012de9:	33 d2                	xor    %edx,%edx
180012deb:	41 b8 00 10 00 00    	mov    $0x1000,%r8d
180012df1:	e8 8a 2e 12 00       	call   0x180135c80
180012df6:	41 ff c4             	inc    %r12d
180012df9:	49 83 c5 08          	add    $0x8,%r13
180012dfd:	44 3b e7             	cmp    %edi,%r12d
180012e00:	72 a1                	jb     0x180012da3
180012e02:	83 ef 01             	sub    $0x1,%edi
180012e05:	0f 84 a0 00 00 00    	je     0x180012eab
180012e0b:	83 ef 01             	sub    $0x1,%edi
180012e0e:	74 53                	je     0x180012e63
180012e10:	83 ff 01             	cmp    $0x1,%edi
180012e13:	0f 85 19 01 00 00    	jne    0x180012f32
180012e19:	48 8b 4d 1f          	mov    0x1f(%rbp),%rcx
180012e1d:	48 ba ff ff ff ff 0f 	movabs $0xfffffffff,%rdx
180012e24:	00 00 00
180012e27:	48 8b 45 0f          	mov    0xf(%rbp),%rax
180012e2b:	49 b8 ff 0f 00 00 00 	movabs $0xffff000000000fff,%r8
180012e32:	00 ff ff
180012e35:	48 23 c2             	and    %rdx,%rax
180012e38:	48 c1 e0 0c          	shl    $0xc,%rax
180012e3c:	4e 21 04 f9          	and    %r8,(%rcx,%r15,8)
180012e40:	48 83 c8 63          	or     $0x63,%rax
180012e44:	4a 09 04 f9          	or     %rax,(%rcx,%r15,8)
180012e48:	49 8b ce             	mov    %r14,%rcx
180012e4b:	48 8b 45 ef          	mov    -0x11(%rbp),%rax
180012e4f:	48 c1 e9 1e          	shr    $0x1e,%rcx
180012e53:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012e59:	48 8d 3c c8          	lea    (%rax,%rcx,8),%rdi
180012e5d:	48 89 7d c7          	mov    %rdi,-0x39(%rbp)
180012e61:	eb 18                	jmp    0x180012e7b
180012e63:	48 8b 7d c7          	mov    -0x39(%rbp),%rdi
180012e67:	48 ba ff ff ff ff 0f 	movabs $0xfffffffff,%rdx
180012e6e:	00 00 00
180012e71:	49 b8 ff 0f 00 00 00 	movabs $0xffff000000000fff,%r8
180012e78:	00 ff ff
180012e7b:	4c 21 07             	and    %r8,(%rdi)
180012e7e:	49 8b ce             	mov    %r14,%rcx
180012e81:	48 8b 45 07          	mov    0x7(%rbp),%rax
180012e85:	48 23 c2             	and    %rdx,%rax
180012e88:	48 c1 e9 15          	shr    $0x15,%rcx
180012e8c:	48 c1 e0 0c          	shl    $0xc,%rax
180012e90:	48 83 c8 63          	or     $0x63,%rax
180012e94:	48 09 07             	or     %rax,(%rdi)
180012e97:	48 8b 45 e7          	mov    -0x19(%rbp),%rax
180012e9b:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012ea1:	48 8d 3c c8          	lea    (%rax,%rcx,8),%rdi
180012ea5:	48 89 7d cf          	mov    %rdi,-0x31(%rbp)
180012ea9:	eb 04                	jmp    0x180012eaf
180012eab:	48 8b 7d cf          	mov    -0x31(%rbp),%rdi
180012eaf:	48 b8 ff 0f 00 00 00 	movabs $0xffff000000000fff,%rax
180012eb6:	00 ff ff
180012eb9:	48 b9 ff ff ff ff 0f 	movabs $0xfffffffff,%rcx
180012ec0:	00 00 00
180012ec3:	48 21 07             	and    %rax,(%rdi)
180012ec6:	48 8b 45 ff          	mov    -0x1(%rbp),%rax
180012eca:	48 23 c1             	and    %rcx,%rax
180012ecd:	49 8b ce             	mov    %r14,%rcx
180012ed0:	48 c1 e0 0c          	shl    $0xc,%rax
180012ed4:	48 83 c8 63          	or     $0x63,%rax
180012ed8:	48 c1 e9 0c          	shr    $0xc,%rcx
180012edc:	48 09 07             	or     %rax,(%rdi)
180012edf:	48 8b 45 df          	mov    -0x21(%rbp),%rax
180012ee3:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012ee9:	4c 8d 3c c8          	lea    (%rax,%rcx,8),%r15
180012eed:	4c 89 7d d7          	mov    %r15,-0x29(%rbp)
180012ef1:	eb 43                	jmp    0x180012f36
180012ef3:	48 c1 e9 0c          	shr    $0xc,%rcx
180012ef7:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
180012efb:	48 b8 ff ff ff ff 0f 	movabs $0xfffffffff,%rax
180012f02:	00 00 00
180012f05:	48 8d 55 ff          	lea    -0x1(%rbp),%rdx
180012f09:	48 23 c8             	and    %rax,%rcx
180012f0c:	e8 cf f9 ff ff       	call   0x1800128e0
180012f11:	8b f0                	mov    %eax,%esi
180012f13:	85 c0                	test   %eax,%eax
180012f15:	78 5c                	js     0x180012f73
180012f17:	48 8b 45 df          	mov    -0x21(%rbp),%rax
180012f1b:	49 8b ce             	mov    %r14,%rcx
180012f1e:	48 c1 e9 0c          	shr    $0xc,%rcx
180012f22:	81 e1 ff 01 00 00    	and    $0x1ff,%ecx
180012f28:	4c 8d 3c c8          	lea    (%rax,%rcx,8),%r15
180012f2c:	4c 89 7d d7          	mov    %r15,-0x29(%rbp)
180012f30:	eb 0f                	jmp    0x180012f41
180012f32:	4c 8b 7d d7          	mov    -0x29(%rbp),%r15
180012f36:	44 8b 6d 77          	mov    0x77(%rbp),%r13d
180012f3a:	4c 8b 65 6f          	mov    0x6f(%rbp),%r12
180012f3e:	8b 7d b7             	mov    -0x49(%rbp),%edi
180012f41:	39 5d 7f             	cmp    %ebx,0x7f(%rbp)
180012f44:	0f 85 ae 00 00 00    	jne    0x180012ff8
180012f4a:	4d 85 e4             	test   %r12,%r12
180012f4d:	75 68                	jne    0x180012fb7
180012f4f:	4d 85 f6             	test   %r14,%r14
180012f52:	74 14                	je     0x180012f68
180012f54:	45 33 c9             	xor    %r9d,%r9d
180012f57:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
180012f5b:	45 33 c0             	xor    %r8d,%r8d
180012f5e:	49 8b ce             	mov    %r14,%rcx
180012f61:	e8 26 a6 08 00       	call   0x18009d58c
180012f66:	eb 02                	jmp    0x180012f6a
180012f68:	8a c3                	mov    %bl,%al
180012f6a:	84 c0                	test   %al,%al
180012f6c:	75 57                	jne    0x180012fc5
180012f6e:	be 01 00 00 c0       	mov    $0xc0000001,%esi
180012f73:	bf 04 00 00 00       	mov    $0x4,%edi
180012f78:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
180012f7c:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
180012f80:	48 8d 55 ff          	lea    -0x1(%rbp),%rdx
180012f84:	4c 03 c3             	add    %rbx,%r8
180012f87:	48 03 d3             	add    %rbx,%rdx
180012f8a:	e8 51 f9 ff ff       	call   0x1800128e0
180012f8f:	48 83 c3 08          	add    $0x8,%rbx
180012f93:	48 83 ef 01          	sub    $0x1,%rdi
180012f97:	75 df                	jne    0x180012f78
180012f99:	48 8b 9c 24 d0 00 00 	mov    0xd0(%rsp),%rbx
180012fa0:	00
180012fa1:	8b c6                	mov    %esi,%eax
180012fa3:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
180012faa:	41 5f                	pop    %r15
180012fac:	41 5e                	pop    %r14
180012fae:	41 5d                	pop    %r13
180012fb0:	41 5c                	pop    %r12
180012fb2:	5f                   	pop    %rdi
180012fb3:	5e                   	pop    %rsi
180012fb4:	5d                   	pop    %rbp
180012fb5:	c3                   	ret
180012fb6:	cc                   	int3
180012fb7:	8b c7                	mov    %edi,%eax
180012fb9:	48 c1 e0 0c          	shl    $0xc,%rax
180012fbd:	49 03 04 24          	add    (%r12),%rax
180012fc1:	48 89 45 bf          	mov    %rax,-0x41(%rbp)
180012fc5:	48 8b 4d bf          	mov    -0x41(%rbp),%rcx
180012fc9:	48 b8 ff ff ff ff 0f 	movabs $0xfffffffff,%rax
180012fd0:	00 00 00
180012fd3:	48 c1 f9 0c          	sar    $0xc,%rcx
180012fd7:	48 ba ff 0e 00 00 00 	movabs $0xffff000000000eff,%rdx
180012fde:	00 ff ff
180012fe1:	48 23 c8             	and    %rax,%rcx
180012fe4:	49 8b 07             	mov    (%r15),%rax
180012fe7:	48 23 c2             	and    %rdx,%rax
180012fea:	48 c1 e1 0c          	shl    $0xc,%rcx
180012fee:	48 0b c8             	or     %rax,%rcx
180012ff1:	48 83 c9 63          	or     $0x63,%rcx
180012ff5:	49 89 0f             	mov    %rcx,(%r15)
180012ff8:	ff c7                	inc    %edi
180012ffa:	49 81 c6 00 10 00 00 	add    $0x1000,%r14
180013001:	89 7d b7             	mov    %edi,-0x49(%rbp)
180013004:	41 3b fd             	cmp    %r13d,%edi
180013007:	0f 83 66 ff ff ff    	jae    0x180012f73
18001300d:	e9 99 fc ff ff       	jmp    0x180012cab
180013012:	cc                   	int3
180013013:	cc                   	int3
180013014:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180013019:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
18001301e:	57                   	push   %rdi
18001301f:	48 83 ec 20          	sub    $0x20,%rsp
180013023:	48 8b 05 16 21 19 00 	mov    0x192116(%rip),%rax        # 0x1801a5140
18001302a:	be ff 0f 00 00       	mov    $0xfff,%esi
18001302f:	48 83 c0 40          	add    $0x40,%rax
180013033:	33 db                	xor    %ebx,%ebx
180013035:	48 8b 38             	mov    (%rax),%rdi
180013038:	eb 42                	jmp    0x18001307c
18001303a:	8b 47 40             	mov    0x40(%rdi),%eax
18001303d:	44 8b c3             	mov    %ebx,%r8d
180013040:	03 05 ba 21 19 00    	add    0x1921ba(%rip),%eax        # 0x1801a5200
180013046:	03 05 d4 21 19 00    	add    0x1921d4(%rip),%eax        # 0x1801a5220
18001304c:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
180013050:	85 c6                	test   %eax,%esi
180013052:	41 0f 95 c0          	setne  %r8b
180013056:	c1 e8 0c             	shr    $0xc,%eax
180013059:	44 03 c0             	add    %eax,%r8d
18001305c:	45 33 c9             	xor    %r9d,%r9d
18001305f:	33 d2                	xor    %edx,%edx
180013061:	e8 d6 fb ff ff       	call   0x180012c3c
180013066:	85 c0                	test   %eax,%eax
180013068:	0f 88 c4 02 00 00    	js     0x180013332
18001306e:	48 8b 05 cb 20 19 00 	mov    0x1920cb(%rip),%rax        # 0x1801a5140
180013075:	48 8b 3f             	mov    (%rdi),%rdi
180013078:	48 83 c0 40          	add    $0x40,%rax
18001307c:	48 3b f8             	cmp    %rax,%rdi
18001307f:	75 b9                	jne    0x18001303a
180013081:	bf 01 00 00 00       	mov    $0x1,%edi
180013086:	33 d2                	xor    %edx,%edx
180013088:	44 8b cf             	mov    %edi,%r9d
18001308b:	44 8b c7             	mov    %edi,%r8d
18001308e:	48 b9 00 00 00 00 80 	movabs $0xfffff78000000000,%rcx
180013095:	f7 ff ff
180013098:	e8 9f fb ff ff       	call   0x180012c3c
18001309d:	85 c0                	test   %eax,%eax
18001309f:	0f 88 8d 02 00 00    	js     0x180013332
1800130a5:	48 8b 0d 94 20 19 00 	mov    0x192094(%rip),%rcx        # 0x1801a5140
1800130ac:	44 8b cf             	mov    %edi,%r9d
1800130af:	44 8b c7             	mov    %edi,%r8d
1800130b2:	33 d2                	xor    %edx,%edx
1800130b4:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1800130b8:	e8 7f fb ff ff       	call   0x180012c3c
1800130bd:	85 c0                	test   %eax,%eax
1800130bf:	0f 88 6d 02 00 00    	js     0x180013332
1800130c5:	48 8b 05 74 20 19 00 	mov    0x192074(%rip),%rax        # 0x1801a5140
1800130cc:	44 8d 47 05          	lea    0x5(%rdi),%r8d
1800130d0:	45 33 c9             	xor    %r9d,%r9d
1800130d3:	33 d2                	xor    %edx,%edx
1800130d5:	48 8b 48 10          	mov    0x10(%rax),%rcx
1800130d9:	e8 5e fb ff ff       	call   0x180012c3c
1800130de:	85 c0                	test   %eax,%eax
1800130e0:	0f 88 4c 02 00 00    	js     0x180013332
1800130e6:	48 8b 0d 53 20 19 00 	mov    0x192053(%rip),%rcx        # 0x1801a5140
1800130ed:	45 33 c9             	xor    %r9d,%r9d
1800130f0:	44 8b c7             	mov    %edi,%r8d
1800130f3:	33 d2                	xor    %edx,%edx
1800130f5:	e8 42 fb ff ff       	call   0x180012c3c
1800130fa:	85 c0                	test   %eax,%eax
1800130fc:	0f 88 30 02 00 00    	js     0x180013332
180013102:	48 8b 05 37 20 19 00 	mov    0x192037(%rip),%rax        # 0x1801a5140
180013109:	44 8d 47 1f          	lea    0x1f(%rdi),%r8d
18001310d:	45 33 c9             	xor    %r9d,%r9d
180013110:	33 d2                	xor    %edx,%edx
180013112:	48 8b 88 50 07 00 00 	mov    0x750(%rax),%rcx
180013119:	e8 1e fb ff ff       	call   0x180012c3c
18001311e:	85 c0                	test   %eax,%eax
180013120:	0f 88 0c 02 00 00    	js     0x180013332
180013126:	48 8b 05 13 20 19 00 	mov    0x192013(%rip),%rax        # 0x1801a5140
18001312d:	44 8d 47 12          	lea    0x12(%rdi),%r8d
180013131:	45 33 c9             	xor    %r9d,%r9d
180013134:	33 d2                	xor    %edx,%edx
180013136:	48 8b 48 58          	mov    0x58(%rax),%rcx
18001313a:	e8 fd fa ff ff       	call   0x180012c3c
18001313f:	85 c0                	test   %eax,%eax
180013141:	0f 88 eb 01 00 00    	js     0x180013332
180013147:	48 8b 05 f2 1f 19 00 	mov    0x191ff2(%rip),%rax        # 0x1801a5140
18001314e:	44 8b c3             	mov    %ebx,%r8d
180013151:	8b 90 98 05 00 00    	mov    0x598(%rax),%edx
180013157:	85 d6                	test   %edx,%esi
180013159:	48 8b 88 90 05 00 00 	mov    0x590(%rax),%rcx
180013160:	41 0f 95 c0          	setne  %r8b
180013164:	c1 ea 0c             	shr    $0xc,%edx
180013167:	44 03 c2             	add    %edx,%r8d
18001316a:	45 33 c9             	xor    %r9d,%r9d
18001316d:	33 d2                	xor    %edx,%edx
18001316f:	e8 c8 fa ff ff       	call   0x180012c3c
180013174:	85 c0                	test   %eax,%eax
180013176:	0f 88 b6 01 00 00    	js     0x180013332
18001317c:	48 8b 0d bd 1f 19 00 	mov    0x191fbd(%rip),%rcx        # 0x1801a5140
180013183:	4c 8b 91 78 05 00 00 	mov    0x578(%rcx),%r10
18001318a:	4d 85 d2             	test   %r10,%r10
18001318d:	74 31                	je     0x1800131c0
18001318f:	8b 81 80 05 00 00    	mov    0x580(%rcx),%eax
180013195:	44 8b c3             	mov    %ebx,%r8d
180013198:	85 c6                	test   %eax,%esi
18001319a:	49 8b ca             	mov    %r10,%rcx
18001319d:	41 0f 95 c0          	setne  %r8b
1800131a1:	c1 e8 0c             	shr    $0xc,%eax
1800131a4:	44 03 c0             	add    %eax,%r8d
1800131a7:	45 33 c9             	xor    %r9d,%r9d
1800131aa:	33 d2                	xor    %edx,%edx
1800131ac:	e8 8b fa ff ff       	call   0x180012c3c
1800131b1:	85 c0                	test   %eax,%eax
1800131b3:	0f 88 79 01 00 00    	js     0x180013332
1800131b9:	48 8b 0d 80 1f 19 00 	mov    0x191f80(%rip),%rcx        # 0x1801a5140
1800131c0:	4c 8b 91 40 07 00 00 	mov    0x740(%rcx),%r10
1800131c7:	4d 85 d2             	test   %r10,%r10
1800131ca:	74 31                	je     0x1800131fd
1800131cc:	8b 81 48 07 00 00    	mov    0x748(%rcx),%eax
1800131d2:	44 8b c3             	mov    %ebx,%r8d
1800131d5:	85 c6                	test   %eax,%esi
1800131d7:	49 8b ca             	mov    %r10,%rcx
1800131da:	41 0f 95 c0          	setne  %r8b
1800131de:	c1 e8 0c             	shr    $0xc,%eax
1800131e1:	44 03 c0             	add    %eax,%r8d
1800131e4:	45 33 c9             	xor    %r9d,%r9d
1800131e7:	33 d2                	xor    %edx,%edx
1800131e9:	e8 4e fa ff ff       	call   0x180012c3c
1800131ee:	85 c0                	test   %eax,%eax
1800131f0:	0f 88 3c 01 00 00    	js     0x180013332
1800131f6:	48 8b 0d 43 1f 19 00 	mov    0x191f43(%rip),%rcx        # 0x1801a5140
1800131fd:	4c 8b 91 08 07 00 00 	mov    0x708(%rcx),%r10
180013204:	4d 85 d2             	test   %r10,%r10
180013207:	74 34                	je     0x18001323d
180013209:	48 8b 05 38 1f 19 00 	mov    0x191f38(%rip),%rax        # 0x1801a5148
180013210:	44 8b c3             	mov    %ebx,%r8d
180013213:	49 8b ca             	mov    %r10,%rcx
180013216:	8b 10                	mov    (%rax),%edx
180013218:	85 d6                	test   %edx,%esi
18001321a:	41 0f 95 c0          	setne  %r8b
18001321e:	c1 ea 0c             	shr    $0xc,%edx
180013221:	44 03 c2             	add    %edx,%r8d
180013224:	45 33 c9             	xor    %r9d,%r9d
180013227:	33 d2                	xor    %edx,%edx
180013229:	e8 0e fa ff ff       	call   0x180012c3c