14008ec96:	77 2e                	ja     0x14008ecc6
14008ec98:	49 8b c8             	mov    %r8,%rcx
14008ec9b:	e8 e4 b5 26 00       	call   0x1402fa284
14008eca0:	ba 38 00 00 00       	mov    $0x38,%edx
14008eca5:	48 c7 43 20 00 00 00 	movq   $0x0,0x20(%rbx)
14008ecac:	00
14008ecad:	48 8b cb             	mov    %rbx,%rcx
14008ecb0:	48 c7 43 28 0f 00 00 	movq   $0xf,0x28(%rbx)
14008ecb7:	00
14008ecb8:	c6 43 10 00          	movb   $0x0,0x10(%rbx)
14008ecbc:	48 83 c4 20          	add    $0x20,%rsp
14008ecc0:	5b                   	pop    %rbx
14008ecc1:	e9 be b5 26 00       	jmp    0x1402fa284
14008ecc6:	ff 15 2c b3 29 00    	call   *0x29b32c(%rip)        # 0x140329ff8
14008eccc:	cc                   	int3
14008eccd:	cc                   	int3
14008ecce:	cc                   	int3
14008eccf:	cc                   	int3
14008ecd0:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14008ecd5:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14008ecda:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14008ecdf:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14008ece4:	53                   	push   %rbx
14008ece5:	56                   	push   %rsi
14008ece6:	57                   	push   %rdi
14008ece7:	41 54                	push   %r12
14008ece9:	41 55                	push   %r13
14008eceb:	41 56                	push   %r14
14008eced:	41 57                	push   %r15
14008ecef:	48 83 ec 40          	sub    $0x40,%rsp
14008ecf3:	49 8b f1             	mov    %r9,%rsi
14008ecf6:	4d 8b e8             	mov    %r8,%r13
14008ecf9:	48 8b da             	mov    %rdx,%rbx
14008ecfc:	4c 8d 61 08          	lea    0x8(%rcx),%r12
14008ed00:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
14008ed05:	4c 8b 31             	mov    (%rcx),%r14
14008ed08:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
14008ed0d:	4d 8b 3c 24          	mov    (%r12),%r15
14008ed11:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14008ed16:	48 8b 51 10          	mov    0x10(%rcx),%rdx
14008ed1a:	48 8b c2             	mov    %rdx,%rax
14008ed1d:	49 2b c7             	sub    %r15,%rax
14008ed20:	4d 85 c9             	test   %r9,%r9
14008ed23:	0f 84 4b 01 00 00    	je     0x14008ee74
14008ed29:	4c 3b c8             	cmp    %rax,%r9
14008ed2c:	0f 86 52 01 00 00    	jbe    0x14008ee84
14008ed32:	4d 8b ef             	mov    %r15,%r13
14008ed35:	4d 2b ee             	sub    %r14,%r13
14008ed38:	48 bf ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdi
14008ed3f:	ff ff 7f
14008ed42:	48 8b c7             	mov    %rdi,%rax
14008ed45:	49 2b c5             	sub    %r13,%rax
14008ed48:	4c 3b c8             	cmp    %rax,%r9
14008ed4b:	0f 87 c0 01 00 00    	ja     0x14008ef11
14008ed51:	4f 8d 04 29          	lea    (%r9,%r13,1),%r8
14008ed55:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
14008ed5a:	49 2b d6             	sub    %r14,%rdx
14008ed5d:	48 8b ca             	mov    %rdx,%rcx
14008ed60:	48 d1 e9             	shr    $1,%rcx
14008ed63:	48 8b c7             	mov    %rdi,%rax
14008ed66:	48 2b c1             	sub    %rcx,%rax
14008ed69:	48 3b d0             	cmp    %rax,%rdx
14008ed6c:	76 32                	jbe    0x14008eda0
14008ed6e:	48 89 bc 24 88 00 00 	mov    %rdi,0x88(%rsp)
14008ed75:	00
14008ed76:	48 b9 26 00 00 00 00 	movabs $0x8000000000000026,%rcx
14008ed7d:	00 00 80
14008ed80:	e8 c3 b4 26 00       	call   0x1402fa248
14008ed85:	48 85 c0             	test   %rax,%rax
14008ed88:	74 56                	je     0x14008ede0
14008ed8a:	4c 8d 70 27          	lea    0x27(%rax),%r14
14008ed8e:	49 83 e6 e0          	and    $0xffffffffffffffe0,%r14
14008ed92:	49 89 46 f8          	mov    %rax,-0x8(%r14)
14008ed96:	4c 89 b4 24 98 00 00 	mov    %r14,0x98(%rsp)
14008ed9d:	00
14008ed9e:	eb 62                	jmp    0x14008ee02
14008eda0:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
14008eda4:	49 8b f8             	mov    %r8,%rdi
14008eda7:	49 3b c0             	cmp    %r8,%rax
14008edaa:	48 0f 43 f8          	cmovae %rax,%rdi
14008edae:	48 85 ff             	test   %rdi,%rdi
14008edb1:	75 0d                	jne    0x14008edc0
14008edb3:	45 33 f6             	xor    %r14d,%r14d
14008edb6:	4c 89 b4 24 98 00 00 	mov    %r14,0x98(%rsp)
14008edbd:	00
14008edbe:	eb 3a                	jmp    0x14008edfa
14008edc0:	48 81 ff 00 10 00 00 	cmp    $0x1000,%rdi
14008edc7:	72 1e                	jb     0x14008ede7
14008edc9:	48 8d 4f 27          	lea    0x27(%rdi),%rcx
14008edcd:	48 89 bc 24 88 00 00 	mov    %rdi,0x88(%rsp)
14008edd4:	00
14008edd5:	48 3b cf             	cmp    %rdi,%rcx
14008edd8:	0f 86 39 01 00 00    	jbe    0x14008ef17
14008edde:	eb a0                	jmp    0x14008ed80
14008ede0:	ff 15 12 b2 29 00    	call   *0x29b212(%rip)        # 0x140329ff8
14008ede6:	cc                   	int3
14008ede7:	48 8b cf             	mov    %rdi,%rcx
14008edea:	e8 59 b4 26 00       	call   0x1402fa248
14008edef:	4c 8b f0             	mov    %rax,%r14
14008edf2:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
14008edf9:	00
14008edfa:	48 89 bc 24 88 00 00 	mov    %rdi,0x88(%rsp)
14008ee01:	00
14008ee02:	4c 8b e3             	mov    %rbx,%r12
14008ee05:	4c 2b 64 24 28       	sub    0x28(%rsp),%r12
14008ee0a:	4b 8d 0c 26          	lea    (%r14,%r12,1),%rcx
14008ee0e:	4c 8b c6             	mov    %rsi,%r8
14008ee11:	48 8b 94 24 90 00 00 	mov    0x90(%rsp),%rdx
14008ee18:	00
14008ee19:	e8 10 dc 26 00       	call   0x1402fca2e
14008ee1e:	48 83 fe 01          	cmp    $0x1,%rsi
14008ee22:	75 12                	jne    0x14008ee36
14008ee24:	49 3b df             	cmp    %r15,%rbx
14008ee27:	75 0d                	jne    0x14008ee36
14008ee29:	4d 8b c5             	mov    %r13,%r8
14008ee2c:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
14008ee31:	49 8b ce             	mov    %r14,%rcx
14008ee34:	eb 20                	jmp    0x14008ee56
14008ee36:	4d 8b c4             	mov    %r12,%r8
14008ee39:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
14008ee3e:	49 8b ce             	mov    %r14,%rcx
14008ee41:	e8 e8 db 26 00       	call   0x1402fca2e
14008ee46:	4b 8d 0c 26          	lea    (%r14,%r12,1),%rcx
14008ee4a:	48 03 ce             	add    %rsi,%rcx
14008ee4d:	4c 2b fb             	sub    %rbx,%r15
14008ee50:	4d 8b c7             	mov    %r15,%r8
14008ee53:	48 8b d3             	mov    %rbx,%rdx
14008ee56:	e8 d3 db 26 00       	call   0x1402fca2e
14008ee5b:	90                   	nop
14008ee5c:	4c 8b cf             	mov    %rdi,%r9
14008ee5f:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
14008ee64:	49 8b d6             	mov    %r14,%rdx
14008ee67:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
14008ee6e:	00
14008ee6f:	e8 8c 00 03 00       	call   0x1400bef00
14008ee74:	48 83 c4 40          	add    $0x40,%rsp
14008ee78:	41 5f                	pop    %r15
14008ee7a:	41 5e                	pop    %r14
14008ee7c:	41 5d                	pop    %r13
14008ee7e:	41 5c                	pop    %r12
14008ee80:	5f                   	pop    %rdi
14008ee81:	5e                   	pop    %rsi
14008ee82:	5b                   	pop    %rbx
14008ee83:	c3                   	ret
14008ee84:	4d 8b f7             	mov    %r15,%r14
14008ee87:	4c 2b f3             	sub    %rbx,%r14
14008ee8a:	49 3b f6             	cmp    %r14,%rsi
14008ee8d:	73 41                	jae    0x14008eed0
14008ee8f:	49 8b ff             	mov    %r15,%rdi
14008ee92:	48 2b fe             	sub    %rsi,%rdi
14008ee95:	4c 8b c6             	mov    %rsi,%r8
14008ee98:	48 8b d7             	mov    %rdi,%rdx
14008ee9b:	49 8b cf             	mov    %r15,%rcx
14008ee9e:	e8 8b db 26 00       	call   0x1402fca2e
14008eea3:	49 8d 04 37          	lea    (%r15,%rsi,1),%rax
14008eea7:	49 89 04 24          	mov    %rax,(%r12)
14008eeab:	48 2b fb             	sub    %rbx,%rdi
14008eeae:	4c 2b ff             	sub    %rdi,%r15
14008eeb1:	4c 8b c7             	mov    %rdi,%r8
14008eeb4:	48 8b d3             	mov    %rbx,%rdx
14008eeb7:	49 8b cf             	mov    %r15,%rcx
14008eeba:	e8 6f db 26 00       	call   0x1402fca2e
14008eebf:	90                   	nop
14008eec0:	4c 8b c6             	mov    %rsi,%r8
14008eec3:	49 8b d5             	mov    %r13,%rdx
14008eec6:	48 8b cb             	mov    %rbx,%rcx
14008eec9:	e8 60 db 26 00       	call   0x1402fca2e
14008eece:	eb 31                	jmp    0x14008ef01
14008eed0:	4a 8d 3c 0b          	lea    (%rbx,%r9,1),%rdi
14008eed4:	48 89 bc 24 98 00 00 	mov    %rdi,0x98(%rsp)
14008eedb:	00
14008eedc:	4d 8b c6             	mov    %r14,%r8
14008eedf:	48 8b d3             	mov    %rbx,%rdx
14008eee2:	48 8b cf             	mov    %rdi,%rcx
14008eee5:	e8 44 db 26 00       	call   0x1402fca2e
14008eeea:	49 8d 04 3e          	lea    (%r14,%rdi,1),%rax
14008eeee:	49 89 04 24          	mov    %rax,(%r12)
14008eef2:	4c 8b c6             	mov    %rsi,%r8
14008eef5:	49 8b d5             	mov    %r13,%rdx
14008eef8:	48 8b cb             	mov    %rbx,%rcx
14008eefb:	e8 2e db 26 00       	call   0x1402fca2e
14008ef00:	90                   	nop
14008ef01:	48 83 c4 40          	add    $0x40,%rsp
14008ef05:	41 5f                	pop    %r15
14008ef07:	41 5e                	pop    %r14
14008ef09:	41 5d                	pop    %r13
14008ef0b:	41 5c                	pop    %r12
14008ef0d:	5f                   	pop    %rdi
14008ef0e:	5e                   	pop    %rsi
14008ef0f:	5b                   	pop    %rbx
14008ef10:	c3                   	ret
14008ef11:	e8 ca 26 03 00       	call   0x1400c15e0
14008ef16:	cc                   	int3
14008ef17:	e8 94 90 ff ff       	call   0x140087fb0
14008ef1c:	cc                   	int3
14008ef1d:	cc                   	int3
14008ef1e:	cc                   	int3
14008ef1f:	cc                   	int3
14008ef20:	49 3b d0             	cmp    %r8,%rdx
14008ef23:	0f 84 bc 02 00 00    	je     0x14008f1e5
14008ef29:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14008ef2e:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14008ef33:	55                   	push   %rbp
14008ef34:	56                   	push   %rsi
14008ef35:	57                   	push   %rdi
14008ef36:	41 54                	push   %r12
14008ef38:	41 55                	push   %r13
14008ef3a:	41 56                	push   %r14
14008ef3c:	41 57                	push   %r15
14008ef3e:	48 83 ec 50          	sub    $0x50,%rsp
14008ef42:	4d 8b e8             	mov    %r8,%r13
14008ef45:	4c 8b f9             	mov    %rcx,%r15
14008ef48:	4c 8d 62 48          	lea    0x48(%rdx),%r12
14008ef4c:	33 f6                	xor    %esi,%esi
14008ef4e:	48 bd aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%rbp
14008ef55:	aa aa 02
14008ef58:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
14008ef5f:	01 00 00
14008ef62:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14008ef69:	9c f2 cb
14008ef6c:	4d 8b 44 24 c8       	mov    -0x38(%r12),%r8
14008ef71:	49 8d 54 24 b8       	lea    -0x48(%r12),%rdx
14008ef76:	49 83 7c 24 d0 0f    	cmpq   $0xf,-0x30(%r12)
14008ef7c:	76 05                	jbe    0x14008ef83
14008ef7e:	49 8b 54 24 b8       	mov    -0x48(%r12),%rdx
14008ef83:	48 8b f8             	mov    %rax,%rdi
14008ef86:	48 8b ce             	mov    %rsi,%rcx
14008ef89:	4d 85 c0             	test   %r8,%r8
14008ef8c:	74 15                	je     0x14008efa3
14008ef8e:	66 90                	xchg   %ax,%ax
14008ef90:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
14008ef94:	48 33 f8             	xor    %rax,%rdi
14008ef97:	49 0f af f9          	imul   %r9,%rdi
14008ef9b:	48 ff c1             	inc    %rcx
14008ef9e:	49 3b c8             	cmp    %r8,%rcx
14008efa1:	72 ed                	jb     0x14008ef90
14008efa3:	4c 8b cf             	mov    %rdi,%r9
14008efa6:	4d 8d 44 24 b8       	lea    -0x48(%r12),%r8
14008efab:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14008efb0:	49 8b cf             	mov    %r15,%rcx
14008efb3:	e8 d8 f8 ff ff       	call   0x14008e890
14008efb8:	48 83 7c 24 48 00    	cmpq   $0x0,0x48(%rsp)
14008efbe:	0f 85 f8 01 00 00    	jne    0x14008f1bc
14008efc4:	49 39 6f 10          	cmp    %rbp,0x10(%r15)
14008efc8:	0f 84 18 02 00 00    	je     0x14008f1e6
14008efce:	49 8d 6f 08          	lea    0x8(%r15),%rbp
14008efd2:	48 89 6c 24 30       	mov    %rbp,0x30(%rsp)
14008efd7:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
14008efdc:	b9 60 00 00 00       	mov    $0x60,%ecx
14008efe1:	e8 62 b2 26 00       	call   0x1402fa248
14008efe6:	4c 8b f0             	mov    %rax,%r14
14008efe9:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14008efee:	48 8d 70 10          	lea    0x10(%rax),%rsi
14008eff2:	48 89 b4 24 98 00 00 	mov    %rsi,0x98(%rsp)
14008eff9:	00
14008effa:	49 8d 54 24 b8       	lea    -0x48(%r12),%rdx
14008efff:	48 8b ce             	mov    %rsi,%rcx
14008f002:	e8 c9 6d ff ff       	call   0x140085dd0
14008f007:	90                   	nop
14008f008:	41 8b 4c 24 d8       	mov    -0x28(%r12),%ecx
14008f00d:	89 4e 20             	mov    %ecx,0x20(%rsi)
14008f010:	48 8d 4e 28          	lea    0x28(%rsi),%rcx
14008f014:	49 8d 54 24 e0       	lea    -0x20(%r12),%rdx
14008f019:	e8 b2 6d ff ff       	call   0x140085dd0
14008f01e:	41 0f b6 04 24       	movzbl (%r12),%eax
14008f023:	88 46 48             	mov    %al,0x48(%rsi)
14008f026:	49 8b 04 24          	mov    (%r12),%rax
14008f02a:	48 89 46 48          	mov    %rax,0x48(%rsi)
14008f02e:	49 8b 04 24          	mov    (%r12),%rax
14008f032:	48 89 46 48          	mov    %rax,0x48(%rsi)
14008f036:	49 8b 04 24          	mov    (%r12),%rax
14008f03a:	48 89 46 48          	mov    %rax,0x48(%rsi)
14008f03e:	49 8b 57 10          	mov    0x10(%r15),%rdx
14008f042:	48 83 c2 01          	add    $0x1,%rdx
14008f046:	0f 57 c0             	xorps  %xmm0,%xmm0
14008f049:	78 07                	js     0x14008f052
14008f04b:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
14008f050:	eb 18                	jmp    0x14008f06a
14008f052:	48 8b ca             	mov    %rdx,%rcx
14008f055:	48 d1 e9             	shr    $1,%rcx
14008f058:	48 8b c2             	mov    %rdx,%rax
14008f05b:	83 e0 01             	and    $0x1,%eax
14008f05e:	48 0b c8             	or     %rax,%rcx
14008f061:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14008f066:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14008f06a:	49 8b 4f 38          	mov    0x38(%r15),%rcx
14008f06e:	0f 57 c9             	xorps  %xmm1,%xmm1
14008f071:	48 85 c9             	test   %rcx,%rcx
14008f074:	78 07                	js     0x14008f07d
14008f076:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
14008f07b:	eb 15                	jmp    0x14008f092
14008f07d:	48 8b c1             	mov    %rcx,%rax
14008f080:	48 d1 e8             	shr    $1,%rax
14008f083:	83 e1 01             	and    $0x1,%ecx
14008f086:	48 0b c1             	or     %rcx,%rax
14008f089:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
14008f08e:	f3 0f 58 c9          	addss  %xmm1,%xmm1
14008f092:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14008f096:	41 0f 2f 07          	comiss (%r15),%xmm0
14008f09a:	0f 86 bb 00 00 00    	jbe    0x14008f15b
14008f0a0:	49 8b cf             	mov    %r15,%rcx
14008f0a3:	e8 48 09 03 00       	call   0x1400bf9f0
14008f0a8:	48 8b d0             	mov    %rax,%rdx
14008f0ab:	49 8b cf             	mov    %r15,%rcx
14008f0ae:	e8 1d 10 03 00       	call   0x1400c00d0
14008f0b3:	49 8b 47 30          	mov    0x30(%r15),%rax
14008f0b7:	48 23 c7             	and    %rdi,%rax
14008f0ba:	48 03 c0             	add    %rax,%rax
14008f0bd:	49 8b 57 18          	mov    0x18(%r15),%rdx
14008f0c1:	48 8b 5c c2 08       	mov    0x8(%rdx,%rax,8),%rbx
14008f0c6:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
14008f0ca:	48 3b d9             	cmp    %rcx,%rbx
14008f0cd:	75 07                	jne    0x14008f0d6
14008f0cf:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14008f0d4:	eb 71                	jmp    0x14008f147
14008f0d6:	4c 8b 2c c2          	mov    (%rdx,%rax,8),%r13
14008f0da:	48 8b 6e 10          	mov    0x10(%rsi),%rbp
14008f0de:	66 90                	xchg   %ax,%ax
14008f0e0:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14008f0e4:	48 8b 42 10          	mov    0x10(%rdx),%rax
14008f0e8:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14008f0ed:	76 03                	jbe    0x14008f0f2
14008f0ef:	48 8b 12             	mov    (%rdx),%rdx
14008f0f2:	48 8b ce             	mov    %rsi,%rcx
14008f0f5:	48 83 7e 18 0f       	cmpq   $0xf,0x18(%rsi)
14008f0fa:	76 03                	jbe    0x14008f0ff
14008f0fc:	48 8b 0e             	mov    (%rsi),%rcx
14008f0ff:	48 3b e8             	cmp    %rax,%rbp
14008f102:	75 0c                	jne    0x14008f110
14008f104:	4c 8b c5             	mov    %rbp,%r8
14008f107:	e8 16 d9 26 00       	call   0x1402fca22
14008f10c:	85 c0                	test   %eax,%eax
14008f10e:	74 0b                	je     0x14008f11b
14008f110:	49 3b dd             	cmp    %r13,%rbx
14008f113:	74 21                	je     0x14008f136
14008f115:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
14008f119:	eb c5                	jmp    0x14008f0e0
14008f11b:	48 8b 03             	mov    (%rbx),%rax
14008f11e:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14008f123:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14008f128:	49 8d 6f 08          	lea    0x8(%r15),%rbp
14008f12c:	4c 8b ac 24 a0 00 00 	mov    0xa0(%rsp),%r13
14008f133:	00
14008f134:	eb 1a                	jmp    0x14008f150
14008f136:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14008f13b:	49 8d 6f 08          	lea    0x8(%r15),%rbp
14008f13f:	4c 8b ac 24 a0 00 00 	mov    0xa0(%rsp),%r13
14008f146:	00
14008f147:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14008f14e:	00 00