140ed3acb:	48 83 ec 20          	sub    $0x20,%rsp
140ed3acf:	48 8b da             	mov    %rdx,%rbx
140ed3ad2:	48 8b f1             	mov    %rcx,%rsi
140ed3ad5:	48 8b cb             	mov    %rbx,%rcx
140ed3ad8:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140ed3add:	e8 8e 00 00 00       	call   0x140ed3b70
140ed3ae2:	85 c0                	test   %eax,%eax
140ed3ae4:	75 59                	jne    0x140ed3b3f
140ed3ae6:	48 8b 0b             	mov    (%rbx),%rcx
140ed3ae9:	48 8b c6             	mov    %rsi,%rax
140ed3aec:	33 ff                	xor    %edi,%edi
140ed3aee:	ff 15 2c ff 0a 00    	call   *0xaff2c(%rip)        # 0x140f83a20
140ed3af4:	48 85 c0             	test   %rax,%rax
140ed3af7:	74 46                	je     0x140ed3b3f
140ed3af9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140ed3b00:	48 8b 40 10          	mov    0x10(%rax),%rax
140ed3b04:	48 85 c0             	test   %rax,%rax
140ed3b07:	75 07                	jne    0x140ed3b10
140ed3b09:	b8 00 04 00 00       	mov    $0x400,%eax
140ed3b0e:	eb 10                	jmp    0x140ed3b20
140ed3b10:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140ed3b14:	ff 15 06 ff 0a 00    	call   *0xaff06(%rip)        # 0x140f83a20
140ed3b1a:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140ed3b1e:	74 1f                	je     0x140ed3b3f
140ed3b20:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140ed3b24:	48 83 c3 10          	add    $0x10,%rbx
140ed3b28:	48 03 f8             	add    %rax,%rdi
140ed3b2b:	48 83 f9 ff          	cmp    $0xffffffffffffffff,%rcx
140ed3b2f:	74 25                	je     0x140ed3b56
140ed3b31:	48 8b c6             	mov    %rsi,%rax
140ed3b34:	ff 15 e6 fe 0a 00    	call   *0xafee6(%rip)        # 0x140f83a20
140ed3b3a:	48 85 c0             	test   %rax,%rax
140ed3b3d:	75 c1                	jne    0x140ed3b00
140ed3b3f:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
140ed3b46:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ed3b4b:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3b50:	48 83 c4 20          	add    $0x20,%rsp
140ed3b54:	5f                   	pop    %rdi
140ed3b55:	c3                   	ret
140ed3b56:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ed3b5b:	48 8d 87 00 80 00 00 	lea    0x8000(%rdi),%rax
140ed3b62:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3b67:	48 83 c4 20          	add    $0x20,%rsp
140ed3b6b:	5f                   	pop    %rdi
140ed3b6c:	c3                   	ret
140ed3b6d:	cc                   	int3
140ed3b6e:	cc                   	int3
140ed3b6f:	cc                   	int3
140ed3b70:	40 57                	rex push %rdi
140ed3b72:	48 8b fa             	mov    %rdx,%rdi
140ed3b75:	4c 8b d9             	mov    %rcx,%r11
140ed3b78:	48 85 c9             	test   %rcx,%rcx
140ed3b7b:	0f 84 c0 00 00 00    	je     0x140ed3c41
140ed3b81:	4c 8b 01             	mov    (%rcx),%r8
140ed3b84:	49 83 f8 ff          	cmp    $0xffffffffffffffff,%r8
140ed3b88:	0f 84 b3 00 00 00    	je     0x140ed3c41
140ed3b8e:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140ed3b93:	41 b2 01             	mov    $0x1,%r10b
140ed3b96:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140ed3b9b:	33 db                	xor    %ebx,%ebx
140ed3b9d:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140ed3ba2:	45 33 c9             	xor    %r9d,%r9d
140ed3ba5:	48 8d 35 a4 c1 33 00 	lea    0x33c1a4(%rip),%rsi        # 0x14120fd50
140ed3bac:	48 bd 01 00 00 00 00 	movabs $0x4000000000000001,%rbp
140ed3bb3:	00 00 40
140ed3bb6:	33 c0                	xor    %eax,%eax
140ed3bb8:	4c 3b c5             	cmp    %rbp,%r8
140ed3bbb:	74 19                	je     0x140ed3bd6
140ed3bbd:	48 8b cd             	mov    %rbp,%rcx
140ed3bc0:	48 83 f9 ff          	cmp    $0xffffffffffffffff,%rcx
140ed3bc4:	74 65                	je     0x140ed3c2b
140ed3bc6:	48 ff c0             	inc    %rax
140ed3bc9:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140ed3bcd:	48 8b 0c ce          	mov    (%rsi,%rcx,8),%rcx
140ed3bd1:	4c 3b c1             	cmp    %rcx,%r8
140ed3bd4:	75 ea                	jne    0x140ed3bc0
140ed3bd6:	45 84 d2             	test   %r10b,%r10b
140ed3bd9:	74 50                	je     0x140ed3c2b
140ed3bdb:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140ed3bdf:	49 ff c1             	inc    %r9
140ed3be2:	0f b6 44 ce 12       	movzbl 0x12(%rsi,%rcx,8),%eax
140ed3be7:	44 0f b6 54 ce 10    	movzbl 0x10(%rsi,%rcx,8),%r10d
140ed3bed:	48 03 d8             	add    %rax,%rbx
140ed3bf0:	0f b6 54 ce 11       	movzbl 0x11(%rsi,%rcx,8),%edx
140ed3bf5:	49 8b c1             	mov    %r9,%rax
140ed3bf8:	48 03 c0             	add    %rax,%rax
140ed3bfb:	4d 8b 04 c3          	mov    (%r11,%rax,8),%r8
140ed3bff:	49 83 f8 ff          	cmp    $0xffffffffffffffff,%r8
140ed3c03:	75 b1                	jne    0x140ed3bb6
140ed3c05:	49 83 f9 04          	cmp    $0x4,%r9
140ed3c09:	77 20                	ja     0x140ed3c2b
140ed3c0b:	84 d2                	test   %dl,%dl
140ed3c0d:	74 1c                	je     0x140ed3c2b
140ed3c0f:	48 83 fb 03          	cmp    $0x3,%rbx
140ed3c13:	77 16                	ja     0x140ed3c2b
140ed3c15:	48 8b 6c 24 18       	mov    0x18(%rsp),%rbp
140ed3c1a:	33 c0                	xor    %eax,%eax
140ed3c1c:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140ed3c21:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
140ed3c26:	4c 89 0f             	mov    %r9,(%rdi)
140ed3c29:	5f                   	pop    %rdi
140ed3c2a:	c3                   	ret
140ed3c2b:	48 8b 6c 24 18       	mov    0x18(%rsp),%rbp
140ed3c30:	b8 08 00 00 00       	mov    $0x8,%eax
140ed3c35:	48 8b 5c 24 10       	mov    0x10(%rsp),%rbx
140ed3c3a:	48 8b 74 24 20       	mov    0x20(%rsp),%rsi
140ed3c3f:	5f                   	pop    %rdi
140ed3c40:	c3                   	ret
140ed3c41:	b8 0b 00 00 00       	mov    $0xb,%eax
140ed3c46:	5f                   	pop    %rdi
140ed3c47:	c3                   	ret
140ed3c48:	cc                   	int3
140ed3c49:	cc                   	int3
140ed3c4a:	cc                   	int3
140ed3c4b:	cc                   	int3
140ed3c4c:	cc                   	int3
140ed3c4d:	cc                   	int3
140ed3c4e:	cc                   	int3
140ed3c4f:	cc                   	int3
140ed3c50:	4c 8d 05 19 c2 33 00 	lea    0x33c219(%rip),%r8        # 0x14120fe70
140ed3c57:	33 c0                	xor    %eax,%eax
140ed3c59:	49 8b d0             	mov    %r8,%rdx
140ed3c5c:	0f 1f 40 00          	nopl   0x0(%rax)
140ed3c60:	48 39 0a             	cmp    %rcx,(%rdx)
140ed3c63:	74 10                	je     0x140ed3c75
140ed3c65:	48 ff c0             	inc    %rax
140ed3c68:	48 83 c2 20          	add    $0x20,%rdx
140ed3c6c:	48 83 f8 0b          	cmp    $0xb,%rax
140ed3c70:	72 ee                	jb     0x140ed3c60
140ed3c72:	33 c0                	xor    %eax,%eax
140ed3c74:	c3                   	ret
140ed3c75:	48 c1 e0 05          	shl    $0x5,%rax
140ed3c79:	49 03 c0             	add    %r8,%rax
140ed3c7c:	c3                   	ret
140ed3c7d:	cc                   	int3
140ed3c7e:	cc                   	int3
140ed3c7f:	cc                   	int3
140ed3c80:	40 53                	rex push %rbx
140ed3c82:	48 83 ec 30          	sub    $0x30,%rsp
140ed3c86:	4c 8b 11             	mov    (%rcx),%r10
140ed3c89:	4c 8d 59 08          	lea    0x8(%rcx),%r11
140ed3c8d:	33 c0                	xor    %eax,%eax
140ed3c8f:	48 8d 1d da c1 33 00 	lea    0x33c1da(%rip),%rbx        # 0x14120fe70
140ed3c96:	49 89 03             	mov    %rax,(%r11)
140ed3c99:	48 8b cb             	mov    %rbx,%rcx
140ed3c9c:	0f 1f 40 00          	nopl   0x0(%rax)
140ed3ca0:	4c 39 11             	cmp    %r10,(%rcx)
140ed3ca3:	74 18                	je     0x140ed3cbd
140ed3ca5:	48 ff c0             	inc    %rax
140ed3ca8:	48 83 c1 20          	add    $0x20,%rcx
140ed3cac:	48 83 f8 0b          	cmp    $0xb,%rax
140ed3cb0:	72 ee                	jb     0x140ed3ca0
140ed3cb2:	b8 08 00 00 00       	mov    $0x8,%eax
140ed3cb7:	48 83 c4 30          	add    $0x30,%rsp
140ed3cbb:	5b                   	pop    %rbx
140ed3cbc:	c3                   	ret
140ed3cbd:	48 c1 e0 05          	shl    $0x5,%rax
140ed3cc1:	48 03 c3             	add    %rbx,%rax
140ed3cc4:	75 0b                	jne    0x140ed3cd1
140ed3cc6:	b8 08 00 00 00       	mov    $0x8,%eax
140ed3ccb:	48 83 c4 30          	add    $0x30,%rsp
140ed3ccf:	5b                   	pop    %rbx
140ed3cd0:	c3                   	ret
140ed3cd1:	48 8b 40 18          	mov    0x18(%rax),%rax
140ed3cd5:	48 85 c0             	test   %rax,%rax
140ed3cd8:	75 0e                	jne    0x140ed3ce8
140ed3cda:	49 f7 d9             	neg    %r9
140ed3cdd:	1b c0                	sbb    %eax,%eax
140ed3cdf:	83 e0 08             	and    $0x8,%eax
140ed3ce2:	48 83 c4 30          	add    $0x30,%rsp
140ed3ce6:	5b                   	pop    %rbx
140ed3ce7:	c3                   	ret
140ed3ce8:	49 8b cb             	mov    %r11,%rcx
140ed3ceb:	ff 15 2f fd 0a 00    	call   *0xafd2f(%rip)        # 0x140f83a20
140ed3cf1:	48 83 c4 30          	add    $0x30,%rsp
140ed3cf5:	5b                   	pop    %rbx
140ed3cf6:	c3                   	ret
140ed3cf7:	cc                   	int3
140ed3cf8:	cc                   	int3
140ed3cf9:	cc                   	int3
140ed3cfa:	cc                   	int3
140ed3cfb:	cc                   	int3
140ed3cfc:	cc                   	int3
140ed3cfd:	cc                   	int3
140ed3cfe:	cc                   	int3
140ed3cff:	cc                   	int3
140ed3d00:	48 83 ec 38          	sub    $0x38,%rsp
140ed3d04:	4c 8d 0d 45 ff ff ff 	lea    -0xbb(%rip),%r9        # 0x140ed3c50
140ed3d0b:	c6 44 24 20 00       	movb   $0x0,0x20(%rsp)
140ed3d10:	e8 7b fb ff ff       	call   0x140ed3890
140ed3d15:	48 83 c4 38          	add    $0x38,%rsp
140ed3d19:	c3                   	ret
140ed3d1a:	cc                   	int3
140ed3d1b:	cc                   	int3
140ed3d1c:	cc                   	int3
140ed3d1d:	cc                   	int3
140ed3d1e:	cc                   	int3
140ed3d1f:	cc                   	int3
140ed3d20:	48 8b d1             	mov    %rcx,%rdx
140ed3d23:	48 8d 0d 26 ff ff ff 	lea    -0xda(%rip),%rcx        # 0x140ed3c50
140ed3d2a:	e9 91 fd ff ff       	jmp    0x140ed3ac0
140ed3d2f:	cc                   	int3
140ed3d30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140ed3d35:	57                   	push   %rdi
140ed3d36:	48 83 ec 20          	sub    $0x20,%rsp
140ed3d3a:	0f b7 42 0a          	movzwl 0xa(%rdx),%eax
140ed3d3e:	48 8b da             	mov    %rdx,%rbx
140ed3d41:	66 3b 05 90 c2 33 00 	cmp    0x33c290(%rip),%ax        # 0x14120ffd8
140ed3d48:	48 8b f9             	mov    %rcx,%rdi
140ed3d4b:	74 10                	je     0x140ed3d5d
140ed3d4d:	b8 07 00 00 00       	mov    $0x7,%eax
140ed3d52:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140ed3d57:	48 83 c4 20          	add    $0x20,%rsp
140ed3d5b:	5f                   	pop    %rdi
140ed3d5c:	c3                   	ret
140ed3d5d:	45 33 c0             	xor    %r8d,%r8d
140ed3d60:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
140ed3d65:	48 8d 4b 04          	lea    0x4(%rbx),%rcx
140ed3d69:	41 8d 50 06          	lea    0x6(%r8),%edx
140ed3d6d:	e8 ce 0e 00 00       	call   0x140ed4c40
140ed3d72:	3b 03                	cmp    (%rbx),%eax
140ed3d74:	74 15                	je     0x140ed3d8b
140ed3d76:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140ed3d7b:	b8 09 00 00 00       	mov    $0x9,%eax
140ed3d80:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140ed3d85:	48 83 c4 20          	add    $0x20,%rsp
140ed3d89:	5f                   	pop    %rdi
140ed3d8a:	c3                   	ret
140ed3d8b:	80 7b 08 00          	cmpb   $0x0,0x8(%rbx)
140ed3d8f:	75 37                	jne    0x140ed3dc8
140ed3d91:	f6 43 09 f0          	testb  $0xf0,0x9(%rbx)
140ed3d95:	75 31                	jne    0x140ed3dc8
140ed3d97:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140ed3d9c:	c7 07 00 00 00 00    	movl   $0x0,(%rdi)
140ed3da2:	0f b6 43 09          	movzbl 0x9(%rbx),%eax
140ed3da6:	83 e0 0f             	and    $0xf,%eax
140ed3da9:	89 47 10             	mov    %eax,0x10(%rdi)
140ed3dac:	8b 43 04             	mov    0x4(%rbx),%eax
140ed3daf:	48 8d 04 85 04 00 00 	lea    0x4(,%rax,4),%rax
140ed3db6:	00
140ed3db7:	48 89 47 08          	mov    %rax,0x8(%rdi)
140ed3dbb:	33 c0                	xor    %eax,%eax
140ed3dbd:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140ed3dc2:	48 83 c4 20          	add    $0x20,%rsp
140ed3dc6:	5f                   	pop    %rdi
140ed3dc7:	c3                   	ret
140ed3dc8:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
140ed3dcd:	b8 08 00 00 00       	mov    $0x8,%eax
140ed3dd2:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140ed3dd7:	48 83 c4 20          	add    $0x20,%rsp
140ed3ddb:	5f                   	pop    %rdi
140ed3ddc:	c3                   	ret
140ed3ddd:	cc                   	int3
140ed3dde:	cc                   	int3
140ed3ddf:	cc                   	int3
140ed3de0:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140ed3de5:	57                   	push   %rdi
140ed3de6:	48 83 ec 20          	sub    $0x20,%rsp
140ed3dea:	8b 02                	mov    (%rdx),%eax
140ed3dec:	48 8b f2             	mov    %rdx,%rsi
140ed3def:	3b 05 db c1 33 00    	cmp    0x33c1db(%rip),%eax        # 0x14120ffd0
140ed3df5:	48 8b f9             	mov    %rcx,%rdi
140ed3df8:	0f 85 87 00 00 00    	jne    0x140ed3e85
140ed3dfe:	0f b7 42 04          	movzwl 0x4(%rdx),%eax
140ed3e02:	66 3b 05 cb c1 33 00 	cmp    0x33c1cb(%rip),%ax        # 0x14120ffd4
140ed3e09:	75 7a                	jne    0x140ed3e85
140ed3e0b:	45 33 c0             	xor    %r8d,%r8d
140ed3e0e:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140ed3e13:	48 8d 4e 06          	lea    0x6(%rsi),%rcx
140ed3e17:	41 8d 50 02          	lea    0x2(%r8),%edx
140ed3e1b:	e8 20 0e 00 00       	call   0x140ed4c40
140ed3e20:	3b 46 08             	cmp    0x8(%rsi),%eax
140ed3e23:	74 15                	je     0x140ed3e3a
140ed3e25:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ed3e2a:	b8 09 00 00 00       	mov    $0x9,%eax
140ed3e2f:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3e34:	48 83 c4 20          	add    $0x20,%rsp
140ed3e38:	5f                   	pop    %rdi
140ed3e39:	c3                   	ret
140ed3e3a:	80 7e 06 00          	cmpb   $0x0,0x6(%rsi)
140ed3e3e:	75 30                	jne    0x140ed3e70
140ed3e40:	f6 46 07 f0          	testb  $0xf0,0x7(%rsi)
140ed3e44:	75 2a                	jne    0x140ed3e70
140ed3e46:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ed3e4b:	c7 07 00 00 00 00    	movl   $0x0,(%rdi)
140ed3e51:	0f b6 46 07          	movzbl 0x7(%rsi),%eax
140ed3e55:	83 e0 0f             	and    $0xf,%eax
140ed3e58:	48 c7 47 08 ff ff ff 	movq   $0xffffffffffffffff,0x8(%rdi)
140ed3e5f:	ff
140ed3e60:	89 47 10             	mov    %eax,0x10(%rdi)
140ed3e63:	33 c0                	xor    %eax,%eax
140ed3e65:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3e6a:	48 83 c4 20          	add    $0x20,%rsp
140ed3e6e:	5f                   	pop    %rdi
140ed3e6f:	c3                   	ret
140ed3e70:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ed3e75:	b8 08 00 00 00       	mov    $0x8,%eax
140ed3e7a:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3e7f:	48 83 c4 20          	add    $0x20,%rsp
140ed3e83:	5f                   	pop    %rdi
140ed3e84:	c3                   	ret
140ed3e85:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140ed3e8a:	b8 07 00 00 00       	mov    $0x7,%eax
140ed3e8f:	48 83 c4 20          	add    $0x20,%rsp
140ed3e93:	5f                   	pop    %rdi
140ed3e94:	c3                   	ret
140ed3e95:	cc                   	int3
140ed3e96:	cc                   	int3
140ed3e97:	cc                   	int3
140ed3e98:	cc                   	int3
140ed3e99:	cc                   	int3
140ed3e9a:	cc                   	int3
140ed3e9b:	cc                   	int3
140ed3e9c:	cc                   	int3
140ed3e9d:	cc                   	int3
140ed3e9e:	cc                   	int3
140ed3e9f:	cc                   	int3
140ed3ea0:	83 39 00             	cmpl   $0x0,(%rcx)
140ed3ea3:	75 74                	jne    0x140ed3f19
140ed3ea5:	83 3a 00             	cmpl   $0x0,(%rdx)
140ed3ea8:	75 6f                	jne    0x140ed3f19
140ed3eaa:	8b 41 10             	mov    0x10(%rcx),%eax
140ed3ead:	83 f8 0f             	cmp    $0xf,%eax
140ed3eb0:	77 61                	ja     0x140ed3f13
140ed3eb2:	44 8b 42 10          	mov    0x10(%rdx),%r8d
140ed3eb6:	41 83 f8 0f          	cmp    $0xf,%r8d
140ed3eba:	77 57                	ja     0x140ed3f13
140ed3ebc:	41 3b c0             	cmp    %r8d,%eax
140ed3ebf:	75 4c                	jne    0x140ed3f0d
140ed3ec1:	4c 8b 41 08          	mov    0x8(%rcx),%r8
140ed3ec5:	49 83 f8 ff          	cmp    $0xffffffffffffffff,%r8
140ed3ec9:	74 3f                	je     0x140ed3f0a
140ed3ecb:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140ed3ecf:	48 83 fa ff          	cmp    $0xffffffffffffffff,%rdx
140ed3ed3:	74 35                	je     0x140ed3f0a
140ed3ed5:	49 8d 40 fc          	lea    -0x4(%r8),%rax
140ed3ed9:	48 b9 fc ff ff ff 03 	movabs $0x3fffffffc,%rcx
140ed3ee0:	00 00 00
140ed3ee3:	48 3b c1             	cmp    %rcx,%rax
140ed3ee6:	77 2b                	ja     0x140ed3f13
140ed3ee8:	41 f6 c0 03          	test   $0x3,%r8b
140ed3eec:	75 25                	jne    0x140ed3f13
140ed3eee:	48 8d 42 fc          	lea    -0x4(%rdx),%rax
140ed3ef2:	48 3b c1             	cmp    %rcx,%rax
140ed3ef5:	77 1c                	ja     0x140ed3f13
140ed3ef7:	f6 c2 03             	test   $0x3,%dl
140ed3efa:	75 17                	jne    0x140ed3f13
140ed3efc:	33 c0                	xor    %eax,%eax
140ed3efe:	b9 09 00 00 00       	mov    $0x9,%ecx
140ed3f03:	4c 3b c2             	cmp    %rdx,%r8