14098c562:	48 85 c0             	test   %rax,%rax
14098c565:	75 20                	jne    0x14098c587
14098c567:	45 33 c0             	xor    %r8d,%r8d
14098c56a:	8d 50 0e             	lea    0xe(%rax),%edx
14098c56d:	48 8b ce             	mov    %rsi,%rcx
14098c570:	e8 1b b4 ff ff       	call   0x140987990
14098c575:	33 c0                	xor    %eax,%eax
14098c577:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14098c57c:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
14098c581:	48 83 c4 20          	add    $0x20,%rsp
14098c585:	5e                   	pop    %rsi
14098c586:	c3                   	ret
14098c587:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14098c58c:	33 ff                	xor    %edi,%edi
14098c58e:	48 89 38             	mov    %rdi,(%rax)
14098c591:	48 89 78 10          	mov    %rdi,0x10(%rax)
14098c595:	48 89 78 08          	mov    %rdi,0x8(%rax)
14098c599:	48 89 78 20          	mov    %rdi,0x20(%rax)
14098c59d:	48 89 78 18          	mov    %rdi,0x18(%rax)
14098c5a1:	48 89 78 28          	mov    %rdi,0x28(%rax)
14098c5a5:	40 88 78 30          	mov    %dil,0x30(%rax)
14098c5a9:	48 85 ed             	test   %rbp,%rbp
14098c5ac:	74 5f                	je     0x14098c60d
14098c5ae:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
14098c5b5:	ff ff 07
14098c5b8:	48 3b e8             	cmp    %rax,%rbp
14098c5bb:	77 68                	ja     0x14098c625
14098c5bd:	48 8b d5             	mov    %rbp,%rdx
14098c5c0:	33 c9                	xor    %ecx,%ecx
14098c5c2:	48 c1 e2 05          	shl    $0x5,%rdx
14098c5c6:	e8 dd 4b 4a 00       	call   0x140e311a8
14098c5cb:	48 85 c0             	test   %rax,%rax
14098c5ce:	74 55                	je     0x14098c625
14098c5d0:	48 89 03             	mov    %rax,(%rbx)
14098c5d3:	48 8b 43 08          	mov    0x8(%rbx),%rax
14098c5d7:	48 3b c5             	cmp    %rbp,%rax
14098c5da:	73 29                	jae    0x14098c605
14098c5dc:	48 8b f8             	mov    %rax,%rdi
14098c5df:	48 8b f5             	mov    %rbp,%rsi
14098c5e2:	48 c1 e7 05          	shl    $0x5,%rdi
14098c5e6:	48 2b f0             	sub    %rax,%rsi
14098c5e9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14098c5f0:	48 8b 0b             	mov    (%rbx),%rcx
14098c5f3:	48 03 cf             	add    %rdi,%rcx
14098c5f6:	e8 d5 3c 00 00       	call   0x1409902d0
14098c5fb:	48 83 c7 20          	add    $0x20,%rdi
14098c5ff:	48 83 ee 01          	sub    $0x1,%rsi
14098c603:	75 eb                	jne    0x14098c5f0
14098c605:	48 89 6b 10          	mov    %rbp,0x10(%rbx)
14098c609:	48 89 6b 08          	mov    %rbp,0x8(%rbx)
14098c60d:	48 8b c3             	mov    %rbx,%rax
14098c610:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14098c615:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14098c61a:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
14098c61f:	48 83 c4 20          	add    $0x20,%rsp
14098c623:	5e                   	pop    %rsi
14098c624:	c3                   	ret
14098c625:	44 8b c7             	mov    %edi,%r8d
14098c628:	ba 0e 00 00 00       	mov    $0xe,%edx
14098c62d:	48 8b ce             	mov    %rsi,%rcx
14098c630:	e8 5b b3 ff ff       	call   0x140987990
14098c635:	48 39 7b 08          	cmp    %rdi,0x8(%rbx)
14098c639:	76 1d                	jbe    0x14098c658
14098c63b:	48 8b f7             	mov    %rdi,%rsi
14098c63e:	66 90                	xchg   %ax,%ax
14098c640:	48 8b 0b             	mov    (%rbx),%rcx
14098c643:	48 03 ce             	add    %rsi,%rcx
14098c646:	e8 55 3c 00 00       	call   0x1409902a0
14098c64b:	48 ff c7             	inc    %rdi
14098c64e:	48 83 c6 20          	add    $0x20,%rsi
14098c652:	48 3b 7b 08          	cmp    0x8(%rbx),%rdi
14098c656:	72 e8                	jb     0x14098c640
14098c658:	48 8b 0b             	mov    (%rbx),%rcx
14098c65b:	e8 30 4a 4a 00       	call   0x140e31090
14098c660:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
14098c664:	e8 17 3d 00 00       	call   0x140990380
14098c669:	48 8b cb             	mov    %rbx,%rcx
14098c66c:	e8 1f 4a 4a 00       	call   0x140e31090
14098c671:	33 c0                	xor    %eax,%eax
14098c673:	eb 9b                	jmp    0x14098c610
14098c675:	cc                   	int3
14098c676:	cc                   	int3
14098c677:	cc                   	int3
14098c678:	cc                   	int3
14098c679:	cc                   	int3
14098c67a:	cc                   	int3
14098c67b:	cc                   	int3
14098c67c:	cc                   	int3
14098c67d:	cc                   	int3
14098c67e:	cc                   	int3
14098c67f:	cc                   	int3
14098c680:	40 55                	rex push %rbp
14098c682:	57                   	push   %rdi
14098c683:	41 56                	push   %r14
14098c685:	41 57                	push   %r15
14098c687:	48 81 ec b8 00 00 00 	sub    $0xb8,%rsp
14098c68e:	48 8b 05 6b c8 a2 00 	mov    0xa2c86b(%rip),%rax        # 0x1413b8f00
14098c695:	48 33 c4             	xor    %rsp,%rax
14098c698:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
14098c69f:	00
14098c6a0:	48 8b f9             	mov    %rcx,%rdi
14098c6a3:	49 8b e8             	mov    %r8,%rbp
14098c6a6:	48 8b 09             	mov    (%rcx),%rcx
14098c6a9:	4c 8b f2             	mov    %rdx,%r14
14098c6ac:	e8 9f eb ff ff       	call   0x14098b250
14098c6b1:	4c 8b f8             	mov    %rax,%r15
14098c6b4:	48 85 c0             	test   %rax,%rax
14098c6b7:	79 18                	jns    0x14098c6d1
14098c6b9:	48 8b 17             	mov    (%rdi),%rdx
14098c6bc:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14098c6c0:	e8 0b b2 ff ff       	call   0x1409878d0
14098c6c5:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14098c6cc:	e9 d8 02 00 00       	jmp    0x14098c9a9
14098c6d1:	48 89 9c 24 f8 00 00 	mov    %rbx,0xf8(%rsp)
14098c6d8:	00
14098c6d9:	32 db                	xor    %bl,%bl
14098c6db:	48 89 b4 24 b0 00 00 	mov    %rsi,0xb0(%rsp)
14098c6e2:	00
14098c6e3:	4c 89 a4 24 a8 00 00 	mov    %r12,0xa8(%rsp)
14098c6ea:	00
14098c6eb:	4c 89 ac 24 a0 00 00 	mov    %r13,0xa0(%rsp)
14098c6f2:	00
14098c6f3:	45 33 ed             	xor    %r13d,%r13d
14098c6f6:	41 8b f5             	mov    %r13d,%esi
14098c6f9:	45 8d 65 01          	lea    0x1(%r13),%r12d
14098c6fd:	48 85 ed             	test   %rbp,%rbp
14098c700:	74 4b                	je     0x14098c74d
14098c702:	0f 1f 40 00          	nopl   0x0(%rax)
14098c706:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14098c70d:	00 00 00
14098c710:	49 8b 04 f6          	mov    (%r14,%rsi,8),%rax
14098c714:	48 c1 e0 05          	shl    $0x5,%rax
14098c718:	48 03 47 58          	add    0x58(%rdi),%rax
14098c71c:	48 8b 50 08          	mov    0x8(%rax),%rdx
14098c720:	48 85 d2             	test   %rdx,%rdx
14098c723:	75 03                	jne    0x14098c728
14098c725:	48 8b 10             	mov    (%rax),%rdx
14098c728:	41 b8 00 02 00 00    	mov    $0x200,%r8d
14098c72e:	48 8b cf             	mov    %rdi,%rcx
14098c731:	e8 6a 11 00 00       	call   0x14098d8a0
14098c736:	85 c0                	test   %eax,%eax
14098c738:	0f 88 f0 01 00 00    	js     0x14098c92e
14098c73e:	0f b6 db             	movzbl %bl,%ebx
14098c741:	41 0f 45 dc          	cmovne %r12d,%ebx
14098c745:	48 ff c6             	inc    %rsi
14098c748:	48 3b f5             	cmp    %rbp,%rsi
14098c74b:	72 c3                	jb     0x14098c710
14098c74d:	48 8b 0f             	mov    (%rdi),%rcx
14098c750:	e8 fb ea ff ff       	call   0x14098b250
14098c755:	4c 8b e0             	mov    %rax,%r12
14098c758:	48 85 c0             	test   %rax,%rax
14098c75b:	79 18                	jns    0x14098c775
14098c75d:	48 8b 17             	mov    (%rdi),%rdx
14098c760:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14098c764:	e8 67 b1 ff ff       	call   0x1409878d0
14098c769:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14098c770:	e9 14 02 00 00       	jmp    0x14098c989
14098c775:	4d 8b f4             	mov    %r12,%r14
14098c778:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14098c77d:	4d 2b f7             	sub    %r15,%r14
14098c780:	b9 ff ff 00 00       	mov    $0xffff,%ecx
14098c785:	4c 3b f8             	cmp    %rax,%r15
14098c788:	77 05                	ja     0x14098c78f
14098c78a:	48 3b e9             	cmp    %rcx,%rbp
14098c78d:	76 02                	jbe    0x14098c791
14098c78f:	b3 01                	mov    $0x1,%bl
14098c791:	ba 62 00 00 00       	mov    $0x62,%edx
14098c796:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14098c79b:	e8 50 f8 ff ff       	call   0x14098bff0
14098c7a0:	48 8b f0             	mov    %rax,%rsi
14098c7a3:	48 85 c0             	test   %rax,%rax
14098c7a6:	75 18                	jne    0x14098c7c0
14098c7a8:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14098c7ac:	45 33 c0             	xor    %r8d,%r8d
14098c7af:	8d 50 0e             	lea    0xe(%rax),%edx
14098c7b2:	e8 d9 b1 ff ff       	call   0x140987990
14098c7b7:	48 8d 46 ff          	lea    -0x1(%rsi),%rax
14098c7bb:	e9 c9 01 00 00       	jmp    0x14098c989
14098c7c0:	84 db                	test   %bl,%bl
14098c7c2:	0f 84 b3 00 00 00    	je     0x14098c87b
14098c7c8:	41 b8 04 00 00 00    	mov    $0x4,%r8d
14098c7ce:	48 8d 15 f3 8d 6d 00 	lea    0x6d8df3(%rip),%rdx        # 0x1410655c8
14098c7d5:	48 8b ce             	mov    %rsi,%rcx
14098c7d8:	e8 a3 f9 ff ff       	call   0x14098c180
14098c7dd:	ba 2c 00 00 00       	mov    $0x2c,%edx
14098c7e2:	48 8b ce             	mov    %rsi,%rcx
14098c7e5:	e8 76 fa ff ff       	call   0x14098c260
14098c7ea:	ba 2d 00 00 00       	mov    $0x2d,%edx
14098c7ef:	48 8b ce             	mov    %rsi,%rcx
14098c7f2:	e8 d9 f9 ff ff       	call   0x14098c1d0
14098c7f7:	ba 2d 00 00 00       	mov    $0x2d,%edx
14098c7fc:	48 8b ce             	mov    %rsi,%rcx
14098c7ff:	e8 cc f9 ff ff       	call   0x14098c1d0
14098c804:	33 d2                	xor    %edx,%edx
14098c806:	48 8b ce             	mov    %rsi,%rcx
14098c809:	e8 02 fa ff ff       	call   0x14098c210
14098c80e:	33 d2                	xor    %edx,%edx
14098c810:	48 8b ce             	mov    %rsi,%rcx
14098c813:	e8 f8 f9 ff ff       	call   0x14098c210
14098c818:	48 8b d5             	mov    %rbp,%rdx
14098c81b:	48 8b ce             	mov    %rsi,%rcx
14098c81e:	e8 3d fa ff ff       	call   0x14098c260
14098c823:	48 8b d5             	mov    %rbp,%rdx
14098c826:	48 8b ce             	mov    %rsi,%rcx
14098c829:	e8 32 fa ff ff       	call   0x14098c260
14098c82e:	49 8b d6             	mov    %r14,%rdx
14098c831:	48 8b ce             	mov    %rsi,%rcx
14098c834:	e8 27 fa ff ff       	call   0x14098c260
14098c839:	49 8b d7             	mov    %r15,%rdx
14098c83c:	48 8b ce             	mov    %rsi,%rcx
14098c83f:	e8 1c fa ff ff       	call   0x14098c260
14098c844:	41 b8 04 00 00 00    	mov    $0x4,%r8d
14098c84a:	48 8d 15 7f 8d 6d 00 	lea    0x6d8d7f(%rip),%rdx        # 0x1410655d0
14098c851:	48 8b ce             	mov    %rsi,%rcx
14098c854:	e8 27 f9 ff ff       	call   0x14098c180
14098c859:	33 d2                	xor    %edx,%edx
14098c85b:	48 8b ce             	mov    %rsi,%rcx
14098c85e:	e8 ad f9 ff ff       	call   0x14098c210
14098c863:	49 8b d4             	mov    %r12,%rdx
14098c866:	48 8b ce             	mov    %rsi,%rcx
14098c869:	e8 f2 f9 ff ff       	call   0x14098c260
14098c86e:	ba 01 00 00 00       	mov    $0x1,%edx
14098c873:	48 8b ce             	mov    %rsi,%rcx
14098c876:	e8 95 f9 ff ff       	call   0x14098c210
14098c87b:	41 b8 04 00 00 00    	mov    $0x4,%r8d
14098c881:	48 8d 15 38 8d 6d 00 	lea    0x6d8d38(%rip),%rdx        # 0x1410655c0
14098c888:	48 8b ce             	mov    %rsi,%rcx
14098c88b:	e8 f0 f8 ff ff       	call   0x14098c180
14098c890:	33 d2                	xor    %edx,%edx
14098c892:	48 8b ce             	mov    %rsi,%rcx
14098c895:	e8 76 f9 ff ff       	call   0x14098c210
14098c89a:	b8 ff ff 00 00       	mov    $0xffff,%eax
14098c89f:	48 8b ce             	mov    %rsi,%rcx
14098c8a2:	48 3b e8             	cmp    %rax,%rbp
14098c8a5:	66 0f 43 e8          	cmovae %ax,%bp
14098c8a9:	0f b7 d5             	movzwl %bp,%edx
14098c8ac:	e8 1f f9 ff ff       	call   0x14098c1d0
14098c8b1:	0f b7 d5             	movzwl %bp,%edx
14098c8b4:	48 8b ce             	mov    %rsi,%rcx
14098c8b7:	e8 14 f9 ff ff       	call   0x14098c1d0
14098c8bc:	bb ff ff ff ff       	mov    $0xffffffff,%ebx
14098c8c1:	41 8b d6             	mov    %r14d,%edx
14098c8c4:	4c 3b f3             	cmp    %rbx,%r14
14098c8c7:	48 8b ce             	mov    %rsi,%rcx
14098c8ca:	0f 43 d3             	cmovae %ebx,%edx
14098c8cd:	e8 3e f9 ff ff       	call   0x14098c210
14098c8d2:	4c 3b fb             	cmp    %rbx,%r15
14098c8d5:	48 8b ce             	mov    %rsi,%rcx
14098c8d8:	44 0f 43 fb          	cmovae %ebx,%r15d
14098c8dc:	41 8b d7             	mov    %r15d,%edx
14098c8df:	e8 2c f9 ff ff       	call   0x14098c210
14098c8e4:	44 38 6f 40          	cmp    %r13b,0x40(%rdi)
14098c8e8:	74 06                	je     0x14098c8f0
14098c8ea:	4c 8b 7f 38          	mov    0x38(%rdi),%r15
14098c8ee:	eb 04                	jmp    0x14098c8f4
14098c8f0:	4c 8b 7f 30          	mov    0x30(%rdi),%r15
14098c8f4:	4d 85 ff             	test   %r15,%r15
14098c8f7:	74 05                	je     0x14098c8fe
14098c8f9:	45 0f b7 6f 08       	movzwl 0x8(%r15),%r13d
14098c8fe:	41 0f b7 d5          	movzwl %r13w,%edx
14098c902:	48 8b ce             	mov    %rsi,%rcx
14098c905:	e8 c6 f8 ff ff       	call   0x14098c1d0
14098c90a:	48 8b ce             	mov    %rsi,%rcx
14098c90d:	e8 3e fe 83 ff       	call   0x1401cc750
14098c912:	84 c0                	test   %al,%al
14098c914:	75 21                	jne    0x14098c937
14098c916:	45 33 c0             	xor    %r8d,%r8d
14098c919:	48 8d 4f 10          	lea    0x10(%rdi),%rcx
14098c91d:	41 8d 50 14          	lea    0x14(%r8),%edx
14098c921:	e8 6a b0 ff ff       	call   0x140987990
14098c926:	48 8b ce             	mov    %rsi,%rcx
14098c929:	e8 e2 f4 ff ff       	call   0x14098be10
14098c92e:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14098c935:	eb 52                	jmp    0x14098c989
14098c937:	48 8b ce             	mov    %rsi,%rcx
14098c93a:	e8 31 f8 ff ff       	call   0x14098c170
14098c93f:	48 8b ce             	mov    %rsi,%rcx
14098c942:	48 8b d8             	mov    %rax,%rbx
14098c945:	e8 f6 25 88 ff       	call   0x14020ef40
14098c94a:	48 8b d0             	mov    %rax,%rdx
14098c94d:	4c 8b c3             	mov    %rbx,%r8
14098c950:	48 8b cf             	mov    %rdi,%rcx
14098c953:	e8 08 1d 00 00       	call   0x14098e660
14098c958:	48 8b ce             	mov    %rsi,%rcx
14098c95b:	85 c0                	test   %eax,%eax
14098c95d:	78 ca                	js     0x14098c929
14098c95f:	e8 ac f4 ff ff       	call   0x14098be10
14098c964:	4d 85 ff             	test   %r15,%r15
14098c967:	74 1d                	je     0x14098c986
14098c969:	45 0f b7 47 08       	movzwl 0x8(%r15),%r8d
14098c96e:	48 8b cf             	mov    %rdi,%rcx
14098c971:	49 8b 17             	mov    (%r15),%rdx
14098c974:	e8 e7 1c 00 00       	call   0x14098e660
14098c979:	85 c0                	test   %eax,%eax
14098c97b:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
14098c982:	4c 0f 48 f1          	cmovs  %rcx,%r14
14098c986:	49 8b c6             	mov    %r14,%rax
14098c989:	4c 8b a4 24 a8 00 00 	mov    0xa8(%rsp),%r12
14098c990:	00
14098c991:	48 8b b4 24 b0 00 00 	mov    0xb0(%rsp),%rsi
14098c998:	00
14098c999:	48 8b 9c 24 f8 00 00 	mov    0xf8(%rsp),%rbx
14098c9a0:	00
14098c9a1:	4c 8b ac 24 a0 00 00 	mov    0xa0(%rsp),%r13
14098c9a8:	00
14098c9a9:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
14098c9b0:	00
14098c9b1:	48 33 cc             	xor    %rsp,%rcx
14098c9b4:	e8 47 eb 48 00       	call   0x140e1b500
14098c9b9:	48 81 c4 b8 00 00 00 	add    $0xb8,%rsp
14098c9c0:	41 5f                	pop    %r15
14098c9c2:	41 5e                	pop    %r14
14098c9c4:	5f                   	pop    %rdi
14098c9c5:	5d                   	pop    %rbp
14098c9c6:	c3                   	ret
14098c9c7:	cc                   	int3
14098c9c8:	cc                   	int3
14098c9c9:	cc                   	int3
14098c9ca:	cc                   	int3
14098c9cb:	cc                   	int3
14098c9cc:	cc                   	int3
14098c9cd:	cc                   	int3
14098c9ce:	cc                   	int3
14098c9cf:	cc                   	int3
14098c9d0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14098c9d5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14098c9da:	57                   	push   %rdi
14098c9db:	48 83 ec 20          	sub    $0x20,%rsp
14098c9df:	f6 02 10             	testb  $0x10,(%rdx)
14098c9e2:	41 8b f1             	mov    %r9d,%esi
14098c9e5:	48 8b fa             	mov    %rdx,%rdi
14098c9e8:	48 8b d9             	mov    %rcx,%rbx
14098c9eb:	74 27                	je     0x14098ca14
14098c9ed:	44 0f b7 52 12       	movzwl 0x12(%rdx),%r10d
14098c9f2:	b8 36 08 00 00       	mov    $0x836,%eax
14098c9f7:	66 44 23 d0          	and    %ax,%r10w
14098c9fb:	0f b7 42 10          	movzwl 0x10(%rdx),%eax
14098c9ff:	66 41 23 c2          	and    %r10w,%ax
14098ca03:	66 41 f7 d2          	not    %r10w
14098ca07:	66 44 23 51 0c       	and    0xc(%rcx),%r10w
14098ca0c:	66 41 0b c2          	or     %r10w,%ax
14098ca10:	66 89 41 0c          	mov    %ax,0xc(%rcx)
14098ca14:	48 8b 02             	mov    (%rdx),%rax
14098ca17:	a8 02                	test   $0x2,%al
14098ca19:	74 1e                	je     0x14098ca39
14098ca1b:	0f b7 43 54          	movzwl 0x54(%rbx),%eax
14098ca1f:	33 c9                	xor    %ecx,%ecx
14098ca21:	38 4a 0a             	cmp    %cl,0xa(%rdx)
14098ca24:	ba fe ff 00 00       	mov    $0xfffe,%edx
14098ca29:	0f 95 c1             	setne  %cl