140d1b373:	48 8b fa             	mov    %rdx,%rdi
140d1b376:	48 8b d9             	mov    %rcx,%rbx
140d1b379:	48 85 d2             	test   %rdx,%rdx
140d1b37c:	0f 84 e3 00 00 00    	je     0x140d1b465
140d1b382:	e8 39 ad fb ff       	call   0x140cd60c0
140d1b387:	85 c0                	test   %eax,%eax
140d1b389:	74 2b                	je     0x140d1b3b6
140d1b38b:	48 8b d7             	mov    %rdi,%rdx
140d1b38e:	48 8b cb             	mov    %rbx,%rcx
140d1b391:	e8 9a b1 fb ff       	call   0x140cd6530
140d1b396:	8b f8                	mov    %eax,%edi
140d1b398:	85 c0                	test   %eax,%eax
140d1b39a:	74 0d                	je     0x140d1b3a9
140d1b39c:	ba 01 00 00 00       	mov    $0x1,%edx
140d1b3a1:	48 8b cb             	mov    %rbx,%rcx
140d1b3a4:	e8 67 b1 fb ff       	call   0x140cd6510
140d1b3a9:	8b c7                	mov    %edi,%eax
140d1b3ab:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b3b0:	48 83 c4 20          	add    $0x20,%rsp
140d1b3b4:	5f                   	pop    %rdi
140d1b3b5:	c3                   	ret
140d1b3b6:	83 7b 10 00          	cmpl   $0x0,0x10(%rbx)
140d1b3ba:	74 22                	je     0x140d1b3de
140d1b3bc:	33 d2                	xor    %edx,%edx
140d1b3be:	48 8b cb             	mov    %rbx,%rcx
140d1b3c1:	89 53 10             	mov    %edx,0x10(%rbx)
140d1b3c4:	48 8b d7             	mov    %rdi,%rdx
140d1b3c7:	e8 a4 fa ff ff       	call   0x140d1ae70
140d1b3cc:	c7 43 10 01 00 00 00 	movl   $0x1,0x10(%rbx)
140d1b3d3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b3d8:	48 83 c4 20          	add    $0x20,%rsp
140d1b3dc:	5f                   	pop    %rdi
140d1b3dd:	c3                   	ret
140d1b3de:	83 7b 08 01          	cmpl   $0x1,0x8(%rbx)
140d1b3e2:	75 28                	jne    0x140d1b40c
140d1b3e4:	48 8b 03             	mov    (%rbx),%rax
140d1b3e7:	48 8b 08             	mov    (%rax),%rcx
140d1b3ea:	48 3b cf             	cmp    %rdi,%rcx
140d1b3ed:	73 1d                	jae    0x140d1b40c
140d1b3ef:	48 2b f9             	sub    %rcx,%rdi
140d1b3f2:	48 89 38             	mov    %rdi,(%rax)
140d1b3f5:	b8 01 00 00 00       	mov    $0x1,%eax
140d1b3fa:	c7 43 10 01 00 00 00 	movl   $0x1,0x10(%rbx)
140d1b401:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b406:	48 83 c4 20          	add    $0x20,%rsp
140d1b40a:	5f                   	pop    %rdi
140d1b40b:	c3                   	ret
140d1b40c:	4c 8b 03             	mov    (%rbx),%r8
140d1b40f:	33 d2                	xor    %edx,%edx
140d1b411:	49 39 38             	cmp    %rdi,(%r8)
140d1b414:	73 2a                	jae    0x140d1b440
140d1b416:	8b c2                	mov    %edx,%eax
140d1b418:	8b ca                	mov    %edx,%ecx
140d1b41a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140d1b420:	4a 29 3c 01          	sub    %rdi,(%rcx,%r8,1)
140d1b424:	48 8d 40 01          	lea    0x1(%rax),%rax
140d1b428:	4c 8b 03             	mov    (%rbx),%r8
140d1b42b:	48 8d 0c c5 00 00 00 	lea    0x0(,%rax,8),%rcx
140d1b432:	00
140d1b433:	ff c2                	inc    %edx
140d1b435:	bf 01 00 00 00       	mov    $0x1,%edi
140d1b43a:	49 39 3c 08          	cmp    %rdi,(%r8,%rcx,1)
140d1b43e:	72 e0                	jb     0x140d1b420
140d1b440:	48 63 c2             	movslq %edx,%rax
140d1b443:	48 8d 0c c5 00 00 00 	lea    0x0(,%rax,8),%rcx
140d1b44a:	00
140d1b44b:	4a 29 3c 01          	sub    %rdi,(%rcx,%r8,1)
140d1b44f:	48 8b 03             	mov    (%rbx),%rax
140d1b452:	48 83 3c 01 00       	cmpq   $0x0,(%rcx,%rax,1)
140d1b457:	75 0c                	jne    0x140d1b465
140d1b459:	8b 43 08             	mov    0x8(%rbx),%eax
140d1b45c:	ff c8                	dec    %eax
140d1b45e:	3b d0                	cmp    %eax,%edx
140d1b460:	75 03                	jne    0x140d1b465
140d1b462:	89 43 08             	mov    %eax,0x8(%rbx)
140d1b465:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b46a:	b8 01 00 00 00       	mov    $0x1,%eax
140d1b46f:	48 83 c4 20          	add    $0x20,%rsp
140d1b473:	5f                   	pop    %rdi
140d1b474:	c3                   	ret
140d1b475:	cc                   	int3
140d1b476:	cc                   	int3
140d1b477:	cc                   	int3
140d1b478:	cc                   	int3
140d1b479:	cc                   	int3
140d1b47a:	cc                   	int3
140d1b47b:	cc                   	int3
140d1b47c:	cc                   	int3
140d1b47d:	cc                   	int3
140d1b47e:	cc                   	int3
140d1b47f:	cc                   	int3
140d1b480:	40 53                	rex push %rbx
140d1b482:	57                   	push   %rdi
140d1b483:	41 56                	push   %r14
140d1b485:	b8 40 00 00 00       	mov    $0x40,%eax
140d1b48a:	e8 11 00 10 00       	call   0x140e1b4a0
140d1b48f:	48 2b e0             	sub    %rax,%rsp
140d1b492:	41 8b f8             	mov    %r8d,%edi
140d1b495:	4c 8b f2             	mov    %rdx,%r14
140d1b498:	48 8b d9             	mov    %rcx,%rbx
140d1b49b:	45 85 c0             	test   %r8d,%r8d
140d1b49e:	79 29                	jns    0x140d1b4c9
140d1b4a0:	4c 8d 0d b1 9f 45 00 	lea    0x459fb1(%rip),%r9        # 0x141175458
140d1b4a7:	c7 44 24 20 56 00 00 	movl   $0x56,0x20(%rsp)
140d1b4ae:	00
140d1b4af:	8d 50 51             	lea    0x51(%rax),%edx
140d1b4b2:	8d 48 c3             	lea    -0x3d(%rax),%ecx
140d1b4b5:	44 8d 40 37          	lea    0x37(%rax),%r8d
140d1b4b9:	e8 c2 57 fb ff       	call   0x140cd0c80
140d1b4be:	33 c0                	xor    %eax,%eax
140d1b4c0:	48 83 c4 40          	add    $0x40,%rsp
140d1b4c4:	41 5e                	pop    %r14
140d1b4c6:	5f                   	pop    %rdi
140d1b4c7:	5b                   	pop    %rbx
140d1b4c8:	c3                   	ret
140d1b4c9:	8b 52 08             	mov    0x8(%rdx),%edx
140d1b4cc:	48 89 74 24 68       	mov    %rsi,0x68(%rsp)
140d1b4d1:	ff c2                	inc    %edx
140d1b4d3:	8b f7                	mov    %edi,%esi
140d1b4d5:	c1 ee 06             	shr    $0x6,%esi
140d1b4d8:	03 d6                	add    %esi,%edx
140d1b4da:	e8 f1 b5 fb ff       	call   0x140cd6ad0
140d1b4df:	48 85 c0             	test   %rax,%rax
140d1b4e2:	75 07                	jne    0x140d1b4eb
140d1b4e4:	33 ff                	xor    %edi,%edi
140d1b4e6:	e9 ff 00 00 00       	jmp    0x140d1b5ea
140d1b4eb:	49 63 4e 08          	movslq 0x8(%r14),%rcx
140d1b4ef:	4c 89 64 24 70       	mov    %r12,0x70(%rsp)
140d1b4f4:	4c 8d 24 f5 00 00 00 	lea    0x0(,%rsi,8),%r12
140d1b4fb:	00
140d1b4fc:	85 c9                	test   %ecx,%ecx
140d1b4fe:	0f 84 b0 00 00 00    	je     0x140d1b5b4
140d1b504:	4d 8b 1e             	mov    (%r14),%r11
140d1b507:	83 e7 3f             	and    $0x3f,%edi
140d1b50a:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
140d1b50f:	48 8b d1             	mov    %rcx,%rdx
140d1b512:	4c 89 6c 24 38       	mov    %r13,0x38(%rsp)
140d1b517:	8b ef                	mov    %edi,%ebp
140d1b519:	4c 8b 2b             	mov    (%rbx),%r13
140d1b51c:	f7 dd                	neg    %ebp
140d1b51e:	4d 8b 44 cb f8       	mov    -0x8(%r11,%rcx,8),%r8
140d1b523:	83 e5 3f             	and    $0x3f,%ebp
140d1b526:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140d1b52b:	4d 03 ec             	add    %r12,%r13
140d1b52e:	44 8b fd             	mov    %ebp,%r15d
140d1b531:	8b cd                	mov    %ebp,%ecx
140d1b533:	49 f7 df             	neg    %r15
140d1b536:	49 8b c7             	mov    %r15,%rax
140d1b539:	48 c1 e8 08          	shr    $0x8,%rax
140d1b53d:	4c 0b f8             	or     %rax,%r15
140d1b540:	49 8b c0             	mov    %r8,%rax
140d1b543:	48 d3 e8             	shr    %cl,%rax
140d1b546:	49 23 c7             	and    %r15,%rax
140d1b549:	49 89 44 d5 00       	mov    %rax,0x0(%r13,%rdx,8)
140d1b54e:	41 8b 46 08          	mov    0x8(%r14),%eax
140d1b552:	ff c8                	dec    %eax
140d1b554:	4c 63 d0             	movslq %eax,%r10
140d1b557:	85 c0                	test   %eax,%eax
140d1b559:	7e 3f                	jle    0x140d1b59a
140d1b55b:	4e 8d 0c d5 00 00 00 	lea    0x0(,%r10,8),%r9
140d1b562:	00
140d1b563:	4d 03 cd             	add    %r13,%r9
140d1b566:	4d 2b dd             	sub    %r13,%r11
140d1b569:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140d1b570:	8b cf                	mov    %edi,%ecx
140d1b572:	4d 8d 49 f8          	lea    -0x8(%r9),%r9
140d1b576:	49 d3 e0             	shl    %cl,%r8
140d1b579:	49 ff ca             	dec    %r10
140d1b57c:	49 8b d0             	mov    %r8,%rdx
140d1b57f:	8b cd                	mov    %ebp,%ecx
140d1b581:	4f 8b 04 19          	mov    (%r9,%r11,1),%r8
140d1b585:	49 8b c0             	mov    %r8,%rax
140d1b588:	48 d3 e8             	shr    %cl,%rax
140d1b58b:	49 23 c7             	and    %r15,%rax
140d1b58e:	48 0b c2             	or     %rdx,%rax
140d1b591:	49 89 41 08          	mov    %rax,0x8(%r9)
140d1b595:	4d 85 d2             	test   %r10,%r10
140d1b598:	7f d6                	jg     0x140d1b570
140d1b59a:	4c 8b 7c 24 30       	mov    0x30(%rsp),%r15
140d1b59f:	8b cf                	mov    %edi,%ecx
140d1b5a1:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
140d1b5a6:	49 d3 e0             	shl    %cl,%r8
140d1b5a9:	4d 89 45 00          	mov    %r8,0x0(%r13)
140d1b5ad:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
140d1b5b2:	eb 09                	jmp    0x140d1b5bd
140d1b5b4:	48 8b 03             	mov    (%rbx),%rax
140d1b5b7:	33 ff                	xor    %edi,%edi
140d1b5b9:	49 89 3c 04          	mov    %rdi,(%r12,%rax,1)
140d1b5bd:	85 f6                	test   %esi,%esi
140d1b5bf:	74 0d                	je     0x140d1b5ce
140d1b5c1:	48 8b 0b             	mov    (%rbx),%rcx
140d1b5c4:	4d 8b c4             	mov    %r12,%r8
140d1b5c7:	33 d2                	xor    %edx,%edx
140d1b5c9:	e8 e2 40 1c 00       	call   0x140edf6b0
140d1b5ce:	41 8b 46 10          	mov    0x10(%r14),%eax
140d1b5d2:	bf 01 00 00 00       	mov    $0x1,%edi
140d1b5d7:	4c 8b 64 24 70       	mov    0x70(%rsp),%r12
140d1b5dc:	89 43 10             	mov    %eax,0x10(%rbx)
140d1b5df:	41 8b 4e 08          	mov    0x8(%r14),%ecx
140d1b5e3:	ff c1                	inc    %ecx
140d1b5e5:	03 ce                	add    %esi,%ecx
140d1b5e7:	89 4b 08             	mov    %ecx,0x8(%rbx)
140d1b5ea:	48 8b cb             	mov    %rbx,%rcx
140d1b5ed:	e8 6e b3 fb ff       	call   0x140cd6960
140d1b5f2:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140d1b5f7:	8b c7                	mov    %edi,%eax
140d1b5f9:	48 83 c4 40          	add    $0x40,%rsp
140d1b5fd:	41 5e                	pop    %r14
140d1b5ff:	5f                   	pop    %rdi
140d1b600:	5b                   	pop    %rbx
140d1b601:	c3                   	ret
140d1b602:	cc                   	int3
140d1b603:	cc                   	int3
140d1b604:	cc                   	int3
140d1b605:	cc                   	int3
140d1b606:	cc                   	int3
140d1b607:	cc                   	int3
140d1b608:	cc                   	int3
140d1b609:	cc                   	int3
140d1b60a:	cc                   	int3
140d1b60b:	cc                   	int3
140d1b60c:	cc                   	int3
140d1b60d:	cc                   	int3
140d1b60e:	cc                   	int3
140d1b60f:	cc                   	int3
140d1b610:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140d1b615:	57                   	push   %rdi
140d1b616:	b8 20 00 00 00       	mov    $0x20,%eax
140d1b61b:	e8 80 fe 0f 00       	call   0x140e1b4a0
140d1b620:	48 2b e0             	sub    %rax,%rsp
140d1b623:	48 8b da             	mov    %rdx,%rbx
140d1b626:	48 8b f9             	mov    %rcx,%rdi
140d1b629:	48 3b ca             	cmp    %rdx,%rcx
140d1b62c:	74 6d                	je     0x140d1b69b
140d1b62e:	8b 42 10             	mov    0x10(%rdx),%eax
140d1b631:	89 41 10             	mov    %eax,0x10(%rcx)
140d1b634:	8b 52 08             	mov    0x8(%rdx),%edx
140d1b637:	ff c2                	inc    %edx
140d1b639:	e8 92 b4 fb ff       	call   0x140cd6ad0
140d1b63e:	48 85 c0             	test   %rax,%rax
140d1b641:	74 67                	je     0x140d1b6aa
140d1b643:	8b 43 08             	mov    0x8(%rbx),%eax
140d1b646:	89 47 08             	mov    %eax,0x8(%rdi)
140d1b649:	4c 8b 0b             	mov    (%rbx),%r9
140d1b64c:	33 d2                	xor    %edx,%edx
140d1b64e:	44 8b d2             	mov    %edx,%r10d
140d1b651:	4c 8b 07             	mov    (%rdi),%r8
140d1b654:	39 53 08             	cmp    %edx,0x8(%rbx)
140d1b657:	7e 2c                	jle    0x140d1b685
140d1b659:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140d1b660:	49 8b 09             	mov    (%r9),%rcx
140d1b663:	4d 8d 49 08          	lea    0x8(%r9),%r9
140d1b667:	41 ff c2             	inc    %r10d
140d1b66a:	48 8d 04 09          	lea    (%rcx,%rcx,1),%rax
140d1b66e:	48 0b c2             	or     %rdx,%rax
140d1b671:	48 8b d1             	mov    %rcx,%rdx
140d1b674:	49 89 00             	mov    %rax,(%r8)
140d1b677:	49 83 c0 08          	add    $0x8,%r8
140d1b67b:	48 c1 ea 3f          	shr    $0x3f,%rdx
140d1b67f:	44 3b 53 08          	cmp    0x8(%rbx),%r10d
140d1b683:	7c db                	jl     0x140d1b660
140d1b685:	49 89 10             	mov    %rdx,(%r8)
140d1b688:	b8 01 00 00 00       	mov    $0x1,%eax
140d1b68d:	01 57 08             	add    %edx,0x8(%rdi)
140d1b690:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b695:	48 83 c4 20          	add    $0x20,%rsp
140d1b699:	5f                   	pop    %rdi
140d1b69a:	c3                   	ret
140d1b69b:	8b 52 08             	mov    0x8(%rdx),%edx
140d1b69e:	ff c2                	inc    %edx
140d1b6a0:	e8 2b b4 fb ff       	call   0x140cd6ad0
140d1b6a5:	48 85 c0             	test   %rax,%rax
140d1b6a8:	75 9f                	jne    0x140d1b649
140d1b6aa:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d1b6af:	33 c0                	xor    %eax,%eax
140d1b6b1:	48 83 c4 20          	add    $0x20,%rsp
140d1b6b5:	5f                   	pop    %rdi
140d1b6b6:	c3                   	ret
140d1b6b7:	cc                   	int3
140d1b6b8:	cc                   	int3
140d1b6b9:	cc                   	int3
140d1b6ba:	cc                   	int3
140d1b6bb:	cc                   	int3
140d1b6bc:	cc                   	int3
140d1b6bd:	cc                   	int3
140d1b6be:	cc                   	int3
140d1b6bf:	cc                   	int3
140d1b6c0:	40 56                	rex push %rsi
140d1b6c2:	57                   	push   %rdi
140d1b6c3:	41 54                	push   %r12
140d1b6c5:	b8 40 00 00 00       	mov    $0x40,%eax
140d1b6ca:	e8 d1 fd 0f 00       	call   0x140e1b4a0
140d1b6cf:	48 2b e0             	sub    %rax,%rsp
140d1b6d2:	41 8b f8             	mov    %r8d,%edi
140d1b6d5:	4c 8b e2             	mov    %rdx,%r12
140d1b6d8:	48 8b f1             	mov    %rcx,%rsi
140d1b6db:	45 85 c0             	test   %r8d,%r8d
140d1b6de:	79 29                	jns    0x140d1b709
140d1b6e0:	4c 8d 0d 71 9d 45 00 	lea    0x459d71(%rip),%r9        # 0x141175458
140d1b6e7:	c7 44 24 20 9b 00 00 	movl   $0x9b,0x20(%rsp)
140d1b6ee:	00
140d1b6ef:	8d 50 52             	lea    0x52(%rax),%edx
140d1b6f2:	8d 48 c3             	lea    -0x3d(%rax),%ecx
140d1b6f5:	44 8d 40 37          	lea    0x37(%rax),%r8d
140d1b6f9:	e8 82 55 fb ff       	call   0x140cd0c80
140d1b6fe:	33 c0                	xor    %eax,%eax
140d1b700:	48 83 c4 40          	add    $0x40,%rsp
140d1b704:	41 5c                	pop    %r12
140d1b706:	5f                   	pop    %rdi
140d1b707:	5e                   	pop    %rsi
140d1b708:	c3                   	ret
140d1b709:	48 89 5c 24 60       	mov    %rbx,0x60(%rsp)
140d1b70e:	8b df                	mov    %edi,%ebx
140d1b710:	c1 eb 06             	shr    $0x6,%ebx
140d1b713:	48 89 6c 24 68       	mov    %rbp,0x68(%rsp)
140d1b718:	8b 6a 08             	mov    0x8(%rdx),%ebp
140d1b71b:	3b dd                	cmp    %ebp,%ebx
140d1b71d:	7c 11                	jl     0x140d1b730
140d1b71f:	33 d2                	xor    %edx,%edx
140d1b721:	e8 0a ae fb ff       	call   0x140cd6530
140d1b726:	bb 01 00 00 00       	mov    $0x1,%ebx
140d1b72b:	e9 c6 00 00 00       	jmp    0x140d1b7f6
140d1b730:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
140d1b735:	83 e7 3f             	and    $0x3f,%edi
140d1b738:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140d1b73d:	44 8b f7             	mov    %edi,%r14d
140d1b740:	41 f7 de             	neg    %r14d
140d1b743:	2b eb                	sub    %ebx,%ebp
140d1b745:	41 83 e6 3f          	and    $0x3f,%r14d
140d1b749:	45 8b fe             	mov    %r14d,%r15d
140d1b74c:	49 f7 df             	neg    %r15
140d1b74f:	49 8b c7             	mov    %r15,%rax
140d1b752:	48 c1 e8 08          	shr    $0x8,%rax
140d1b756:	4c 0b f8             	or     %rax,%r15
140d1b759:	49 3b f4             	cmp    %r12,%rsi
140d1b75c:	74 13                	je     0x140d1b771
140d1b75e:	8b d5                	mov    %ebp,%edx
140d1b760:	e8 6b b3 fb ff       	call   0x140cd6ad0
140d1b765:	48 85 c0             	test   %rax,%rax
140d1b768:	75 07                	jne    0x140d1b771
140d1b76a:	33 db                	xor    %ebx,%ebx
140d1b76c:	e9 7b 00 00 00       	jmp    0x140d1b7ec
140d1b771:	49 8b 04 24          	mov    (%r12),%rax
140d1b775:	4c 8b 04 d8          	mov    (%rax,%rbx,8),%r8
140d1b779:	4c 8d 14 d8          	lea    (%rax,%rbx,8),%r10
140d1b77d:	8d 45 ff             	lea    -0x1(%rbp),%eax
140d1b780:	4c 89 6c 24 70       	mov    %r13,0x70(%rsp)
140d1b785:	4c 8b 2e             	mov    (%rsi),%r13
140d1b788:	33 db                	xor    %ebx,%ebx
140d1b78a:	4c 63 d8             	movslq %eax,%r11