1400168c1:	48 8b 49 10          	mov    0x10(%rcx),%rcx
1400168c5:	ba 7f 00 00 00       	mov    $0x7f,%edx
1400168ca:	89 74 24 20          	mov    %esi,0x20(%rsp)
1400168ce:	e8 a5 12 04 00       	call   0x140057b78
1400168d3:	85 f6                	test   %esi,%esi
1400168d5:	b8 0d 00 00 00       	mov    $0xd,%eax
1400168da:	0f 44 f0             	cmove  %eax,%esi
1400168dd:	e9 e5 fc ff ff       	jmp    0x1400165c7
1400168e2:	8b de                	mov    %esi,%ebx
1400168e4:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
1400168e9:	48 85 c9             	test   %rcx,%rcx
1400168ec:	74 0c                	je     0x1400168fa
1400168ee:	48 ff 15 f3 e3 06 00 	rex.W call *0x6e3f3(%rip)        # 0x140084ce8
1400168f5:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400168fa:	85 db                	test   %ebx,%ebx
1400168fc:	74 2f                	je     0x14001692d
1400168fe:	8b 7c 24 40          	mov    0x40(%rsp),%edi
140016902:	49 8b de             	mov    %r14,%rbx
140016905:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
14001690c:	00 00
14001690e:	33 d2                	xor    %edx,%edx
140016910:	4c 8b 03             	mov    (%rbx),%r8
140016913:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140016917:	48 ff 15 9a ea 06 00 	rex.W call *0x6ea9a(%rip)        # 0x1400853b8
14001691e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016923:	48 8d 5b 08          	lea    0x8(%rbx),%rbx
140016927:	48 83 ef 01          	sub    $0x1,%rdi
14001692b:	75 d8                	jne    0x140016905
14001692d:	48 8d 45 b0          	lea    -0x50(%rbp),%rax
140016931:	4c 3b f0             	cmp    %rax,%r14
140016934:	74 1e                	je     0x140016954
140016936:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
14001693d:	00 00
14001693f:	4d 8b c6             	mov    %r14,%r8
140016942:	33 d2                	xor    %edx,%edx
140016944:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140016948:	48 ff 15 69 ea 06 00 	rex.W call *0x6ea69(%rip)        # 0x1400853b8
14001694f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016954:	48 8b 4d 80          	mov    -0x80(%rbp),%rcx
140016958:	49 3b cc             	cmp    %r12,%rcx
14001695b:	74 0c                	je     0x140016969
14001695d:	48 ff 15 94 e1 06 00 	rex.W call *0x6e194(%rip)        # 0x140084af8
140016964:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016969:	48 83 7c 24 78 00    	cmpq   $0x0,0x78(%rsp)
14001696f:	74 20                	je     0x140016991
140016971:	65 48 8b 0c 25 60 00 	mov    %gs:0x60,%rcx
140016978:	00 00
14001697a:	33 d2                	xor    %edx,%edx
14001697c:	4c 8b 44 24 78       	mov    0x78(%rsp),%r8
140016981:	48 8b 49 30          	mov    0x30(%rcx),%rcx
140016985:	48 ff 15 2c ea 06 00 	rex.W call *0x6ea2c(%rip)        # 0x1400853b8
14001698c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016991:	48 8d 4d a8          	lea    -0x58(%rbp),%rcx
140016995:	e8 36 00 04 00       	call   0x1400569d0
14001699a:	48 8d 0d 4f 9a 08 00 	lea    0x89a4f(%rip),%rcx        # 0x1400a03f0
1400169a1:	48 ff 15 08 ed 06 00 	rex.W call *0x6ed08(%rip)        # 0x1400856b0
1400169a8:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400169ad:	8b c6                	mov    %esi,%eax
1400169af:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
1400169b3:	48 33 cc             	xor    %rsp,%rcx
1400169b6:	e8 f5 d1 01 00       	call   0x140033bb0
1400169bb:	48 81 c4 48 01 00 00 	add    $0x148,%rsp
1400169c2:	41 5f                	pop    %r15
1400169c4:	41 5e                	pop    %r14
1400169c6:	41 5d                	pop    %r13
1400169c8:	41 5c                	pop    %r12
1400169ca:	5f                   	pop    %rdi
1400169cb:	5e                   	pop    %rsi
1400169cc:	5b                   	pop    %rbx
1400169cd:	5d                   	pop    %rbp
1400169ce:	c3                   	ret
1400169cf:	cc                   	int3
1400169d0:	cc                   	int3
1400169d1:	cc                   	int3
1400169d2:	cc                   	int3
1400169d3:	cc                   	int3
1400169d4:	cc                   	int3
1400169d5:	cc                   	int3
1400169d6:	cc                   	int3
1400169d7:	cc                   	int3
1400169d8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400169dd:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1400169e2:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400169e7:	57                   	push   %rdi
1400169e8:	41 56                	push   %r14
1400169ea:	41 57                	push   %r15
1400169ec:	48 83 ec 20          	sub    $0x20,%rsp
1400169f0:	33 db                	xor    %ebx,%ebx
1400169f2:	4c 8d 3d 27 c3 06 00 	lea    0x6c327(%rip),%r15        # 0x140082d20
1400169f9:	8b fb                	mov    %ebx,%edi
1400169fb:	49 8b f7             	mov    %r15,%rsi
1400169fe:	4c 8b f2             	mov    %rdx,%r14
140016a01:	48 8b e9             	mov    %rcx,%rbp
140016a04:	48 8b 0e             	mov    (%rsi),%rcx
140016a07:	48 8b d5             	mov    %rbp,%rdx
140016a0a:	48 ff 15 97 df 06 00 	rex.W call *0x6df97(%rip)        # 0x1400849a8
140016a11:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016a16:	85 c0                	test   %eax,%eax
140016a18:	74 0d                	je     0x140016a27
140016a1a:	ff c7                	inc    %edi
140016a1c:	48 83 c6 10          	add    $0x10,%rsi
140016a20:	83 ff 23             	cmp    $0x23,%edi
140016a23:	72 df                	jb     0x140016a04
140016a25:	eb 12                	jmp    0x140016a39
140016a27:	8b c7                	mov    %edi,%eax
140016a29:	bb 01 00 00 00       	mov    $0x1,%ebx
140016a2e:	48 03 c0             	add    %rax,%rax
140016a31:	49 8b 44 c7 08       	mov    0x8(%r15,%rax,8),%rax
140016a36:	49 89 06             	mov    %rax,(%r14)
140016a39:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140016a3e:	8b c3                	mov    %ebx,%eax
140016a40:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016a45:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140016a4a:	48 83 c4 20          	add    $0x20,%rsp
140016a4e:	41 5f                	pop    %r15
140016a50:	41 5e                	pop    %r14
140016a52:	5f                   	pop    %rdi
140016a53:	c3                   	ret
140016a54:	cc                   	int3
140016a55:	cc                   	int3
140016a56:	cc                   	int3
140016a57:	cc                   	int3
140016a58:	cc                   	int3
140016a59:	cc                   	int3
140016a5a:	cc                   	int3
140016a5b:	cc                   	int3
140016a5c:	cc                   	int3
140016a5d:	cc                   	int3
140016a5e:	cc                   	int3
140016a5f:	cc                   	int3
140016a60:	48 8b c4             	mov    %rsp,%rax
140016a63:	44 89 40 18          	mov    %r8d,0x18(%rax)
140016a67:	48 89 48 08          	mov    %rcx,0x8(%rax)
140016a6b:	53                   	push   %rbx
140016a6c:	41 54                	push   %r12
140016a6e:	41 55                	push   %r13
140016a70:	48 83 ec 50          	sub    $0x50,%rsp
140016a74:	4c 8b ea             	mov    %rdx,%r13
140016a77:	48 c7 40 20 17 00 00 	movq   $0x17,0x20(%rax)
140016a7e:	00
140016a7f:	8b 54 24 74          	mov    0x74(%rsp),%edx
140016a83:	48 8d 40 24          	lea    0x24(%rax),%rax
140016a87:	48 8b d9             	mov    %rcx,%rbx
140016a8a:	41 bc 01 00 00 00    	mov    $0x1,%r12d
140016a90:	33 c9                	xor    %ecx,%ecx
140016a92:	39 58 fc             	cmp    %ebx,-0x4(%rax)
140016a95:	0f 84 2a 01 00 00    	je     0x140016bc5
140016a9b:	ff c1                	inc    %ecx
140016a9d:	48 83 c0 08          	add    $0x8,%rax
140016aa1:	41 3b cc             	cmp    %r12d,%ecx
140016aa4:	72 ec                	jb     0x140016a92
140016aa6:	48 89 6c 24 78       	mov    %rbp,0x78(%rsp)
140016aab:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
140016ab0:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
140016ab5:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
140016aba:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140016abf:	45 33 ff             	xor    %r15d,%r15d
140016ac2:	45 85 c0             	test   %r8d,%r8d
140016ac5:	0f 84 a8 00 00 00    	je     0x140016b73
140016acb:	48 8d 0d 4e c2 06 00 	lea    0x6c24e(%rip),%rcx        # 0x140082d20
140016ad2:	4d 8b 75 00          	mov    0x0(%r13),%r14
140016ad6:	41 0f b7 06          	movzwl (%r14),%eax
140016ada:	66 85 c0             	test   %ax,%ax
140016add:	0f 84 80 00 00 00    	je     0x140016b63
140016ae3:	49 8b ee             	mov    %r14,%rbp
140016ae6:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140016aed:	0f 1f 00             	nopl   (%rax)
140016af0:	66 41 83 7c 46 02 00 	cmpw   $0x0,0x2(%r14,%rax,2)
140016af7:	48 8d 40 01          	lea    0x1(%rax),%rax
140016afb:	75 f3                	jne    0x140016af0
140016afd:	4d 8d 34 46          	lea    (%r14,%rax,2),%r14
140016b01:	48 8b f1             	mov    %rcx,%rsi
140016b04:	49 83 c6 02          	add    $0x2,%r14
140016b08:	33 ff                	xor    %edi,%edi
140016b0a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140016b10:	48 8b 0e             	mov    (%rsi),%rcx
140016b13:	48 8b d5             	mov    %rbp,%rdx
140016b16:	48 ff 15 8b de 06 00 	rex.W call *0x6de8b(%rip)        # 0x1400849a8
140016b1d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016b22:	85 c0                	test   %eax,%eax
140016b24:	74 10                	je     0x140016b36
140016b26:	ff c7                	inc    %edi
140016b28:	48 83 c6 10          	add    $0x10,%rsi
140016b2c:	83 ff 23             	cmp    $0x23,%edi
140016b2f:	72 df                	jb     0x140016b10
140016b31:	e9 ee 79 03 00       	jmp    0x14004e524
140016b36:	8b c7                	mov    %edi,%eax
140016b38:	48 8d 0d e1 c1 06 00 	lea    0x6c1e1(%rip),%rcx        # 0x140082d20
140016b3f:	48 03 c0             	add    %rax,%rax
140016b42:	48 8b 4c c1 08       	mov    0x8(%rcx,%rax,8),%rcx
140016b47:	3b cb                	cmp    %ebx,%ecx
140016b49:	74 52                	je     0x140016b9d
140016b4b:	41 0f b7 06          	movzwl (%r14),%eax
140016b4f:	48 8d 0d ca c1 06 00 	lea    0x6c1ca(%rip),%rcx        # 0x140082d20
140016b56:	66 85 c0             	test   %ax,%ax
140016b59:	75 88                	jne    0x140016ae3
140016b5b:	44 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8d
140016b62:	00
140016b63:	41 ff c7             	inc    %r15d
140016b66:	49 83 c5 08          	add    $0x8,%r13
140016b6a:	45 3b f8             	cmp    %r8d,%r15d
140016b6d:	0f 82 5f ff ff ff    	jb     0x140016ad2
140016b73:	45 33 e4             	xor    %r12d,%r12d
140016b76:	4c 8b 74 24 38       	mov    0x38(%rsp),%r14
140016b7b:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
140016b80:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140016b85:	48 8b 6c 24 78       	mov    0x78(%rsp),%rbp
140016b8a:	4c 8b 7c 24 30       	mov    0x30(%rsp),%r15
140016b8f:	41 8b c4             	mov    %r12d,%eax
140016b92:	48 83 c4 50          	add    $0x50,%rsp
140016b96:	41 5d                	pop    %r13
140016b98:	41 5c                	pop    %r12
140016b9a:	5b                   	pop    %rbx
140016b9b:	c3                   	ret
140016b9c:	cc                   	int3
140016b9d:	48 c1 e9 20          	shr    $0x20,%rcx
140016ba1:	3b 4c 24 74          	cmp    0x74(%rsp),%ecx
140016ba5:	75 a4                	jne    0x140016b4b
140016ba7:	48 8b 0d 52 84 08 00 	mov    0x88452(%rip),%rcx        # 0x14009f000
140016bae:	48 8d 05 4b 84 08 00 	lea    0x8844b(%rip),%rax        # 0x14009f000
140016bb5:	48 3b c8             	cmp    %rax,%rcx
140016bb8:	74 bc                	je     0x140016b76
140016bba:	f6 41 1c 04          	testb  $0x4,0x1c(%rcx)
140016bbe:	74 b6                	je     0x140016b76
140016bc0:	e9 b6 79 03 00       	jmp    0x14004e57b
140016bc5:	39 10                	cmp    %edx,(%rax)
140016bc7:	0f 85 ce fe ff ff    	jne    0x140016a9b
140016bcd:	48 8b 0d 2c 84 08 00 	mov    0x8842c(%rip),%rcx        # 0x14009f000
140016bd4:	48 8d 05 25 84 08 00 	lea    0x88425(%rip),%rax        # 0x14009f000
140016bdb:	48 3b c8             	cmp    %rax,%rcx
140016bde:	74 af                	je     0x140016b8f
140016be0:	f6 41 1c 04          	testb  $0x4,0x1c(%rcx)
140016be4:	74 a9                	je     0x140016b8f
140016be6:	e9 1b 79 03 00       	jmp    0x14004e506
140016beb:	cc                   	int3
140016bec:	cc                   	int3
140016bed:	cc                   	int3
140016bee:	cc                   	int3
140016bef:	cc                   	int3
140016bf0:	cc                   	int3
140016bf1:	cc                   	int3
140016bf2:	cc                   	int3
140016bf3:	cc                   	int3
140016bf4:	48 8b 01             	mov    (%rcx),%rax
140016bf7:	4c 8b c1             	mov    %rcx,%r8
140016bfa:	66 83 38 00          	cmpw   $0x0,(%rax)
140016bfe:	74 23                	je     0x140016c23
140016c00:	48 89 02             	mov    %rax,(%rdx)
140016c03:	48 83 c9 ff          	or     $0xffffffffffffffff,%rcx
140016c07:	48 ff c1             	inc    %rcx
140016c0a:	66 83 3c 48 00       	cmpw   $0x0,(%rax,%rcx,2)
140016c0f:	75 f6                	jne    0x140016c07
140016c11:	48 8d 04 48          	lea    (%rax,%rcx,2),%rax
140016c15:	48 83 c0 02          	add    $0x2,%rax
140016c19:	49 89 00             	mov    %rax,(%r8)
140016c1c:	b8 01 00 00 00       	mov    $0x1,%eax
140016c21:	c3                   	ret
140016c22:	cc                   	int3
140016c23:	33 c0                	xor    %eax,%eax
140016c25:	c3                   	ret
140016c26:	cc                   	int3
140016c27:	cc                   	int3
140016c28:	cc                   	int3
140016c29:	cc                   	int3
140016c2a:	cc                   	int3
140016c2b:	cc                   	int3
140016c2c:	cc                   	int3
140016c2d:	cc                   	int3
140016c2e:	cc                   	int3
140016c2f:	cc                   	int3
140016c30:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016c35:	57                   	push   %rdi
140016c36:	48 83 ec 20          	sub    $0x20,%rsp
140016c3a:	48 8d 99 10 01 00 00 	lea    0x110(%rcx),%rbx
140016c41:	48 8b fa             	mov    %rdx,%rdi
140016c44:	48 8b cb             	mov    %rbx,%rcx
140016c47:	48 ff 15 a2 e1 06 00 	rex.W call *0x6e1a2(%rip)        # 0x140084df0
140016c4e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016c53:	48 89 1f             	mov    %rbx,(%rdi)
140016c56:	48 8b c7             	mov    %rdi,%rax
140016c59:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016c5e:	48 83 c4 20          	add    $0x20,%rsp
140016c62:	5f                   	pop    %rdi
140016c63:	c3                   	ret
140016c64:	cc                   	int3
140016c65:	cc                   	int3
140016c66:	cc                   	int3
140016c67:	cc                   	int3
140016c68:	cc                   	int3
140016c69:	cc                   	int3
140016c6a:	cc                   	int3
140016c6b:	cc                   	int3
140016c6c:	48 8b c4             	mov    %rsp,%rax
140016c6f:	4c 89 48 20          	mov    %r9,0x20(%rax)
140016c73:	44 89 40 18          	mov    %r8d,0x18(%rax)
140016c77:	48 89 48 08          	mov    %rcx,0x8(%rax)
140016c7b:	55                   	push   %rbp
140016c7c:	53                   	push   %rbx
140016c7d:	56                   	push   %rsi
140016c7e:	57                   	push   %rdi
140016c7f:	41 54                	push   %r12
140016c81:	41 55                	push   %r13
140016c83:	41 56                	push   %r14
140016c85:	41 57                	push   %r15
140016c87:	48 8d 68 b9          	lea    -0x47(%rax),%rbp
140016c8b:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
140016c92:	48 8b 45 6f          	mov    0x6f(%rbp),%rax
140016c96:	45 33 e4             	xor    %r12d,%r12d
140016c99:	33 c9                	xor    %ecx,%ecx
140016c9b:	44 89 65 df          	mov    %r12d,-0x21(%rbp)
140016c9f:	f6 42 48 10          	testb  $0x10,0x48(%rdx)
140016ca3:	44 8b f1             	mov    %ecx,%r14d
140016ca6:	48 89 4d b7          	mov    %rcx,-0x49(%rbp)
140016caa:	48 8b f2             	mov    %rdx,%rsi
140016cad:	48 8b 4d 7f          	mov    0x7f(%rbp),%rcx
140016cb1:	41 8b fc             	mov    %r12d,%edi
140016cb4:	44 89 20             	mov    %r12d,(%rax)
140016cb7:	48 8b 85 87 00 00 00 	mov    0x87(%rbp),%rax
140016cbe:	4c 89 65 e7          	mov    %r12,-0x19(%rbp)
140016cc2:	44 89 65 57          	mov    %r12d,0x57(%rbp)
140016cc6:	44 89 65 b3          	mov    %r12d,-0x4d(%rbp)
140016cca:	44 89 20             	mov    %r12d,(%rax)
140016ccd:	8b 42 34             	mov    0x34(%rdx),%eax
140016cd0:	4d 89 21             	mov    %r12,(%r9)
140016cd3:	44 89 21             	mov    %r12d,(%rcx)
140016cd6:	0f 84 1f 01 00 00    	je     0x140016dfb
140016cdc:	41 8d 5c 24 40       	lea    0x40(%r12),%ebx
140016ce1:	84 c3                	test   %al,%bl
140016ce3:	0f 84 ce 00 00 00    	je     0x140016db7
140016ce9:	c7 01 01 00 00 00    	movl   $0x1,(%rcx)
140016cef:	8d 53 d0             	lea    -0x30(%rbx),%edx
140016cf2:	8b cb                	mov    %ebx,%ecx
140016cf4:	48 ff 15 35 de 06 00 	rex.W call *0x6de35(%rip)        # 0x140084b30
140016cfb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140016d00:	48 89 45 b7          	mov    %rax,-0x49(%rbp)
140016d04:	48 85 c0             	test   %rax,%rax
140016d07:	0f 84 8d 78 03 00    	je     0x14004e59a
140016d0d:	48 8b 0d ec 82 08 00 	mov    0x882ec(%rip),%rcx        # 0x14009f000
140016d14:	4c 8d 3d e5 82 08 00 	lea    0x882e5(%rip),%r15        # 0x14009f000
140016d1b:	4c 8d 2d 5e 1c 07 00 	lea    0x71c5e(%rip),%r13        # 0x140088980
140016d22:	49 3b cf             	cmp    %r15,%rcx
140016d25:	74 0a                	je     0x140016d31
140016d27:	f6 41 1c 04          	testb  $0x4,0x1c(%rcx)
140016d2b:	0f 85 b4 78 03 00    	jne    0x14004e5e5
140016d31:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
140016d35:	48 8b d0             	mov    %rax,%rdx
140016d38:	e8 cf 07 00 00       	call   0x14001750c
140016d3d:	85 c0                	test   %eax,%eax
140016d3f:	0f 88 c7 78 03 00    	js     0x14004e60c
140016d45:	48 8b 06             	mov    (%rsi),%rax