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
14008f150:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14008f155:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
14008f15b:	33 f6                	xor    %esi,%esi
14008f15d:	48 89 74 24 38       	mov    %rsi,0x38(%rsp)
14008f162:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
14008f167:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14008f16b:	49 ff 47 10          	incq   0x10(%r15)
14008f16f:	49 89 16             	mov    %rdx,(%r14)
14008f172:	4d 89 46 08          	mov    %r8,0x8(%r14)
14008f176:	4d 89 30             	mov    %r14,(%r8)
14008f179:	4c 89 72 08          	mov    %r14,0x8(%rdx)
14008f17d:	49 8b 4f 18          	mov    0x18(%r15),%rcx
14008f181:	49 8b 47 30          	mov    0x30(%r15),%rax
14008f185:	48 23 c7             	and    %rdi,%rax
14008f188:	48 03 c0             	add    %rax,%rax
14008f18b:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14008f18f:	4c 3b 4d 00          	cmp    0x0(%rbp),%r9
14008f193:	75 06                	jne    0x14008f19b
14008f195:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
14008f199:	eb 12                	jmp    0x14008f1ad
14008f19b:	4c 3b ca             	cmp    %rdx,%r9
14008f19e:	75 06                	jne    0x14008f1a6
14008f1a0:	4c 89 34 c1          	mov    %r14,(%rcx,%rax,8)
14008f1a4:	eb 0c                	jmp    0x14008f1b2
14008f1a6:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
14008f1ab:	75 05                	jne    0x14008f1b2
14008f1ad:	4c 89 74 c1 08       	mov    %r14,0x8(%rcx,%rax,8)
14008f1b2:	48 bd aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%rbp
14008f1b9:	aa aa 02
14008f1bc:	49 83 c4 50          	add    $0x50,%r12
14008f1c0:	49 8d 44 24 b8       	lea    -0x48(%r12),%rax
14008f1c5:	49 3b c5             	cmp    %r13,%rax
14008f1c8:	0f 85 8a fd ff ff    	jne    0x14008ef58
14008f1ce:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
14008f1d5:	00
14008f1d6:	48 83 c4 50          	add    $0x50,%rsp
14008f1da:	41 5f                	pop    %r15
14008f1dc:	41 5e                	pop    %r14
14008f1de:	41 5d                	pop    %r13
14008f1e0:	41 5c                	pop    %r12
14008f1e2:	5f                   	pop    %rdi
14008f1e3:	5e                   	pop    %rsi
14008f1e4:	5d                   	pop    %rbp
14008f1e5:	c3                   	ret
14008f1e6:	48 8d 0d 33 f1 29 00 	lea    0x29f133(%rip),%rcx        # 0x14032e320
14008f1ed:	e8 be d3 26 00       	call   0x1402fc5b0
14008f1f2:	cc                   	int3
14008f1f3:	cc                   	int3
14008f1f4:	cc                   	int3
14008f1f5:	cc                   	int3
14008f1f6:	cc                   	int3
14008f1f7:	cc                   	int3
14008f1f8:	cc                   	int3
14008f1f9:	cc                   	int3
14008f1fa:	cc                   	int3
14008f1fb:	cc                   	int3
14008f1fc:	cc                   	int3
14008f1fd:	cc                   	int3
14008f1fe:	cc                   	int3
14008f1ff:	cc                   	int3
14008f200:	49 3b d0             	cmp    %r8,%rdx
14008f203:	0f 84 a3 02 00 00    	je     0x14008f4ac
14008f209:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14008f20e:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14008f213:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14008f218:	57                   	push   %rdi
14008f219:	41 54                	push   %r12
14008f21b:	41 55                	push   %r13
14008f21d:	41 56                	push   %r14
14008f21f:	41 57                	push   %r15
14008f221:	48 83 ec 50          	sub    $0x50,%rsp
14008f225:	49 8b f8             	mov    %r8,%rdi
14008f228:	48 8b da             	mov    %rdx,%rbx
14008f22b:	4c 8b e9             	mov    %rcx,%r13
14008f22e:	45 33 f6             	xor    %r14d,%r14d
14008f231:	49 bf 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%r15
14008f238:	38 8e 03
14008f23b:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
14008f242:	01 00 00
14008f245:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14008f24c:	9c f2 cb
14008f24f:	4c 8b 43 20          	mov    0x20(%rbx),%r8
14008f253:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14008f257:	48 83 7b 28 0f       	cmpq   $0xf,0x28(%rbx)
14008f25c:	76 04                	jbe    0x14008f262
14008f25e:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14008f262:	48 8b e8             	mov    %rax,%rbp
14008f265:	49 8b ce             	mov    %r14,%rcx
14008f268:	4d 85 c0             	test   %r8,%r8
14008f26b:	74 16                	je     0x14008f283
14008f26d:	0f 1f 00             	nopl   (%rax)
14008f270:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
14008f274:	48 33 e8             	xor    %rax,%rbp
14008f277:	49 0f af e9          	imul   %r9,%rbp
14008f27b:	48 ff c1             	inc    %rcx
14008f27e:	49 3b c8             	cmp    %r8,%rcx
14008f281:	72 ed                	jb     0x14008f270
14008f283:	4c 8b cd             	mov    %rbp,%r9
14008f286:	4c 8d 43 10          	lea    0x10(%rbx),%r8
14008f28a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14008f28f:	49 8b cd             	mov    %r13,%rcx
14008f292:	e8 f9 f5 ff ff       	call   0x14008e890
14008f297:	48 83 7c 24 48 00    	cmpq   $0x0,0x48(%rsp)
14008f29d:	0f 85 e0 01 00 00    	jne    0x14008f483
14008f2a3:	4d 39 7d 10          	cmp    %r15,0x10(%r13)
14008f2a7:	0f 84 00 02 00 00    	je     0x14008f4ad
14008f2ad:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f2b1:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14008f2b6:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14008f2bb:	b9 48 00 00 00       	mov    $0x48,%ecx
14008f2c0:	e8 83 af 26 00       	call   0x1402fa248
14008f2c5:	4c 8b e0             	mov    %rax,%r12
14008f2c8:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14008f2cd:	4c 8d 70 10          	lea    0x10(%rax),%r14
14008f2d1:	4c 89 b4 24 88 00 00 	mov    %r14,0x88(%rsp)
14008f2d8:	00
14008f2d9:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14008f2dd:	49 8b ce             	mov    %r14,%rcx
14008f2e0:	e8 eb 6a ff ff       	call   0x140085dd0
14008f2e5:	90                   	nop
14008f2e6:	49 8d 4e 20          	lea    0x20(%r14),%rcx
14008f2ea:	48 c7 41 08 00 00 00 	movq   $0x0,0x8(%rcx)
14008f2f1:	00
14008f2f2:	66 c7 41 10 00 01    	movw   $0x100,0x10(%rcx)
14008f2f8:	48 8d 53 30          	lea    0x30(%rbx),%rdx
14008f2fc:	e8 cf 7c 01 00       	call   0x1400a6fd0
14008f301:	90                   	nop
14008f302:	49 8b 55 10          	mov    0x10(%r13),%rdx
14008f306:	48 83 c2 01          	add    $0x1,%rdx
14008f30a:	0f 57 c0             	xorps  %xmm0,%xmm0
14008f30d:	78 07                	js     0x14008f316
14008f30f:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
14008f314:	eb 18                	jmp    0x14008f32e
14008f316:	48 8b ca             	mov    %rdx,%rcx
14008f319:	48 d1 e9             	shr    $1,%rcx
14008f31c:	48 8b c2             	mov    %rdx,%rax
14008f31f:	83 e0 01             	and    $0x1,%eax
14008f322:	48 0b c8             	or     %rax,%rcx
14008f325:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14008f32a:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14008f32e:	49 8b 4d 38          	mov    0x38(%r13),%rcx
14008f332:	0f 57 c9             	xorps  %xmm1,%xmm1
14008f335:	48 85 c9             	test   %rcx,%rcx
14008f338:	78 07                	js     0x14008f341
14008f33a:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
14008f33f:	eb 15                	jmp    0x14008f356
14008f341:	48 8b c1             	mov    %rcx,%rax
14008f344:	48 d1 e8             	shr    $1,%rax
14008f347:	83 e1 01             	and    $0x1,%ecx
14008f34a:	48 0b c1             	or     %rcx,%rax
14008f34d:	f3 48 0f 2a c8       	cvtsi2ss %rax,%xmm1
14008f352:	f3 0f 58 c9          	addss  %xmm1,%xmm1
14008f356:	f3 0f 5e c1          	divss  %xmm1,%xmm0
14008f35a:	41 0f 2f 45 00       	comiss 0x0(%r13),%xmm0
14008f35f:	0f 86 bb 00 00 00    	jbe    0x14008f420
14008f365:	49 8b cd             	mov    %r13,%rcx
14008f368:	e8 83 06 03 00       	call   0x1400bf9f0
14008f36d:	48 8b d0             	mov    %rax,%rdx
14008f370:	49 8b cd             	mov    %r13,%rcx
14008f373:	e8 d8 0f 03 00       	call   0x1400c0350
14008f378:	49 8b 45 30          	mov    0x30(%r13),%rax
14008f37c:	48 23 c5             	and    %rbp,%rax
14008f37f:	48 03 c0             	add    %rax,%rax
14008f382:	49 8b 55 18          	mov    0x18(%r13),%rdx
14008f386:	48 8b 74 c2 08       	mov    0x8(%rdx,%rax,8),%rsi
14008f38b:	49 8b 0f             	mov    (%r15),%rcx
14008f38e:	48 3b f1             	cmp    %rcx,%rsi
14008f391:	75 07                	jne    0x14008f39a
14008f393:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
14008f398:	eb 72                	jmp    0x14008f40c
14008f39a:	48 8b 04 c2          	mov    (%rdx,%rax,8),%rax
14008f39e:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
14008f3a5:	00
14008f3a6:	4d 8b 7e 10          	mov    0x10(%r14),%r15
14008f3aa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)