18013c4e6:	85 c0                	test   %eax,%eax
18013c4e8:	0f 88 a6 02 00 00    	js     0x18013c794
18013c4ee:	44 8b f3             	mov    %ebx,%r14d
18013c4f1:	3b 5d d0             	cmp    -0x30(%rbp),%ebx
18013c4f4:	0f 83 7f 01 00 00    	jae    0x18013c679
18013c4fa:	49 6b c6 58          	imul   $0x58,%r14,%rax
18013c4fe:	49 83 c5 40          	add    $0x40,%r13
18013c502:	4c 03 e8             	add    %rax,%r13
18013c505:	33 d2                	xor    %edx,%edx
18013c507:	44 89 7d c8          	mov    %r15d,-0x38(%rbp)
18013c50b:	83 c8 ff             	or     $0xffffffff,%eax
18013c50e:	f7 f6                	div    %esi
18013c510:	8b da                	mov    %edx,%ebx
18013c512:	f7 d3                	not    %ebx
18013c514:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
18013c518:	e8 a3 4d f1 ff       	call   0x1800512c0
18013c51d:	3b c3                	cmp    %ebx,%eax
18013c51f:	77 f3                	ja     0x18013c514
18013c521:	48 8b 5d b0          	mov    -0x50(%rbp),%rbx
18013c525:	33 d2                	xor    %edx,%edx
18013c527:	f7 f6                	div    %esi
18013c529:	eb 09                	jmp    0x18013c534
18013c52b:	85 d2                	test   %edx,%edx
18013c52d:	74 0e                	je     0x18013c53d
18013c52f:	48 8b 1b             	mov    (%rbx),%rbx
18013c532:	ff ca                	dec    %edx
18013c534:	48 8d 45 b0          	lea    -0x50(%rbp),%rax
18013c538:	48 3b d8             	cmp    %rax,%rbx
18013c53b:	75 ee                	jne    0x18013c52b
18013c53d:	48 8b cb             	mov    %rbx,%rcx
18013c540:	e8 23 36 f0 ff       	call   0x18003fb68
18013c545:	48 8d 88 18 ff ff ff 	lea    -0xe8(%rax),%rcx
18013c54c:	48 8b 47 18          	mov    0x18(%rdi),%rax
18013c550:	48 89 4d f0          	mov    %rcx,-0x10(%rbp)
18013c554:	8b 40 18             	mov    0x18(%rax),%eax
18013c557:	8b d0                	mov    %eax,%edx
18013c559:	89 45 c8             	mov    %eax,-0x38(%rbp)
18013c55c:	e8 2b 4c f0 ff       	call   0x18004118c
18013c561:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
18013c565:	48 85 c0             	test   %rax,%rax
18013c568:	74 7e                	je     0x18013c5e8
18013c56a:	45 33 c0             	xor    %r8d,%r8d
18013c56d:	b2 02                	mov    $0x2,%dl
18013c56f:	49 8b cf             	mov    %r15,%rcx
18013c572:	e8 71 09 00 00       	call   0x18013cee8
18013c577:	48 8b f0             	mov    %rax,%rsi
18013c57a:	48 85 c0             	test   %rax,%rax
18013c57d:	74 66                	je     0x18013c5e5
18013c57f:	4c 8b 65 e8          	mov    -0x18(%rbp),%r12
18013c583:	8b 7d c8             	mov    -0x38(%rbp),%edi
18013c586:	f6 46 1e 01          	testb  $0x1,0x1e(%rsi)
18013c58a:	74 06                	je     0x18013c592
18013c58c:	48 8b 46 28          	mov    0x28(%rsi),%rax
18013c590:	eb 04                	jmp    0x18013c596
18013c592:	48 8b 46 20          	mov    0x20(%rsi),%rax
18013c596:	8b d7                	mov    %edi,%edx
18013c598:	48 89 45 c8          	mov    %rax,-0x38(%rbp)
18013c59c:	48 8b c8             	mov    %rax,%rcx
18013c59f:	e8 e8 4b f0 ff       	call   0x18004118c
18013c5a4:	48 85 c0             	test   %rax,%rax
18013c5a7:	74 1f                	je     0x18013c5c8
18013c5a9:	48 8b 08             	mov    (%rax),%rcx
18013c5ac:	49 3b 0c 24          	cmp    (%r12),%rcx
18013c5b0:	75 16                	jne    0x18013c5c8
18013c5b2:	48 8b 40 08          	mov    0x8(%rax),%rax
18013c5b6:	49 3b 44 24 08       	cmp    0x8(%r12),%rax
18013c5bb:	75 0b                	jne    0x18013c5c8
18013c5bd:	48 8b 45 c8          	mov    -0x38(%rbp),%rax
18013c5c1:	83 88 e4 00 00 00 02 	orl    $0x2,0xe4(%rax)
18013c5c8:	4c 8b c6             	mov    %rsi,%r8
18013c5cb:	b2 02                	mov    $0x2,%dl
18013c5cd:	49 8b cf             	mov    %r15,%rcx
18013c5d0:	e8 13 09 00 00       	call   0x18013cee8
18013c5d5:	48 8b f0             	mov    %rax,%rsi
18013c5d8:	48 85 c0             	test   %rax,%rax
18013c5db:	75 a9                	jne    0x18013c586
18013c5dd:	48 8b 7d 48          	mov    0x48(%rbp),%rdi
18013c5e1:	44 8b 65 d8          	mov    -0x28(%rbp),%r12d
18013c5e5:	8b 75 58             	mov    0x58(%rbp),%esi
18013c5e8:	48 8b 07             	mov    (%rdi),%rax
18013c5eb:	41 83 65 04 00       	andl   $0x0,0x4(%r13)
18013c5f0:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
18013c5f4:	49 89 45 e8          	mov    %rax,-0x18(%r13)
18013c5f8:	45 89 75 00          	mov    %r14d,0x0(%r13)
18013c5fc:	48 8b 41 10          	mov    0x10(%rcx),%rax
18013c600:	8b 50 18             	mov    0x18(%rax),%edx
18013c603:	41 89 55 fc          	mov    %edx,-0x4(%r13)
18013c607:	48 8b 57 08          	mov    0x8(%rdi),%rdx
18013c60b:	e8 7c 49 f0 ff       	call   0x180040f8c
18013c610:	49 89 45 f0          	mov    %rax,-0x10(%r13)
18013c614:	48 8b 47 08          	mov    0x8(%rdi),%rax
18013c618:	49 89 45 e0          	mov    %rax,-0x20(%r13)
18013c61c:	48 8b 0b             	mov    (%rbx),%rcx
18013c61f:	48 39 59 08          	cmp    %rbx,0x8(%rcx)
18013c623:	0f 85 56 01 00 00    	jne    0x18013c77f
18013c629:	48 8b 43 08          	mov    0x8(%rbx),%rax
18013c62d:	48 39 18             	cmp    %rbx,(%rax)
18013c630:	0f 85 49 01 00 00    	jne    0x18013c77f
18013c636:	48 89 08             	mov    %rcx,(%rax)
18013c639:	48 89 41 08          	mov    %rax,0x8(%rcx)
18013c63d:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
18013c641:	48 8b 45 b8          	mov    -0x48(%rbp),%rax
18013c645:	48 39 08             	cmp    %rcx,(%rax)
18013c648:	0f 85 31 01 00 00    	jne    0x18013c77f
18013c64e:	ff ce                	dec    %esi
18013c650:	48 89 43 08          	mov    %rax,0x8(%rbx)
18013c654:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
18013c658:	89 75 58             	mov    %esi,0x58(%rbp)
18013c65b:	48 89 0b             	mov    %rcx,(%rbx)
18013c65e:	41 ff c6             	inc    %r14d
18013c661:	49 83 c5 58          	add    $0x58,%r13
18013c665:	48 89 18             	mov    %rbx,(%rax)
18013c668:	48 89 5d b8          	mov    %rbx,-0x48(%rbp)
18013c66c:	44 3b 75 d0          	cmp    -0x30(%rbp),%r14d
18013c670:	0f 82 8f fe ff ff    	jb     0x18013c505
18013c676:	8b 5d c0             	mov    -0x40(%rbp),%ebx
18013c679:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
18013c67d:	e8 0e 36 f0 ff       	call   0x18003fc90
18013c682:	48 8d 45 b0          	lea    -0x50(%rbp),%rax
18013c686:	45 8b cc             	mov    %r12d,%r9d
18013c689:	44 8b c3             	mov    %ebx,%r8d
18013c68c:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
18013c691:	48 8b d7             	mov    %rdi,%rdx
18013c694:	49 8b cf             	mov    %r15,%rcx
18013c697:	e8 04 f6 ff ff       	call   0x18013bca0
18013c69c:	89 45 c0             	mov    %eax,-0x40(%rbp)
18013c69f:	44 8b f0             	mov    %eax,%r14d
18013c6a2:	85 c0                	test   %eax,%eax
18013c6a4:	0f 88 ea 00 00 00    	js     0x18013c794
18013c6aa:	45 33 ff             	xor    %r15d,%r15d
18013c6ad:	45 33 ed             	xor    %r13d,%r13d
18013c6b0:	44 89 7d 48          	mov    %r15d,0x48(%rbp)
18013c6b4:	45 85 e4             	test   %r12d,%r12d
18013c6b7:	0f 84 d7 00 00 00    	je     0x18013c794
18013c6bd:	44 3b 7d dc          	cmp    -0x24(%rbp),%r15d
18013c6c1:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
18013c6c5:	1b f6                	sbb    %esi,%esi
18013c6c7:	f7 de                	neg    %esi
18013c6c9:	ff c6                	inc    %esi
18013c6cb:	e8 ec 34 f0 ff       	call   0x18003fbbc
18013c6d0:	45 33 f6             	xor    %r14d,%r14d
18013c6d3:	4c 8d 55 b0          	lea    -0x50(%rbp),%r10
18013c6d7:	03 75 e0             	add    -0x20(%rbp),%esi
18013c6da:	0f 84 89 00 00 00    	je     0x18013c769
18013c6e0:	4c 8b 65 50          	mov    0x50(%rbp),%r12
18013c6e4:	4d 8b fa             	mov    %r10,%r15
18013c6e7:	8b 4d d4             	mov    -0x2c(%rbp),%ecx
18013c6ea:	4d 8b 3f             	mov    (%r15),%r15
18013c6ed:	8d 41 01             	lea    0x1(%rcx),%eax
18013c6f0:	45 85 f6             	test   %r14d,%r14d
18013c6f3:	0f 45 c1             	cmovne %ecx,%eax
18013c6f6:	41 0f 45 cd          	cmovne %r13d,%ecx
18013c6fa:	89 45 58             	mov    %eax,0x58(%rbp)
18013c6fd:	41 8d 45 01          	lea    0x1(%r13),%eax
18013c701:	44 8b c1             	mov    %ecx,%r8d
18013c704:	44 0f 45 e8          	cmovne %eax,%r13d
18013c708:	49 8b cf             	mov    %r15,%rcx
18013c70b:	e8 58 34 f0 ff       	call   0x18003fb68
18013c710:	49 6b d8 58          	imul   $0x58,%r8,%rbx
18013c714:	48 8d 88 18 ff ff ff 	lea    -0xe8(%rax),%rcx
18013c71b:	48 8b 07             	mov    (%rdi),%rax
18013c71e:	42 83 64 23 44 00    	andl   $0x0,0x44(%rbx,%r12,1)
18013c724:	4a 89 44 23 28       	mov    %rax,0x28(%rbx,%r12,1)
18013c729:	46 89 44 23 40       	mov    %r8d,0x40(%rbx,%r12,1)
18013c72e:	48 8b 41 10          	mov    0x10(%rcx),%rax
18013c732:	8b 50 18             	mov    0x18(%rax),%edx
18013c735:	42 89 54 23 3c       	mov    %edx,0x3c(%rbx,%r12,1)
18013c73a:	48 8b 57 08          	mov    0x8(%rdi),%rdx
18013c73e:	e8 49 48 f0 ff       	call   0x180040f8c
18013c743:	4a 89 44 23 30       	mov    %rax,0x30(%rbx,%r12,1)
18013c748:	41 ff c6             	inc    %r14d
18013c74b:	48 8b 47 08          	mov    0x8(%rdi),%rax
18013c74f:	4a 89 44 23 20       	mov    %rax,0x20(%rbx,%r12,1)
18013c754:	8b 45 58             	mov    0x58(%rbp),%eax
18013c757:	8b c8                	mov    %eax,%ecx
18013c759:	44 3b f6             	cmp    %esi,%r14d
18013c75c:	72 8c                	jb     0x18013c6ea
18013c75e:	44 8b 7d 48          	mov    0x48(%rbp),%r15d
18013c762:	44 8b 65 d8          	mov    -0x28(%rbp),%r12d
18013c766:	89 45 d4             	mov    %eax,-0x2c(%rbp)
18013c769:	41 ff c7             	inc    %r15d
18013c76c:	44 89 7d 48          	mov    %r15d,0x48(%rbp)
18013c770:	45 3b fc             	cmp    %r12d,%r15d
18013c773:	0f 82 44 ff ff ff    	jb     0x18013c6bd
18013c779:	44 8b 75 c0          	mov    -0x40(%rbp),%r14d
18013c77d:	eb 15                	jmp    0x18013c794
18013c77f:	b9 03 00 00 00       	mov    $0x3,%ecx
18013c784:	cd 29                	int    $0x29
18013c786:	48 8b d7             	mov    %rdi,%rdx
18013c789:	49 8b cf             	mov    %r15,%rcx
18013c78c:	e8 a7 f9 ff ff       	call   0x18013c138
18013c791:	44 8b f0             	mov    %eax,%r14d
18013c794:	48 8d 4d b0          	lea    -0x50(%rbp),%rcx
18013c798:	e8 f3 34 f0 ff       	call   0x18003fc90
18013c79d:	48 8b 9c 24 c0 00 00 	mov    0xc0(%rsp),%rbx
18013c7a4:	00
18013c7a5:	41 8b c6             	mov    %r14d,%eax
18013c7a8:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
18013c7af:	41 5f                	pop    %r15
18013c7b1:	41 5e                	pop    %r14
18013c7b3:	41 5d                	pop    %r13
18013c7b5:	41 5c                	pop    %r12
18013c7b7:	5f                   	pop    %rdi
18013c7b8:	5e                   	pop    %rsi
18013c7b9:	5d                   	pop    %rbp
18013c7ba:	c3                   	ret
18013c7bb:	cc                   	int3
18013c7bc:	48 8b c4             	mov    %rsp,%rax
18013c7bf:	48 89 58 08          	mov    %rbx,0x8(%rax)
18013c7c3:	48 89 68 10          	mov    %rbp,0x10(%rax)
18013c7c7:	48 89 70 18          	mov    %rsi,0x18(%rax)
18013c7cb:	48 89 78 20          	mov    %rdi,0x20(%rax)
18013c7cf:	41 56                	push   %r14
18013c7d1:	48 83 ec 20          	sub    $0x20,%rsp
18013c7d5:	8b 8a c0 00 00 00    	mov    0xc0(%rdx),%ecx
18013c7db:	48 8d b2 b0 00 00 00 	lea    0xb0(%rdx),%rsi
18013c7e2:	49 8b f8             	mov    %r8,%rdi
18013c7e5:	48 8b ea             	mov    %rdx,%rbp
18013c7e8:	48 d3 ef             	shr    %cl,%rdi
18013c7eb:	45 33 c0             	xor    %r8d,%r8d
18013c7ee:	8b d7                	mov    %edi,%edx
18013c7f0:	48 8b ce             	mov    %rsi,%rcx
18013c7f3:	83 cb ff             	or     $0xffffffff,%ebx
18013c7f6:	e8 91 30 ef ff       	call   0x18002f88c
18013c7fb:	44 8b f0             	mov    %eax,%r14d
18013c7fe:	3b c3                	cmp    %ebx,%eax
18013c800:	74 61                	je     0x18013c863
18013c802:	48 8b cd             	mov    %rbp,%rcx
18013c805:	e8 5e 49 f0 ff       	call   0x180041168
18013c80a:	48 85 c0             	test   %rax,%rax
18013c80d:	74 4f                	je     0x18013c85e
18013c80f:	8b 80 fc 01 00 00    	mov    0x1fc(%rax),%eax
18013c815:	85 c0                	test   %eax,%eax
18013c817:	78 45                	js     0x18013c85e
18013c819:	48 8b ce             	mov    %rsi,%rcx
18013c81c:	e8 b3 31 ef ff       	call   0x18002f9d4
18013c821:	44 8b 06             	mov    (%rsi),%r8d
18013c824:	33 d2                	xor    %edx,%edx
18013c826:	8b c0                	mov    %eax,%eax
18013c828:	48 6b c0 64          	imul   $0x64,%rax,%rax
18013c82c:	49 f7 f0             	div    %r8
18013c82f:	4c 8b c0             	mov    %rax,%r8
18013c832:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
18013c837:	41 f7 e0             	mul    %r8d
18013c83a:	8b da                	mov    %edx,%ebx
18013c83c:	c1 eb 03             	shr    $0x3,%ebx
18013c83f:	83 fb 09             	cmp    $0x9,%ebx
18013c842:	72 1f                	jb     0x18013c863
18013c844:	45 8d 04 3e          	lea    (%r14,%rdi,1),%r8d
18013c848:	8b d7                	mov    %edi,%edx
18013c84a:	48 8b ce             	mov    %rsi,%rcx
18013c84d:	e8 3a 30 ef ff       	call   0x18002f88c
18013c852:	44 3b f0             	cmp    %eax,%r14d
18013c855:	75 0c                	jne    0x18013c863
18013c857:	bb 0a 00 00 00       	mov    $0xa,%ebx
18013c85c:	eb 05                	jmp    0x18013c863
18013c85e:	bb 0b 00 00 00       	mov    $0xb,%ebx
18013c863:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18013c868:	8b c3                	mov    %ebx,%eax
18013c86a:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18013c86f:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18013c874:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18013c879:	48 83 c4 20          	add    $0x20,%rsp
18013c87d:	41 5e                	pop    %r14
18013c87f:	c3                   	ret
18013c880:	cc                   	int3
18013c881:	cc                   	int3
18013c882:	cc                   	int3
18013c883:	cc                   	int3
18013c884:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18013c889:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
18013c88e:	56                   	push   %rsi
18013c88f:	57                   	push   %rdi
18013c890:	41 54                	push   %r12
18013c892:	41 56                	push   %r14
18013c894:	41 57                	push   %r15
18013c896:	48 83 ec 30          	sub    $0x30,%rsp
18013c89a:	48 8b e9             	mov    %rcx,%rbp
18013c89d:	33 db                	xor    %ebx,%ebx
18013c89f:	48 8b ca             	mov    %rdx,%rcx
18013c8a2:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
18013c8a7:	4c 8b f2             	mov    %rdx,%r14
18013c8aa:	e8 45 22 00 00       	call   0x18013eaf4
18013c8af:	8b f8                	mov    %eax,%edi
18013c8b1:	85 c0                	test   %eax,%eax
18013c8b3:	0f 88 44 01 00 00    	js     0x18013c9fd
18013c8b9:	41 f6 46 1e 01       	testb  $0x1,0x1e(%r14)
18013c8be:	74 06                	je     0x18013c8c6
18013c8c0:	49 8b 76 28          	mov    0x28(%r14),%rsi
18013c8c4:	eb 1b                	jmp    0x18013c8e1
18013c8c6:	49 8b 76 20          	mov    0x20(%r14),%rsi
18013c8ca:	eb 15                	jmp    0x18013c8e1
18013c8cc:	48 8b d0             	mov    %rax,%rdx
18013c8cf:	48 8b cd             	mov    %rbp,%rcx
18013c8d2:	e8 ad ff ff ff       	call   0x18013c884
18013c8d7:	8b f8                	mov    %eax,%edi
18013c8d9:	85 c0                	test   %eax,%eax
18013c8db:	0f 88 1c 01 00 00    	js     0x18013c9fd
18013c8e1:	48 8b 86 c8 00 00 00 	mov    0xc8(%rsi),%rax
18013c8e8:	48 85 c0             	test   %rax,%rax
18013c8eb:	75 df                	jne    0x18013c8cc
18013c8ed:	44 8b 66 50          	mov    0x50(%rsi),%r12d
18013c8f1:	41 83 fc ff          	cmp    $0xffffffff,%r12d
18013c8f5:	74 68                	je     0x18013c95f
18013c8f7:	0f 57 c0             	xorps  %xmm0,%xmm0
18013c8fa:	48 8b cd             	mov    %rbp,%rcx
18013c8fd:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
18013c902:	e8 49 d9 ff ff       	call   0x18013a250
18013c907:	4c 8b f8             	mov    %rax,%r15
18013c90a:	48 85 c0             	test   %rax,%rax
18013c90d:	75 0a                	jne    0x18013c919
18013c90f:	bf 25 02 00 c0       	mov    $0xc0000225,%edi
18013c914:	e9 e4 00 00 00       	jmp    0x18013c9fd
18013c919:	33 d2                	xor    %edx,%edx
18013c91b:	49 8b cf             	mov    %r15,%rcx
18013c91e:	e8 75 20 00 00       	call   0x18013e998
18013c923:	8b f8                	mov    %eax,%edi
18013c925:	85 c0                	test   %eax,%eax
18013c927:	78 2e                	js     0x18013c957
18013c929:	49 8b 57 28          	mov    0x28(%r15),%rdx
18013c92d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
18013c932:	4c 8b 42 48          	mov    0x48(%rdx),%r8
18013c936:	48 8b 92 40 01 00 00 	mov    0x140(%rdx),%rdx
18013c93d:	49 c1 e8 19          	shr    $0x19,%r8
18013c941:	41 c1 e0 03          	shl    $0x3,%r8d
18013c945:	e8 ba 2a ef ff       	call   0x18002f404
18013c94a:	41 8b d4             	mov    %r12d,%edx
18013c94d:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
18013c952:	e8 b9 2a ef ff       	call   0x18002f410
18013c957:	85 ff                	test   %edi,%edi
18013c959:	0f 88 9e 00 00 00    	js     0x18013c9fd
18013c95f:	33 d2                	xor    %edx,%edx
18013c961:	eb 18                	jmp    0x18013c97b
18013c963:	49 8b d7             	mov    %r15,%rdx
18013c966:	48 8b cd             	mov    %rbp,%rcx
18013c969:	e8 aa 00 00 00       	call   0x18013ca18
18013c96e:	8b f8                	mov    %eax,%edi
18013c970:	85 c0                	test   %eax,%eax
18013c972:	0f 88 85 00 00 00    	js     0x18013c9fd
18013c978:	49 8b d7             	mov    %r15,%rdx
18013c97b:	4c 8d 44 24 70       	lea    0x70(%rsp),%r8
18013c980:	48 8b ce             	mov    %rsi,%rcx
18013c983:	e8 80 55 f0 ff       	call   0x180041f08
18013c988:	4c 8b f8             	mov    %rax,%r15
18013c98b:	48 85 c0             	test   %rax,%rax
18013c98e:	75 d3                	jne    0x18013c963
18013c990:	48 8b 8e d8 00 00 00 	mov    0xd8(%rsi),%rcx
18013c997:	eb 22                	jmp    0x18013c9bb
18013c999:	f6 41 1e 01          	testb  $0x1,0x1e(%rcx)
18013c99d:	74 06                	je     0x18013c9a5