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
140cee68e:	e8 ed 25 fe ff       	call   0x140cd0c80
140cee693:	33 c0                	xor    %eax,%eax
140cee695:	48 83 c4 38          	add    $0x38,%rsp
140cee699:	c3                   	ret
140cee69a:	cc                   	int3
140cee69b:	cc                   	int3
140cee69c:	cc                   	int3
140cee69d:	cc                   	int3
140cee69e:	cc                   	int3
140cee69f:	cc                   	int3
140cee6a0:	40 53                	rex push %rbx
140cee6a2:	b8 30 00 00 00       	mov    $0x30,%eax
140cee6a7:	e8 f4 cd 12 00       	call   0x140e1b4a0
140cee6ac:	48 2b e0             	sub    %rax,%rsp
140cee6af:	8b d9                	mov    %ecx,%ebx
140cee6b1:	44 8d 40 f3          	lea    -0xd(%rax),%r8d
140cee6b5:	8d 48 f0             	lea    -0x10(%rax),%ecx
140cee6b8:	48 8d 15 79 8e 47 00 	lea    0x478e79(%rip),%rdx        # 0x141167538
140cee6bf:	e8 8c 36 fd ff       	call   0x140cc1d50
140cee6c4:	48 85 c0             	test   %rax,%rax
140cee6c7:	75 26                	jne    0x140cee6ef
140cee6c9:	4c 8d 0d 68 8e 47 00 	lea    0x478e68(%rip),%r9        # 0x141167538
140cee6d0:	c7 44 24 20 25 00 00 	movl   $0x25,0x20(%rsp)
140cee6d7:	00
140cee6d8:	8d 50 65             	lea    0x65(%rax),%edx
140cee6db:	44 8d 40 41          	lea    0x41(%rax),%r8d
140cee6df:	8d 48 07             	lea    0x7(%rax),%ecx
140cee6e2:	e8 99 25 fe ff       	call   0x140cd0c80
140cee6e7:	33 c0                	xor    %eax,%eax
140cee6e9:	48 83 c4 30          	add    $0x30,%rsp
140cee6ed:	5b                   	pop    %rbx
140cee6ee:	c3                   	ret
140cee6ef:	89 58 18             	mov    %ebx,0x18(%rax)
140cee6f2:	48 83 c4 30          	add    $0x30,%rsp
140cee6f6:	5b                   	pop    %rbx
140cee6f7:	c3                   	ret
140cee6f8:	cc                   	int3
140cee6f9:	cc                   	int3
140cee6fa:	cc                   	int3
140cee6fb:	cc                   	int3
140cee6fc:	cc                   	int3
140cee6fd:	cc                   	int3
140cee6fe:	cc                   	int3
140cee6ff:	cc                   	int3
140cee700:	49 8d 40 ff          	lea    -0x1(%r8),%rax
140cee704:	4c 8b c9             	mov    %rcx,%r9
140cee707:	48 03 c1             	add    %rcx,%rax
140cee70a:	48 85 d2             	test   %rdx,%rdx
140cee70d:	74 25                	je     0x140cee734
140cee70f:	4d 85 c0             	test   %r8,%r8
140cee712:	74 47                	je     0x140cee75b
140cee714:	0f 1f 40 00          	nopl   0x0(%rax)
140cee718:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140cee71f:	00
140cee720:	0f b6 0a             	movzbl (%rdx),%ecx
140cee723:	48 8d 52 01          	lea    0x1(%rdx),%rdx
140cee727:	88 08                	mov    %cl,(%rax)
140cee729:	48 8d 40 ff          	lea    -0x1(%rax),%rax
140cee72d:	49 83 e8 01          	sub    $0x1,%r8
140cee731:	75 ed                	jne    0x140cee720
140cee733:	c3                   	ret
140cee734:	49 d1 e8             	shr    $1,%r8
140cee737:	74 22                	je     0x140cee75b
140cee739:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140cee740:	41 0f b6 09          	movzbl (%r9),%ecx
140cee744:	4d 8d 49 01          	lea    0x1(%r9),%r9
140cee748:	0f b6 10             	movzbl (%rax),%edx
140cee74b:	88 08                	mov    %cl,(%rax)
140cee74d:	48 8d 40 ff          	lea    -0x1(%rax),%rax
140cee751:	41 88 51 ff          	mov    %dl,-0x1(%r9)
140cee755:	49 83 e8 01          	sub    $0x1,%r8
140cee759:	75 e5                	jne    0x140cee740
140cee75b:	c3                   	ret
140cee75c:	cc                   	int3
140cee75d:	cc                   	int3
140cee75e:	cc                   	int3
140cee75f:	cc                   	int3
140cee760:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140cee765:	57                   	push   %rdi
140cee766:	b8 20 00 00 00       	mov    $0x20,%eax
140cee76b:	e8 30 cd 12 00       	call   0x140e1b4a0
140cee770:	48 2b e0             	sub    %rax,%rsp
140cee773:	48 8b c2             	mov    %rdx,%rax
140cee776:	48 8b f9             	mov    %rcx,%rdi
140cee779:	48 8b c8             	mov    %rax,%rcx
140cee77c:	48 8d 15 b5 8d 47 00 	lea    0x478db5(%rip),%rdx        # 0x141167538
140cee783:	41 b8 3e 00 00 00    	mov    $0x3e,%r8d
140cee789:	e8 62 fb ff ff       	call   0x140cee2f0
140cee78e:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140cee792:	48 8b d8             	mov    %rax,%rbx
140cee795:	48 85 d2             	test   %rdx,%rdx
140cee798:	74 34                	je     0x140cee7ce
140cee79a:	48 85 c0             	test   %rax,%rax
140cee79d:	74 2f                	je     0x140cee7ce
140cee79f:	4c 8b 07             	mov    (%rdi),%r8
140cee7a2:	48 8b c8             	mov    %rax,%rcx
140cee7a5:	e8 66 08 1f 00       	call   0x140edf010
140cee7aa:	48 8b 17             	mov    (%rdi),%rdx
140cee7ad:	4c 8d 05 84 8d 47 00 	lea    0x478d84(%rip),%r8        # 0x141167538
140cee7b4:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140cee7b8:	41 b9 42 00 00 00    	mov    $0x42,%r9d
140cee7be:	e8 bd fa ff ff       	call   0x140cee280
140cee7c3:	48 8b c3             	mov    %rbx,%rax
140cee7c6:	48 c7 47 08 00 00 00 	movq   $0x0,0x8(%rdi)
140cee7cd:	00
140cee7ce:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140cee7d3:	48 83 c4 20          	add    $0x20,%rsp
140cee7d7:	5f                   	pop    %rdi
140cee7d8:	c3                   	ret
140cee7d9:	cc                   	int3
140cee7da:	cc                   	int3
140cee7db:	cc                   	int3
140cee7dc:	cc                   	int3
140cee7dd:	cc                   	int3
140cee7de:	cc                   	int3
140cee7df:	cc                   	int3
140cee7e0:	48 85 c9             	test   %rcx,%rcx
140cee7e3:	74 3d                	je     0x140cee822
140cee7e5:	53                   	push   %rbx
140cee7e6:	b8 20 00 00 00       	mov    $0x20,%eax
140cee7eb:	e8 b0 cc 12 00       	call   0x140e1b4a0
140cee7f0:	48 2b e0             	sub    %rax,%rsp
140cee7f3:	48 8b 01             	mov    (%rcx),%rax
140cee7f6:	48 8b d9             	mov    %rcx,%rbx
140cee7f9:	48 8b 40 18          	mov    0x18(%rax),%rax
140cee7fd:	48 85 c0             	test   %rax,%rax
140cee800:	74 06                	je     0x140cee808
140cee802:	ff 15 18 52 29 00    	call   *0x295218(%rip)        # 0x140f83a20
140cee808:	41 b8 38 00 00 00    	mov    $0x38,%r8d
140cee80e:	48 8d 15 3b 8d 47 00 	lea    0x478d3b(%rip),%rdx        # 0x141167550
140cee815:	48 8b cb             	mov    %rbx,%rcx
140cee818:	e8 f3 31 fd ff       	call   0x140cc1a10
140cee81d:	48 83 c4 20          	add    $0x20,%rsp
140cee821:	5b                   	pop    %rbx
140cee822:	c3                   	ret
140cee823:	cc                   	int3
140cee824:	cc                   	int3
140cee825:	cc                   	int3
140cee826:	cc                   	int3
140cee827:	cc                   	int3
140cee828:	cc                   	int3
140cee829:	cc                   	int3
140cee82a:	cc                   	int3
140cee82b:	cc                   	int3
140cee82c:	cc                   	int3
140cee82d:	cc                   	int3
140cee82e:	cc                   	int3
140cee82f:	cc                   	int3
140cee830:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140cee835:	57                   	push   %rdi
140cee836:	b8 30 00 00 00       	mov    $0x30,%eax
140cee83b:	e8 60 cc 12 00       	call   0x140e1b4a0
140cee840:	48 2b e0             	sub    %rax,%rsp
140cee843:	48 8b f9             	mov    %rcx,%rdi
140cee846:	44 8d 40 e6          	lea    -0x1a(%rax),%r8d
140cee84a:	8d 48 f0             	lea    -0x10(%rax),%ecx
140cee84d:	48 8d 15 fc 8c 47 00 	lea    0x478cfc(%rip),%rdx        # 0x141167550
140cee854:	e8 f7 34 fd ff       	call   0x140cc1d50
140cee859:	48 8b d8             	mov    %rax,%rbx
140cee85c:	48 85 c0             	test   %rax,%rax
140cee85f:	75 2b                	jne    0x140cee88c
140cee861:	4c 8d 0d e8 8c 47 00 	lea    0x478ce8(%rip),%r9        # 0x141167550
140cee868:	c7 44 24 20 17 00 00 	movl   $0x17,0x20(%rsp)
140cee86f:	00
140cee870:	8d 50 67             	lea    0x67(%rax),%edx
140cee873:	8d 48 29             	lea    0x29(%rax),%ecx
140cee876:	44 8d 40 41          	lea    0x41(%rax),%r8d
140cee87a:	e8 01 24 fe ff       	call   0x140cd0c80
140cee87f:	33 c0                	xor    %eax,%eax
140cee881:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140cee886:	48 83 c4 30          	add    $0x30,%rsp
140cee88a:	5f                   	pop    %rdi
140cee88b:	c3                   	ret
140cee88c:	48 89 38             	mov    %rdi,(%rax)
140cee88f:	48 8b 47 10          	mov    0x10(%rdi),%rax