18007d5ff:	c3                   	ret
18007d600:	cc                   	int3
18007d601:	cc                   	int3
18007d602:	cc                   	int3
18007d603:	cc                   	int3
18007d604:	48 8b c4             	mov    %rsp,%rax
18007d607:	48 89 58 08          	mov    %rbx,0x8(%rax)
18007d60b:	48 89 68 10          	mov    %rbp,0x10(%rax)
18007d60f:	48 89 70 18          	mov    %rsi,0x18(%rax)
18007d613:	48 89 78 20          	mov    %rdi,0x20(%rax)
18007d617:	41 54                	push   %r12
18007d619:	41 56                	push   %r14
18007d61b:	41 57                	push   %r15
18007d61d:	48 83 ec 20          	sub    $0x20,%rsp
18007d621:	48 83 cb ff          	or     $0xffffffffffffffff,%rbx
18007d625:	4d 8b f8             	mov    %r8,%r15
18007d628:	48 8b fb             	mov    %rbx,%rdi
18007d62b:	45 33 e4             	xor    %r12d,%r12d
18007d62e:	48 8b ea             	mov    %rdx,%rbp
18007d631:	4c 8b f1             	mov    %rcx,%r14
18007d634:	48 ff c7             	inc    %rdi
18007d637:	66 44 39 24 79       	cmp    %r12w,(%rcx,%rdi,2)
18007d63c:	75 f6                	jne    0x18007d634
18007d63e:	48 03 ff             	add    %rdi,%rdi
18007d641:	48 ff c3             	inc    %rbx
18007d644:	66 44 39 24 5a       	cmp    %r12w,(%rdx,%rbx,2)
18007d649:	75 f6                	jne    0x18007d641
18007d64b:	48 03 db             	add    %rbx,%rbx
18007d64e:	48 8d 4f 02          	lea    0x2(%rdi),%rcx
18007d652:	48 03 cb             	add    %rbx,%rcx
18007d655:	e8 f6 c7 01 00       	call   0x180099e50
18007d65a:	48 8b f0             	mov    %rax,%rsi
18007d65d:	48 85 c0             	test   %rax,%rax
18007d660:	75 07                	jne    0x18007d669
18007d662:	b8 17 00 00 c0       	mov    $0xc0000017,%eax
18007d667:	eb 29                	jmp    0x18007d692
18007d669:	4c 8b c7             	mov    %rdi,%r8
18007d66c:	49 89 37             	mov    %rsi,(%r15)
18007d66f:	49 8b d6             	mov    %r14,%rdx
18007d672:	48 8b ce             	mov    %rsi,%rcx
18007d675:	e8 46 83 0b 00       	call   0x1801359c0
18007d67a:	48 03 f7             	add    %rdi,%rsi
18007d67d:	4c 8b c3             	mov    %rbx,%r8
18007d680:	48 8b ce             	mov    %rsi,%rcx
18007d683:	48 8b d5             	mov    %rbp,%rdx
18007d686:	e8 35 83 0b 00       	call   0x1801359c0
18007d68b:	33 c0                	xor    %eax,%eax
18007d68d:	66 44 89 24 1e       	mov    %r12w,(%rsi,%rbx,1)
18007d692:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
18007d697:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
18007d69c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
18007d6a1:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
18007d6a6:	48 83 c4 20          	add    $0x20,%rsp
18007d6aa:	41 5f                	pop    %r15
18007d6ac:	41 5e                	pop    %r14
18007d6ae:	41 5c                	pop    %r12
18007d6b0:	c3                   	ret
18007d6b1:	cc                   	int3
18007d6b2:	cc                   	int3
18007d6b3:	cc                   	int3
18007d6b4:	48 8b 11             	mov    (%rcx),%rdx
18007d6b7:	0f b6 02             	movzbl (%rdx),%eax
18007d6ba:	48 ff c2             	inc    %rdx
18007d6bd:	48 89 11             	mov    %rdx,(%rcx)
18007d6c0:	c3                   	ret
18007d6c1:	cc                   	int3
18007d6c2:	cc                   	int3
18007d6c3:	cc                   	int3
18007d6c4:	45 33 c0             	xor    %r8d,%r8d
18007d6c7:	48 89 51 08          	mov    %rdx,0x8(%rcx)
18007d6cb:	48 85 d2             	test   %rdx,%rdx
18007d6ce:	74 23                	je     0x18007d6f3
18007d6d0:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
18007d6d4:	48 ff c0             	inc    %rax
18007d6d7:	66 44 39 04 42       	cmp    %r8w,(%rdx,%rax,2)
18007d6dc:	75 f6                	jne    0x18007d6d4
18007d6de:	03 c0                	add    %eax,%eax
18007d6e0:	ba fc ff 00 00       	mov    $0xfffc,%edx
18007d6e5:	3d fe ff 00 00       	cmp    $0xfffe,%eax
18007d6ea:	0f 43 c2             	cmovae %edx,%eax
18007d6ed:	44 8d 40 02          	lea    0x2(%rax),%r8d
18007d6f1:	eb 04                	jmp    0x18007d6f7
18007d6f3:	41 0f b7 c0          	movzwl %r8w,%eax
18007d6f7:	66 89 01             	mov    %ax,(%rcx)
18007d6fa:	66 44 89 41 02       	mov    %r8w,0x2(%rcx)
18007d6ff:	c3                   	ret
18007d700:	cc                   	int3
18007d701:	cc                   	int3
18007d702:	cc                   	int3
18007d703:	cc                   	int3
18007d704:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18007d709:	0f b7 01             	movzwl (%rcx),%eax
18007d70c:	66 3b 02             	cmp    (%rdx),%ax
18007d70f:	75 71                	jne    0x18007d782
18007d711:	4c 8b 49 08          	mov    0x8(%rcx),%r9
18007d715:	41 b2 01             	mov    $0x1,%r10b
18007d718:	4d 8d 1c 01          	lea    (%r9,%rax,1),%r11
18007d71c:	4d 3b cb             	cmp    %r11,%r9
18007d71f:	73 64                	jae    0x18007d785
18007d721:	45 84 c0             	test   %r8b,%r8b
18007d724:	74 3f                	je     0x18007d765
18007d726:	4c 8b 42 08          	mov    0x8(%rdx),%r8
18007d72a:	4d 2b c1             	sub    %r9,%r8
18007d72d:	41 0f b7 09          	movzwl (%r9),%ecx
18007d731:	43 0f b7 1c 08       	movzwl (%r8,%r9,1),%ebx
18007d736:	66 3b cb             	cmp    %bx,%cx
18007d739:	74 1f                	je     0x18007d75a
18007d73b:	8d 41 9f             	lea    -0x61(%rcx),%eax
18007d73e:	83 f8 19             	cmp    $0x19,%eax
18007d741:	8d 51 e0             	lea    -0x20(%rcx),%edx
18007d744:	8d 43 9f             	lea    -0x61(%rbx),%eax
18007d747:	66 0f 47 d1          	cmova  %cx,%dx
18007d74b:	83 f8 19             	cmp    $0x19,%eax
18007d74e:	8d 4b e0             	lea    -0x20(%rbx),%ecx
18007d751:	66 0f 47 cb          	cmova  %bx,%cx
18007d755:	66 3b d1             	cmp    %cx,%dx
18007d758:	75 28                	jne    0x18007d782
18007d75a:	49 83 c1 02          	add    $0x2,%r9
18007d75e:	4d 3b cb             	cmp    %r11,%r9
18007d761:	73 22                	jae    0x18007d785
18007d763:	eb c8                	jmp    0x18007d72d
18007d765:	48 8b 4a 08          	mov    0x8(%rdx),%rcx
18007d769:	49 2b c9             	sub    %r9,%rcx
18007d76c:	42 0f b7 04 09       	movzwl (%rcx,%r9,1),%eax
18007d771:	66 41 39 01          	cmp    %ax,(%r9)
18007d775:	75 0b                	jne    0x18007d782
18007d777:	49 83 c1 02          	add    $0x2,%r9
18007d77b:	4d 3b cb             	cmp    %r11,%r9
18007d77e:	72 ec                	jb     0x18007d76c
18007d780:	eb 03                	jmp    0x18007d785
18007d782:	45 32 d2             	xor    %r10b,%r10b
18007d785:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18007d78a:	41 8a c2             	mov    %r10b,%al
18007d78d:	c3                   	ret
18007d78e:	cc                   	int3
18007d78f:	cc                   	int3
18007d790:	48 8b c4             	mov    %rsp,%rax
18007d793:	48 89 58 08          	mov    %rbx,0x8(%rax)
18007d797:	48 89 68 10          	mov    %rbp,0x10(%rax)
18007d79b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18007d79f:	48 89 78 20          	mov    %rdi,0x20(%rax)
18007d7a3:	41 56                	push   %r14
18007d7a5:	48 83 ec 20          	sub    $0x20,%rsp
18007d7a9:	48 8b f1             	mov    %rcx,%rsi
18007d7ac:	48 8b ea             	mov    %rdx,%rbp
18007d7af:	0f b7 0a             	movzwl (%rdx),%ecx
18007d7b2:	8d 3c 4d 02 00 00 00 	lea    0x2(,%rcx,2),%edi
18007d7b9:	81 ff fe ff 00 00    	cmp    $0xfffe,%edi
18007d7bf:	76 0a                	jbe    0x18007d7cb
18007d7c1:	bb f0 00 00 c0       	mov    $0xc00000f0,%ebx
18007d7c6:	e9 85 00 00 00       	jmp    0x18007d850
18007d7cb:	33 db                	xor    %ebx,%ebx
18007d7cd:	44 8d 73 01          	lea    0x1(%rbx),%r14d
18007d7d1:	45 84 c0             	test   %r8b,%r8b
18007d7d4:	74 21                	je     0x18007d7f7
18007d7d6:	48 8d 0c 4d 02 00 00 	lea    0x2(,%rcx,2),%rcx
18007d7dd:	00
18007d7de:	66 89 7e 02          	mov    %di,0x2(%rsi)
18007d7e2:	e8 69 c6 01 00       	call   0x180099e50
18007d7e7:	48 89 46 08          	mov    %rax,0x8(%rsi)
18007d7eb:	48 85 c0             	test   %rax,%rax
18007d7ee:	75 1d                	jne    0x18007d80d
18007d7f0:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18007d7f5:	eb 59                	jmp    0x18007d850
18007d7f7:	0f b7 46 02          	movzwl 0x2(%rsi),%eax
18007d7fb:	3b f8                	cmp    %eax,%edi
18007d7fd:	76 07                	jbe    0x18007d806
18007d7ff:	bb 05 00 00 80       	mov    $0x80000005,%ebx
18007d804:	eb 4a                	jmp    0x18007d850
18007d806:	66 41 03 ce          	add    %r14w,%cx
18007d80a:	8d 3c 09             	lea    (%rcx,%rcx,1),%edi
18007d80d:	66 83 ef 02          	sub    $0x2,%di
18007d811:	44 8b c3             	mov    %ebx,%r8d
18007d814:	66 89 3e             	mov    %di,(%rsi)
18007d817:	66 3b 5d 00          	cmp    0x0(%rbp),%bx
18007d81b:	73 22                	jae    0x18007d83f
18007d81d:	48 8b 45 08          	mov    0x8(%rbp),%rax
18007d821:	41 8b d0             	mov    %r8d,%edx
18007d824:	45 03 c6             	add    %r14d,%r8d
18007d827:	0f be 0c 02          	movsbl (%rdx,%rax,1),%ecx
18007d82b:	48 8b 46 08          	mov    0x8(%rsi),%rax
18007d82f:	66 89 0c 50          	mov    %cx,(%rax,%rdx,2)
18007d833:	0f b7 45 00          	movzwl 0x0(%rbp),%eax
18007d837:	44 3b c0             	cmp    %eax,%r8d
18007d83a:	72 e1                	jb     0x18007d81d
18007d83c:	0f b7 3e             	movzwl (%rsi),%edi
18007d83f:	66 3b 7e 02          	cmp    0x2(%rsi),%di
18007d843:	73 0b                	jae    0x18007d850
18007d845:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
18007d849:	41 8b d0             	mov    %r8d,%edx
18007d84c:	66 89 1c 51          	mov    %bx,(%rcx,%rdx,2)
18007d850:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18007d855:	8b c3                	mov    %ebx,%eax
18007d857:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18007d85c:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18007d861:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18007d866:	48 83 c4 20          	add    $0x20,%rsp
18007d86a:	41 5e                	pop    %r14
18007d86c:	c3                   	ret
18007d86d:	cc                   	int3
18007d86e:	cc                   	int3
18007d86f:	cc                   	int3
18007d870:	48 8b c4             	mov    %rsp,%rax
18007d873:	48 89 58 08          	mov    %rbx,0x8(%rax)
18007d877:	48 89 68 10          	mov    %rbp,0x10(%rax)
18007d87b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18007d87f:	48 89 78 20          	mov    %rdi,0x20(%rax)
18007d883:	41 56                	push   %r14
18007d885:	48 83 ec 20          	sub    $0x20,%rsp
18007d889:	0f b7 2a             	movzwl (%rdx),%ebp
18007d88c:	33 db                	xor    %ebx,%ebx
18007d88e:	48 8b f9             	mov    %rcx,%rdi
18007d891:	66 85 ed             	test   %bp,%bp
18007d894:	74 48                	je     0x18007d8de
18007d896:	0f b7 09             	movzwl (%rcx),%ecx
18007d899:	0f b7 47 02          	movzwl 0x2(%rdi),%eax
18007d89d:	44 8d 04 29          	lea    (%rcx,%rbp,1),%r8d
18007d8a1:	44 3b c0             	cmp    %eax,%r8d
18007d8a4:	76 07                	jbe    0x18007d8ad
18007d8a6:	bb 23 00 00 c0       	mov    $0xc0000023,%ebx
18007d8ab:	eb 31                	jmp    0x18007d8de
18007d8ad:	48 8b 47 08          	mov    0x8(%rdi),%rax
18007d8b1:	4c 8b c5             	mov    %rbp,%r8
18007d8b4:	48 8b 52 08          	mov    0x8(%rdx),%rdx
18007d8b8:	48 8b f5             	mov    %rbp,%rsi
18007d8bb:	48 d1 e9             	shr    $1,%rcx
18007d8be:	4c 8d 34 48          	lea    (%rax,%rcx,2),%r14
18007d8c2:	49 8b ce             	mov    %r14,%rcx
18007d8c5:	e8 f6 80 0b 00       	call   0x1801359c0
18007d8ca:	66 01 2f             	add    %bp,(%rdi)
18007d8cd:	0f b7 0f             	movzwl (%rdi),%ecx
18007d8d0:	66 3b 4f 02          	cmp    0x2(%rdi),%cx
18007d8d4:	73 08                	jae    0x18007d8de
18007d8d6:	48 d1 ee             	shr    $1,%rsi
18007d8d9:	66 41 89 1c 76       	mov    %bx,(%r14,%rsi,2)
18007d8de:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18007d8e3:	8b c3                	mov    %ebx,%eax
18007d8e5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
18007d8ea:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18007d8ef:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
18007d8f4:	48 83 c4 20          	add    $0x20,%rsp
18007d8f8:	41 5e                	pop    %r14
18007d8fa:	c3                   	ret
18007d8fb:	cc                   	int3
18007d8fc:	48 8b c4             	mov    %rsp,%rax
18007d8ff:	48 89 58 08          	mov    %rbx,0x8(%rax)
18007d903:	48 89 68 10          	mov    %rbp,0x10(%rax)
18007d907:	48 89 70 18          	mov    %rsi,0x18(%rax)
18007d90b:	57                   	push   %rdi
18007d90c:	41 56                	push   %r14
18007d90e:	41 57                	push   %r15
18007d910:	48 83 ec 30          	sub    $0x30,%rsp
18007d914:	33 db                	xor    %ebx,%ebx
18007d916:	48 8b ea             	mov    %rdx,%rbp
18007d919:	48 8b f9             	mov    %rcx,%rdi
18007d91c:	48 85 d2             	test   %rdx,%rdx
18007d91f:	74 5c                	je     0x18007d97d
18007d921:	48 8d 48 d8          	lea    -0x28(%rax),%rcx
18007d925:	e8 2a 04 00 00       	call   0x18007dd54
18007d92a:	85 c0                	test   %eax,%eax
18007d92c:	79 07                	jns    0x18007d935
18007d92e:	bb 23 00 00 c0       	mov    $0xc0000023,%ebx
18007d933:	eb 48                	jmp    0x18007d97d
18007d935:	0f b7 17             	movzwl (%rdi),%edx
18007d938:	44 0f b7 74 24 20    	movzwl 0x20(%rsp),%r14d
18007d93e:	0f b7 47 02          	movzwl 0x2(%rdi),%eax
18007d942:	42 8d 0c 32          	lea    (%rdx,%r14,1),%ecx
18007d946:	3b c8                	cmp    %eax,%ecx
18007d948:	77 e4                	ja     0x18007d92e
18007d94a:	48 8b 47 08          	mov    0x8(%rdi),%rax
18007d94e:	8b ca                	mov    %edx,%ecx
18007d950:	48 d1 e9             	shr    $1,%rcx
18007d953:	45 8b c6             	mov    %r14d,%r8d
18007d956:	48 8b d5             	mov    %rbp,%rdx
18007d959:	41 8b f6             	mov    %r14d,%esi
18007d95c:	4c 8d 3c 48          	lea    (%rax,%rcx,2),%r15
18007d960:	49 8b cf             	mov    %r15,%rcx
18007d963:	e8 58 80 0b 00       	call   0x1801359c0
18007d968:	66 44 01 37          	add    %r14w,(%rdi)
18007d96c:	0f b7 0f             	movzwl (%rdi),%ecx
18007d96f:	66 3b 4f 02          	cmp    0x2(%rdi),%cx
18007d973:	73 08                	jae    0x18007d97d
18007d975:	48 d1 ee             	shr    $1,%rsi
18007d978:	66 41 89 1c 77       	mov    %bx,(%r15,%rsi,2)
18007d97d:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
18007d982:	8b c3                	mov    %ebx,%eax
18007d984:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
18007d989:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
18007d98e:	48 83 c4 30          	add    $0x30,%rsp
18007d992:	41 5f                	pop    %r15
18007d994:	41 5e                	pop    %r14
18007d996:	5f                   	pop    %rdi
18007d997:	c3                   	ret
18007d998:	cc                   	int3
18007d999:	cc                   	int3
18007d99a:	cc                   	int3
18007d99b:	cc                   	int3
18007d99c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18007d9a1:	49 3b d1             	cmp    %r9,%rdx
18007d9a4:	49 8b c1             	mov    %r9,%rax
18007d9a7:	48 0f 46 c2          	cmovbe %rdx,%rax
18007d9ab:	41 2b d1             	sub    %r9d,%edx
18007d9ae:	4c 8d 14 41          	lea    (%rcx,%rax,2),%r10
18007d9b2:	49 3b ca             	cmp    %r10,%rcx
18007d9b5:	73 77                	jae    0x18007da2e
18007d9b7:	80 7c 24 28 00       	cmpb   $0x0,0x28(%rsp)
18007d9bc:	74 4e                	je     0x18007da0c
18007d9be:	44 0f b7 19          	movzwl (%rcx),%r11d
18007d9c2:	48 83 c1 02          	add    $0x2,%rcx
18007d9c6:	41 0f b7 18          	movzwl (%r8),%ebx
18007d9ca:	4d 8d 40 02          	lea    0x2(%r8),%r8
18007d9ce:	66 44 3b db          	cmp    %bx,%r11w
18007d9d2:	74 27                	je     0x18007d9fb
18007d9d4:	41 8d 43 9f          	lea    -0x61(%r11),%eax
18007d9d8:	66 83 f8 19          	cmp    $0x19,%ax
18007d9dc:	45 8d 4b e0          	lea    -0x20(%r11),%r9d
18007d9e0:	8d 43 9f             	lea    -0x61(%rbx),%eax
18007d9e3:	66 45 0f 47 cb       	cmova  %r11w,%r9w
18007d9e8:	66 83 f8 19          	cmp    $0x19,%ax
18007d9ec:	44 8d 5b e0          	lea    -0x20(%rbx),%r11d
18007d9f0:	66 44 0f 47 db       	cmova  %bx,%r11w
18007d9f5:	66 45 3b cb          	cmp    %r11w,%r9w
18007d9f9:	75 07                	jne    0x18007da02
18007d9fb:	49 3b ca             	cmp    %r10,%rcx
18007d9fe:	73 2e                	jae    0x18007da2e
18007da00:	eb bc                	jmp    0x18007d9be
18007da02:	41 0f b7 c3          	movzwl %r11w,%eax
18007da06:	41 0f b7 d1          	movzwl %r9w,%edx
18007da0a:	eb 20                	jmp    0x18007da2c
18007da0c:	44 0f b7 09          	movzwl (%rcx),%r9d
18007da10:	48 83 c1 02          	add    $0x2,%rcx
18007da14:	41 0f b7 00          	movzwl (%r8),%eax
18007da18:	4d 8d 40 02          	lea    0x2(%r8),%r8
18007da1c:	66 44 3b c8          	cmp    %ax,%r9w
18007da20:	75 07                	jne    0x18007da29
18007da22:	49 3b ca             	cmp    %r10,%rcx
18007da25:	72 e5                	jb     0x18007da0c
18007da27:	eb 05                	jmp    0x18007da2e
18007da29:	41 8b d1             	mov    %r9d,%edx
18007da2c:	2b d0                	sub    %eax,%edx
18007da2e:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18007da33:	8b c2                	mov    %edx,%eax
18007da35:	c3                   	ret
18007da36:	cc                   	int3
18007da37:	cc                   	int3
18007da38:	48 83 ec 38          	sub    $0x38,%rsp
18007da3c:	44 0f b7 0a          	movzwl (%rdx),%r9d
18007da40:	48 8b c2             	mov    %rdx,%rax
18007da43:	0f b7 11             	movzwl (%rcx),%edx
18007da46:	48 8b 49 08          	mov    0x8(%rcx),%rcx