1403c1d5a:	48 8b 19             	mov    (%rcx),%rbx
1403c1d5d:	48 8b f1             	mov    %rcx,%rsi
1403c1d60:	48 85 db             	test   %rbx,%rbx
1403c1d63:	0f 84 87 00 00 00    	je     0x1403c1df0
1403c1d69:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1403c1d6e:	48 8b 79 08          	mov    0x8(%rcx),%rdi
1403c1d72:	48 3b df             	cmp    %rdi,%rbx
1403c1d75:	74 11                	je     0x1403c1d88
1403c1d77:	48 8b cb             	mov    %rbx,%rcx
1403c1d7a:	e8 21 ff ff ff       	call   0x1403c1ca0
1403c1d7f:	48 83 c3 30          	add    $0x30,%rbx
1403c1d83:	48 3b df             	cmp    %rdi,%rbx
1403c1d86:	75 ef                	jne    0x1403c1d77
1403c1d88:	4c 8b 06             	mov    (%rsi),%r8
1403c1d8b:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1403c1d92:	aa aa 2a
1403c1d95:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1403c1d99:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1403c1d9e:	49 2b c8             	sub    %r8,%rcx
1403c1da1:	48 f7 e9             	imul   %rcx
1403c1da4:	48 c1 fa 03          	sar    $0x3,%rdx
1403c1da8:	48 8b c2             	mov    %rdx,%rax
1403c1dab:	48 c1 e8 3f          	shr    $0x3f,%rax
1403c1daf:	48 03 d0             	add    %rax,%rdx
1403c1db2:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1403c1db6:	48 c1 e2 04          	shl    $0x4,%rdx
1403c1dba:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1403c1dc1:	72 18                	jb     0x1403c1ddb
1403c1dc3:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
1403c1dc7:	48 83 c2 27          	add    $0x27,%rdx
1403c1dcb:	4c 2b c1             	sub    %rcx,%r8
1403c1dce:	49 8d 40 f8          	lea    -0x8(%r8),%rax
1403c1dd2:	48 83 f8 1f          	cmp    $0x1f,%rax
1403c1dd6:	77 23                	ja     0x1403c1dfb
1403c1dd8:	4c 8b c1             	mov    %rcx,%r8
1403c1ddb:	49 8b c8             	mov    %r8,%rcx
1403c1dde:	e8 61 93 a5 00       	call   0x140e1b144
1403c1de3:	33 c0                	xor    %eax,%eax
1403c1de5:	48 89 06             	mov    %rax,(%rsi)
1403c1de8:	48 89 46 08          	mov    %rax,0x8(%rsi)
1403c1dec:	48 89 46 10          	mov    %rax,0x10(%rsi)
1403c1df0:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1403c1df5:	48 83 c4 20          	add    $0x20,%rsp
1403c1df9:	5e                   	pop    %rsi
1403c1dfa:	c3                   	ret
1403c1dfb:	e8 a4 83 a6 00       	call   0x140e2a1a4
1403c1e00:	cc                   	int3
1403c1e01:	cc                   	int3
1403c1e02:	cc                   	int3
1403c1e03:	cc                   	int3
1403c1e04:	cc                   	int3
1403c1e05:	cc                   	int3
1403c1e06:	cc                   	int3
1403c1e07:	cc                   	int3
1403c1e08:	cc                   	int3
1403c1e09:	cc                   	int3
1403c1e0a:	cc                   	int3
1403c1e0b:	cc                   	int3
1403c1e0c:	cc                   	int3
1403c1e0d:	cc                   	int3
1403c1e0e:	cc                   	int3
1403c1e0f:	cc                   	int3
1403c1e10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403c1e15:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1403c1e1a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1403c1e1f:	57                   	push   %rdi
1403c1e20:	48 83 ec 50          	sub    $0x50,%rsp
1403c1e24:	48 8b f2             	mov    %rdx,%rsi
1403c1e27:	48 8b f9             	mov    %rcx,%rdi
1403c1e2a:	48 8b 19             	mov    (%rcx),%rbx
1403c1e2d:	48 8b 43 08          	mov    0x8(%rbx),%rax
1403c1e31:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1403c1e36:	33 ed                	xor    %ebp,%ebp
1403c1e38:	89 6c 24 38          	mov    %ebp,0x38(%rsp)
1403c1e3c:	4c 8b c3             	mov    %rbx,%r8
1403c1e3f:	40 38 68 19          	cmp    %bpl,0x19(%rax)
1403c1e43:	75 34                	jne    0x1403c1e79
1403c1e45:	4c 8b 0a             	mov    (%rdx),%r9
1403c1e48:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1403c1e4f:	00
1403c1e50:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1403c1e55:	4c 39 48 20          	cmp    %r9,0x20(%rax)
1403c1e59:	73 0a                	jae    0x1403c1e65
1403c1e5b:	89 6c 24 38          	mov    %ebp,0x38(%rsp)
1403c1e5f:	48 8b 40 10          	mov    0x10(%rax),%rax
1403c1e63:	eb 0e                	jmp    0x1403c1e73
1403c1e65:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%rsp)
1403c1e6c:	00
1403c1e6d:	4c 8b c0             	mov    %rax,%r8
1403c1e70:	48 8b 00             	mov    (%rax),%rax
1403c1e73:	40 38 68 19          	cmp    %bpl,0x19(%rax)
1403c1e77:	74 d7                	je     0x1403c1e50
1403c1e79:	41 38 68 19          	cmp    %bpl,0x19(%r8)
1403c1e7d:	75 09                	jne    0x1403c1e88
1403c1e7f:	49 8b 40 20          	mov    0x20(%r8),%rax
1403c1e83:	48 39 02             	cmp    %rax,(%rdx)
1403c1e86:	73 5e                	jae    0x1403c1ee6
1403c1e88:	48 b8 55 55 55 55 55 	movabs $0x555555555555555,%rax
1403c1e8f:	55 55 05
1403c1e92:	48 39 41 08          	cmp    %rax,0x8(%rcx)
1403c1e96:	74 67                	je     0x1403c1eff
1403c1e98:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1403c1e9d:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
1403c1ea2:	b9 30 00 00 00       	mov    $0x30,%ecx
1403c1ea7:	e8 5c 92 a5 00       	call   0x140e1b108
1403c1eac:	4c 8b c0             	mov    %rax,%r8
1403c1eaf:	48 8b 06             	mov    (%rsi),%rax
1403c1eb2:	49 89 40 20          	mov    %rax,0x20(%r8)
1403c1eb6:	49 89 68 28          	mov    %rbp,0x28(%r8)
1403c1eba:	49 89 18             	mov    %rbx,(%r8)
1403c1ebd:	49 89 58 08          	mov    %rbx,0x8(%r8)
1403c1ec1:	49 89 58 10          	mov    %rbx,0x10(%r8)
1403c1ec5:	66 41 c7 40 18 00 00 	movw   $0x0,0x18(%r8)
1403c1ecc:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
1403c1ed1:	0f 29 44 24 20       	movaps %xmm0,0x20(%rsp)
1403c1ed6:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403c1edb:	48 8b cf             	mov    %rdi,%rcx
1403c1ede:	e8 ad 5b e2 ff       	call   0x1401e7a90
1403c1ee3:	4c 8b c0             	mov    %rax,%r8
1403c1ee6:	49 8d 40 28          	lea    0x28(%r8),%rax
1403c1eea:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1403c1eef:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
1403c1ef4:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
1403c1ef9:	48 83 c4 50          	add    $0x50,%rsp
1403c1efd:	5f                   	pop    %rdi
1403c1efe:	c3                   	ret
1403c1eff:	e8 ec 68 e2 ff       	call   0x1401e87f0
1403c1f04:	cc                   	int3
1403c1f05:	cc                   	int3
1403c1f06:	cc                   	int3
1403c1f07:	cc                   	int3
1403c1f08:	cc                   	int3
1403c1f09:	cc                   	int3
1403c1f0a:	cc                   	int3
1403c1f0b:	cc                   	int3
1403c1f0c:	cc                   	int3
1403c1f0d:	cc                   	int3
1403c1f0e:	cc                   	int3
1403c1f0f:	cc                   	int3
1403c1f10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403c1f15:	57                   	push   %rdi
1403c1f16:	48 83 ec 20          	sub    $0x20,%rsp
1403c1f1a:	8b fa                	mov    %edx,%edi
1403c1f1c:	48 8b d9             	mov    %rcx,%rbx
1403c1f1f:	48 8b 51 60          	mov    0x60(%rcx),%rdx
1403c1f23:	48 83 fa 0f          	cmp    $0xf,%rdx
1403c1f27:	76 2d                	jbe    0x1403c1f56
1403c1f29:	48 8b 49 48          	mov    0x48(%rcx),%rcx
1403c1f2d:	48 ff c2             	inc    %rdx
1403c1f30:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1403c1f37:	72 18                	jb     0x1403c1f51
1403c1f39:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
1403c1f3d:	48 83 c2 27          	add    $0x27,%rdx
1403c1f41:	49 2b c8             	sub    %r8,%rcx
1403c1f44:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1403c1f48:	48 83 f8 1f          	cmp    $0x1f,%rax
1403c1f4c:	77 4f                	ja     0x1403c1f9d
1403c1f4e:	49 8b c8             	mov    %r8,%rcx
1403c1f51:	e8 ee 91 a5 00       	call   0x140e1b144
1403c1f56:	48 8d 05 9b 59 c2 00 	lea    0xc2599b(%rip),%rax        # 0x140fe78f8
1403c1f5d:	48 c7 43 58 00 00 00 	movq   $0x0,0x58(%rbx)
1403c1f64:	00
1403c1f65:	48 c7 43 60 0f 00 00 	movq   $0xf,0x60(%rbx)
1403c1f6c:	00
1403c1f6d:	48 8b cb             	mov    %rbx,%rcx
1403c1f70:	c6 43 48 00          	movb   $0x0,0x48(%rbx)
1403c1f74:	48 89 03             	mov    %rax,(%rbx)
1403c1f77:	e8 64 94 1b 00       	call   0x14057b3e0
1403c1f7c:	40 f6 c7 01          	test   $0x1,%dil
1403c1f80:	74 0d                	je     0x1403c1f8f
1403c1f82:	ba 68 00 00 00       	mov    $0x68,%edx
1403c1f87:	48 8b cb             	mov    %rbx,%rcx
1403c1f8a:	e8 b5 91 a5 00       	call   0x140e1b144
1403c1f8f:	48 8b c3             	mov    %rbx,%rax
1403c1f92:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1403c1f97:	48 83 c4 20          	add    $0x20,%rsp
1403c1f9b:	5f                   	pop    %rdi
1403c1f9c:	c3                   	ret
1403c1f9d:	e8 02 82 a6 00       	call   0x140e2a1a4
1403c1fa2:	cc                   	int3
1403c1fa3:	cc                   	int3
1403c1fa4:	cc                   	int3
1403c1fa5:	cc                   	int3
1403c1fa6:	cc                   	int3
1403c1fa7:	cc                   	int3
1403c1fa8:	cc                   	int3
1403c1fa9:	cc                   	int3
1403c1faa:	cc                   	int3
1403c1fab:	cc                   	int3
1403c1fac:	cc                   	int3
1403c1fad:	cc                   	int3
1403c1fae:	cc                   	int3
1403c1faf:	cc                   	int3
1403c1fb0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403c1fb5:	57                   	push   %rdi
1403c1fb6:	48 83 ec 20          	sub    $0x20,%rsp
1403c1fba:	48 8d 05 57 5b c2 00 	lea    0xc25b57(%rip),%rax        # 0x140fe7b18
1403c1fc1:	48 8b d9             	mov    %rcx,%rbx
1403c1fc4:	48 89 01             	mov    %rax,(%rcx)
1403c1fc7:	8b fa                	mov    %edx,%edi
1403c1fc9:	48 8b 49 20          	mov    0x20(%rcx),%rcx
1403c1fcd:	48 85 c9             	test   %rcx,%rcx
1403c1fd0:	74 05                	je     0x1403c1fd7
1403c1fd2:	e8 59 ad 90 00       	call   0x140cccd30
1403c1fd7:	48 8b cb             	mov    %rbx,%rcx
1403c1fda:	e8 71 2e 3c 00       	call   0x140784e50
1403c1fdf:	40 f6 c7 01          	test   $0x1,%dil
1403c1fe3:	74 0d                	je     0x1403c1ff2
1403c1fe5:	ba 28 00 00 00       	mov    $0x28,%edx
1403c1fea:	48 8b cb             	mov    %rbx,%rcx
1403c1fed:	e8 52 91 a5 00       	call   0x140e1b144
1403c1ff2:	48 8b c3             	mov    %rbx,%rax
1403c1ff5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1403c1ffa:	48 83 c4 20          	add    $0x20,%rsp
1403c1ffe:	5f                   	pop    %rdi
1403c1fff:	c3                   	ret
1403c2000:	48 8b 41 40          	mov    0x40(%rcx),%rax
1403c2004:	45 8b c8             	mov    %r8d,%r9d
1403c2007:	4c 63 c2             	movslq %edx,%r8
1403c200a:	4d 03 c0             	add    %r8,%r8
1403c200d:	48 8b 10             	mov    (%rax),%rdx
1403c2010:	42 80 7c c2 08 00    	cmpb   $0x0,0x8(%rdx,%r8,8)
1403c2016:	75 06                	jne    0x1403c201e
1403c2018:	42 c6 44 c2 08 01    	movb   $0x1,0x8(%rdx,%r8,8)
1403c201e:	4e 89 0c c2          	mov    %r9,(%rdx,%r8,8)
1403c2022:	48 8d 51 20          	lea    0x20(%rcx),%rdx
1403c2026:	48 83 7a 08 00       	cmpq   $0x0,0x8(%rdx)
1403c202b:	74 0c                	je     0x1403c2039
1403c202d:	48 8d 0d ac e9 06 01 	lea    0x106e9ac(%rip),%rcx        # 0x1414309e0
1403c2034:	e9 07 8b 3c 00       	jmp    0x14078ab40
1403c2039:	c3                   	ret
1403c203a:	cc                   	int3
1403c203b:	cc                   	int3
1403c203c:	cc                   	int3
1403c203d:	cc                   	int3
1403c203e:	cc                   	int3
1403c203f:	cc                   	int3
1403c2040:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1403c2045:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1403c204a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1403c204f:	57                   	push   %rdi
1403c2050:	48 83 ec 30          	sub    $0x30,%rsp
1403c2054:	49 8b e8             	mov    %r8,%rbp
1403c2057:	48 8b fa             	mov    %rdx,%rdi
1403c205a:	48 8b f1             	mov    %rcx,%rsi
1403c205d:	b9 28 00 00 00       	mov    $0x28,%ecx
1403c2062:	e8 a1 90 a5 00       	call   0x140e1b108
1403c2067:	48 8b d8             	mov    %rax,%rbx
1403c206a:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1403c206f:	48 85 c0             	test   %rax,%rax
1403c2072:	74 4e                	je     0x1403c20c2
1403c2074:	48 8b 0d cd 10 07 01 	mov    0x10710cd(%rip),%rcx        # 0x141433148
1403c207b:	48 89 4c 24 58       	mov    %rcx,0x58(%rsp)
1403c2080:	48 85 c9             	test   %rcx,%rcx
1403c2083:	74 1c                	je     0x1403c20a1
1403c2085:	8b 41 10             	mov    0x10(%rcx),%eax
1403c2088:	ff c0                	inc    %eax
1403c208a:	89 41 10             	mov    %eax,0x10(%rcx)
1403c208d:	83 f8 01             	cmp    $0x1,%eax
1403c2090:	0f 8e c2 00 00 00    	jle    0x1403c2158
1403c2096:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403c209b:	0f 84 bf 00 00 00    	je     0x1403c2160
1403c20a1:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
1403c20a6:	48 8b cb             	mov    %rbx,%rcx
1403c20a9:	e8 02 26 3c 00       	call   0x1407846b0
1403c20ae:	48 8d 05 63 5a c2 00 	lea    0xc25a63(%rip),%rax        # 0x140fe7b18
1403c20b5:	48 89 03             	mov    %rax,(%rbx)
1403c20b8:	48 c7 43 20 00 00 00 	movq   $0x0,0x20(%rbx)
1403c20bf:	00
1403c20c0:	eb 02                	jmp    0x1403c20c4
1403c20c2:	33 db                	xor    %ebx,%ebx
1403c20c4:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1403c20c9:	48 8b 4e 20          	mov    0x20(%rsi),%rcx
1403c20cd:	48 85 c9             	test   %rcx,%rcx
1403c20d0:	74 09                	je     0x1403c20db
1403c20d2:	e8 39 ac 90 00       	call   0x140cccd10
1403c20d7:	48 89 43 20          	mov    %rax,0x20(%rbx)
1403c20db:	48 85 db             	test   %rbx,%rbx
1403c20de:	74 14                	je     0x1403c20f4
1403c20e0:	8b 43 10             	mov    0x10(%rbx),%eax
1403c20e3:	ff c0                	inc    %eax
1403c20e5:	89 43 10             	mov    %eax,0x10(%rbx)
1403c20e8:	83 f8 01             	cmp    $0x1,%eax
1403c20eb:	7e 7e                	jle    0x1403c216b
1403c20ed:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1403c20f2:	74 7f                	je     0x1403c2173
1403c20f4:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
1403c20f9:	4c 8d 4c 24 58       	lea    0x58(%rsp),%r9
1403c20fe:	4c 8b c6             	mov    %rsi,%r8
1403c2101:	48 8b d7             	mov    %rdi,%rdx
1403c2104:	48 8b cd             	mov    %rbp,%rcx
1403c2107:	e8 04 ce 37 00       	call   0x14073ef10
1403c210c:	90                   	nop
1403c210d:	48 85 db             	test   %rbx,%rbx
1403c2110:	74 23                	je     0x1403c2135
1403c2112:	8b 43 10             	mov    0x10(%rbx),%eax
1403c2115:	ff c8                	dec    %eax
1403c2117:	89 43 10             	mov    %eax,0x10(%rbx)
1403c211a:	85 c0                	test   %eax,%eax
1403c211c:	7f 17                	jg     0x1403c2135
1403c211e:	78 2d                	js     0x1403c214d
1403c2120:	48 8b 03             	mov    (%rbx),%rax
1403c2123:	ba 01 00 00 00       	mov    $0x1,%edx
1403c2128:	48 8b cb             	mov    %rbx,%rcx
1403c212b:	48 8b 00             	mov    (%rax),%rax
1403c212e:	ff 15 ec 18 bc 00    	call   *0xbc18ec(%rip)        # 0x140f83a20
1403c2134:	90                   	nop
1403c2135:	48 8b c7             	mov    %rdi,%rax
1403c2138:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1403c213d:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1403c2142:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1403c2147:	48 83 c4 30          	add    $0x30,%rsp
1403c214b:	5f                   	pop    %rdi
1403c214c:	c3                   	ret
1403c214d:	b9 02 00 00 00       	mov    $0x2,%ecx
1403c2152:	e8 a9 85 3c 00       	call   0x14078a700
1403c2157:	90                   	nop
1403c2158:	33 c9                	xor    %ecx,%ecx
1403c215a:	e8 a1 85 3c 00       	call   0x14078a700
1403c215f:	cc                   	int3
1403c2160:	b9 01 00 00 00       	mov    $0x1,%ecx
1403c2165:	e8 96 85 3c 00       	call   0x14078a700
1403c216a:	90                   	nop
1403c216b:	33 c9                	xor    %ecx,%ecx
1403c216d:	e8 8e 85 3c 00       	call   0x14078a700
1403c2172:	cc                   	int3
1403c2173:	b9 01 00 00 00       	mov    $0x1,%ecx
1403c2178:	e8 83 85 3c 00       	call   0x14078a700
1403c217d:	cc                   	int3
1403c217e:	cc                   	int3
1403c217f:	cc                   	int3
1403c2180:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1403c2185:	57                   	push   %rdi
1403c2186:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
1403c218d:	48 8b 05 6c 6d ff 00 	mov    0xff6d6c(%rip),%rax        # 0x1413b8f00
1403c2194:	48 33 c4             	xor    %rsp,%rax
1403c2197:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
1403c219c:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
1403c21a1:	48 8b da             	mov    %rdx,%rbx
1403c21a4:	48 8b 49 20          	mov    0x20(%rcx),%rcx
1403c21a8:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1403c21ad:	33 ff                	xor    %edi,%edi
1403c21af:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1403c21b4:	e8 07 ad 90 00       	call   0x140cccec0
1403c21b9:	85 c0                	test   %eax,%eax
1403c21bb:	79 10                	jns    0x1403c21cd
1403c21bd:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
1403c21c1:	40 88 3b             	mov    %dil,(%rbx)
1403c21c4:	b2 0c                	mov    $0xc,%dl
1403c21c6:	e8 b5 cd 5f 00       	call   0x1409bef80