140cee260:	4c 8b ca             	mov    %rdx,%r9
140cee263:	44 8b c1             	mov    %ecx,%r8d
140cee266:	48 8b d0             	mov    %rax,%rdx
140cee269:	49 8b c9             	mov    %r9,%rcx
140cee26c:	e8 af ee 14 00       	call   0x140e3d120
140cee271:	33 c9                	xor    %ecx,%ecx
140cee273:	85 c0                	test   %eax,%eax
140cee275:	0f 94 c1             	sete   %cl
140cee278:	8b c1                	mov    %ecx,%eax
140cee27a:	48 83 c4 28          	add    $0x28,%rsp
140cee27e:	c3                   	ret
140cee27f:	cc                   	int3
140cee280:	48 85 c9             	test   %rcx,%rcx
140cee283:	74 43                	je     0x140cee2c8
140cee285:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140cee28a:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140cee28f:	57                   	push   %rdi
140cee290:	b8 20 00 00 00       	mov    $0x20,%eax
140cee295:	e8 06 d2 12 00       	call   0x140e1b4a0
140cee29a:	48 2b e0             	sub    %rax,%rsp
140cee29d:	41 8b f9             	mov    %r9d,%edi
140cee2a0:	49 8b f0             	mov    %r8,%rsi
140cee2a3:	48 8b d9             	mov    %rcx,%rbx
140cee2a6:	e8 55 40 31 ff       	call   0x140002300
140cee2ab:	44 8b c7             	mov    %edi,%r8d
140cee2ae:	48 8b d6             	mov    %rsi,%rdx
140cee2b1:	48 8b cb             	mov    %rbx,%rcx
140cee2b4:	e8 57 37 fd ff       	call   0x140cc1a10
140cee2b9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140cee2be:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140cee2c3:	48 83 c4 20          	add    $0x20,%rsp
140cee2c7:	5f                   	pop    %rdi
140cee2c8:	c3                   	ret
140cee2c9:	cc                   	int3
140cee2ca:	cc                   	int3
140cee2cb:	cc                   	int3
140cee2cc:	cc                   	int3
140cee2cd:	cc                   	int3
140cee2ce:	cc                   	int3
140cee2cf:	cc                   	int3
140cee2d0:	b8 28 00 00 00       	mov    $0x28,%eax
140cee2d5:	e8 c6 d1 12 00       	call   0x140e1b4a0
140cee2da:	48 2b e0             	sub    %rax,%rsp
140cee2dd:	48 83 c4 28          	add    $0x28,%rsp
140cee2e1:	e9 2a 37 fd ff       	jmp    0x140cc1a10
140cee2e6:	cc                   	int3
140cee2e7:	cc                   	int3
140cee2e8:	cc                   	int3
140cee2e9:	cc                   	int3
140cee2ea:	cc                   	int3
140cee2eb:	cc                   	int3
140cee2ec:	cc                   	int3
140cee2ed:	cc                   	int3
140cee2ee:	cc                   	int3
140cee2ef:	cc                   	int3
140cee2f0:	b8 28 00 00 00       	mov    $0x28,%eax
140cee2f5:	e8 a6 d1 12 00       	call   0x140e1b4a0
140cee2fa:	48 2b e0             	sub    %rax,%rsp
140cee2fd:	48 83 c4 28          	add    $0x28,%rsp
140cee301:	e9 aa 36 fd ff       	jmp    0x140cc19b0
140cee306:	cc                   	int3
140cee307:	cc                   	int3
140cee308:	cc                   	int3
140cee309:	cc                   	int3
140cee30a:	cc                   	int3
140cee30b:	cc                   	int3
140cee30c:	cc                   	int3
140cee30d:	cc                   	int3
140cee30e:	cc                   	int3
140cee30f:	cc                   	int3
140cee310:	b8 28 00 00 00       	mov    $0x28,%eax
140cee315:	e8 86 d1 12 00       	call   0x140e1b4a0
140cee31a:	48 2b e0             	sub    %rax,%rsp
140cee31d:	48 83 c4 28          	add    $0x28,%rsp
140cee321:	e9 2a 3a fd ff       	jmp    0x140cc1d50
140cee326:	cc                   	int3
140cee327:	cc                   	int3
140cee328:	cc                   	int3
140cee329:	cc                   	int3
140cee32a:	cc                   	int3
140cee32b:	cc                   	int3
140cee32c:	cc                   	int3
140cee32d:	cc                   	int3
140cee32e:	cc                   	int3
140cee32f:	cc                   	int3
140cee330:	48 85 c9             	test   %rcx,%rcx
140cee333:	74 5b                	je     0x140cee390
140cee335:	53                   	push   %rbx
140cee336:	b8 20 00 00 00       	mov    $0x20,%eax
140cee33b:	e8 60 d1 12 00       	call   0x140e1b4a0
140cee340:	48 2b e0             	sub    %rax,%rsp
140cee343:	48 8b d9             	mov    %rcx,%rbx
140cee346:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140cee34a:	48 85 c9             	test   %rcx,%rcx
140cee34d:	74 27                	je     0x140cee376
140cee34f:	f6 43 18 01          	testb  $0x1,0x18(%rbx)
140cee353:	4c 8d 05 de 91 47 00 	lea    0x4791de(%rip),%r8        # 0x141167538
140cee35a:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140cee35e:	74 0b                	je     0x140cee36b
140cee360:	44 8d 48 11          	lea    0x11(%rax),%r9d
140cee364:	e8 17 ff ff ff       	call   0x140cee280
140cee369:	eb 0b                	jmp    0x140cee376
140cee36b:	41 b9 33 00 00 00    	mov    $0x33,%r9d
140cee371:	e8 ba 37 fd ff       	call   0x140cc1b30
140cee376:	41 b8 35 00 00 00    	mov    $0x35,%r8d
140cee37c:	48 8d 15 b5 91 47 00 	lea    0x4791b5(%rip),%rdx        # 0x141167538
140cee383:	48 8b cb             	mov    %rbx,%rcx
140cee386:	e8 85 36 fd ff       	call   0x140cc1a10
140cee38b:	48 83 c4 20          	add    $0x20,%rsp
140cee38f:	5b                   	pop    %rbx
140cee390:	c3                   	ret
140cee391:	cc                   	int3
140cee392:	cc                   	int3
140cee393:	cc                   	int3
140cee394:	cc                   	int3
140cee395:	cc                   	int3
140cee396:	cc                   	int3
140cee397:	cc                   	int3
140cee398:	cc                   	int3
140cee399:	cc                   	int3
140cee39a:	cc                   	int3
140cee39b:	cc                   	int3
140cee39c:	cc                   	int3
140cee39d:	cc                   	int3
140cee39e:	cc                   	int3
140cee39f:	cc                   	int3
140cee3a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140cee3a5:	57                   	push   %rdi
140cee3a6:	b8 30 00 00 00       	mov    $0x30,%eax
140cee3ab:	e8 f0 d0 12 00       	call   0x140e1b4a0
140cee3b0:	48 2b e0             	sub    %rax,%rsp
140cee3b3:	48 8b 01             	mov    (%rcx),%rax
140cee3b6:	48 8b da             	mov    %rdx,%rbx
140cee3b9:	48 8b f9             	mov    %rcx,%rdi
140cee3bc:	48 3b c2             	cmp    %rdx,%rax
140cee3bf:	73 1f                	jae    0x140cee3e0
140cee3c1:	48 39 51 10          	cmp    %rdx,0x10(%rcx)
140cee3c5:	72 2a                	jb     0x140cee3f1
140cee3c7:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140cee3cb:	48 85 c9             	test   %rcx,%rcx
140cee3ce:	74 10                	je     0x140cee3e0
140cee3d0:	4c 8b c2             	mov    %rdx,%r8
140cee3d3:	48 03 c8             	add    %rax,%rcx
140cee3d6:	4c 2b c0             	sub    %rax,%r8
140cee3d9:	33 d2                	xor    %edx,%edx
140cee3db:	e8 d0 12 1f 00       	call   0x140edf6b0
140cee3e0:	48 89 1f             	mov    %rbx,(%rdi)
140cee3e3:	48 8b c3             	mov    %rbx,%rax
140cee3e6:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee3eb:	48 83 c4 30          	add    $0x30,%rsp
140cee3ef:	5f                   	pop    %rdi
140cee3f0:	c3                   	ret
140cee3f1:	48 81 fb fc ff ff 5f 	cmp    $0x5ffffffc,%rbx
140cee3f8:	76 2d                	jbe    0x140cee427
140cee3fa:	ba 64 00 00 00       	mov    $0x64,%edx
140cee3ff:	c7 44 24 20 5a 00 00 	movl   $0x5a,0x20(%rsp)
140cee406:	00
140cee407:	4c 8d 0d 2a 91 47 00 	lea    0x47912a(%rip),%r9        # 0x141167538
140cee40e:	8d 4a a3             	lea    -0x5d(%rdx),%ecx
140cee411:	44 8d 42 dd          	lea    -0x23(%rdx),%r8d
140cee415:	e8 66 28 fe ff       	call   0x140cd0c80
140cee41a:	33 c0                	xor    %eax,%eax
140cee41c:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee421:	48 83 c4 30          	add    $0x30,%rsp
140cee425:	5f                   	pop    %rdi
140cee426:	c3                   	ret
140cee427:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140cee42c:	48 8d 4a 03          	lea    0x3(%rdx),%rcx
140cee430:	48 b8 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rax
140cee437:	aa aa aa
140cee43a:	48 f7 e1             	mul    %rcx
140cee43d:	48 8b f2             	mov    %rdx,%rsi
140cee440:	48 d1 ee             	shr    $1,%rsi
140cee443:	48 c1 e6 02          	shl    $0x2,%rsi
140cee447:	f6 47 18 01          	testb  $0x1,0x18(%rdi)
140cee44b:	48 8b d6             	mov    %rsi,%rdx
140cee44e:	74 0a                	je     0x140cee45a
140cee450:	48 8b cf             	mov    %rdi,%rcx
140cee453:	e8 08 03 00 00       	call   0x140cee760
140cee458:	eb 16                	jmp    0x140cee470
140cee45a:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140cee45e:	4c 8d 05 d3 90 47 00 	lea    0x4790d3(%rip),%r8        # 0x141167538
140cee465:	41 b9 61 00 00 00    	mov    $0x61,%r9d
140cee46b:	e8 e0 35 fd ff       	call   0x140cc1a50
140cee470:	48 8b c8             	mov    %rax,%rcx
140cee473:	48 85 c0             	test   %rax,%rax
140cee476:	75 32                	jne    0x140cee4aa
140cee478:	4c 8d 0d b9 90 47 00 	lea    0x4790b9(%rip),%r9        # 0x141167538
140cee47f:	c7 44 24 20 63 00 00 	movl   $0x63,0x20(%rsp)
140cee486:	00
140cee487:	8d 50 64             	lea    0x64(%rax),%edx
140cee48a:	8d 48 07             	lea    0x7(%rax),%ecx
140cee48d:	44 8d 40 41          	lea    0x41(%rax),%r8d
140cee491:	e8 ea 27 fe ff       	call   0x140cd0c80
140cee496:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140cee49b:	33 db                	xor    %ebx,%ebx
140cee49d:	8b c3                	mov    %ebx,%eax
140cee49f:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee4a4:	48 83 c4 30          	add    $0x30,%rsp
140cee4a8:	5f                   	pop    %rdi
140cee4a9:	c3                   	ret
140cee4aa:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140cee4ae:	4c 8b c3             	mov    %rbx,%r8
140cee4b1:	4c 2b 07             	sub    (%rdi),%r8
140cee4b4:	33 d2                	xor    %edx,%edx
140cee4b6:	48 03 0f             	add    (%rdi),%rcx
140cee4b9:	48 89 77 10          	mov    %rsi,0x10(%rdi)
140cee4bd:	e8 ee 11 1f 00       	call   0x140edf6b0
140cee4c2:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140cee4c7:	48 8b c3             	mov    %rbx,%rax
140cee4ca:	48 89 1f             	mov    %rbx,(%rdi)
140cee4cd:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee4d2:	48 83 c4 30          	add    $0x30,%rsp
140cee4d6:	5f                   	pop    %rdi
140cee4d7:	c3                   	ret
140cee4d8:	cc                   	int3
140cee4d9:	cc                   	int3
140cee4da:	cc                   	int3
140cee4db:	cc                   	int3
140cee4dc:	cc                   	int3
140cee4dd:	cc                   	int3
140cee4de:	cc                   	int3
140cee4df:	cc                   	int3
140cee4e0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140cee4e5:	57                   	push   %rdi
140cee4e6:	b8 30 00 00 00       	mov    $0x30,%eax
140cee4eb:	e8 b0 cf 12 00       	call   0x140e1b4a0
140cee4f0:	48 2b e0             	sub    %rax,%rsp
140cee4f3:	48 8b da             	mov    %rdx,%rbx
140cee4f6:	48 8b f9             	mov    %rcx,%rdi
140cee4f9:	48 8b 11             	mov    (%rcx),%rdx
140cee4fc:	48 3b d3             	cmp    %rbx,%rdx
140cee4ff:	72 2b                	jb     0x140cee52c
140cee501:	48 8b 41 08          	mov    0x8(%rcx),%rax
140cee505:	48 85 c0             	test   %rax,%rax
140cee508:	74 11                	je     0x140cee51b
140cee50a:	48 2b d3             	sub    %rbx,%rdx
140cee50d:	48 8d 0c 18          	lea    (%rax,%rbx,1),%rcx
140cee511:	4c 8b c2             	mov    %rdx,%r8
140cee514:	33 d2                	xor    %edx,%edx
140cee516:	e8 95 11 1f 00       	call   0x140edf6b0
140cee51b:	48 89 1f             	mov    %rbx,(%rdi)
140cee51e:	48 8b c3             	mov    %rbx,%rax
140cee521:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee526:	48 83 c4 30          	add    $0x30,%rsp
140cee52a:	5f                   	pop    %rdi
140cee52b:	c3                   	ret
140cee52c:	4c 8b 51 10          	mov    0x10(%rcx),%r10
140cee530:	4c 3b d3             	cmp    %rbx,%r10
140cee533:	72 25                	jb     0x140cee55a
140cee535:	48 8b 49 08          	mov    0x8(%rcx),%rcx
140cee539:	4c 8b c3             	mov    %rbx,%r8
140cee53c:	4c 2b c2             	sub    %rdx,%r8
140cee53f:	48 03 ca             	add    %rdx,%rcx
140cee542:	33 d2                	xor    %edx,%edx
140cee544:	e8 67 11 1f 00       	call   0x140edf6b0
140cee549:	48 8b c3             	mov    %rbx,%rax
140cee54c:	48 89 1f             	mov    %rbx,(%rdi)
140cee54f:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee554:	48 83 c4 30          	add    $0x30,%rsp
140cee558:	5f                   	pop    %rdi
140cee559:	c3                   	ret
140cee55a:	48 81 fb fc ff ff 5f 	cmp    $0x5ffffffc,%rbx
140cee561:	76 2d                	jbe    0x140cee590
140cee563:	ba 69 00 00 00       	mov    $0x69,%edx
140cee568:	c7 44 24 20 80 00 00 	movl   $0x80,0x20(%rsp)
140cee56f:	00
140cee570:	4c 8d 0d c1 8f 47 00 	lea    0x478fc1(%rip),%r9        # 0x141167538
140cee577:	8d 4a 9e             	lea    -0x62(%rdx),%ecx
140cee57a:	44 8d 42 d8          	lea    -0x28(%rdx),%r8d
140cee57e:	e8 fd 26 fe ff       	call   0x140cd0c80
140cee583:	33 c0                	xor    %eax,%eax
140cee585:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee58a:	48 83 c4 30          	add    $0x30,%rsp
140cee58e:	5f                   	pop    %rdi
140cee58f:	c3                   	ret
140cee590:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
140cee595:	48 8d 4b 03          	lea    0x3(%rbx),%rcx
140cee599:	48 b8 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rax
140cee5a0:	aa aa aa
140cee5a3:	48 f7 e1             	mul    %rcx
140cee5a6:	48 8b f2             	mov    %rdx,%rsi
140cee5a9:	48 d1 ee             	shr    $1,%rsi
140cee5ac:	48 c1 e6 02          	shl    $0x2,%rsi
140cee5b0:	f6 47 18 01          	testb  $0x1,0x18(%rdi)
140cee5b4:	74 0d                	je     0x140cee5c3
140cee5b6:	48 8b d6             	mov    %rsi,%rdx
140cee5b9:	48 8b cf             	mov    %rdi,%rcx
140cee5bc:	e8 9f 01 00 00       	call   0x140cee760
140cee5c1:	eb 1e                	jmp    0x140cee5e1
140cee5c3:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140cee5c7:	4c 8d 0d 6a 8f 47 00 	lea    0x478f6a(%rip),%r9        # 0x141167538
140cee5ce:	4c 8b c6             	mov    %rsi,%r8
140cee5d1:	c7 44 24 20 87 00 00 	movl   $0x87,0x20(%rsp)
140cee5d8:	00
140cee5d9:	49 8b d2             	mov    %r10,%rdx
140cee5dc:	e8 cf 35 fd ff       	call   0x140cc1bb0
140cee5e1:	48 8b c8             	mov    %rax,%rcx
140cee5e4:	48 85 c0             	test   %rax,%rax
140cee5e7:	75 32                	jne    0x140cee61b
140cee5e9:	4c 8d 0d 48 8f 47 00 	lea    0x478f48(%rip),%r9        # 0x141167538
140cee5f0:	c7 44 24 20 89 00 00 	movl   $0x89,0x20(%rsp)
140cee5f7:	00
140cee5f8:	8d 50 69             	lea    0x69(%rax),%edx
140cee5fb:	8d 48 07             	lea    0x7(%rax),%ecx
140cee5fe:	44 8d 40 41          	lea    0x41(%rax),%r8d
140cee602:	e8 79 26 fe ff       	call   0x140cd0c80
140cee607:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140cee60c:	33 db                	xor    %ebx,%ebx
140cee60e:	8b c3                	mov    %ebx,%eax
140cee610:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee615:	48 83 c4 30          	add    $0x30,%rsp
140cee619:	5f                   	pop    %rdi
140cee61a:	c3                   	ret
140cee61b:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140cee61f:	4c 8b c3             	mov    %rbx,%r8
140cee622:	4c 2b 07             	sub    (%rdi),%r8
140cee625:	33 d2                	xor    %edx,%edx
140cee627:	48 03 0f             	add    (%rdi),%rcx
140cee62a:	48 89 77 10          	mov    %rsi,0x10(%rdi)
140cee62e:	e8 7d 10 1f 00       	call   0x140edf6b0
140cee633:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140cee638:	48 8b c3             	mov    %rbx,%rax
140cee63b:	48 89 1f             	mov    %rbx,(%rdi)
140cee63e:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140cee643:	48 83 c4 30          	add    $0x30,%rsp
140cee647:	5f                   	pop    %rdi
140cee648:	c3                   	ret
140cee649:	cc                   	int3
140cee64a:	cc                   	int3
140cee64b:	cc                   	int3
140cee64c:	cc                   	int3
140cee64d:	cc                   	int3
140cee64e:	cc                   	int3
140cee64f:	cc                   	int3
140cee650:	b8 38 00 00 00       	mov    $0x38,%eax
140cee655:	e8 46 ce 12 00       	call   0x140e1b4a0
140cee65a:	48 2b e0             	sub    %rax,%rsp
140cee65d:	44 8d 40 eb          	lea    -0x15(%rax),%r8d
140cee661:	48 8d 15 d0 8e 47 00 	lea    0x478ed0(%rip),%rdx        # 0x141167538
140cee668:	8d 48 e8             	lea    -0x18(%rax),%ecx
140cee66b:	e8 e0 36 fd ff       	call   0x140cc1d50
140cee670:	48 85 c0             	test   %rax,%rax
140cee673:	75 20                	jne    0x140cee695
140cee675:	4c 8d 0d bc 8e 47 00 	lea    0x478ebc(%rip),%r9        # 0x141167538
140cee67c:	c7 44 24 20 25 00 00 	movl   $0x25,0x20(%rsp)
140cee683:	00
140cee684:	8d 50 65             	lea    0x65(%rax),%edx
140cee687:	44 8d 40 41          	lea    0x41(%rax),%r8d
140cee68b:	8d 48 07             	lea    0x7(%rax),%ecx