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)
14008f3b0:	48 8d 56 10          	lea    0x10(%rsi),%rdx
14008f3b4:	48 8b 42 10          	mov    0x10(%rdx),%rax
14008f3b8:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14008f3bd:	76 03                	jbe    0x14008f3c2
14008f3bf:	48 8b 12             	mov    (%rdx),%rdx
14008f3c2:	49 8b ce             	mov    %r14,%rcx
14008f3c5:	49 83 7e 18 0f       	cmpq   $0xf,0x18(%r14)
14008f3ca:	76 03                	jbe    0x14008f3cf
14008f3cc:	49 8b 0e             	mov    (%r14),%rcx
14008f3cf:	4c 3b f8             	cmp    %rax,%r15
14008f3d2:	75 0c                	jne    0x14008f3e0
14008f3d4:	4d 8b c7             	mov    %r15,%r8
14008f3d7:	e8 46 d6 26 00       	call   0x1402fca22
14008f3dc:	85 c0                	test   %eax,%eax
14008f3de:	74 10                	je     0x14008f3f0
14008f3e0:	48 3b b4 24 88 00 00 	cmp    0x88(%rsp),%rsi
14008f3e7:	00
14008f3e8:	74 19                	je     0x14008f403
14008f3ea:	48 8b 76 08          	mov    0x8(%rsi),%rsi
14008f3ee:	eb c0                	jmp    0x14008f3b0
14008f3f0:	48 8b 06             	mov    (%rsi),%rax
14008f3f3:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14008f3f8:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
14008f3fd:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f401:	eb 12                	jmp    0x14008f415
14008f403:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14008f408:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f40c:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
14008f413:	00 00
14008f415:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
14008f41a:	66 0f 7f 44 24 40    	movdqa %xmm0,0x40(%rsp)
14008f420:	45 33 f6             	xor    %r14d,%r14d
14008f423:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14008f428:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
14008f42d:	4c 8b 42 08          	mov    0x8(%rdx),%r8
14008f431:	49 ff 45 10          	incq   0x10(%r13)
14008f435:	49 89 14 24          	mov    %rdx,(%r12)
14008f439:	4d 89 44 24 08       	mov    %r8,0x8(%r12)
14008f43e:	4d 89 20             	mov    %r12,(%r8)
14008f441:	4c 89 62 08          	mov    %r12,0x8(%rdx)
14008f445:	49 8b 4d 18          	mov    0x18(%r13),%rcx
14008f449:	49 8b 45 30          	mov    0x30(%r13),%rax
14008f44d:	48 23 c5             	and    %rbp,%rax
14008f450:	48 03 c0             	add    %rax,%rax
14008f453:	4c 8b 0c c1          	mov    (%rcx,%rax,8),%r9
14008f457:	4d 3b 0f             	cmp    (%r15),%r9
14008f45a:	75 06                	jne    0x14008f462
14008f45c:	4c 89 24 c1          	mov    %r12,(%rcx,%rax,8)
14008f460:	eb 12                	jmp    0x14008f474
14008f462:	4c 3b ca             	cmp    %rdx,%r9
14008f465:	75 06                	jne    0x14008f46d
14008f467:	4c 89 24 c1          	mov    %r12,(%rcx,%rax,8)
14008f46b:	eb 0c                	jmp    0x14008f479
14008f46d:	4c 39 44 c1 08       	cmp    %r8,0x8(%rcx,%rax,8)
14008f472:	75 05                	jne    0x14008f479
14008f474:	4c 89 64 c1 08       	mov    %r12,0x8(%rcx,%rax,8)
14008f479:	49 bf 8e e3 38 8e e3 	movabs $0x38e38e38e38e38e,%r15
14008f480:	38 8e 03
14008f483:	48 8b 1b             	mov    (%rbx),%rbx
14008f486:	48 3b df             	cmp    %rdi,%rbx
14008f489:	0f 85 ac fd ff ff    	jne    0x14008f23b
14008f48f:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14008f494:	49 8b 5b 30          	mov    0x30(%r11),%rbx
14008f498:	49 8b 6b 40          	mov    0x40(%r11),%rbp
14008f49c:	49 8b 73 48          	mov    0x48(%r11),%rsi
14008f4a0:	49 8b e3             	mov    %r11,%rsp
14008f4a3:	41 5f                	pop    %r15
14008f4a5:	41 5e                	pop    %r14
14008f4a7:	41 5d                	pop    %r13
14008f4a9:	41 5c                	pop    %r12
14008f4ab:	5f                   	pop    %rdi
14008f4ac:	c3                   	ret
14008f4ad:	48 8d 0d 6c ee 29 00 	lea    0x29ee6c(%rip),%rcx        # 0x14032e320
14008f4b4:	e8 f7 d0 26 00       	call   0x1402fc5b0
14008f4b9:	cc                   	int3
14008f4ba:	cc                   	int3
14008f4bb:	cc                   	int3
14008f4bc:	cc                   	int3
14008f4bd:	cc                   	int3
14008f4be:	cc                   	int3
14008f4bf:	cc                   	int3
14008f4c0:	49 3b d0             	cmp    %r8,%rdx
14008f4c3:	0f 84 c3 02 00 00    	je     0x14008f78c
14008f4c9:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14008f4ce:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14008f4d3:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14008f4d8:	57                   	push   %rdi
14008f4d9:	41 54                	push   %r12
14008f4db:	41 55                	push   %r13
14008f4dd:	41 56                	push   %r14
14008f4df:	41 57                	push   %r15
14008f4e1:	48 83 ec 50          	sub    $0x50,%rsp
14008f4e5:	49 8b f8             	mov    %r8,%rdi
14008f4e8:	48 8b da             	mov    %rdx,%rbx
14008f4eb:	4c 8b e9             	mov    %rcx,%r13
14008f4ee:	45 33 f6             	xor    %r14d,%r14d
14008f4f1:	49 bf aa aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaa,%r15
14008f4f8:	aa aa 02
14008f4fb:	49 b9 b3 01 00 00 00 	movabs $0x100000001b3,%r9
14008f502:	01 00 00
14008f505:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
14008f50c:	9c f2 cb
14008f50f:	4c 8b 43 20          	mov    0x20(%rbx),%r8
14008f513:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14008f517:	48 83 7b 28 0f       	cmpq   $0xf,0x28(%rbx)
14008f51c:	76 04                	jbe    0x14008f522
14008f51e:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14008f522:	48 8b e8             	mov    %rax,%rbp
14008f525:	49 8b ce             	mov    %r14,%rcx
14008f528:	4d 85 c0             	test   %r8,%r8
14008f52b:	74 16                	je     0x14008f543
14008f52d:	0f 1f 00             	nopl   (%rax)
14008f530:	0f b6 04 0a          	movzbl (%rdx,%rcx,1),%eax
14008f534:	48 33 e8             	xor    %rax,%rbp
14008f537:	49 0f af e9          	imul   %r9,%rbp
14008f53b:	48 ff c1             	inc    %rcx
14008f53e:	49 3b c8             	cmp    %r8,%rcx
14008f541:	72 ed                	jb     0x14008f530
14008f543:	4c 8b cd             	mov    %rbp,%r9
14008f546:	4c 8d 43 10          	lea    0x10(%rbx),%r8
14008f54a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14008f54f:	49 8b cd             	mov    %r13,%rcx
14008f552:	e8 39 f3 ff ff       	call   0x14008e890
14008f557:	48 83 7c 24 48 00    	cmpq   $0x0,0x48(%rsp)
14008f55d:	0f 85 00 02 00 00    	jne    0x14008f763
14008f563:	4d 39 7d 10          	cmp    %r15,0x10(%r13)
14008f567:	0f 84 20 02 00 00    	je     0x14008f78d
14008f56d:	4d 8d 7d 08          	lea    0x8(%r13),%r15
14008f571:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
14008f576:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
14008f57b:	b9 60 00 00 00       	mov    $0x60,%ecx
14008f580:	e8 c3 ac 26 00       	call   0x1402fa248
14008f585:	4c 8b e0             	mov    %rax,%r12
14008f588:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14008f58d:	4c 8d 70 10          	lea    0x10(%rax),%r14
14008f591:	4c 89 b4 24 88 00 00 	mov    %r14,0x88(%rsp)
14008f598:	00
14008f599:	48 8d 53 10          	lea    0x10(%rbx),%rdx
14008f59d:	49 8b ce             	mov    %r14,%rcx
14008f5a0:	e8 2b 68 ff ff       	call   0x140085dd0
14008f5a5:	90                   	nop
14008f5a6:	8b 4b 30             	mov    0x30(%rbx),%ecx
14008f5a9:	41 89 4e 20          	mov    %ecx,0x20(%r14)
14008f5ad:	49 8d 4e 28          	lea    0x28(%r14),%rcx
14008f5b1:	48 8d 53 38          	lea    0x38(%rbx),%rdx
14008f5b5:	e8 16 68 ff ff       	call   0x140085dd0
14008f5ba:	0f b6 43 58          	movzbl 0x58(%rbx),%eax
14008f5be:	41 88 46 48          	mov    %al,0x48(%r14)
14008f5c2:	48 8b 43 58          	mov    0x58(%rbx),%rax
14008f5c6:	49 89 46 48          	mov    %rax,0x48(%r14)
14008f5ca:	48 8b 43 58          	mov    0x58(%rbx),%rax
14008f5ce:	49 89 46 48          	mov    %rax,0x48(%r14)
14008f5d2:	48 8b 43 58          	mov    0x58(%rbx),%rax
14008f5d6:	49 89 46 48          	mov    %rax,0x48(%r14)
14008f5da:	49 8b 55 10          	mov    0x10(%r13),%rdx
14008f5de:	48 83 c2 01          	add    $0x1,%rdx
14008f5e2:	0f 57 c0             	xorps  %xmm0,%xmm0
14008f5e5:	78 07                	js     0x14008f5ee
14008f5e7:	f3 48 0f 2a c2       	cvtsi2ss %rdx,%xmm0
14008f5ec:	eb 18                	jmp    0x14008f606
14008f5ee:	48 8b ca             	mov    %rdx,%rcx
14008f5f1:	48 d1 e9             	shr    $1,%rcx
14008f5f4:	48 8b c2             	mov    %rdx,%rax
14008f5f7:	83 e0 01             	and    $0x1,%eax
14008f5fa:	48 0b c8             	or     %rax,%rcx
14008f5fd:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
14008f602:	f3 0f 58 c0          	addss  %xmm0,%xmm0
14008f606:	49 8b 4d 38          	mov    0x38(%r13),%rcx
14008f60a:	0f 57 c9             	xorps  %xmm1,%xmm1
14008f60d:	48 85 c9             	test   %rcx,%rcx
14008f610:	78 07                	js     0x14008f619
14008f612:	f3 48 0f 2a c9       	cvtsi2ss %rcx,%xmm1
14008f617:	eb 15                	jmp    0x14008f62e
14008f619:	48 8b c1             	mov    %rcx,%rax
14008f61c:	48 d1 e8             	shr    $1,%rax