14001660e:	83 08 01             	orl    $0x1,(%rax)
140016611:	eb 07                	jmp    0x14001661a
140016613:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016617:	83 20 fc             	andl   $0xfffffffc,(%rax)
14001661a:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
14001661e:	c1 e7 05             	shl    $0x5,%edi
140016621:	33 39                	xor    (%rcx),%edi
140016623:	81 e7 e0 ff 01 00    	and    $0x1ffe0,%edi
140016629:	31 39                	xor    %edi,(%rcx)
14001662b:	48 8b 45 10          	mov    0x10(%rbp),%rax
14001662f:	48 8b 7d 38          	mov    0x38(%rbp),%rdi
140016633:	83 48 20 01          	orl    $0x1,0x20(%rax)
140016637:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
14001663b:	74 30                	je     0x14001666d
14001663d:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016641:	83 60 20 e1          	andl   $0xffffffe1,0x20(%rax)
140016645:	48 8b 45 30          	mov    0x30(%rbp),%rax
140016649:	8b 08                	mov    (%rax),%ecx
14001664b:	48 8b 45 10          	mov    0x10(%rbp),%rax
14001664f:	89 48 10             	mov    %ecx,0x10(%rax)
140016652:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016656:	83 48 60 01          	orl    $0x1,0x60(%rax)
14001665a:	48 8b 45 10          	mov    0x10(%rbp),%rax
14001665e:	83 60 60 e1          	andl   $0xffffffe1,0x60(%rax)
140016662:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016666:	8b 0f                	mov    (%rdi),%ecx
140016668:	89 48 50             	mov    %ecx,0x50(%rax)
14001666b:	eb 42                	jmp    0x1400166af
14001666d:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140016671:	8b 41 20             	mov    0x20(%rcx),%eax
140016674:	83 e0 e3             	and    $0xffffffe3,%eax
140016677:	83 c8 02             	or     $0x2,%eax
14001667a:	89 41 20             	mov    %eax,0x20(%rcx)
14001667d:	48 8b 45 30          	mov    0x30(%rbp),%rax
140016681:	48 8b 08             	mov    (%rax),%rcx
140016684:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016688:	48 89 48 10          	mov    %rcx,0x10(%rax)
14001668c:	48 8b 45 10          	mov    0x10(%rbp),%rax
140016690:	83 48 60 01          	orl    $0x1,0x60(%rax)
140016694:	48 8b 55 10          	mov    0x10(%rbp),%rdx
140016698:	8b 42 60             	mov    0x60(%rdx),%eax
14001669b:	83 e0 e3             	and    $0xffffffe3,%eax
14001669e:	83 c8 02             	or     $0x2,%eax
1400166a1:	89 42 60             	mov    %eax,0x60(%rdx)
1400166a4:	48 8b 45 10          	mov    0x10(%rbp),%rax
1400166a8:	48 8b 17             	mov    (%rdi),%rdx
1400166ab:	48 89 50 50          	mov    %rdx,0x50(%rax)
1400166af:	e8 98 fc ff ff       	call   0x14001634c
1400166b4:	33 d2                	xor    %edx,%edx
1400166b6:	4c 8d 4d 10          	lea    0x10(%rbp),%r9
1400166ba:	8b ce                	mov    %esi,%ecx
1400166bc:	44 8d 42 01          	lea    0x1(%rdx),%r8d
1400166c0:	ff 15 0a 1b 00 00    	call   *0x1b0a(%rip)        # 0x1400181d0
1400166c6:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
1400166ca:	f6 41 08 10          	testb  $0x10,0x8(%rcx)
1400166ce:	74 07                	je     0x1400166d7
1400166d0:	48 81 23 7f ff ff ff 	andq   $0xffffffffffffff7f,(%rbx)
1400166d7:	f6 41 08 08          	testb  $0x8,0x8(%rcx)
1400166db:	74 07                	je     0x1400166e4
1400166dd:	48 81 23 ff fd ff ff 	andq   $0xfffffffffffffdff,(%rbx)
1400166e4:	f6 41 08 04          	testb  $0x4,0x8(%rcx)
1400166e8:	74 07                	je     0x1400166f1
1400166ea:	48 81 23 ff fb ff ff 	andq   $0xfffffffffffffbff,(%rbx)
1400166f1:	f6 41 08 02          	testb  $0x2,0x8(%rcx)
1400166f5:	74 07                	je     0x1400166fe
1400166f7:	48 81 23 ff f7 ff ff 	andq   $0xfffffffffffff7ff,(%rbx)
1400166fe:	f6 41 08 01          	testb  $0x1,0x8(%rcx)
140016702:	74 07                	je     0x14001670b
140016704:	48 81 23 ff ef ff ff 	andq   $0xffffffffffffefff,(%rbx)
14001670b:	8b 01                	mov    (%rcx),%eax
14001670d:	83 e0 03             	and    $0x3,%eax
140016710:	74 38                	je     0x14001674a
140016712:	83 e8 01             	sub    $0x1,%eax
140016715:	74 23                	je     0x14001673a
140016717:	83 e8 01             	sub    $0x1,%eax
14001671a:	74 0e                	je     0x14001672a
14001671c:	83 f8 01             	cmp    $0x1,%eax
14001671f:	75 30                	jne    0x140016751
140016721:	48 81 0b 00 60 00 00 	orq    $0x6000,(%rbx)
140016728:	eb 27                	jmp    0x140016751
14001672a:	48 81 23 ff df ff ff 	andq   $0xffffffffffffdfff,(%rbx)
140016731:	48 81 0b 00 40 00 00 	orq    $0x4000,(%rbx)
140016738:	eb 17                	jmp    0x140016751
14001673a:	48 81 23 ff bf ff ff 	andq   $0xffffffffffffbfff,(%rbx)
140016741:	48 81 0b 00 20 00 00 	orq    $0x2000,(%rbx)
140016748:	eb 07                	jmp    0x140016751
14001674a:	48 81 23 ff 9f ff ff 	andq   $0xffffffffffff9fff,(%rbx)
140016751:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
140016755:	74 07                	je     0x14001675e
140016757:	8b 41 50             	mov    0x50(%rcx),%eax
14001675a:	89 07                	mov    %eax,(%rdi)
14001675c:	eb 07                	jmp    0x140016765
14001675e:	48 8b 41 50          	mov    0x50(%rcx),%rax
140016762:	48 89 07             	mov    %rax,(%rdi)
140016765:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14001676a:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14001676f:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140016774:	48 83 c4 20          	add    $0x20,%rsp
140016778:	5d                   	pop    %rbp
140016779:	c3                   	ret
14001677a:	cc                   	int3
14001677b:	cc                   	int3
14001677c:	cc                   	int3
14001677d:	cc                   	int3
14001677e:	cc                   	int3
14001677f:	cc                   	int3
140016780:	48 83 ec 28          	sub    $0x28,%rsp
140016784:	83 e9 01             	sub    $0x1,%ecx
140016787:	74 1a                	je     0x1400167a3
140016789:	83 e9 01             	sub    $0x1,%ecx
14001678c:	74 05                	je     0x140016793
14001678e:	83 f9 01             	cmp    $0x1,%ecx
140016791:	75 1b                	jne    0x1400167ae
140016793:	e8 68 55 ff ff       	call   0x14000bd00
140016798:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
14001679e:	48 83 c4 28          	add    $0x28,%rsp
1400167a2:	c3                   	ret
1400167a3:	e8 58 55 ff ff       	call   0x14000bd00
1400167a8:	c7 00 21 00 00 00    	movl   $0x21,(%rax)
1400167ae:	48 83 c4 28          	add    $0x28,%rsp
1400167b2:	c3                   	ret
1400167b3:	cc                   	int3
1400167b4:	cc                   	int3
1400167b5:	cc                   	int3
1400167b6:	cc                   	int3
1400167b7:	cc                   	int3
1400167b8:	cc                   	int3
1400167b9:	cc                   	int3
1400167ba:	cc                   	int3
1400167bb:	cc                   	int3
1400167bc:	cc                   	int3
1400167bd:	cc                   	int3
1400167be:	cc                   	int3
1400167bf:	cc                   	int3
1400167c0:	4c 63 41 3c          	movslq 0x3c(%rcx),%r8
1400167c4:	45 33 c9             	xor    %r9d,%r9d
1400167c7:	4c 03 c1             	add    %rcx,%r8
1400167ca:	4c 8b d2             	mov    %rdx,%r10
1400167cd:	41 0f b7 40 14       	movzwl 0x14(%r8),%eax
1400167d2:	45 0f b7 58 06       	movzwl 0x6(%r8),%r11d
1400167d7:	48 83 c0 18          	add    $0x18,%rax
1400167db:	49 03 c0             	add    %r8,%rax
1400167de:	45 85 db             	test   %r11d,%r11d
1400167e1:	74 1e                	je     0x140016801
1400167e3:	8b 50 0c             	mov    0xc(%rax),%edx
1400167e6:	4c 3b d2             	cmp    %rdx,%r10
1400167e9:	72 0a                	jb     0x1400167f5
1400167eb:	8b 48 08             	mov    0x8(%rax),%ecx
1400167ee:	03 ca                	add    %edx,%ecx
1400167f0:	4c 3b d1             	cmp    %rcx,%r10
1400167f3:	72 0e                	jb     0x140016803
1400167f5:	41 ff c1             	inc    %r9d
1400167f8:	48 83 c0 28          	add    $0x28,%rax
1400167fc:	45 3b cb             	cmp    %r11d,%r9d
1400167ff:	72 e2                	jb     0x1400167e3
140016801:	33 c0                	xor    %eax,%eax
140016803:	c3                   	ret
140016804:	cc                   	int3
140016805:	cc                   	int3
140016806:	cc                   	int3
140016807:	cc                   	int3
140016808:	cc                   	int3
140016809:	cc                   	int3
14001680a:	cc                   	int3
14001680b:	cc                   	int3
14001680c:	cc                   	int3
14001680d:	cc                   	int3
14001680e:	cc                   	int3
14001680f:	cc                   	int3
140016810:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016815:	57                   	push   %rdi
140016816:	48 83 ec 20          	sub    $0x20,%rsp
14001681a:	48 8b d9             	mov    %rcx,%rbx
14001681d:	48 8d 3d dc 97 fe ff 	lea    -0x16824(%rip),%rdi        # 0x140000000
140016824:	48 8b cf             	mov    %rdi,%rcx
140016827:	e8 34 00 00 00       	call   0x140016860
14001682c:	85 c0                	test   %eax,%eax
14001682e:	74 22                	je     0x140016852
140016830:	48 2b df             	sub    %rdi,%rbx
140016833:	48 8b d3             	mov    %rbx,%rdx
140016836:	48 8b cf             	mov    %rdi,%rcx
140016839:	e8 82 ff ff ff       	call   0x1400167c0
14001683e:	48 85 c0             	test   %rax,%rax
140016841:	74 0f                	je     0x140016852
140016843:	8b 40 24             	mov    0x24(%rax),%eax
140016846:	c1 e8 1f             	shr    $0x1f,%eax
140016849:	f7 d0                	not    %eax
14001684b:	83 e0 01             	and    $0x1,%eax
14001684e:	eb 02                	jmp    0x140016852
140016850:	33 c0                	xor    %eax,%eax
140016852:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016857:	48 83 c4 20          	add    $0x20,%rsp
14001685b:	5f                   	pop    %rdi
14001685c:	c3                   	ret
14001685d:	cc                   	int3
14001685e:	cc                   	int3
14001685f:	cc                   	int3
140016860:	b8 4d 5a 00 00       	mov    $0x5a4d,%eax
140016865:	66 39 01             	cmp    %ax,(%rcx)
140016868:	75 1e                	jne    0x140016888
14001686a:	48 63 51 3c          	movslq 0x3c(%rcx),%rdx
14001686e:	48 03 d1             	add    %rcx,%rdx
140016871:	81 3a 50 45 00 00    	cmpl   $0x4550,(%rdx)
140016877:	75 0f                	jne    0x140016888
140016879:	33 c0                	xor    %eax,%eax
14001687b:	b9 0b 02 00 00       	mov    $0x20b,%ecx
140016880:	66 39 4a 18          	cmp    %cx,0x18(%rdx)
140016884:	0f 94 c0             	sete   %al
140016887:	c3                   	ret
140016888:	33 c0                	xor    %eax,%eax
14001688a:	c3                   	ret
14001688b:	cc                   	int3
14001688c:	40 53                	rex push %rbx
14001688e:	48 83 ec 20          	sub    $0x20,%rsp
140016892:	48 8d 05 e7 a0 00 00 	lea    0xa0e7(%rip),%rax        # 0x140020980
140016899:	48 8b d9             	mov    %rcx,%rbx
14001689c:	48 89 01             	mov    %rax,(%rcx)
14001689f:	f6 c2 01             	test   $0x1,%dl
1400168a2:	74 0a                	je     0x1400168ae
1400168a4:	ba 18 00 00 00       	mov    $0x18,%edx
1400168a9:	e8 86 00 00 00       	call   0x140016934
1400168ae:	48 8b c3             	mov    %rbx,%rax
1400168b1:	48 83 c4 20          	add    $0x20,%rsp
1400168b5:	5b                   	pop    %rbx
1400168b6:	c3                   	ret
1400168b7:	cc                   	int3
1400168b8:	48 83 ec 28          	sub    $0x28,%rsp
1400168bc:	4d 8b 41 38          	mov    0x38(%r9),%r8
1400168c0:	48 8b ca             	mov    %rdx,%rcx
1400168c3:	49 8b d1             	mov    %r9,%rdx
1400168c6:	e8 0d 00 00 00       	call   0x1400168d8
1400168cb:	b8 01 00 00 00       	mov    $0x1,%eax
1400168d0:	48 83 c4 28          	add    $0x28,%rsp
1400168d4:	c3                   	ret
1400168d5:	cc                   	int3
1400168d6:	cc                   	int3
1400168d7:	cc                   	int3
1400168d8:	40 53                	rex push %rbx
1400168da:	45 8b 18             	mov    (%r8),%r11d
1400168dd:	48 8b da             	mov    %rdx,%rbx
1400168e0:	41 83 e3 f8          	and    $0xfffffff8,%r11d
1400168e4:	4c 8b c9             	mov    %rcx,%r9
1400168e7:	41 f6 00 04          	testb  $0x4,(%r8)
1400168eb:	4c 8b d1             	mov    %rcx,%r10
1400168ee:	74 13                	je     0x140016903
1400168f0:	41 8b 40 08          	mov    0x8(%r8),%eax
1400168f4:	4d 63 50 04          	movslq 0x4(%r8),%r10
1400168f8:	f7 d8                	neg    %eax
1400168fa:	4c 03 d1             	add    %rcx,%r10
1400168fd:	48 63 c8             	movslq %eax,%rcx
140016900:	4c 23 d1             	and    %rcx,%r10
140016903:	49 63 c3             	movslq %r11d,%rax
140016906:	4a 8b 14 10          	mov    (%rax,%r10,1),%rdx
14001690a:	48 8b 43 10          	mov    0x10(%rbx),%rax
14001690e:	8b 48 08             	mov    0x8(%rax),%ecx
140016911:	48 8b 43 08          	mov    0x8(%rbx),%rax
140016915:	f6 44 01 03 0f       	testb  $0xf,0x3(%rcx,%rax,1)
14001691a:	74 0b                	je     0x140016927
14001691c:	0f b6 44 01 03       	movzbl 0x3(%rcx,%rax,1),%eax
140016921:	83 e0 f0             	and    $0xfffffff0,%eax
140016924:	4c 03 c8             	add    %rax,%r9
140016927:	4c 33 ca             	xor    %rdx,%r9
14001692a:	49 8b c9             	mov    %r9,%rcx
14001692d:	5b                   	pop    %rbx
14001692e:	e9 bd b4 fe ff       	jmp    0x140001df0
140016933:	cc                   	int3
140016934:	e9 e7 00 00 00       	jmp    0x140016a20
140016939:	cc                   	int3
14001693a:	cc                   	int3
14001693b:	cc                   	int3
14001693c:	48 8b c4             	mov    %rsp,%rax
14001693f:	48 89 58 08          	mov    %rbx,0x8(%rax)
140016943:	48 89 68 10          	mov    %rbp,0x10(%rax)
140016947:	48 89 70 18          	mov    %rsi,0x18(%rax)
14001694b:	48 89 78 20          	mov    %rdi,0x20(%rax)
14001694f:	41 56                	push   %r14
140016951:	48 83 ec 20          	sub    $0x20,%rsp
140016955:	49 8b 59 38          	mov    0x38(%r9),%rbx
140016959:	48 8b f2             	mov    %rdx,%rsi
14001695c:	4d 8b f0             	mov    %r8,%r14
14001695f:	48 8b e9             	mov    %rcx,%rbp
140016962:	49 8b d1             	mov    %r9,%rdx
140016965:	48 8b ce             	mov    %rsi,%rcx
140016968:	49 8b f9             	mov    %r9,%rdi
14001696b:	4c 8d 43 04          	lea    0x4(%rbx),%r8
14001696f:	e8 64 ff ff ff       	call   0x1400168d8
140016974:	8b 45 04             	mov    0x4(%rbp),%eax
140016977:	24 66                	and    $0x66,%al
140016979:	f6 d8                	neg    %al
14001697b:	b8 01 00 00 00       	mov    $0x1,%eax
140016980:	45 1b c0             	sbb    %r8d,%r8d
140016983:	41 f7 d8             	neg    %r8d
140016986:	44 03 c0             	add    %eax,%r8d
140016989:	44 85 43 04          	test   %r8d,0x4(%rbx)
14001698d:	74 11                	je     0x1400169a0
14001698f:	4c 8b cf             	mov    %rdi,%r9
140016992:	4d 8b c6             	mov    %r14,%r8
140016995:	48 8b d6             	mov    %rsi,%rdx
140016998:	48 8b cd             	mov    %rbp,%rcx
14001699b:	e8 9c d3 fe ff       	call   0x140003d3c
1400169a0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400169a5:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1400169aa:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1400169af:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1400169b4:	48 83 c4 20          	add    $0x20,%rsp
1400169b8:	41 5e                	pop    %r14
1400169ba:	c3                   	ret
1400169bb:	cc                   	int3
1400169bc:	cc                   	int3
1400169bd:	cc                   	int3
1400169be:	cc                   	int3
1400169bf:	cc                   	int3
1400169c0:	cc                   	int3
1400169c1:	cc                   	int3
1400169c2:	cc                   	int3
1400169c3:	cc                   	int3
1400169c4:	cc                   	int3
1400169c5:	cc                   	int3
1400169c6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
1400169cd:	00 00 00
1400169d0:	48 83 ec 10          	sub    $0x10,%rsp
1400169d4:	4c 89 14 24          	mov    %r10,(%rsp)
1400169d8:	4c 89 5c 24 08       	mov    %r11,0x8(%rsp)
1400169dd:	4d 33 db             	xor    %r11,%r11
1400169e0:	4c 8d 54 24 18       	lea    0x18(%rsp),%r10
1400169e5:	4c 2b d0             	sub    %rax,%r10
1400169e8:	4d 0f 42 d3          	cmovb  %r11,%r10
1400169ec:	65 4c 8b 1c 25 10 00 	mov    %gs:0x10,%r11
1400169f3:	00 00
1400169f5:	4d 3b d3             	cmp    %r11,%r10
1400169f8:	73 16                	jae    0x140016a10
1400169fa:	66 41 81 e2 00 f0    	and    $0xf000,%r10w
140016a00:	4d 8d 9b 00 f0 ff ff 	lea    -0x1000(%r11),%r11
140016a07:	41 c6 03 00          	movb   $0x0,(%r11)
140016a0b:	4d 3b d3             	cmp    %r11,%r10
140016a0e:	75 f0                	jne    0x140016a00
140016a10:	4c 8b 14 24          	mov    (%rsp),%r10
140016a14:	4c 8b 5c 24 08       	mov    0x8(%rsp),%r11
140016a19:	48 83 c4 10          	add    $0x10,%rsp
140016a1d:	c3                   	ret
140016a1e:	cc                   	int3
140016a1f:	cc                   	int3
140016a20:	e9 cb 4c ff ff       	jmp    0x14000b6f0
140016a25:	cc                   	int3
140016a26:	cc                   	int3
140016a27:	cc                   	int3
140016a28:	cc                   	int3
140016a29:	cc                   	int3
140016a2a:	cc                   	int3
140016a2b:	cc                   	int3