18006d363:	75 06                	jne    0x18006d36b
18006d365:	48 89 73 20          	mov    %rsi,0x20(%rbx)
18006d369:	eb 6a                	jmp    0x18006d3d5
18006d36b:	0f b7 7b 60          	movzwl 0x60(%rbx),%edi
18006d36f:	48 89 4b 20          	mov    %rcx,0x20(%rbx)
18006d373:	45 8b 4a 58          	mov    0x58(%r10),%r9d
18006d377:	4d 03 4a 50          	add    0x50(%r10),%r9
18006d37b:	85 ff                	test   %edi,%edi
18006d37d:	74 56                	je     0x18006d3d5
18006d37f:	48 85 c9             	test   %rcx,%rcx
18006d382:	0f 84 a6 00 00 00    	je     0x18006d42e
18006d388:	48 8d 41 08          	lea    0x8(%rcx),%rax
18006d38c:	48 3b c1             	cmp    %rcx,%rax
18006d38f:	0f 82 99 00 00 00    	jb     0x18006d42e
18006d395:	49 3b c1             	cmp    %r9,%rax
18006d398:	0f 83 90 00 00 00    	jae    0x18006d42e
18006d39e:	83 39 28             	cmpl   $0x28,(%rcx)
18006d3a1:	0f 82 87 00 00 00    	jb     0x18006d42e
18006d3a7:	48 8b 11             	mov    (%rcx),%rdx
18006d3aa:	48 03 d1             	add    %rcx,%rdx
18006d3ad:	48 3b d1             	cmp    %rcx,%rdx
18006d3b0:	72 7c                	jb     0x18006d42e
18006d3b2:	49 3b d1             	cmp    %r9,%rdx
18006d3b5:	77 77                	ja     0x18006d42e
18006d3b7:	48 8d 42 07          	lea    0x7(%rdx),%rax
18006d3bb:	48 83 e0 f8          	and    $0xfffffffffffffff8,%rax
18006d3bf:	48 3b d0             	cmp    %rax,%rdx
18006d3c2:	75 6a                	jne    0x18006d42e
18006d3c4:	48 89 11             	mov    %rdx,(%rcx)
18006d3c7:	48 8b c1             	mov    %rcx,%rax
18006d3ca:	48 8b ca             	mov    %rdx,%rcx
18006d3cd:	83 c7 ff             	add    $0xffffffff,%edi
18006d3d0:	75 ad                	jne    0x18006d37f
18006d3d2:	48 89 30             	mov    %rsi,(%rax)
18006d3d5:	48 89 0b             	mov    %rcx,(%rbx)
18006d3d8:	48 39 31             	cmp    %rsi,(%rcx)
18006d3db:	75 03                	jne    0x18006d3e0
18006d3dd:	48 89 33             	mov    %rsi,(%rbx)
18006d3e0:	41 8b 03             	mov    (%r11),%eax
18006d3e3:	c1 e8 04             	shr    $0x4,%eax
18006d3e6:	a8 01                	test   $0x1,%al
18006d3e8:	74 34                	je     0x18006d41e
18006d3ea:	39 73 10             	cmp    %esi,0x10(%rbx)
18006d3ed:	74 2b                	je     0x18006d41a
18006d3ef:	8b 53 10             	mov    0x10(%rbx),%edx
18006d3f2:	49 03 52 50          	add    0x50(%r10),%rdx
18006d3f6:	49 3b 52 50          	cmp    0x50(%r10),%rdx
18006d3fa:	72 32                	jb     0x18006d42e
18006d3fc:	49 3b d0             	cmp    %r8,%rdx
18006d3ff:	73 2d                	jae    0x18006d42e
18006d401:	48 8d 42 08          	lea    0x8(%rdx),%rax
18006d405:	48 3b c2             	cmp    %rdx,%rax
18006d408:	72 24                	jb     0x18006d42e
18006d40a:	49 3b c0             	cmp    %r8,%rax
18006d40d:	77 1f                	ja     0x18006d42e
18006d40f:	48 39 32             	cmp    %rsi,(%rdx)
18006d412:	74 06                	je     0x18006d41a
18006d414:	48 89 53 10          	mov    %rdx,0x10(%rbx)
18006d418:	eb 04                	jmp    0x18006d41e
18006d41a:	48 89 73 10          	mov    %rsi,0x10(%rbx)
18006d41e:	48 8b d3             	mov    %rbx,%rdx
18006d421:	49 8b ca             	mov    %r10,%rcx
18006d424:	e8 87 06 00 00       	call   0x18006dab0
18006d429:	e9 b3 fe ff ff       	jmp    0x18006d2e1
18006d42e:	ff 05 24 77 13 00    	incl   0x137724(%rip)        # 0x1801a4b58
18006d434:	33 c0                	xor    %eax,%eax
18006d436:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18006d43b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
18006d440:	48 83 c4 20          	add    $0x20,%rsp
18006d444:	5f                   	pop    %rdi
18006d445:	c3                   	ret
18006d446:	cc                   	int3
18006d447:	cc                   	int3
18006d448:	48 8b c4             	mov    %rsp,%rax
18006d44b:	48 89 58 08          	mov    %rbx,0x8(%rax)
18006d44f:	48 89 68 10          	mov    %rbp,0x10(%rax)
18006d453:	48 89 70 18          	mov    %rsi,0x18(%rax)
18006d457:	48 89 78 20          	mov    %rdi,0x20(%rax)
18006d45b:	41 54                	push   %r12
18006d45d:	41 56                	push   %r14
18006d45f:	41 57                	push   %r15
18006d461:	48 83 ec 20          	sub    $0x20,%rsp
18006d465:	4c 8b 49 78          	mov    0x78(%rcx),%r9
18006d469:	45 33 e4             	xor    %r12d,%r12d
18006d46c:	48 8b 05 dd 76 13 00 	mov    0x1376dd(%rip),%rax        # 0x1801a4b50
18006d473:	4d 8b f0             	mov    %r8,%r14
18006d476:	48 8b ea             	mov    %rdx,%rbp
18006d479:	4d 89 20             	mov    %r12,(%r8)
18006d47c:	49 8b 39             	mov    (%r9),%rdi
18006d47f:	41 8b 49 40          	mov    0x40(%r9),%ecx
18006d483:	48 8b 5f 10          	mov    0x10(%rdi),%rbx
18006d487:	4c 8b 3c c8          	mov    (%rax,%rcx,8),%r15
18006d48b:	48 85 db             	test   %rbx,%rbx
18006d48e:	74 12                	je     0x18006d4a2
18006d490:	48 8b d3             	mov    %rbx,%rdx
18006d493:	49 8b cf             	mov    %r15,%rcx
18006d496:	e8 d1 fd ff ff       	call   0x18006d26c
18006d49b:	48 89 47 10          	mov    %rax,0x10(%rdi)
18006d49f:	48 8b d8             	mov    %rax,%rbx
18006d4a2:	48 83 cf ff          	or     $0xffffffffffffffff,%rdi
18006d4a6:	48 ff c7             	inc    %rdi
18006d4a9:	66 44 39 64 7d 00    	cmp    %r12w,0x0(%rbp,%rdi,2)
18006d4af:	75 f5                	jne    0x18006d4a6
18006d4b1:	48 85 db             	test   %rbx,%rbx
18006d4b4:	74 40                	je     0x18006d4f6
18006d4b6:	8b f7                	mov    %edi,%esi
18006d4b8:	48 03 f6             	add    %rsi,%rsi
18006d4bb:	0f b7 43 64          	movzwl 0x64(%rbx),%eax
18006d4bf:	48 3b c6             	cmp    %rsi,%rax
18006d4c2:	75 14                	jne    0x18006d4d8
18006d4c4:	48 8d 4b 66          	lea    0x66(%rbx),%rcx
18006d4c8:	44 0f b7 c7          	movzwl %di,%r8d
18006d4cc:	48 8b d5             	mov    %rbp,%rdx
18006d4cf:	e8 50 00 00 00       	call   0x18006d524
18006d4d4:	84 c0                	test   %al,%al
18006d4d6:	75 43                	jne    0x18006d51b
18006d4d8:	48 8b 03             	mov    (%rbx),%rax
18006d4db:	48 85 c0             	test   %rax,%rax
18006d4de:	74 0e                	je     0x18006d4ee
18006d4e0:	48 8b d0             	mov    %rax,%rdx
18006d4e3:	49 8b cf             	mov    %r15,%rcx
18006d4e6:	e8 81 fd ff ff       	call   0x18006d26c
18006d4eb:	48 89 03             	mov    %rax,(%rbx)
18006d4ee:	48 8b d8             	mov    %rax,%rbx
18006d4f1:	48 85 c0             	test   %rax,%rax
18006d4f4:	75 c5                	jne    0x18006d4bb
18006d4f6:	b8 0f 00 00 c0       	mov    $0xc000000f,%eax
18006d4fb:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18006d500:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18006d505:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18006d50a:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
18006d50f:	48 83 c4 20          	add    $0x20,%rsp
18006d513:	41 5f                	pop    %r15
18006d515:	41 5e                	pop    %r14
18006d517:	41 5c                	pop    %r12
18006d519:	c3                   	ret
18006d51a:	cc                   	int3
18006d51b:	49 89 1e             	mov    %rbx,(%r14)
18006d51e:	33 c0                	xor    %eax,%eax
18006d520:	eb d9                	jmp    0x18006d4fb
18006d522:	cc                   	int3
18006d523:	cc                   	int3
18006d524:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18006d529:	4c 8b ca             	mov    %rdx,%r9
18006d52c:	4c 8b d1             	mov    %rcx,%r10
18006d52f:	66 45 85 c0          	test   %r8w,%r8w
18006d533:	74 48                	je     0x18006d57d
18006d535:	4c 2b d2             	sub    %rdx,%r10
18006d538:	47 0f b7 1c 0a       	movzwl (%r10,%r9,1),%r11d
18006d53d:	41 0f b7 19          	movzwl (%r9),%ebx
18006d541:	66 44 3b db          	cmp    %bx,%r11w
18006d545:	74 27                	je     0x18006d56e
18006d547:	41 8b c3             	mov    %r11d,%eax
18006d54a:	8b d3                	mov    %ebx,%edx
18006d54c:	66 41 83 eb 61       	sub    $0x61,%r11w
18006d551:	66 41 83 fb 19       	cmp    $0x19,%r11w
18006d556:	8d 48 e0             	lea    -0x20(%rax),%ecx
18006d559:	0f 47 c8             	cmova  %eax,%ecx
18006d55c:	66 83 eb 61          	sub    $0x61,%bx
18006d560:	66 83 fb 19          	cmp    $0x19,%bx
18006d564:	8d 42 e0             	lea    -0x20(%rdx),%eax
18006d567:	0f 47 c2             	cmova  %edx,%eax
18006d56a:	3b c8                	cmp    %eax,%ecx
18006d56c:	75 18                	jne    0x18006d586
18006d56e:	49 83 c1 02          	add    $0x2,%r9
18006d572:	b8 ff ff 00 00       	mov    $0xffff,%eax
18006d577:	66 44 03 c0          	add    %ax,%r8w
18006d57b:	75 bb                	jne    0x18006d538
18006d57d:	b0 01                	mov    $0x1,%al
18006d57f:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18006d584:	c3                   	ret
18006d585:	cc                   	int3
18006d586:	32 c0                	xor    %al,%al
18006d588:	eb f5                	jmp    0x18006d57f
18006d58a:	cc                   	int3
18006d58b:	cc                   	int3
18006d58c:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
18006d591:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18006d596:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
18006d59b:	55                   	push   %rbp
18006d59c:	56                   	push   %rsi
18006d59d:	57                   	push   %rdi
18006d59e:	41 54                	push   %r12
18006d5a0:	41 55                	push   %r13
18006d5a2:	41 56                	push   %r14
18006d5a4:	41 57                	push   %r15
18006d5a6:	48 8b ec             	mov    %rsp,%rbp
18006d5a9:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
18006d5b0:	4c 8b 79 78          	mov    0x78(%rcx),%r15
18006d5b4:	33 f6                	xor    %esi,%esi
18006d5b6:	48 8b 05 93 75 13 00 	mov    0x137593(%rip),%rax        # 0x1801a4b50
18006d5bd:	4c 8b f2             	mov    %rdx,%r14
18006d5c0:	41 21 31             	and    %esi,(%r9)
18006d5c3:	41 8b d8             	mov    %r8d,%ebx
18006d5c6:	41 8b 4f 40          	mov    0x40(%r15),%ecx
18006d5ca:	4d 8b 6f 08          	mov    0x8(%r15),%r13
18006d5ce:	48 8b 3c c8          	mov    (%rax,%rcx,8),%rdi
18006d5d2:	4d 85 ed             	test   %r13,%r13
18006d5d5:	75 07                	jne    0x18006d5de
18006d5d7:	33 c0                	xor    %eax,%eax
18006d5d9:	e9 4e 02 00 00       	jmp    0x18006d82c
18006d5de:	41 f6 45 07 04       	testb  $0x4,0x7(%r13)
18006d5e3:	0f 84 5d 03 00 00    	je     0x18006d946
18006d5e9:	48 8b 47 20          	mov    0x20(%rdi),%rax
18006d5ed:	4d 8d 47 18          	lea    0x18(%r15),%r8
18006d5f1:	4c 8b 67 18          	mov    0x18(%rdi),%r12
18006d5f5:	33 d2                	xor    %edx,%edx
18006d5f7:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
18006d5fb:	41 8b 45 10          	mov    0x10(%r13),%eax
18006d5ff:	ff c8                	dec    %eax
18006d601:	4c 89 65 e0          	mov    %r12,-0x20(%rbp)
18006d605:	03 47 08             	add    0x8(%rdi),%eax
18006d608:	f7 77 08             	divl   0x8(%rdi)
18006d60b:	ff c8                	dec    %eax
18006d60d:	89 45 d8             	mov    %eax,-0x28(%rbp)
18006d610:	49 39 30             	cmp    %rsi,(%r8)
18006d613:	75 1f                	jne    0x18006d634
18006d615:	4d 8b c8             	mov    %r8,%r9
18006d618:	49 8b d5             	mov    %r13,%rdx
18006d61b:	44 8b c0             	mov    %eax,%r8d
18006d61e:	48 8b cf             	mov    %rdi,%rcx
18006d621:	e8 be fa ff ff       	call   0x18006d0e4
18006d626:	8b f0                	mov    %eax,%esi
18006d628:	85 c0                	test   %eax,%eax
18006d62a:	0f 88 f0 01 00 00    	js     0x18006d820
18006d630:	4d 8d 47 18          	lea    0x18(%r15),%r8
18006d634:	45 8b 4f 28          	mov    0x28(%r15),%r9d
18006d638:	33 d2                	xor    %edx,%edx
18006d63a:	41 8b c1             	mov    %r9d,%eax
18006d63d:	44 89 4d dc          	mov    %r9d,-0x24(%rbp)
18006d641:	f7 77 08             	divl   0x8(%rdi)
18006d644:	41 8d 0c 19          	lea    (%r9,%rbx,1),%ecx
18006d648:	44 8b f0             	mov    %eax,%r14d
18006d64b:	89 55 c4             	mov    %edx,-0x3c(%rbp)
18006d64e:	41 3b 4d 10          	cmp    0x10(%r13),%ecx
18006d652:	76 07                	jbe    0x18006d65b
18006d654:	41 8b 5d 10          	mov    0x10(%r13),%ebx
18006d658:	41 2b d9             	sub    %r9d,%ebx
18006d65b:	85 f6                	test   %esi,%esi
18006d65d:	0f 88 bd 01 00 00    	js     0x18006d820
18006d663:	85 db                	test   %ebx,%ebx
18006d665:	0f 84 b5 01 00 00    	je     0x18006d820
18006d66b:	4d 8b 18             	mov    (%r8),%r11
18006d66e:	4d 8b 45 08          	mov    0x8(%r13),%r8
18006d672:	4c 89 65 d0          	mov    %r12,-0x30(%rbp)
18006d676:	41 8b c6             	mov    %r14d,%eax
18006d679:	48 c1 e0 02          	shl    $0x2,%rax
18006d67d:	48 89 45 f0          	mov    %rax,-0x10(%rbp)
18006d681:	46 8b 14 18          	mov    (%rax,%r11,1),%r10d
18006d685:	4d 03 c2             	add    %r10,%r8
18006d688:	45 8b e0             	mov    %r8d,%r12d
18006d68b:	41 81 e4 ff 0f 00 00 	and    $0xfff,%r12d
18006d692:	74 06                	je     0x18006d69a
18006d694:	41 8b c4             	mov    %r12d,%eax
18006d697:	4c 2b c0             	sub    %rax,%r8
18006d69a:	41 8b c6             	mov    %r14d,%eax
18006d69d:	33 c9                	xor    %ecx,%ecx
18006d69f:	03 4f 08             	add    0x8(%rdi),%ecx
18006d6a2:	8b d0                	mov    %eax,%edx
18006d6a4:	ff c0                	inc    %eax
18006d6a6:	89 45 c8             	mov    %eax,-0x38(%rbp)
18006d6a9:	45 8b 0c 83          	mov    (%r11,%rax,4),%r9d
18006d6ad:	45 2b ca             	sub    %r10d,%r9d
18006d6b0:	45 03 cc             	add    %r12d,%r9d
18006d6b3:	48 83 bf 80 00 00 00 	cmpq   $0x0,0x80(%rdi)
18006d6ba:	00
18006d6bb:	74 0e                	je     0x18006d6cb
18006d6bd:	41 81 c1 ff 0f 00 00 	add    $0xfff,%r9d
18006d6c4:	41 81 e1 00 f0 ff ff 	and    $0xfffff000,%r9d
18006d6cb:	44 3b 4f 10          	cmp    0x10(%rdi),%r9d
18006d6cf:	77 0e                	ja     0x18006d6df
18006d6d1:	8b c1                	mov    %ecx,%eax
18006d6d3:	2b 45 c4             	sub    -0x3c(%rbp),%eax
18006d6d6:	3b c3                	cmp    %ebx,%eax
18006d6d8:	73 2a                	jae    0x18006d704
18006d6da:	8b 45 c8             	mov    -0x38(%rbp),%eax
18006d6dd:	eb c0                	jmp    0x18006d69f
18006d6df:	45 8b 0c 93          	mov    (%r11,%rdx,4),%r9d
18006d6e3:	45 2b ca             	sub    %r10d,%r9d
18006d6e6:	89 55 c8             	mov    %edx,-0x38(%rbp)
18006d6e9:	45 03 cc             	add    %r12d,%r9d
18006d6ec:	48 83 bf 80 00 00 00 	cmpq   $0x0,0x80(%rdi)
18006d6f3:	00
18006d6f4:	74 0e                	je     0x18006d704
18006d6f6:	41 81 c1 ff 0f 00 00 	add    $0xfff,%r9d
18006d6fd:	41 81 e1 00 f0 ff ff 	and    $0xfffff000,%r9d
18006d704:	44 3b 4f 10          	cmp    0x10(%rdi),%r9d
18006d708:	0f 87 2e 02 00 00    	ja     0x18006d93c
18006d70e:	45 85 c9             	test   %r9d,%r9d
18006d711:	74 3a                	je     0x18006d74d
18006d713:	8b 17                	mov    (%rdi),%edx
18006d715:	48 8d 45 c0          	lea    -0x40(%rbp),%rax
18006d719:	48 8b 8f 80 00 00 00 	mov    0x80(%rdi),%rcx
18006d720:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
18006d725:	48 8b 45 e0          	mov    -0x20(%rbp),%rax
18006d729:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18006d72e:	e8 25 7f 00 00       	call   0x180075658
18006d733:	8b f0                	mov    %eax,%esi
18006d735:	85 c0                	test   %eax,%eax
18006d737:	0f 88 e3 00 00 00    	js     0x18006d820
18006d73d:	45 8b d4             	mov    %r12d,%r10d
18006d740:	4c 8b 65 e0          	mov    -0x20(%rbp),%r12
18006d744:	4d 03 d4             	add    %r12,%r10
18006d747:	4c 89 55 d0          	mov    %r10,-0x30(%rbp)
18006d74b:	eb 08                	jmp    0x18006d755
18006d74d:	4c 8b 55 d0          	mov    -0x30(%rbp),%r10
18006d751:	4c 8b 65 e0          	mov    -0x20(%rbp),%r12
18006d755:	4d 8d 47 18          	lea    0x18(%r15),%r8
18006d759:	44 3b 75 c8          	cmp    -0x38(%rbp),%r14d
18006d75d:	0f 83 00 ff ff ff    	jae    0x18006d663
18006d763:	44 8b 5d c4          	mov    -0x3c(%rbp),%r11d
18006d767:	49 8b 4f 18          	mov    0x18(%r15),%rcx
18006d76b:	41 8d 46 01          	lea    0x1(%r14),%eax
18006d76f:	44 8b 47 08          	mov    0x8(%rdi),%r8d
18006d773:	45 2b c3             	sub    %r11d,%r8d
18006d776:	89 45 e8             	mov    %eax,-0x18(%rbp)
18006d779:	45 8b e0             	mov    %r8d,%r12d
18006d77c:	8b 14 81             	mov    (%rcx,%rax,4),%edx
18006d77f:	48 8b 45 f0          	mov    -0x10(%rbp),%rax
18006d783:	2b 14 08             	sub    (%rax,%rcx,1),%edx
18006d786:	89 55 c0             	mov    %edx,-0x40(%rbp)
18006d789:	44 89 45 40          	mov    %r8d,0x40(%rbp)
18006d78d:	44 3b c3             	cmp    %ebx,%r8d
18006d790:	76 09                	jbe    0x18006d79b
18006d792:	44 8b c3             	mov    %ebx,%r8d
18006d795:	89 5d 40             	mov    %ebx,0x40(%rbp)
18006d798:	44 8b e3             	mov    %ebx,%r12d
18006d79b:	85 d2                	test   %edx,%edx
18006d79d:	75 11                	jne    0x18006d7b0
18006d79f:	48 8b 4d 48          	mov    0x48(%rbp),%rcx
18006d7a3:	45 8b c4             	mov    %r12d,%r8d
18006d7a6:	e8 d5 84 0c 00       	call   0x180135c80
18006d7ab:	e9 3e 01 00 00       	jmp    0x18006d8ee
18006d7b0:	44 8b 4f 08          	mov    0x8(%rdi),%r9d
18006d7b4:	41 3b d1             	cmp    %r9d,%edx
18006d7b7:	0f 84 1f 01 00 00    	je     0x18006d8dc
18006d7bd:	8b 45 d8             	mov    -0x28(%rbp),%eax
18006d7c0:	44 3b f0             	cmp    %eax,%r14d
18006d7c3:	75 18                	jne    0x18006d7dd
18006d7c5:	49 8b 45 10          	mov    0x10(%r13),%rax
18006d7c9:	48 99                	cqto
18006d7cb:	49 f7 f9             	idiv   %r9
18006d7ce:	39 55 c0             	cmp    %edx,-0x40(%rbp)
18006d7d1:	0f 84 05 01 00 00    	je     0x18006d8dc
18006d7d7:	8b 55 c0             	mov    -0x40(%rbp),%edx
18006d7da:	8b 45 d8             	mov    -0x28(%rbp),%eax
18006d7dd:	8b 4f 0c             	mov    0xc(%rdi),%ecx
18006d7e0:	f7 c1 00 00 00 ff    	test   $0xff000000,%ecx
18006d7e6:	74 60                	je     0x18006d848
18006d7e8:	48 8b 45 f8          	mov    -0x8(%rbp),%rax