140016b36:	48 8b da             	mov    %rdx,%rbx
140016b39:	48 8b f9             	mov    %rcx,%rdi
140016b3c:	48 3b ca             	cmp    %rdx,%rcx
140016b3f:	74 24                	je     0x140016b65
140016b41:	48 8b 43 f8          	mov    -0x8(%rbx),%rax
140016b45:	48 85 c0             	test   %rax,%rax
140016b48:	74 12                	je     0x140016b5c
140016b4a:	49 ba 70 3b 59 3e 75 	movabs $0x9799a6753e593b70,%r10
140016b51:	a6 99 97
140016b54:	33 c9                	xor    %ecx,%ecx
140016b56:	ff 15 24 77 00 00    	call   *0x7724(%rip)        # 0x14001e280
140016b5c:	48 83 eb 10          	sub    $0x10,%rbx
140016b60:	48 3b df             	cmp    %rdi,%rbx
140016b63:	75 dc                	jne    0x140016b41
140016b65:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016b6a:	b0 01                	mov    $0x1,%al
140016b6c:	48 83 c4 20          	add    $0x20,%rsp
140016b70:	5f                   	pop    %rdi
140016b71:	c3                   	ret
140016b72:	cc                   	int3
140016b73:	cc                   	int3
140016b74:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016b79:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
140016b7e:	57                   	push   %rdi
140016b7f:	48 83 ec 20          	sub    $0x20,%rsp
140016b83:	49 8b f9             	mov    %r9,%rdi
140016b86:	8b 0a                	mov    (%rdx),%ecx
140016b88:	e8 cb ad ff ff       	call   0x140011958
140016b8d:	90                   	nop
140016b8e:	48 8b 05 2b 8a 01 00 	mov    0x18a2b(%rip),%rax        # 0x14002f5c0
140016b95:	8b c8                	mov    %eax,%ecx
140016b97:	83 e1 3f             	and    $0x3f,%ecx
140016b9a:	48 8b 1d ff b5 01 00 	mov    0x1b5ff(%rip),%rbx        # 0x1400321a0
140016ba1:	48 33 d8             	xor    %rax,%rbx
140016ba4:	48 d3 cb             	ror    %cl,%rbx
140016ba7:	8b 0f                	mov    (%rdi),%ecx
140016ba9:	e8 fe ad ff ff       	call   0x1400119ac
140016bae:	48 8b c3             	mov    %rbx,%rax
140016bb1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140016bb6:	48 83 c4 20          	add    $0x20,%rsp
140016bba:	5f                   	pop    %rdi
140016bbb:	c3                   	ret
140016bbc:	4c 8b dc             	mov    %rsp,%r11
140016bbf:	48 83 ec 28          	sub    $0x28,%rsp
140016bc3:	b8 03 00 00 00       	mov    $0x3,%eax
140016bc8:	4d 8d 4b 10          	lea    0x10(%r11),%r9
140016bcc:	4d 8d 43 08          	lea    0x8(%r11),%r8
140016bd0:	89 44 24 38          	mov    %eax,0x38(%rsp)
140016bd4:	49 8d 53 18          	lea    0x18(%r11),%rdx
140016bd8:	89 44 24 40          	mov    %eax,0x40(%rsp)
140016bdc:	49 8d 4b 08          	lea    0x8(%r11),%rcx
140016be0:	e8 8f ff ff ff       	call   0x140016b74
140016be5:	48 83 c4 28          	add    $0x28,%rsp
140016be9:	c3                   	ret
140016bea:	cc                   	int3
140016beb:	cc                   	int3
140016bec:	48 89 0d 9d b5 01 00 	mov    %rcx,0x1b59d(%rip)        # 0x140032190
140016bf3:	48 89 0d 9e b5 01 00 	mov    %rcx,0x1b59e(%rip)        # 0x140032198
140016bfa:	48 89 0d 9f b5 01 00 	mov    %rcx,0x1b59f(%rip)        # 0x1400321a0
140016c01:	48 89 0d a0 b5 01 00 	mov    %rcx,0x1b5a0(%rip)        # 0x1400321a8
140016c08:	c3                   	ret
140016c09:	cc                   	int3
140016c0a:	cc                   	int3
140016c0b:	cc                   	int3
140016c0c:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140016c11:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140016c16:	57                   	push   %rdi
140016c17:	41 54                	push   %r12
140016c19:	41 55                	push   %r13
140016c1b:	41 56                	push   %r14
140016c1d:	41 57                	push   %r15
140016c1f:	48 83 ec 40          	sub    $0x40,%rsp
140016c23:	8b d9                	mov    %ecx,%ebx
140016c25:	45 33 ff             	xor    %r15d,%r15d
140016c28:	44 21 7c 24 78       	and    %r15d,0x78(%rsp)
140016c2d:	41 b6 01             	mov    $0x1,%r14b
140016c30:	44 88 74 24 70       	mov    %r14b,0x70(%rsp)
140016c35:	8b d1                	mov    %ecx,%edx
140016c37:	83 ea 02             	sub    $0x2,%edx
140016c3a:	74 27                	je     0x140016c63
140016c3c:	83 ea 02             	sub    $0x2,%edx
140016c3f:	74 52                	je     0x140016c93
140016c41:	83 ea 02             	sub    $0x2,%edx
140016c44:	74 1d                	je     0x140016c63
140016c46:	83 ea 02             	sub    $0x2,%edx
140016c49:	74 48                	je     0x140016c93
140016c4b:	83 ea 03             	sub    $0x3,%edx
140016c4e:	74 43                	je     0x140016c93
140016c50:	83 ea 04             	sub    $0x4,%edx
140016c53:	74 0e                	je     0x140016c63
140016c55:	83 ea 06             	sub    $0x6,%edx
140016c58:	74 09                	je     0x140016c63
140016c5a:	83 fa 01             	cmp    $0x1,%edx
140016c5d:	0f 85 82 00 00 00    	jne    0x140016ce5
140016c63:	83 e9 02             	sub    $0x2,%ecx
140016c66:	0f 84 b4 00 00 00    	je     0x140016d20
140016c6c:	83 e9 04             	sub    $0x4,%ecx
140016c6f:	0f 84 90 00 00 00    	je     0x140016d05
140016c75:	83 e9 09             	sub    $0x9,%ecx
140016c78:	0f 84 99 00 00 00    	je     0x140016d17
140016c7e:	83 e9 06             	sub    $0x6,%ecx
140016c81:	0f 84 87 00 00 00    	je     0x140016d0e
140016c87:	83 f9 01             	cmp    $0x1,%ecx
140016c8a:	74 79                	je     0x140016d05
140016c8c:	33 ff                	xor    %edi,%edi
140016c8e:	e9 94 00 00 00       	jmp    0x140016d27
140016c93:	e8 f4 9f ff ff       	call   0x140010c8c
140016c98:	4c 8b f8             	mov    %rax,%r15
140016c9b:	48 85 c0             	test   %rax,%rax
140016c9e:	75 1d                	jne    0x140016cbd
140016ca0:	83 c8 ff             	or     $0xffffffff,%eax
140016ca3:	4c 8d 5c 24 40       	lea    0x40(%rsp),%r11
140016ca8:	49 8b 5b 40          	mov    0x40(%r11),%rbx
140016cac:	49 8b 73 48          	mov    0x48(%r11),%rsi
140016cb0:	49 8b e3             	mov    %r11,%rsp
140016cb3:	41 5f                	pop    %r15
140016cb5:	41 5e                	pop    %r14
140016cb7:	41 5d                	pop    %r13
140016cb9:	41 5c                	pop    %r12
140016cbb:	5f                   	pop    %rdi
140016cbc:	c3                   	ret
140016cbd:	48 8b 00             	mov    (%rax),%rax
140016cc0:	48 8b 0d 19 dd 00 00 	mov    0xdd19(%rip),%rcx        # 0x1400249e0
140016cc7:	48 c1 e1 04          	shl    $0x4,%rcx
140016ccb:	48 03 c8             	add    %rax,%rcx
140016cce:	eb 09                	jmp    0x140016cd9
140016cd0:	39 58 04             	cmp    %ebx,0x4(%rax)
140016cd3:	74 0b                	je     0x140016ce0
140016cd5:	48 83 c0 10          	add    $0x10,%rax
140016cd9:	48 3b c1             	cmp    %rcx,%rax
140016cdc:	75 f2                	jne    0x140016cd0
140016cde:	33 c0                	xor    %eax,%eax
140016ce0:	48 85 c0             	test   %rax,%rax
140016ce3:	75 12                	jne    0x140016cf7
140016ce5:	e8 5e a2 ff ff       	call   0x140010f48
140016cea:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140016cf0:	e8 cf 50 ff ff       	call   0x14000bdc4
140016cf5:	eb a9                	jmp    0x140016ca0
140016cf7:	48 8d 78 08          	lea    0x8(%rax),%rdi
140016cfb:	45 32 f6             	xor    %r14b,%r14b
140016cfe:	44 88 74 24 70       	mov    %r14b,0x70(%rsp)
140016d03:	eb 22                	jmp    0x140016d27
140016d05:	48 8d 3d 94 b4 01 00 	lea    0x1b494(%rip),%rdi        # 0x1400321a0
140016d0c:	eb 19                	jmp    0x140016d27
140016d0e:	48 8d 3d 83 b4 01 00 	lea    0x1b483(%rip),%rdi        # 0x140032198
140016d15:	eb 10                	jmp    0x140016d27
140016d17:	48 8d 3d 8a b4 01 00 	lea    0x1b48a(%rip),%rdi        # 0x1400321a8
140016d1e:	eb 07                	jmp    0x140016d27
140016d20:	48 8d 3d 69 b4 01 00 	lea    0x1b469(%rip),%rdi        # 0x140032190
140016d27:	45 33 ed             	xor    %r13d,%r13d
140016d2a:	45 84 f6             	test   %r14b,%r14b
140016d2d:	74 0a                	je     0x140016d39
140016d2f:	41 8d 4d 03          	lea    0x3(%r13),%ecx
140016d33:	e8 20 ac ff ff       	call   0x140011958
140016d38:	90                   	nop
140016d39:	48 8b 37             	mov    (%rdi),%rsi
140016d3c:	45 84 f6             	test   %r14b,%r14b
140016d3f:	74 12                	je     0x140016d53
140016d41:	48 8b 05 78 88 01 00 	mov    0x18878(%rip),%rax        # 0x14002f5c0
140016d48:	8b c8                	mov    %eax,%ecx
140016d4a:	83 e1 3f             	and    $0x3f,%ecx
140016d4d:	48 33 f0             	xor    %rax,%rsi
140016d50:	48 d3 ce             	ror    %cl,%rsi
140016d53:	48 83 fe 01          	cmp    $0x1,%rsi
140016d57:	0f 84 8b 00 00 00    	je     0x140016de8
140016d5d:	48 85 f6             	test   %rsi,%rsi
140016d60:	0f 84 06 01 00 00    	je     0x140016e6c
140016d66:	41 bc 10 09 00 00    	mov    $0x910,%r12d
140016d6c:	83 fb 0b             	cmp    $0xb,%ebx
140016d6f:	77 35                	ja     0x140016da6
140016d71:	41 0f a3 dc          	bt     %ebx,%r12d
140016d75:	73 2f                	jae    0x140016da6
140016d77:	4d 8b 6f 08          	mov    0x8(%r15),%r13
140016d7b:	4c 89 6c 24 30       	mov    %r13,0x30(%rsp)
140016d80:	49 83 67 08 00       	andq   $0x0,0x8(%r15)
140016d85:	83 fb 08             	cmp    $0x8,%ebx
140016d88:	75 52                	jne    0x140016ddc
140016d8a:	e8 85 9d ff ff       	call   0x140010b14
140016d8f:	8b 40 10             	mov    0x10(%rax),%eax
140016d92:	89 44 24 78          	mov    %eax,0x78(%rsp)
140016d96:	89 44 24 20          	mov    %eax,0x20(%rsp)
140016d9a:	e8 75 9d ff ff       	call   0x140010b14
140016d9f:	c7 40 10 8c 00 00 00 	movl   $0x8c,0x10(%rax)
140016da6:	83 fb 08             	cmp    $0x8,%ebx
140016da9:	75 31                	jne    0x140016ddc
140016dab:	48 8b 05 36 dc 00 00 	mov    0xdc36(%rip),%rax        # 0x1400249e8
140016db2:	48 c1 e0 04          	shl    $0x4,%rax
140016db6:	49 03 07             	add    (%r15),%rax
140016db9:	48 8b 0d 30 dc 00 00 	mov    0xdc30(%rip),%rcx        # 0x1400249f0
140016dc0:	48 c1 e1 04          	shl    $0x4,%rcx
140016dc4:	48 03 c8             	add    %rax,%rcx
140016dc7:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140016dcc:	48 3b c1             	cmp    %rcx,%rax
140016dcf:	74 1d                	je     0x140016dee
140016dd1:	48 83 60 08 00       	andq   $0x0,0x8(%rax)
140016dd6:	48 83 c0 10          	add    $0x10,%rax
140016dda:	eb eb                	jmp    0x140016dc7
140016ddc:	48 8b 05 dd 87 01 00 	mov    0x187dd(%rip),%rax        # 0x14002f5c0
140016de3:	48 89 07             	mov    %rax,(%rdi)
140016de6:	eb 06                	jmp    0x140016dee
140016de8:	41 bc 10 09 00 00    	mov    $0x910,%r12d
140016dee:	45 84 f6             	test   %r14b,%r14b
140016df1:	74 0a                	je     0x140016dfd
140016df3:	b9 03 00 00 00       	mov    $0x3,%ecx
140016df8:	e8 af ab ff ff       	call   0x1400119ac
140016dfd:	48 83 fe 01          	cmp    $0x1,%rsi
140016e01:	75 07                	jne    0x140016e0a
140016e03:	33 c0                	xor    %eax,%eax
140016e05:	e9 99 fe ff ff       	jmp    0x140016ca3
140016e0a:	83 fb 08             	cmp    $0x8,%ebx
140016e0d:	75 23                	jne    0x140016e32
140016e0f:	e8 00 9d ff ff       	call   0x140010b14
140016e14:	49 ba 70 33 d3 30 4f 	movabs $0x8b9c1f4f30d33370,%r10
140016e1b:	1f 9c 8b
140016e1e:	8b 50 10             	mov    0x10(%rax),%edx
140016e21:	8b cb                	mov    %ebx,%ecx
140016e23:	48 8b c6             	mov    %rsi,%rax
140016e26:	4c 8b 05 53 74 00 00 	mov    0x7453(%rip),%r8        # 0x14001e280
140016e2d:	41 ff d0             	call   *%r8
140016e30:	eb 18                	jmp    0x140016e4a
140016e32:	49 ba 70 73 d7 50 49 	movabs $0xc6c1864950d77370,%r10
140016e39:	86 c1 c6
140016e3c:	8b cb                	mov    %ebx,%ecx
140016e3e:	48 8b c6             	mov    %rsi,%rax
140016e41:	48 8b 15 38 74 00 00 	mov    0x7438(%rip),%rdx        # 0x14001e280
140016e48:	ff d2                	call   *%rdx
140016e4a:	83 fb 0b             	cmp    $0xb,%ebx
140016e4d:	77 b4                	ja     0x140016e03
140016e4f:	41 0f a3 dc          	bt     %ebx,%r12d
140016e53:	73 ae                	jae    0x140016e03
140016e55:	4d 89 6f 08          	mov    %r13,0x8(%r15)
140016e59:	83 fb 08             	cmp    $0x8,%ebx
140016e5c:	75 a5                	jne    0x140016e03
140016e5e:	e8 b1 9c ff ff       	call   0x140010b14
140016e63:	8b 4c 24 78          	mov    0x78(%rsp),%ecx
140016e67:	89 48 10             	mov    %ecx,0x10(%rax)
140016e6a:	eb 97                	jmp    0x140016e03
140016e6c:	45 84 f6             	test   %r14b,%r14b
140016e6f:	74 08                	je     0x140016e79
140016e71:	8d 4e 03             	lea    0x3(%rsi),%ecx
140016e74:	e8 33 ab ff ff       	call   0x1400119ac
140016e79:	b9 03 00 00 00       	mov    $0x3,%ecx
140016e7e:	e8 ad 8f ff ff       	call   0x14000fe30
140016e83:	90                   	nop
140016e84:	cc                   	int3
140016e85:	cc                   	int3
140016e86:	cc                   	int3
140016e87:	cc                   	int3
140016e88:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140016e8d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140016e92:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140016e97:	57                   	push   %rdi
140016e98:	41 56                	push   %r14
140016e9a:	41 57                	push   %r15
140016e9c:	48 83 ec 20          	sub    $0x20,%rsp
140016ea0:	48 8b e9             	mov    %rcx,%rbp
140016ea3:	48 85 c9             	test   %rcx,%rcx
140016ea6:	74 47                	je     0x140016eef
140016ea8:	33 db                	xor    %ebx,%ebx
140016eaa:	4c 8d 3d 4f 91 fe ff 	lea    -0x16eb1(%rip),%r15        # 0x140000000
140016eb1:	bf e3 00 00 00       	mov    $0xe3,%edi
140016eb6:	8d 04 1f             	lea    (%rdi,%rbx,1),%eax
140016eb9:	41 b8 55 00 00 00    	mov    $0x55,%r8d
140016ebf:	99                   	cltd
140016ec0:	48 8b cd             	mov    %rbp,%rcx
140016ec3:	2b c2                	sub    %edx,%eax
140016ec5:	d1 f8                	sar    $1,%eax
140016ec7:	48 63 f0             	movslq %eax,%rsi
140016eca:	4c 8b f6             	mov    %rsi,%r14
140016ecd:	4d 03 f6             	add    %r14,%r14
140016ed0:	4b 8b 94 f7 80 7b 02 	mov    0x27b80(%r15,%r14,8),%rdx
140016ed7:	00
140016ed8:	e8 33 34 00 00       	call   0x14001a310
140016edd:	85 c0                	test   %eax,%eax
140016edf:	74 29                	je     0x140016f0a
140016ee1:	79 05                	jns    0x140016ee8
140016ee3:	8d 7e ff             	lea    -0x1(%rsi),%edi
140016ee6:	eb 03                	jmp    0x140016eeb
140016ee8:	8d 5e 01             	lea    0x1(%rsi),%ebx
140016eeb:	3b df                	cmp    %edi,%ebx
140016eed:	7e c7                	jle    0x140016eb6
140016eef:	33 c0                	xor    %eax,%eax
140016ef1:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140016ef6:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140016efb:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140016f00:	48 83 c4 20          	add    $0x20,%rsp
140016f04:	41 5f                	pop    %r15
140016f06:	41 5e                	pop    %r14
140016f08:	5f                   	pop    %rdi
140016f09:	c3                   	ret
140016f0a:	4b 63 84 f7 88 7b 02 	movslq 0x27b88(%r15,%r14,8),%rax
140016f11:	00
140016f12:	85 c0                	test   %eax,%eax
140016f14:	78 d9                	js     0x140016eef
140016f16:	48 3d e4 00 00 00    	cmp    $0xe4,%rax
140016f1c:	73 d1                	jae    0x140016eef
140016f1e:	48 03 c0             	add    %rax,%rax
140016f21:	41 8b 84 c7 20 61 02 	mov    0x26120(%r15,%rax,8),%eax
140016f28:	00
140016f29:	eb c6                	jmp    0x140016ef1
140016f2b:	cc                   	int3
140016f2c:	48 8b c4             	mov    %rsp,%rax
140016f2f:	48 89 58 10          	mov    %rbx,0x10(%rax)
140016f33:	48 89 48 08          	mov    %rcx,0x8(%rax)
140016f37:	57                   	push   %rdi
140016f38:	48 83 ec 30          	sub    $0x30,%rsp
140016f3c:	48 8b fa             	mov    %rdx,%rdi
140016f3f:	48 8b d9             	mov    %rcx,%rbx
140016f42:	48 85 c9             	test   %rcx,%rcx
140016f45:	75 2e                	jne    0x140016f75
140016f47:	c6 42 30 01          	movb   $0x1,0x30(%rdx)
140016f4b:	c7 42 2c 16 00 00 00 	movl   $0x16,0x2c(%rdx)
140016f52:	48 89 50 f0          	mov    %rdx,-0x10(%rax)
140016f56:	48 21 48 e8          	and    %rcx,-0x18(%rax)
140016f5a:	45 33 c9             	xor    %r9d,%r9d
140016f5d:	45 33 c0             	xor    %r8d,%r8d
140016f60:	33 d2                	xor    %edx,%edx
140016f62:	e8 91 4d ff ff       	call   0x14000bcf8
140016f67:	83 c8 ff             	or     $0xffffffff,%eax
140016f6a:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
140016f6f:	48 83 c4 30          	add    $0x30,%rsp
140016f73:	5f                   	pop    %rdi
140016f74:	c3                   	ret
140016f75:	8b 41 14             	mov    0x14(%rcx),%eax
140016f78:	90                   	nop
140016f79:	c1 e8 0c             	shr    $0xc,%eax
140016f7c:	24 01                	and    $0x1,%al
140016f7e:	74 07                	je     0x140016f87
140016f80:	e8 9b 36 00 00       	call   0x14001a620
140016f85:	eb e0                	jmp    0x140016f67
140016f87:	e8 60 50 ff ff       	call   0x14000bfec
140016f8c:	90                   	nop
140016f8d:	48 8b d7             	mov    %rdi,%rdx
140016f90:	48 8b cb             	mov    %rbx,%rcx
140016f93:	e8 10 00 00 00       	call   0x140016fa8
140016f98:	8b f8                	mov    %eax,%edi
140016f9a:	48 8b cb             	mov    %rbx,%rcx
140016f9d:	e8 56 50 ff ff       	call   0x14000bff8
140016fa2:	8b c7                	mov    %edi,%eax
140016fa4:	eb c4                	jmp    0x140016f6a
140016fa6:	cc                   	int3
140016fa7:	cc                   	int3
140016fa8:	48 8b c4             	mov    %rsp,%rax
140016fab:	48 89 58 08          	mov    %rbx,0x8(%rax)
140016faf:	48 89 70 10          	mov    %rsi,0x10(%rax)
140016fb3:	57                   	push   %rdi
140016fb4:	48 83 ec 30          	sub    $0x30,%rsp
140016fb8:	48 8b fa             	mov    %rdx,%rdi
140016fbb:	48 8b d9             	mov    %rcx,%rbx
140016fbe:	48 85 c9             	test   %rcx,%rcx