140b06dbf:	48 8d 05 da c6 4d 00 	lea    0x4dc6da(%rip),%rax        # 0x140fe34a0
140b06dc6:	49 89 06             	mov    %rax,(%r14)
140b06dc9:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140b06dce:	48 8d 8c 24 c0 00 00 	lea    0xc0(%rsp),%rcx
140b06dd5:	00
140b06dd6:	e8 d5 0c 01 00       	call   0x140b17ab0
140b06ddb:	48 8b 08             	mov    (%rax),%rcx
140b06dde:	48 89 28             	mov    %rbp,(%rax)
140b06de1:	49 89 4e 08          	mov    %rcx,0x8(%r14)
140b06de5:	48 8b 08             	mov    (%rax),%rcx
140b06de8:	48 85 c9             	test   %rcx,%rcx
140b06deb:	74 1a                	je     0x140b06e07
140b06ded:	48 83 69 08 01       	subq   $0x1,0x8(%rcx)
140b06df2:	75 13                	jne    0x140b06e07
140b06df4:	48 8b 01             	mov    (%rcx),%rax
140b06df7:	ba 01 00 00 00       	mov    $0x1,%edx
140b06dfc:	48 8b 40 28          	mov    0x28(%rax),%rax
140b06e00:	ff 15 1a cc 47 00    	call   *0x47cc1a(%rip)        # 0x140f83a20
140b06e06:	90                   	nop
140b06e07:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
140b06e0e:	00
140b06e0f:	48 85 c9             	test   %rcx,%rcx
140b06e12:	74 10                	je     0x140b06e24
140b06e14:	48 83 29 01          	subq   $0x1,(%rcx)
140b06e18:	75 0a                	jne    0x140b06e24
140b06e1a:	ba 18 00 00 00       	mov    $0x18,%edx
140b06e1f:	e8 20 43 31 00       	call   0x140e1b144
140b06e24:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
140b06e29:	e8 32 15 69 ff       	call   0x140198360
140b06e2e:	80 7c 24 68 00       	cmpb   $0x0,0x68(%rsp)
140b06e33:	74 0a                	je     0x140b06e3f
140b06e35:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140b06e3a:	e8 c1 66 69 ff       	call   0x14019d500
140b06e3f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140b06e44:	e8 57 cc 88 ff       	call   0x140393aa0
140b06e49:	48 8d 05 60 c6 4d 00 	lea    0x4dc660(%rip),%rax        # 0x140fe34b0
140b06e50:	49 89 06             	mov    %rax,(%r14)
140b06e53:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140b06e57:	48 85 c9             	test   %rcx,%rcx
140b06e5a:	74 10                	je     0x140b06e6c
140b06e5c:	48 83 29 01          	subq   $0x1,(%rcx)
140b06e60:	75 0a                	jne    0x140b06e6c
140b06e62:	ba 18 00 00 00       	mov    $0x18,%edx
140b06e67:	e8 d8 42 31 00       	call   0x140e1b144
140b06e6c:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140b06e70:	e8 eb 14 69 ff       	call   0x140198360
140b06e75:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140b06e79:	74 09                	je     0x140b06e84
140b06e7b:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140b06e7f:	e8 7c 66 69 ff       	call   0x14019d500
140b06e84:	48 8b 1f             	mov    (%rdi),%rbx
140b06e87:	48 85 db             	test   %rbx,%rbx
140b06e8a:	74 7b                	je     0x140b06f07
140b06e8c:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140b06e90:	48 3b de             	cmp    %rsi,%rbx
140b06e93:	74 11                	je     0x140b06ea6
140b06e95:	48 8b cb             	mov    %rbx,%rcx
140b06e98:	e8 53 c5 88 ff       	call   0x1403933f0
140b06e9d:	48 83 c3 28          	add    $0x28,%rbx
140b06ea1:	48 3b de             	cmp    %rsi,%rbx
140b06ea4:	75 ef                	jne    0x140b06e95
140b06ea6:	4c 8b 07             	mov    (%rdi),%r8
140b06ea9:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140b06ead:	49 2b c8             	sub    %r8,%rcx
140b06eb0:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140b06eb7:	66 66 66
140b06eba:	48 f7 e9             	imul   %rcx
140b06ebd:	48 c1 fa 04          	sar    $0x4,%rdx
140b06ec1:	48 8b c2             	mov    %rdx,%rax
140b06ec4:	48 c1 e8 3f          	shr    $0x3f,%rax
140b06ec8:	48 03 d0             	add    %rax,%rdx
140b06ecb:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140b06ecf:	48 c1 e2 03          	shl    $0x3,%rdx
140b06ed3:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140b06eda:	72 18                	jb     0x140b06ef4
140b06edc:	48 83 c2 27          	add    $0x27,%rdx
140b06ee0:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140b06ee4:	4c 2b c1             	sub    %rcx,%r8
140b06ee7:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140b06eeb:	48 83 f8 1f          	cmp    $0x1f,%rax
140b06eef:	77 27                	ja     0x140b06f18
140b06ef1:	4c 8b c1             	mov    %rcx,%r8
140b06ef4:	49 8b c8             	mov    %r8,%rcx
140b06ef7:	e8 48 42 31 00       	call   0x140e1b144
140b06efc:	48 89 2f             	mov    %rbp,(%rdi)
140b06eff:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140b06f03:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140b06f07:	49 8b c6             	mov    %r14,%rax
140b06f0a:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
140b06f11:	41 5e                	pop    %r14
140b06f13:	5f                   	pop    %rdi
140b06f14:	5e                   	pop    %rsi
140b06f15:	5d                   	pop    %rbp
140b06f16:	5b                   	pop    %rbx
140b06f17:	c3                   	ret
140b06f18:	e8 87 32 32 00       	call   0x140e2a1a4
140b06f1d:	cc                   	int3
140b06f1e:	cc                   	int3
140b06f1f:	cc                   	int3
140b06f20:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140b06f25:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140b06f2a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b06f2f:	56                   	push   %rsi
140b06f30:	57                   	push   %rdi
140b06f31:	41 56                	push   %r14
140b06f33:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140b06f3a:	48 8b fa             	mov    %rdx,%rdi
140b06f3d:	4c 8b f1             	mov    %rcx,%r14
140b06f40:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140b06f44:	33 ed                	xor    %ebp,%ebp
140b06f46:	48 89 6a 10          	mov    %rbp,0x10(%rdx)
140b06f4a:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
140b06f4e:	48 89 6a 08          	mov    %rbp,0x8(%rdx)
140b06f52:	48 8b 02             	mov    (%rdx),%rax
140b06f55:	48 89 2a             	mov    %rbp,(%rdx)
140b06f58:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140b06f5d:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140b06f62:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
140b06f67:	48 83 c2 18          	add    $0x18,%rdx
140b06f6b:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140b06f70:	e8 9b ba 88 ff       	call   0x140392a10
140b06f75:	48 8b 47 68          	mov    0x68(%rdi),%rax
140b06f79:	48 89 6f 68          	mov    %rbp,0x68(%rdi)
140b06f7d:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
140b06f84:	00
140b06f85:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140b06f8a:	49 8b ce             	mov    %r14,%rcx
140b06f8d:	e8 be fd ff ff       	call   0x140b06d50
140b06f92:	48 8d 05 27 c5 4d 00 	lea    0x4dc527(%rip),%rax        # 0x140fe34c0
140b06f99:	49 89 06             	mov    %rax,(%r14)
140b06f9c:	49 89 6e 10          	mov    %rbp,0x10(%r14)
140b06fa0:	49 89 6e 18          	mov    %rbp,0x18(%r14)
140b06fa4:	49 89 6e 20          	mov    %rbp,0x20(%r14)
140b06fa8:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140b06fac:	48 85 c9             	test   %rcx,%rcx
140b06faf:	74 10                	je     0x140b06fc1
140b06fb1:	48 83 29 01          	subq   $0x1,(%rcx)
140b06fb5:	75 0a                	jne    0x140b06fc1
140b06fb7:	ba 18 00 00 00       	mov    $0x18,%edx
140b06fbc:	e8 83 41 31 00       	call   0x140e1b144
140b06fc1:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140b06fc5:	e8 96 13 69 ff       	call   0x140198360
140b06fca:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140b06fce:	74 09                	je     0x140b06fd9
140b06fd0:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140b06fd4:	e8 27 65 69 ff       	call   0x14019d500
140b06fd9:	48 8b 1f             	mov    (%rdi),%rbx
140b06fdc:	48 85 db             	test   %rbx,%rbx
140b06fdf:	0f 84 7d 00 00 00    	je     0x140b07062
140b06fe5:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140b06fe9:	48 3b de             	cmp    %rsi,%rbx
140b06fec:	74 13                	je     0x140b07001
140b06fee:	66 90                	xchg   %ax,%ax
140b06ff0:	48 8b cb             	mov    %rbx,%rcx
140b06ff3:	e8 f8 c3 88 ff       	call   0x1403933f0
140b06ff8:	48 83 c3 28          	add    $0x28,%rbx
140b06ffc:	48 3b de             	cmp    %rsi,%rbx
140b06fff:	75 ef                	jne    0x140b06ff0
140b07001:	4c 8b 07             	mov    (%rdi),%r8
140b07004:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140b07008:	49 2b c8             	sub    %r8,%rcx
140b0700b:	48 b8 67 66 66 66 66 	movabs $0x6666666666666667,%rax
140b07012:	66 66 66
140b07015:	48 f7 e9             	imul   %rcx
140b07018:	48 c1 fa 04          	sar    $0x4,%rdx
140b0701c:	48 8b c2             	mov    %rdx,%rax
140b0701f:	48 c1 e8 3f          	shr    $0x3f,%rax
140b07023:	48 03 d0             	add    %rax,%rdx
140b07026:	48 8d 14 92          	lea    (%rdx,%rdx,4),%rdx
140b0702a:	48 c1 e2 03          	shl    $0x3,%rdx
140b0702e:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140b07035:	72 18                	jb     0x140b0704f
140b07037:	48 83 c2 27          	add    $0x27,%rdx
140b0703b:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140b0703f:	4c 2b c1             	sub    %rcx,%r8
140b07042:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140b07046:	48 83 f8 1f          	cmp    $0x1f,%rax
140b0704a:	77 31                	ja     0x140b0707d
140b0704c:	4c 8b c1             	mov    %rcx,%r8
140b0704f:	49 8b c8             	mov    %r8,%rcx
140b07052:	e8 ed 40 31 00       	call   0x140e1b144
140b07057:	48 89 2f             	mov    %rbp,(%rdi)
140b0705a:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140b0705e:	48 89 6f 10          	mov    %rbp,0x10(%rdi)
140b07062:	49 8b c6             	mov    %r14,%rax
140b07065:	4c 8d 9c 24 90 00 00 	lea    0x90(%rsp),%r11
140b0706c:	00
140b0706d:	49 8b 5b 30          	mov    0x30(%r11),%rbx
140b07071:	49 8b 6b 38          	mov    0x38(%r11),%rbp
140b07075:	49 8b e3             	mov    %r11,%rsp
140b07078:	41 5e                	pop    %r14
140b0707a:	5f                   	pop    %rdi
140b0707b:	5e                   	pop    %rsi
140b0707c:	c3                   	ret
140b0707d:	e8 22 31 32 00       	call   0x140e2a1a4
140b07082:	cc                   	int3
140b07083:	cc                   	int3
140b07084:	cc                   	int3
140b07085:	cc                   	int3
140b07086:	cc                   	int3
140b07087:	cc                   	int3
140b07088:	cc                   	int3
140b07089:	cc                   	int3
140b0708a:	cc                   	int3
140b0708b:	cc                   	int3
140b0708c:	cc                   	int3
140b0708d:	cc                   	int3
140b0708e:	cc                   	int3
140b0708f:	cc                   	int3
140b07090:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140b07095:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b0709a:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140b0709f:	55                   	push   %rbp
140b070a0:	56                   	push   %rsi
140b070a1:	57                   	push   %rdi
140b070a2:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140b070a9:	48 8b f2             	mov    %rdx,%rsi
140b070ac:	48 8b d9             	mov    %rcx,%rbx
140b070af:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140b070b4:	e8 b7 79 01 00       	call   0x140b1ea70
140b070b9:	48 8b e8             	mov    %rax,%rbp
140b070bc:	48 89 84 24 d0 00 00 	mov    %rax,0xd0(%rsp)
140b070c3:	00
140b070c4:	48 8d 05 05 c4 4d 00 	lea    0x4dc405(%rip),%rax        # 0x140fe34d0
140b070cb:	48 89 03             	mov    %rax,(%rbx)
140b070ce:	48 8b d5             	mov    %rbp,%rdx
140b070d1:	48 8d 8c 24 c0 00 00 	lea    0xc0(%rsp),%rcx
140b070d8:	00
140b070d9:	e8 72 0b 01 00       	call   0x140b17c50
140b070de:	48 8b 08             	mov    (%rax),%rcx
140b070e1:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140b070e8:	48 89 4b 08          	mov    %rcx,0x8(%rbx)
140b070ec:	48 8b 08             	mov    (%rax),%rcx
140b070ef:	48 85 c9             	test   %rcx,%rcx
140b070f2:	74 1a                	je     0x140b0710e
140b070f4:	48 83 69 08 01       	subq   $0x1,0x8(%rcx)
140b070f9:	75 13                	jne    0x140b0710e
140b070fb:	48 8b 01             	mov    (%rcx),%rax
140b070fe:	ba 01 00 00 00       	mov    $0x1,%edx
140b07103:	48 8b 40 28          	mov    0x28(%rax),%rax
140b07107:	ff 15 13 c9 47 00    	call   *0x47c913(%rip)        # 0x140f83a20
140b0710d:	90                   	nop
140b0710e:	48 8b 4d 68          	mov    0x68(%rbp),%rcx
140b07112:	48 85 c9             	test   %rcx,%rcx
140b07115:	74 10                	je     0x140b07127
140b07117:	48 83 29 01          	subq   $0x1,(%rcx)
140b0711b:	75 0a                	jne    0x140b07127
140b0711d:	ba 18 00 00 00       	mov    $0x18,%edx
140b07122:	e8 1d 40 31 00       	call   0x140e1b144
140b07127:	48 8d 4d 50          	lea    0x50(%rbp),%rcx
140b0712b:	e8 30 12 69 ff       	call   0x140198360
140b07130:	80 7d 48 00          	cmpb   $0x0,0x48(%rbp)
140b07134:	74 09                	je     0x140b0713f
140b07136:	48 8d 4d 18          	lea    0x18(%rbp),%rcx
140b0713a:	e8 c1 63 69 ff       	call   0x14019d500
140b0713f:	48 8b cd             	mov    %rbp,%rcx
140b07142:	e8 59 c9 88 ff       	call   0x140393aa0
140b07147:	48 8d 05 92 c3 4d 00 	lea    0x4dc392(%rip),%rax        # 0x140fe34e0
140b0714e:	48 89 03             	mov    %rax,(%rbx)
140b07151:	c6 83 a0 00 00 00 00 	movb   $0x0,0xa0(%rbx)
140b07158:	c6 83 38 01 00 00 00 	movb   $0x0,0x138(%rbx)
140b0715f:	c6 83 d0 01 00 00 00 	movb   $0x0,0x1d0(%rbx)
140b07166:	48 c7 83 d8 01 00 00 	movq   $0x0,0x1d8(%rbx)
140b0716d:	00 00 00 00
140b07171:	48 8b 4e 68          	mov    0x68(%rsi),%rcx
140b07175:	48 85 c9             	test   %rcx,%rcx
140b07178:	74 10                	je     0x140b0718a
140b0717a:	48 83 29 01          	subq   $0x1,(%rcx)
140b0717e:	75 0a                	jne    0x140b0718a
140b07180:	ba 18 00 00 00       	mov    $0x18,%edx
140b07185:	e8 ba 3f 31 00       	call   0x140e1b144
140b0718a:	48 8d 4e 50          	lea    0x50(%rsi),%rcx
140b0718e:	e8 cd 11 69 ff       	call   0x140198360
140b07193:	80 7e 48 00          	cmpb   $0x0,0x48(%rsi)
140b07197:	74 09                	je     0x140b071a2
140b07199:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
140b0719d:	e8 5e 63 69 ff       	call   0x14019d500
140b071a2:	48 8b ce             	mov    %rsi,%rcx
140b071a5:	e8 f6 c8 88 ff       	call   0x140393aa0
140b071aa:	48 8b c3             	mov    %rbx,%rax
140b071ad:	48 8b 9c 24 d8 00 00 	mov    0xd8(%rsp),%rbx
140b071b4:	00
140b071b5:	48 81 c4 a0 00 00 00 	add    $0xa0,%rsp
140b071bc:	5f                   	pop    %rdi
140b071bd:	5e                   	pop    %rsi
140b071be:	5d                   	pop    %rbp
140b071bf:	c3                   	ret
140b071c0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140b071c5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140b071ca:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b071cf:	57                   	push   %rdi
140b071d0:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140b071d7:	48 8b fa             	mov    %rdx,%rdi
140b071da:	48 8b f1             	mov    %rcx,%rsi
140b071dd:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140b071e2:	e8 89 78 01 00       	call   0x140b1ea70
140b071e7:	48 8b d0             	mov    %rax,%rdx
140b071ea:	48 8b ce             	mov    %rsi,%rcx
140b071ed:	e8 9e fe ff ff       	call   0x140b07090
140b071f2:	48 8d 05 f7 c2 4d 00 	lea    0x4dc2f7(%rip),%rax        # 0x140fe34f0
140b071f9:	48 89 06             	mov    %rax,(%rsi)
140b071fc:	48 8b 4f 68          	mov    0x68(%rdi),%rcx
140b07200:	48 85 c9             	test   %rcx,%rcx
140b07203:	74 10                	je     0x140b07215
140b07205:	48 83 29 01          	subq   $0x1,(%rcx)
140b07209:	75 0a                	jne    0x140b07215
140b0720b:	ba 18 00 00 00       	mov    $0x18,%edx
140b07210:	e8 2f 3f 31 00       	call   0x140e1b144
140b07215:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
140b07219:	e8 42 11 69 ff       	call   0x140198360
140b0721e:	80 7f 48 00          	cmpb   $0x0,0x48(%rdi)
140b07222:	74 09                	je     0x140b0722d
140b07224:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140b07228:	e8 d3 62 69 ff       	call   0x14019d500
140b0722d:	48 8b cf             	mov    %rdi,%rcx
140b07230:	e8 6b c8 88 ff       	call   0x140393aa0
140b07235:	48 8b c6             	mov    %rsi,%rax
140b07238:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
140b0723f:	00
140b07240:	49 8b 5b 20          	mov    0x20(%r11),%rbx
140b07244:	49 8b 73 28          	mov    0x28(%r11),%rsi
140b07248:	49 8b e3             	mov    %r11,%rsp
140b0724b:	5f                   	pop    %rdi
140b0724c:	c3                   	ret
140b0724d:	cc                   	int3
140b0724e:	cc                   	int3
140b0724f:	cc                   	int3
140b07250:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140b07255:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140b0725a:	53                   	push   %rbx
140b0725b:	55                   	push   %rbp
140b0725c:	56                   	push   %rsi
140b0725d:	57                   	push   %rdi
140b0725e:	41 56                	push   %r14
140b07260:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140b07267:	48 8b fa             	mov    %rdx,%rdi
140b0726a:	4c 8b f1             	mov    %rcx,%r14
140b0726d:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140b07271:	33 ed                	xor    %ebp,%ebp
140b07273:	48 89 6a 10          	mov    %rbp,0x10(%rdx)
140b07277:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
140b0727b:	48 89 6a 08          	mov    %rbp,0x8(%rdx)
140b0727f:	48 8b 02             	mov    (%rdx),%rax
140b07282:	48 89 2a             	mov    %rbp,(%rdx)
140b07285:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140b0728a:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140b0728f:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
140b07294:	48 83 c2 18          	add    $0x18,%rdx
140b07298:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
140b0729d:	e8 6e b7 88 ff       	call   0x140392a10