140003c47:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
140003c4e:	00
140003c4f:	48 8d 1c 0a          	lea    (%rdx,%rcx,1),%rbx
140003c53:	48 03 d8             	add    %rax,%rbx
140003c56:	4c 39 4f 40          	cmp    %r9,0x40(%rdi)
140003c5a:	74 0a                	je     0x140003c66
140003c5c:	48 39 5f 48          	cmp    %rbx,0x48(%rdi)
140003c60:	0f 83 85 00 00 00    	jae    0x140003ceb
140003c66:	48 ff 15 43 c1 01 00 	rex.W call *0x1c143(%rip)        # 0x14001fdb0
140003c6d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003c72:	4c 8b c3             	mov    %rbx,%r8
140003c75:	ba 08 00 00 00       	mov    $0x8,%edx
140003c7a:	48 8b c8             	mov    %rax,%rcx
140003c7d:	48 ff 15 34 c1 01 00 	rex.W call *0x1c134(%rip)        # 0x14001fdb8
140003c84:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003c89:	45 33 c9             	xor    %r9d,%r9d
140003c8c:	48 8b e8             	mov    %rax,%rbp
140003c8f:	4c 39 0d 3a 6f 02 00 	cmp    %r9,0x26f3a(%rip)        # 0x14002abd0
140003c96:	74 22                	je     0x140003cba
140003c98:	48 ff 15 11 c1 01 00 	rex.W call *0x1c111(%rip)        # 0x14001fdb0
140003c9f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003ca4:	48 8b c8             	mov    %rax,%rcx
140003ca7:	48 8b d5             	mov    %rbp,%rdx
140003caa:	48 8b 05 1f 6f 02 00 	mov    0x26f1f(%rip),%rax        # 0x14002abd0
140003cb1:	ff 15 21 c7 01 00    	call   *0x1c721(%rip)        # 0x1400203d8
140003cb7:	45 33 c9             	xor    %r9d,%r9d
140003cba:	48 85 ed             	test   %rbp,%rbp
140003cbd:	74 2c                	je     0x140003ceb
140003cbf:	48 ff 15 ea c0 01 00 	rex.W call *0x1c0ea(%rip)        # 0x14001fdb0
140003cc6:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003ccb:	4c 8b 47 40          	mov    0x40(%rdi),%r8
140003ccf:	33 d2                	xor    %edx,%edx
140003cd1:	48 8b c8             	mov    %rax,%rcx
140003cd4:	48 ff 15 cd c0 01 00 	rex.W call *0x1c0cd(%rip)        # 0x14001fda8
140003cdb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003ce0:	45 33 c9             	xor    %r9d,%r9d
140003ce3:	48 89 6f 40          	mov    %rbp,0x40(%rdi)
140003ce7:	48 89 5f 48          	mov    %rbx,0x48(%rdi)
140003ceb:	48 8b 5f 40          	mov    0x40(%rdi),%rbx
140003cef:	48 85 db             	test   %rbx,%rbx
140003cf2:	0f 84 c1 00 00 00    	je     0x140003db9
140003cf8:	48 8b 57 48          	mov    0x48(%rdi),%rdx
140003cfc:	4d 8b 44 24 30       	mov    0x30(%r12),%r8
140003d01:	48 8d 2c 1a          	lea    (%rdx,%rbx,1),%rbp
140003d05:	48 3b dd             	cmp    %rbp,%rbx
140003d08:	74 39                	je     0x140003d43
140003d0a:	4d 85 c0             	test   %r8,%r8
140003d0d:	74 34                	je     0x140003d43
140003d0f:	45 38 08             	cmp    %r9b,(%r8)
140003d12:	74 2f                	je     0x140003d43
140003d14:	48 8b fe             	mov    %rsi,%rdi
140003d17:	48 ff c7             	inc    %rdi
140003d1a:	45 38 0c 38          	cmp    %r9b,(%r8,%rdi,1)
140003d1e:	75 f7                	jne    0x140003d17
140003d20:	48 ff c7             	inc    %rdi
140003d23:	48 3b d7             	cmp    %rdi,%rdx
140003d26:	72 1b                	jb     0x140003d43
140003d28:	4c 8b cf             	mov    %rdi,%r9
140003d2b:	48 8b cb             	mov    %rbx,%rcx
140003d2e:	e8 41 de ff ff       	call   0x140001b74
140003d33:	45 33 c9             	xor    %r9d,%r9d
140003d36:	4d 85 ff             	test   %r15,%r15
140003d39:	74 03                	je     0x140003d3e
140003d3b:	49 89 1f             	mov    %rbx,(%r15)
140003d3e:	48 03 df             	add    %rdi,%rbx
140003d41:	eb 08                	jmp    0x140003d4b
140003d43:	4d 85 ff             	test   %r15,%r15
140003d46:	74 03                	je     0x140003d4b
140003d48:	4d 89 0f             	mov    %r9,(%r15)
140003d4b:	4d 8b 44 24 78       	mov    0x78(%r12),%r8
140003d50:	48 3b dd             	cmp    %rbp,%rbx
140003d53:	74 39                	je     0x140003d8e
140003d55:	4d 85 c0             	test   %r8,%r8
140003d58:	74 34                	je     0x140003d8e
140003d5a:	45 38 08             	cmp    %r9b,(%r8)
140003d5d:	74 2f                	je     0x140003d8e
140003d5f:	48 ff c6             	inc    %rsi
140003d62:	45 38 0c 30          	cmp    %r9b,(%r8,%rsi,1)
140003d66:	75 f7                	jne    0x140003d5f
140003d68:	48 8b d5             	mov    %rbp,%rdx
140003d6b:	48 ff c6             	inc    %rsi
140003d6e:	48 2b d3             	sub    %rbx,%rdx
140003d71:	48 3b d6             	cmp    %rsi,%rdx
140003d74:	72 18                	jb     0x140003d8e
140003d76:	4c 8b ce             	mov    %rsi,%r9
140003d79:	48 8b cb             	mov    %rbx,%rcx
140003d7c:	e8 f3 dd ff ff       	call   0x140001b74
140003d81:	4d 85 f6             	test   %r14,%r14
140003d84:	74 03                	je     0x140003d89
140003d86:	49 89 1e             	mov    %rbx,(%r14)
140003d89:	48 03 de             	add    %rsi,%rbx
140003d8c:	eb 08                	jmp    0x140003d96
140003d8e:	4d 85 f6             	test   %r14,%r14
140003d91:	74 03                	je     0x140003d96
140003d93:	4d 89 0e             	mov    %r9,(%r14)
140003d96:	4d 8b 44 24 10       	mov    0x10(%r12),%r8
140003d9b:	4d 8b cd             	mov    %r13,%r9
140003d9e:	48 8b d5             	mov    %rbp,%rdx
140003da1:	48 8b cb             	mov    %rbx,%rcx
140003da4:	e8 63 0c 00 00       	call   0x140004a0c
140003da9:	48 2b e8             	sub    %rax,%rbp
140003dac:	33 d2                	xor    %edx,%edx
140003dae:	4c 8b c5             	mov    %rbp,%r8
140003db1:	48 8b c8             	mov    %rax,%rcx
140003db4:	e8 57 87 01 00       	call   0x14001c510
140003db9:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140003dbe:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140003dc3:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140003dc8:	48 83 c4 20          	add    $0x20,%rsp
140003dcc:	41 5f                	pop    %r15
140003dce:	41 5e                	pop    %r14
140003dd0:	41 5d                	pop    %r13
140003dd2:	41 5c                	pop    %r12
140003dd4:	5f                   	pop    %rdi
140003dd5:	c3                   	ret
140003dd6:	cc                   	int3
140003dd7:	cc                   	int3
140003dd8:	cc                   	int3
140003dd9:	cc                   	int3
140003dda:	cc                   	int3
140003ddb:	cc                   	int3
140003ddc:	cc                   	int3
140003ddd:	cc                   	int3
140003dde:	cc                   	int3
140003ddf:	cc                   	int3
140003de0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140003de5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140003dea:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140003def:	57                   	push   %rdi
140003df0:	48 83 ec 20          	sub    $0x20,%rsp
140003df4:	48 8b 59 18          	mov    0x18(%rcx),%rbx
140003df8:	33 ed                	xor    %ebp,%ebp
140003dfa:	0f b7 41 20          	movzwl 0x20(%rcx),%eax
140003dfe:	48 8b f9             	mov    %rcx,%rdi
140003e01:	48 8d 34 80          	lea    (%rax,%rax,4),%rsi
140003e05:	48 c1 e6 04          	shl    $0x4,%rsi
140003e09:	48 03 f3             	add    %rbx,%rsi
140003e0c:	48 3b de             	cmp    %rsi,%rbx
140003e0f:	74 3c                	je     0x140003e4d
140003e11:	48 83 c3 40          	add    $0x40,%rbx
140003e15:	48 ff 15 94 bf 01 00 	rex.W call *0x1bf94(%rip)        # 0x14001fdb0
140003e1c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e21:	4c 8b 03             	mov    (%rbx),%r8
140003e24:	33 d2                	xor    %edx,%edx
140003e26:	48 8b c8             	mov    %rax,%rcx
140003e29:	48 ff 15 78 bf 01 00 	rex.W call *0x1bf78(%rip)        # 0x14001fda8
140003e30:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e35:	48 89 2b             	mov    %rbp,(%rbx)
140003e38:	48 89 6b 08          	mov    %rbp,0x8(%rbx)
140003e3c:	48 8d 5b 50          	lea    0x50(%rbx),%rbx
140003e40:	48 8d 43 c0          	lea    -0x40(%rbx),%rax
140003e44:	48 3b c6             	cmp    %rsi,%rax
140003e47:	75 cc                	jne    0x140003e15
140003e49:	48 8b 5f 18          	mov    0x18(%rdi),%rbx
140003e4d:	48 ff 15 5c bf 01 00 	rex.W call *0x1bf5c(%rip)        # 0x14001fdb0
140003e54:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e59:	4c 8b c3             	mov    %rbx,%r8
140003e5c:	33 d2                	xor    %edx,%edx
140003e5e:	48 8b c8             	mov    %rax,%rcx
140003e61:	48 ff 15 40 bf 01 00 	rex.W call *0x1bf40(%rip)        # 0x14001fda8
140003e68:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003e6d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140003e72:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140003e77:	89 6f 20             	mov    %ebp,0x20(%rdi)
140003e7a:	48 89 6f 18          	mov    %rbp,0x18(%rdi)
140003e7e:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140003e83:	48 83 c4 20          	add    $0x20,%rsp
140003e87:	5f                   	pop    %rdi
140003e88:	c3                   	ret
140003e89:	cc                   	int3
140003e8a:	cc                   	int3
140003e8b:	cc                   	int3
140003e8c:	cc                   	int3
140003e8d:	cc                   	int3
140003e8e:	cc                   	int3
140003e8f:	cc                   	int3
140003e90:	48 8b c4             	mov    %rsp,%rax
140003e93:	48 89 58 08          	mov    %rbx,0x8(%rax)
140003e97:	48 89 68 10          	mov    %rbp,0x10(%rax)
140003e9b:	48 89 70 18          	mov    %rsi,0x18(%rax)
140003e9f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140003ea3:	41 54                	push   %r12
140003ea5:	41 56                	push   %r14
140003ea7:	41 57                	push   %r15
140003ea9:	48 83 ec 20          	sub    $0x20,%rsp
140003ead:	48 8b 59 18          	mov    0x18(%rcx),%rbx
140003eb1:	45 33 ff             	xor    %r15d,%r15d
140003eb4:	8b 69 10             	mov    0x10(%rcx),%ebp
140003eb7:	4c 8b f2             	mov    %rdx,%r14
140003eba:	48 8b f1             	mov    %rcx,%rsi
140003ebd:	41 bc 50 00 00 00    	mov    $0x50,%r12d
140003ec3:	48 85 db             	test   %rbx,%rbx
140003ec6:	0f 85 87 00 00 00    	jne    0x140003f53
140003ecc:	85 ed                	test   %ebp,%ebp
140003ece:	74 7e                	je     0x140003f4e
140003ed0:	48 ff 15 d9 be 01 00 	rex.W call *0x1bed9(%rip)        # 0x14001fdb0
140003ed7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003edc:	8d 53 08             	lea    0x8(%rbx),%edx
140003edf:	41 b8 90 01 00 00    	mov    $0x190,%r8d
140003ee5:	48 8b c8             	mov    %rax,%rcx
140003ee8:	48 ff 15 c9 be 01 00 	rex.W call *0x1bec9(%rip)        # 0x14001fdb8
140003eef:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003ef4:	4c 39 3d d5 6c 02 00 	cmp    %r15,0x26cd5(%rip)        # 0x14002abd0
140003efb:	48 8b f8             	mov    %rax,%rdi
140003efe:	48 8b d8             	mov    %rax,%rbx
140003f01:	74 1f                	je     0x140003f22
140003f03:	48 ff 15 a6 be 01 00 	rex.W call *0x1bea6(%rip)        # 0x14001fdb0
140003f0a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140003f0f:	48 8b c8             	mov    %rax,%rcx
140003f12:	48 8b d3             	mov    %rbx,%rdx
140003f15:	48 8b 05 b4 6c 02 00 	mov    0x26cb4(%rip),%rax        # 0x14002abd0
140003f1c:	ff 15 b6 c4 01 00    	call   *0x1c4b6(%rip)        # 0x1400203d8
140003f22:	48 89 7e 18          	mov    %rdi,0x18(%rsi)
140003f26:	48 85 ff             	test   %rdi,%rdi
140003f29:	74 23                	je     0x140003f4e
140003f2b:	48 8d 87 90 01 00 00 	lea    0x190(%rdi),%rax
140003f32:	c7 46 20 05 00 00 00 	movl   $0x5,0x20(%rsi)
140003f39:	48 3b f8             	cmp    %rax,%rdi
140003f3c:	74 10                	je     0x140003f4e
140003f3e:	66 44 89 27          	mov    %r12w,(%rdi)
140003f42:	49 03 fc             	add    %r12,%rdi
140003f45:	48 3b f8             	cmp    %rax,%rdi
140003f48:	75 f4                	jne    0x140003f3e
140003f4a:	48 8b 5e 18          	mov    0x18(%rsi),%rbx
140003f4e:	48 85 db             	test   %rbx,%rbx
140003f51:	74 74                	je     0x140003fc7
140003f53:	85 ed                	test   %ebp,%ebp
140003f55:	74 34                	je     0x140003f8b
140003f57:	0f b7 46 20          	movzwl 0x20(%rsi),%eax
140003f5b:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
140003f5f:	48 c1 e1 04          	shl    $0x4,%rcx
140003f63:	48 03 cb             	add    %rbx,%rcx
140003f66:	48 3b d9             	cmp    %rcx,%rbx
140003f69:	74 20                	je     0x140003f8b
140003f6b:	8b 56 10             	mov    0x10(%rsi),%edx
140003f6e:	48 83 c3 08          	add    $0x8,%rbx
140003f72:	39 53 fc             	cmp    %edx,-0x4(%rbx)
140003f75:	76 08                	jbe    0x140003f7f
140003f77:	41 8b 46 04          	mov    0x4(%r14),%eax
140003f7b:	39 03                	cmp    %eax,(%rbx)
140003f7d:	74 48                	je     0x140003fc7
140003f7f:	49 03 dc             	add    %r12,%rbx
140003f82:	48 8d 43 f8          	lea    -0x8(%rbx),%rax
140003f86:	48 3b c1             	cmp    %rcx,%rax
140003f89:	75 e7                	jne    0x140003f72
140003f8b:	0f b7 46 22          	movzwl 0x22(%rsi),%eax
140003f8f:	33 d2                	xor    %edx,%edx
140003f91:	0f b7 4e 20          	movzwl 0x20(%rsi),%ecx
140003f95:	ff c0                	inc    %eax
140003f97:	f7 f1                	div    %ecx
140003f99:	48 8b 46 08          	mov    0x8(%rsi),%rax
140003f9d:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140003fa3:	66 89 56 22          	mov    %dx,0x22(%rsi)
140003fa7:	f0 44 0f c1 00       	lock xadd %r8d,(%rax)
140003fac:	0f b7 46 22          	movzwl 0x22(%rsi),%eax
140003fb0:	41 ff c0             	inc    %r8d
140003fb3:	49 8b d6             	mov    %r14,%rdx
140003fb6:	48 8d 0c 80          	lea    (%rax,%rax,4),%rcx
140003fba:	48 c1 e1 04          	shl    $0x4,%rcx
140003fbe:	48 03 4e 18          	add    0x18(%rsi),%rcx
140003fc2:	e8 bd fb ff ff       	call   0x140003b84
140003fc7:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140003fcc:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140003fd1:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140003fd6:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140003fdb:	48 83 c4 20          	add    $0x20,%rsp
140003fdf:	41 5f                	pop    %r15
140003fe1:	41 5e                	pop    %r14
140003fe3:	41 5c                	pop    %r12
140003fe5:	c3                   	ret
140003fe6:	cc                   	int3
140003fe7:	cc                   	int3
140003fe8:	cc                   	int3
140003fe9:	cc                   	int3
140003fea:	cc                   	int3
140003feb:	cc                   	int3
140003fec:	cc                   	int3
140003fed:	cc                   	int3
140003fee:	cc                   	int3
140003fef:	cc                   	int3
140003ff0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140003ff5:	57                   	push   %rdi
140003ff6:	48 83 ec 20          	sub    $0x20,%rsp
140003ffa:	48 8b 3d 7f 6b 02 00 	mov    0x26b7f(%rip),%rdi        # 0x14002ab80
140004001:	33 db                	xor    %ebx,%ebx
140004003:	48 85 ff             	test   %rdi,%rdi
140004006:	0f 84 94 00 00 00    	je     0x1400040a0
14000400c:	48 39 5f 08          	cmp    %rbx,0x8(%rdi)
140004010:	75 25                	jne    0x140004037
140004012:	48 8b 0f             	mov    (%rdi),%rcx
140004015:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14000401a:	48 21 5c 24 38       	and    %rbx,0x38(%rsp)
14000401f:	e8 c8 04 00 00       	call   0x1400044ec
140004024:	85 c0                	test   %eax,%eax
140004026:	78 0f                	js     0x140004037
140004028:	48 39 5f 08          	cmp    %rbx,0x8(%rdi)
14000402c:	75 09                	jne    0x140004037
14000402e:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140004033:	48 89 47 08          	mov    %rax,0x8(%rdi)
140004037:	48 8b 47 08          	mov    0x8(%rdi),%rax
14000403b:	48 8d 48 20          	lea    0x20(%rax),%rcx
14000403f:	48 f7 d8             	neg    %rax
140004042:	48 1b ff             	sbb    %rdi,%rdi
140004045:	48 23 f9             	and    %rcx,%rdi
140004048:	74 56                	je     0x1400040a0
14000404a:	48 ff 15 e7 bd 01 00 	rex.W call *0x1bde7(%rip)        # 0x14001fe38
140004051:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140004056:	44 8b c0             	mov    %eax,%r8d
140004059:	44 8b c8             	mov    %eax,%r9d
14000405c:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
140004063:	cc cc cc
140004066:	49 f7 e1             	mul    %r9
140004069:	48 c1 ea 03          	shr    $0x3,%rdx
14000406d:	48 8d 0c 92          	lea    (%rdx,%rdx,4),%rcx
140004071:	48 03 c9             	add    %rcx,%rcx
140004074:	4c 2b c1             	sub    %rcx,%r8
140004077:	4a 8b 5c c7 08       	mov    0x8(%rdi,%r8,8),%rbx
14000407c:	eb 09                	jmp    0x140004087
14000407e:	44 39 0b             	cmp    %r9d,(%rbx)
140004081:	74 2c                	je     0x1400040af
140004083:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140004087:	48 85 db             	test   %rbx,%rbx
14000408a:	75 f2                	jne    0x14000407e
14000408c:	48 85 db             	test   %rbx,%rbx
14000408f:	74 0f                	je     0x1400040a0
140004091:	48 83 7b 08 00       	cmpq   $0x0,0x8(%rbx)
140004096:	75 08                	jne    0x1400040a0
140004098:	48 8d 4f 04          	lea    0x4(%rdi),%rcx
14000409c:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
1400040a0:	48 8b c3             	mov    %rbx,%rax
1400040a3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400040a8:	48 83 c4 20          	add    $0x20,%rsp
1400040ac:	5f                   	pop    %rdi
1400040ad:	c3                   	ret
1400040ae:	cc                   	int3
1400040af:	48 83 c3 10          	add    $0x10,%rbx
1400040b3:	eb d7                	jmp    0x14000408c
1400040b5:	cc                   	int3
1400040b6:	cc                   	int3
1400040b7:	cc                   	int3
1400040b8:	cc                   	int3
1400040b9:	cc                   	int3
1400040ba:	cc                   	int3
1400040bb:	cc                   	int3
1400040bc:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400040c1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1400040c6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400040cb:	57                   	push   %rdi
1400040cc:	48 83 ec 20          	sub    $0x20,%rsp
1400040d0:	32 c0                	xor    %al,%al