14066a22a:	48 85 c9             	test   %rcx,%rcx
14066a22d:	74 20                	je     0x14066a24f
14066a22f:	8b 41 10             	mov    0x10(%rcx),%eax
14066a232:	ff c8                	dec    %eax
14066a234:	89 41 10             	mov    %eax,0x10(%rcx)
14066a237:	85 c0                	test   %eax,%eax
14066a239:	7f 14                	jg     0x14066a24f
14066a23b:	78 57                	js     0x14066a294
14066a23d:	48 8b 01             	mov    (%rcx),%rax
14066a240:	ba 01 00 00 00       	mov    $0x1,%edx
14066a245:	48 8b 00             	mov    (%rax),%rax
14066a248:	ff 15 d2 97 91 00    	call   *0x9197d2(%rip)        # 0x140f83a20
14066a24e:	90                   	nop
14066a24f:	b9 48 00 00 00       	mov    $0x48,%ecx
14066a254:	e8 af 0e 7b 00       	call   0x140e1b108
14066a259:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14066a25e:	48 85 c0             	test   %rax,%rax
14066a261:	74 0f                	je     0x14066a272
14066a263:	48 8b 55 40          	mov    0x40(%rbp),%rdx
14066a267:	48 8b c8             	mov    %rax,%rcx
14066a26a:	e8 21 01 0f 00       	call   0x14075a390
14066a26f:	48 8b f0             	mov    %rax,%rsi
14066a272:	4c 8b c6             	mov    %rsi,%r8
14066a275:	49 8b d7             	mov    %r15,%rdx
14066a278:	48 8b cd             	mov    %rbp,%rcx
14066a27b:	e8 90 c7 c0 ff       	call   0x140276a10
14066a280:	49 8b c7             	mov    %r15,%rax
14066a283:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14066a288:	48 83 c4 30          	add    $0x30,%rsp
14066a28c:	41 5f                	pop    %r15
14066a28e:	41 5e                	pop    %r14
14066a290:	5f                   	pop    %rdi
14066a291:	5e                   	pop    %rsi
14066a292:	5d                   	pop    %rbp
14066a293:	c3                   	ret
14066a294:	b9 02 00 00 00       	mov    $0x2,%ecx
14066a299:	e8 62 04 12 00       	call   0x14078a700
14066a29e:	90                   	nop
14066a29f:	b9 02 00 00 00       	mov    $0x2,%ecx
14066a2a4:	e8 57 04 12 00       	call   0x14078a700
14066a2a9:	90                   	nop
14066a2aa:	33 c9                	xor    %ecx,%ecx
14066a2ac:	e8 4f 04 12 00       	call   0x14078a700
14066a2b1:	cc                   	int3
14066a2b2:	b9 01 00 00 00       	mov    $0x1,%ecx
14066a2b7:	e8 44 04 12 00       	call   0x14078a700
14066a2bc:	90                   	nop
14066a2bd:	b9 02 00 00 00       	mov    $0x2,%ecx
14066a2c2:	e8 39 04 12 00       	call   0x14078a700
14066a2c7:	cc                   	int3
14066a2c8:	cc                   	int3
14066a2c9:	cc                   	int3
14066a2ca:	cc                   	int3
14066a2cb:	cc                   	int3
14066a2cc:	cc                   	int3
14066a2cd:	cc                   	int3
14066a2ce:	cc                   	int3
14066a2cf:	cc                   	int3
14066a2d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14066a2d5:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14066a2da:	55                   	push   %rbp
14066a2db:	56                   	push   %rsi
14066a2dc:	57                   	push   %rdi
14066a2dd:	48 83 ec 40          	sub    $0x40,%rsp
14066a2e1:	48 8b fa             	mov    %rdx,%rdi
14066a2e4:	48 8b e9             	mov    %rcx,%rbp
14066a2e7:	33 db                	xor    %ebx,%ebx
14066a2e9:	b9 60 00 00 00       	mov    $0x60,%ecx
14066a2ee:	e8 15 0e 7b 00       	call   0x140e1b108
14066a2f3:	48 8b f0             	mov    %rax,%rsi
14066a2f6:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
14066a2fb:	48 85 c0             	test   %rax,%rax
14066a2fe:	74 4e                	je     0x14066a34e
14066a300:	48 8d 44 24 68       	lea    0x68(%rsp),%rax
14066a305:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14066a30a:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
14066a30e:	48 8b 11             	mov    (%rcx),%rdx
14066a311:	48 8b 42 60          	mov    0x60(%rdx),%rax
14066a315:	48 8d 54 24 68       	lea    0x68(%rsp),%rdx
14066a31a:	ff 15 00 97 91 00    	call   *0x919700(%rip)        # 0x140f83a20
14066a320:	48 8b d8             	mov    %rax,%rbx
14066a323:	48 8b 4d 40          	mov    0x40(%rbp),%rcx
14066a327:	48 8b 11             	mov    (%rcx),%rdx
14066a32a:	48 8b 82 90 00 00 00 	mov    0x90(%rdx),%rax
14066a331:	48 8d 54 24 70       	lea    0x70(%rsp),%rdx
14066a336:	ff 15 e4 96 91 00    	call   *0x9196e4(%rip)        # 0x140f83a20
14066a33c:	90                   	nop
14066a33d:	4c 8b c3             	mov    %rbx,%r8
14066a340:	48 8b d0             	mov    %rax,%rdx
14066a343:	48 8b ce             	mov    %rsi,%rcx
14066a346:	e8 a5 02 0f 00       	call   0x14075a5f0
14066a34b:	48 8b d8             	mov    %rax,%rbx
14066a34e:	4c 8b c3             	mov    %rbx,%r8
14066a351:	48 8b d7             	mov    %rdi,%rdx
14066a354:	48 8b cd             	mov    %rbp,%rcx
14066a357:	e8 b4 c6 c0 ff       	call   0x140276a10
14066a35c:	48 8b c7             	mov    %rdi,%rax
14066a35f:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14066a364:	48 83 c4 40          	add    $0x40,%rsp
14066a368:	5f                   	pop    %rdi
14066a369:	5e                   	pop    %rsi
14066a36a:	5d                   	pop    %rbp
14066a36b:	c3                   	ret
14066a36c:	cc                   	int3
14066a36d:	cc                   	int3
14066a36e:	cc                   	int3
14066a36f:	cc                   	int3
14066a370:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14066a375:	55                   	push   %rbp
14066a376:	56                   	push   %rsi
14066a377:	57                   	push   %rdi
14066a378:	48 83 ec 40          	sub    $0x40,%rsp
14066a37c:	49 8b f1             	mov    %r9,%rsi
14066a37f:	49 8b e8             	mov    %r8,%rbp
14066a382:	48 8b da             	mov    %rdx,%rbx
14066a385:	48 8b f9             	mov    %rcx,%rdi
14066a388:	f2 0f 10 05 e0 64 dc 	movsd  0xdc64e0(%rip),%xmm0        # 0x141430870
14066a38f:	00
14066a390:	f2 0f 11 41 20       	movsd  %xmm0,0x20(%rcx)
14066a395:	ff 41 28             	incl   0x28(%rcx)
14066a398:	48 8b 49 40          	mov    0x40(%rcx),%rcx
14066a39c:	48 8b 01             	mov    (%rcx),%rax
14066a39f:	48 8d 54 24 78       	lea    0x78(%rsp),%rdx
14066a3a4:	48 8b 40 30          	mov    0x30(%rax),%rax
14066a3a8:	ff 15 72 96 91 00    	call   *0x919672(%rip)        # 0x140f83a20
14066a3ae:	90                   	nop
14066a3af:	83 3e 03             	cmpl   $0x3,(%rsi)
14066a3b2:	75 06                	jne    0x14066a3ba
14066a3b4:	c7 06 00 00 00 00    	movl   $0x0,(%rsi)
14066a3ba:	48 83 7f 48 00       	cmpq   $0x0,0x48(%rdi)
14066a3bf:	74 3c                	je     0x14066a3fd
14066a3c1:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
14066a3c6:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14066a3cb:	48 85 c0             	test   %rax,%rax
14066a3ce:	74 15                	je     0x14066a3e5
14066a3d0:	8b 48 10             	mov    0x10(%rax),%ecx
14066a3d3:	ff c1                	inc    %ecx
14066a3d5:	89 48 10             	mov    %ecx,0x10(%rax)
14066a3d8:	83 f9 01             	cmp    $0x1,%ecx
14066a3db:	7e 6a                	jle    0x14066a447
14066a3dd:	81 f9 ff ff ff 7f    	cmp    $0x7fffffff,%ecx
14066a3e3:	74 6a                	je     0x14066a44f
14066a3e5:	48 8b 47 48          	mov    0x48(%rdi),%rax
14066a3e9:	48 8b 48 38          	mov    0x38(%rax),%rcx
14066a3ed:	4c 8d 44 24 60       	lea    0x60(%rsp),%r8
14066a3f2:	8b 51 48             	mov    0x48(%rcx),%edx
14066a3f5:	48 8b cd             	mov    %rbp,%rcx
14066a3f8:	e8 83 e1 17 00       	call   0x1407e8580
14066a3fd:	33 c0                	xor    %eax,%eax
14066a3ff:	48 89 03             	mov    %rax,(%rbx)
14066a402:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
14066a407:	48 85 c9             	test   %rcx,%rcx
14066a40a:	74 20                	je     0x14066a42c
14066a40c:	8b 41 10             	mov    0x10(%rcx),%eax
14066a40f:	ff c8                	dec    %eax
14066a411:	89 41 10             	mov    %eax,0x10(%rcx)
14066a414:	85 c0                	test   %eax,%eax
14066a416:	7f 14                	jg     0x14066a42c
14066a418:	78 22                	js     0x14066a43c
14066a41a:	48 8b 01             	mov    (%rcx),%rax
14066a41d:	ba 01 00 00 00       	mov    $0x1,%edx
14066a422:	48 8b 00             	mov    (%rax),%rax
14066a425:	ff 15 f5 95 91 00    	call   *0x9195f5(%rip)        # 0x140f83a20
14066a42b:	90                   	nop
14066a42c:	48 8b c3             	mov    %rbx,%rax
14066a42f:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14066a434:	48 83 c4 40          	add    $0x40,%rsp
14066a438:	5f                   	pop    %rdi
14066a439:	5e                   	pop    %rsi
14066a43a:	5d                   	pop    %rbp
14066a43b:	c3                   	ret
14066a43c:	b9 02 00 00 00       	mov    $0x2,%ecx
14066a441:	e8 ba 02 12 00       	call   0x14078a700
14066a446:	90                   	nop
14066a447:	33 c9                	xor    %ecx,%ecx
14066a449:	e8 b2 02 12 00       	call   0x14078a700
14066a44e:	cc                   	int3
14066a44f:	b9 01 00 00 00       	mov    $0x1,%ecx
14066a454:	e8 a7 02 12 00       	call   0x14078a700
14066a459:	cc                   	int3
14066a45a:	cc                   	int3
14066a45b:	cc                   	int3
14066a45c:	cc                   	int3
14066a45d:	cc                   	int3
14066a45e:	cc                   	int3
14066a45f:	cc                   	int3
14066a460:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14066a465:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14066a46a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14066a46f:	41 56                	push   %r14
14066a471:	48 83 ec 30          	sub    $0x30,%rsp
14066a475:	48 8b da             	mov    %rdx,%rbx
14066a478:	48 8b f1             	mov    %rcx,%rsi
14066a47b:	f2 0f 10 05 ed 63 dc 	movsd  0xdc63ed(%rip),%xmm0        # 0x141430870
14066a482:	00
14066a483:	f2 0f 11 41 20       	movsd  %xmm0,0x20(%rcx)
14066a488:	ff 41 28             	incl   0x28(%rcx)
14066a48b:	41 c7 01 00 00 00 00 	movl   $0x0,(%r9)
14066a492:	48 8b 49 40          	mov    0x40(%rcx),%rcx
14066a496:	48 8b 01             	mov    (%rcx),%rax
14066a499:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14066a49e:	48 8b 40 30          	mov    0x30(%rax),%rax
14066a4a2:	ff 15 78 95 91 00    	call   *0x919578(%rip)        # 0x140f83a20
14066a4a8:	90                   	nop
14066a4a9:	48 8b 08             	mov    (%rax),%rcx
14066a4ac:	e8 8f a2 0c 00       	call   0x140734740
14066a4b1:	48 8b f8             	mov    %rax,%rdi
14066a4b4:	4c 8b 44 24 40       	mov    0x40(%rsp),%r8
14066a4b9:	4d 85 c0             	test   %r8,%r8
14066a4bc:	74 25                	je     0x14066a4e3
14066a4be:	41 8b 48 10          	mov    0x10(%r8),%ecx
14066a4c2:	ff c9                	dec    %ecx
14066a4c4:	41 89 48 10          	mov    %ecx,0x10(%r8)
14066a4c8:	85 c9                	test   %ecx,%ecx
14066a4ca:	7f 17                	jg     0x14066a4e3
14066a4cc:	78 68                	js     0x14066a536
14066a4ce:	49 8b 00             	mov    (%r8),%rax
14066a4d1:	ba 01 00 00 00       	mov    $0x1,%edx
14066a4d6:	49 8b c8             	mov    %r8,%rcx
14066a4d9:	48 8b 00             	mov    (%rax),%rax
14066a4dc:	ff 15 3e 95 91 00    	call   *0x91953e(%rip)        # 0x140f83a20
14066a4e2:	90                   	nop
14066a4e3:	48 8b 57 28          	mov    0x28(%rdi),%rdx
14066a4e7:	48 2b 57 20          	sub    0x20(%rdi),%rdx
14066a4eb:	48 c1 fa 03          	sar    $0x3,%rdx
14066a4ef:	48 63 46 48          	movslq 0x48(%rsi),%rax
14066a4f3:	48 3b d0             	cmp    %rax,%rdx
14066a4f6:	75 1e                	jne    0x14066a516
14066a4f8:	33 c0                	xor    %eax,%eax
14066a4fa:	48 89 03             	mov    %rax,(%rbx)
14066a4fd:	48 8b c3             	mov    %rbx,%rax
14066a500:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14066a505:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14066a50a:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14066a50f:	48 83 c4 30          	add    $0x30,%rsp
14066a513:	41 5e                	pop    %r14
14066a515:	c3                   	ret
14066a516:	48 8d 4e 40          	lea    0x40(%rsi),%rcx
14066a51a:	e8 b1 51 b3 ff       	call   0x14019f6d0
14066a51f:	48 8b d0             	mov    %rax,%rdx
14066a522:	4c 8d 05 37 e1 9a 00 	lea    0x9ae137(%rip),%r8        # 0x141018660
14066a529:	48 8b 0d c8 6f dc 00 	mov    0xdc6fc8(%rip),%rcx        # 0x1414314f8
14066a530:	e8 2b 91 12 00       	call   0x140793660
14066a535:	90                   	nop
14066a536:	b9 02 00 00 00       	mov    $0x2,%ecx
14066a53b:	e8 c0 01 12 00       	call   0x14078a700
14066a540:	cc                   	int3
14066a541:	cc                   	int3
14066a542:	cc                   	int3
14066a543:	cc                   	int3
14066a544:	cc                   	int3
14066a545:	cc                   	int3
14066a546:	cc                   	int3
14066a547:	cc                   	int3
14066a548:	cc                   	int3
14066a549:	cc                   	int3
14066a54a:	cc                   	int3
14066a54b:	cc                   	int3
14066a54c:	cc                   	int3
14066a54d:	cc                   	int3
14066a54e:	cc                   	int3
14066a54f:	cc                   	int3
14066a550:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14066a555:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14066a55a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14066a55f:	57                   	push   %rdi
14066a560:	41 54                	push   %r12
14066a562:	41 55                	push   %r13
14066a564:	41 56                	push   %r14
14066a566:	41 57                	push   %r15
14066a568:	48 83 ec 20          	sub    $0x20,%rsp
14066a56c:	4c 8b ea             	mov    %rdx,%r13
14066a56f:	48 8b 59 40          	mov    0x40(%rcx),%rbx
14066a573:	33 ff                	xor    %edi,%edi
14066a575:	44 8b f7             	mov    %edi,%r14d
14066a578:	39 7b 44             	cmp    %edi,0x44(%rbx)
14066a57b:	0f 8e 09 01 00 00    	jle    0x14066a68a
14066a581:	44 8b ff             	mov    %edi,%r15d
14066a584:	0f 1f 40 00          	nopl   0x0(%rax)
14066a588:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14066a58f:	00
14066a590:	48 8b 43 38          	mov    0x38(%rbx),%rax
14066a594:	4a 8b 0c f8          	mov    (%rax,%r15,8),%rcx
14066a598:	48 8b 01             	mov    (%rcx),%rax
14066a59b:	4d 8b c5             	mov    %r13,%r8
14066a59e:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
14066a5a3:	48 8b 80 98 00 00 00 	mov    0x98(%rax),%rax
14066a5aa:	ff 15 70 94 91 00    	call   *0x919470(%rip)        # 0x140f83a20
14066a5b0:	4c 8b 20             	mov    (%rax),%r12
14066a5b3:	48 89 38             	mov    %rdi,(%rax)
14066a5b6:	4d 85 ff             	test   %r15,%r15
14066a5b9:	0f 88 91 00 00 00    	js     0x14066a650
14066a5bf:	8b 73 44             	mov    0x44(%rbx),%esi
14066a5c2:	8d 46 ff             	lea    -0x1(%rsi),%eax
14066a5c5:	44 3b f0             	cmp    %eax,%r14d
14066a5c8:	0f 8e 7a 00 00 00    	jle    0x14066a648
14066a5ce:	41 8d 46 01          	lea    0x1(%r14),%eax
14066a5d2:	3b c6                	cmp    %esi,%eax
14066a5d4:	0f 4d f0             	cmovge %eax,%esi
14066a5d7:	8b 43 40             	mov    0x40(%rbx),%eax
14066a5da:	3b f0                	cmp    %eax,%esi
14066a5dc:	74 3f                	je     0x14066a61d
14066a5de:	48 63 fe             	movslq %esi,%rdi
14066a5e1:	48 c1 e7 03          	shl    $0x3,%rdi
14066a5e5:	48 8b d7             	mov    %rdi,%rdx
14066a5e8:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
14066a5ec:	e8 b7 6b 7c 00       	call   0x140e311a8
14066a5f1:	48 8b e8             	mov    %rax,%rbp
14066a5f4:	48 85 ff             	test   %rdi,%rdi
14066a5f7:	0f 84 aa 00 00 00    	je     0x14066a6a7
14066a5fd:	48 85 c0             	test   %rax,%rax
14066a600:	0f 85 a1 00 00 00    	jne    0x14066a6a7
14066a606:	48 8d 0d 5b a5 99 00 	lea    0x99a55b(%rip),%rcx        # 0x141004b68
14066a60d:	e8 0e 0f 20 00       	call   0x14086b520
14066a612:	48 89 6b 38          	mov    %rbp,0x38(%rbx)
14066a616:	33 ff                	xor    %edi,%edi
14066a618:	89 7b 40             	mov    %edi,0x40(%rbx)
14066a61b:	8b c7                	mov    %edi,%eax
14066a61d:	48 63 4b 44          	movslq 0x44(%rbx),%rcx
14066a621:	3b c8                	cmp    %eax,%ecx
14066a623:	7d 20                	jge    0x14066a645
14066a625:	48 8d 14 cd 00 00 00 	lea    0x0(,%rcx,8),%rdx
14066a62c:	00
14066a62d:	0f 1f 00             	nopl   (%rax)
14066a630:	48 8b 43 38          	mov    0x38(%rbx),%rax
14066a634:	48 89 3c 02          	mov    %rdi,(%rdx,%rax,1)
14066a638:	ff c1                	inc    %ecx
14066a63a:	48 8d 52 08          	lea    0x8(%rdx),%rdx
14066a63e:	8b 43 40             	mov    0x40(%rbx),%eax
14066a641:	3b c8                	cmp    %eax,%ecx
14066a643:	7c eb                	jl     0x14066a630
14066a645:	89 43 44             	mov    %eax,0x44(%rbx)
14066a648:	48 8b 43 38          	mov    0x38(%rbx),%rax
14066a64c:	4e 89 24 f8          	mov    %r12,(%rax,%r15,8)
14066a650:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14066a655:	48 85 c9             	test   %rcx,%rcx
14066a658:	74 20                	je     0x14066a67a
14066a65a:	8b 41 10             	mov    0x10(%rcx),%eax
14066a65d:	ff c8                	dec    %eax
14066a65f:	89 41 10             	mov    %eax,0x10(%rcx)
14066a662:	85 c0                	test   %eax,%eax
14066a664:	7f 14                	jg     0x14066a67a
14066a666:	78 58                	js     0x14066a6c0
14066a668:	48 8b 01             	mov    (%rcx),%rax
14066a66b:	ba 01 00 00 00       	mov    $0x1,%edx
14066a670:	48 8b 00             	mov    (%rax),%rax
14066a673:	ff 15 a7 93 91 00    	call   *0x9193a7(%rip)        # 0x140f83a20
14066a679:	90                   	nop
14066a67a:	41 ff c6             	inc    %r14d
14066a67d:	49 ff c7             	inc    %r15