140e35d38:	0f 85 89 01 00 00    	jne    0x140e35ec7
140e35d3e:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35d44:	f6 d8                	neg    %al
140e35d46:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35d4d:	00 00 80
140e35d50:	48 1b c9             	sbb    %rcx,%rcx
140e35d53:	48 23 c8             	and    %rax,%rcx
140e35d56:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140e35d5d:	ff ff 7f
140e35d60:	48 03 c8             	add    %rax,%rcx
140e35d63:	49 89 08             	mov    %rcx,(%r8)
140e35d66:	e9 70 01 00 00       	jmp    0x140e35edb
140e35d6b:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35d71:	48 ba 00 00 00 00 00 	movabs $0x7ff0000000000000,%rdx
140e35d78:	00 f0 7f
140e35d7b:	f6 d8                	neg    %al
140e35d7d:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35d84:	00 00 80
140e35d87:	48 1b c9             	sbb    %rcx,%rcx
140e35d8a:	48 23 c8             	and    %rax,%rcx
140e35d8d:	48 b8 00 00 00 00 00 	movabs $0xfff0000000000000,%rax
140e35d94:	00 f0 ff
140e35d97:	48 03 ca             	add    %rdx,%rcx
140e35d9a:	48 23 c8             	and    %rax,%rcx
140e35d9d:	49 8b 00             	mov    (%r8),%rax
140e35da0:	48 23 c2             	and    %rdx,%rax
140e35da3:	48 0b c8             	or     %rax,%rcx
140e35da6:	eb bb                	jmp    0x140e35d63
140e35da8:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35dae:	f6 d8                	neg    %al
140e35db0:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35db7:	00 00 80
140e35dba:	48 1b c9             	sbb    %rcx,%rcx
140e35dbd:	48 23 c8             	and    %rax,%rcx
140e35dc0:	48 23 c8             	and    %rax,%rcx
140e35dc3:	eb 9e                	jmp    0x140e35d63
140e35dc5:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140e35dca:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140e35dcf:	49 8b c9             	mov    %r9,%rcx
140e35dd2:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140e35dd7:	e8 20 3d 00 00       	call   0x140e39afc
140e35ddc:	e9 fc 00 00 00       	jmp    0x140e35edd
140e35de1:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140e35de6:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
140e35deb:	49 8b c9             	mov    %r9,%rcx
140e35dee:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140e35df3:	e8 84 1e 00 00       	call   0x140e37c7c
140e35df8:	e9 e0 00 00 00       	jmp    0x140e35edd
140e35dfd:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35e03:	48 ba 00 00 00 00 00 	movabs $0x7ff0000000000000,%rdx
140e35e0a:	00 f0 7f
140e35e0d:	f6 d8                	neg    %al
140e35e0f:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35e16:	00 00 80
140e35e19:	48 1b c9             	sbb    %rcx,%rcx
140e35e1c:	48 23 c8             	and    %rax,%rcx
140e35e1f:	48 b8 01 00 00 00 00 	movabs $0xfff0000000000001,%rax
140e35e26:	00 f0 ff
140e35e29:	48 03 ca             	add    %rdx,%rcx
140e35e2c:	48 23 c8             	and    %rax,%rcx
140e35e2f:	49 8b 00             	mov    (%r8),%rax
140e35e32:	48 23 c2             	and    %rdx,%rax
140e35e35:	48 0b c8             	or     %rax,%rcx
140e35e38:	48 83 c9 01          	or     $0x1,%rcx
140e35e3c:	e9 22 ff ff ff       	jmp    0x140e35d63
140e35e41:	83 e9 06             	sub    $0x6,%ecx
140e35e44:	0f 84 84 00 00 00    	je     0x140e35ece
140e35e4a:	83 e9 01             	sub    $0x1,%ecx
140e35e4d:	74 74                	je     0x140e35ec3
140e35e4f:	83 e9 01             	sub    $0x1,%ecx
140e35e52:	74 4a                	je     0x140e35e9e
140e35e54:	83 f9 01             	cmp    $0x1,%ecx
140e35e57:	75 6e                	jne    0x140e35ec7
140e35e59:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35e5f:	48 ba 00 00 00 00 00 	movabs $0x7ff0000000000000,%rdx
140e35e66:	00 f0 7f
140e35e69:	f6 d8                	neg    %al
140e35e6b:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35e72:	00 00 80
140e35e75:	48 1b c9             	sbb    %rcx,%rcx
140e35e78:	48 23 c8             	and    %rax,%rcx
140e35e7b:	48 b8 00 00 00 00 00 	movabs $0xfff0000000000000,%rax
140e35e82:	00 f0 ff
140e35e85:	48 03 ca             	add    %rdx,%rcx
140e35e88:	48 23 c8             	and    %rax,%rcx
140e35e8b:	49 8b 00             	mov    (%r8),%rax
140e35e8e:	48 23 c2             	and    %rdx,%rax
140e35e91:	48 0b c8             	or     %rax,%rcx
140e35e94:	b8 03 00 00 00       	mov    $0x3,%eax
140e35e99:	49 89 08             	mov    %rcx,(%r8)
140e35e9c:	eb 3f                	jmp    0x140e35edd
140e35e9e:	8a 82 08 03 00 00    	mov    0x308(%rdx),%al
140e35ea4:	f6 d8                	neg    %al
140e35ea6:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140e35ead:	00 00 80
140e35eb0:	48 1b c9             	sbb    %rcx,%rcx
140e35eb3:	48 23 c8             	and    %rax,%rcx
140e35eb6:	48 23 c8             	and    %rax,%rcx
140e35eb9:	b8 02 00 00 00       	mov    $0x2,%eax
140e35ebe:	49 89 08             	mov    %rcx,(%r8)
140e35ec1:	eb 1a                	jmp    0x140e35edd
140e35ec3:	49 83 20 00          	andq   $0x0,(%r8)
140e35ec7:	b8 01 00 00 00       	mov    $0x1,%eax
140e35ecc:	eb 0f                	jmp    0x140e35edd
140e35ece:	48 b8 00 00 00 00 00 	movabs $0xfff8000000000000,%rax
140e35ed5:	00 f8 ff
140e35ed8:	49 89 00             	mov    %rax,(%r8)
140e35edb:	33 c0                	xor    %eax,%eax
140e35edd:	48 83 c4 38          	add    $0x38,%rsp
140e35ee1:	c3                   	ret
140e35ee2:	cc                   	int3
140e35ee3:	cc                   	int3
140e35ee4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140e35ee9:	44 88 4c 24 20       	mov    %r9b,0x20(%rsp)
140e35eee:	55                   	push   %rbp
140e35eef:	56                   	push   %rsi
140e35ef0:	57                   	push   %rdi
140e35ef1:	41 54                	push   %r12
140e35ef3:	41 55                	push   %r13
140e35ef5:	41 56                	push   %r14
140e35ef7:	41 57                	push   %r15
140e35ef9:	48 83 ec 30          	sub    $0x30,%rsp
140e35efd:	4c 8b 3a             	mov    (%rdx),%r15
140e35f00:	4c 8d 72 18          	lea    0x18(%rdx),%r14
140e35f04:	33 ed                	xor    %ebp,%ebp
140e35f06:	41 8b f0             	mov    %r8d,%esi
140e35f09:	48 8b da             	mov    %rdx,%rbx
140e35f0c:	4c 8b e9             	mov    %rcx,%r13
140e35f0f:	4d 85 ff             	test   %r15,%r15
140e35f12:	74 05                	je     0x140e35f19
140e35f14:	49 39 2e             	cmp    %rbp,(%r14)
140e35f17:	75 12                	jne    0x140e35f2b
140e35f19:	e8 d2 43 ff ff       	call   0x140e2a2f0
140e35f1e:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140e35f24:	e8 5b 42 ff ff       	call   0x140e2a184
140e35f29:	eb 31                	jmp    0x140e35f5c
140e35f2b:	85 f6                	test   %esi,%esi
140e35f2d:	74 4b                	je     0x140e35f7a
140e35f2f:	41 8d 40 fe          	lea    -0x2(%r8),%eax
140e35f33:	83 f8 22             	cmp    $0x22,%eax
140e35f36:	76 42                	jbe    0x140e35f7a
140e35f38:	c6 41 30 01          	movb   $0x1,0x30(%rcx)
140e35f3c:	45 33 c9             	xor    %r9d,%r9d
140e35f3f:	c7 41 2c 16 00 00 00 	movl   $0x16,0x2c(%rcx)
140e35f46:	45 33 c0             	xor    %r8d,%r8d
140e35f49:	33 c9                	xor    %ecx,%ecx
140e35f4b:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
140e35f50:	33 d2                	xor    %edx,%edx
140e35f52:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140e35f57:	e8 5c 41 ff ff       	call   0x140e2a0b8
140e35f5c:	49 8b 06             	mov    (%r14),%rax
140e35f5f:	48 85 c0             	test   %rax,%rax
140e35f62:	0f 84 0d 03 00 00    	je     0x140e36275
140e35f68:	48 39 6b 10          	cmp    %rbp,0x10(%rbx)
140e35f6c:	0f 85 03 03 00 00    	jne    0x140e36275
140e35f72:	40 88 28             	mov    %bpl,(%rax)
140e35f75:	e9 fb 02 00 00       	jmp    0x140e36275
140e35f7a:	48 8b 42 10          	mov    0x10(%rdx),%rax
140e35f7e:	4c 8b e5             	mov    %rbp,%r12
140e35f81:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
140e35f86:	48 ff c0             	inc    %rax
140e35f89:	48 89 42 10          	mov    %rax,0x10(%rdx)
140e35f8d:	48 39 6a 08          	cmp    %rbp,0x8(%rdx)
140e35f91:	74 06                	je     0x140e35f99
140e35f93:	48 3b 42 08          	cmp    0x8(%rdx),%rax
140e35f97:	77 15                	ja     0x140e35fae
140e35f99:	49 8b 0f             	mov    (%r15),%rcx
140e35f9c:	e8 3f d3 ff ff       	call   0x140e332e0
140e35fa1:	8b f8                	mov    %eax,%edi
140e35fa3:	83 f8 ff             	cmp    $0xffffffff,%eax
140e35fa6:	74 06                	je     0x140e35fae
140e35fa8:	49 ff 47 08          	incq   0x8(%r15)
140e35fac:	eb 03                	jmp    0x140e35fb1
140e35fae:	40 8a fd             	mov    %bpl,%dil
140e35fb1:	41 38 6d 28          	cmp    %bpl,0x28(%r13)
140e35fb5:	75 3d                	jne    0x140e35ff4
140e35fb7:	49 8b cd             	mov    %r13,%rcx
140e35fba:	e8 81 8f ff ff       	call   0x140e2ef40
140e35fbf:	eb 33                	jmp    0x140e35ff4
140e35fc1:	48 8b 43 10          	mov    0x10(%rbx),%rax
140e35fc5:	48 ff c0             	inc    %rax
140e35fc8:	48 89 43 10          	mov    %rax,0x10(%rbx)
140e35fcc:	48 39 6b 08          	cmp    %rbp,0x8(%rbx)
140e35fd0:	74 06                	je     0x140e35fd8
140e35fd2:	48 3b 43 08          	cmp    0x8(%rbx),%rax
140e35fd6:	77 19                	ja     0x140e35ff1
140e35fd8:	48 8b 3b             	mov    (%rbx),%rdi
140e35fdb:	48 8b 0f             	mov    (%rdi),%rcx
140e35fde:	e8 fd d2 ff ff       	call   0x140e332e0
140e35fe3:	83 f8 ff             	cmp    $0xffffffff,%eax
140e35fe6:	74 09                	je     0x140e35ff1
140e35fe8:	48 ff 47 08          	incq   0x8(%rdi)
140e35fec:	40 8a f8             	mov    %al,%dil
140e35fef:	eb 03                	jmp    0x140e35ff4
140e35ff1:	40 32 ff             	xor    %dil,%dil
140e35ff4:	4d 8d 45 18          	lea    0x18(%r13),%r8
140e35ff8:	40 0f b6 cf          	movzbl %dil,%ecx
140e35ffc:	ba 08 00 00 00       	mov    $0x8,%edx
140e36001:	e8 42 a9 ff ff       	call   0x140e30948
140e36006:	85 c0                	test   %eax,%eax
140e36008:	75 b7                	jne    0x140e35fc1
140e3600a:	0f b6 84 24 88 00 00 	movzbl 0x88(%rsp),%eax
140e36011:	00
140e36012:	8b e8                	mov    %eax,%ebp
140e36014:	83 cd 02             	or     $0x2,%ebp
140e36017:	40 80 ff 2d          	cmp    $0x2d,%dil
140e3601b:	0f 45 e8             	cmovne %eax,%ebp
140e3601e:	8d 47 d5             	lea    -0x2b(%rdi),%eax
140e36021:	a8 fd                	test   $0xfd,%al
140e36023:	75 33                	jne    0x140e36058
140e36025:	48 8b 43 10          	mov    0x10(%rbx),%rax
140e36029:	48 ff c0             	inc    %rax
140e3602c:	48 89 43 10          	mov    %rax,0x10(%rbx)
140e36030:	4c 39 63 08          	cmp    %r12,0x8(%rbx)
140e36034:	74 06                	je     0x140e3603c
140e36036:	48 3b 43 08          	cmp    0x8(%rbx),%rax
140e3603a:	77 19                	ja     0x140e36055
140e3603c:	48 8b 3b             	mov    (%rbx),%rdi
140e3603f:	48 8b 0f             	mov    (%rdi),%rcx
140e36042:	e8 99 d2 ff ff       	call   0x140e332e0
140e36047:	83 f8 ff             	cmp    $0xffffffff,%eax
140e3604a:	74 09                	je     0x140e36055
140e3604c:	48 ff 47 08          	incq   0x8(%rdi)
140e36050:	40 8a f8             	mov    %al,%dil
140e36053:	eb 03                	jmp    0x140e36058
140e36055:	40 32 ff             	xor    %dil,%dil
140e36058:	f7 c6 ef ff ff ff    	test   $0xffffffef,%esi
140e3605e:	0f 85 04 01 00 00    	jne    0x140e36168
140e36064:	8d 47 d0             	lea    -0x30(%rdi),%eax
140e36067:	3c 09                	cmp    $0x9,%al
140e36069:	77 09                	ja     0x140e36074
140e3606b:	40 0f be c7          	movsbl %dil,%eax
140e3606f:	83 c0 d0             	add    $0xffffffd0,%eax
140e36072:	eb 22                	jmp    0x140e36096
140e36074:	8d 47 9f             	lea    -0x61(%rdi),%eax
140e36077:	3c 19                	cmp    $0x19,%al
140e36079:	77 09                	ja     0x140e36084
140e3607b:	40 0f be c7          	movsbl %dil,%eax
140e3607f:	83 c0 a9             	add    $0xffffffa9,%eax
140e36082:	eb 12                	jmp    0x140e36096
140e36084:	8d 47 bf             	lea    -0x41(%rdi),%eax
140e36087:	3c 19                	cmp    $0x19,%al
140e36089:	0f 87 cd 00 00 00    	ja     0x140e3615c
140e3608f:	40 0f be c7          	movsbl %dil,%eax
140e36093:	83 c0 c9             	add    $0xffffffc9,%eax
140e36096:	85 c0                	test   %eax,%eax
140e36098:	0f 85 be 00 00 00    	jne    0x140e3615c
140e3609e:	48 8b 43 10          	mov    0x10(%rbx),%rax
140e360a2:	48 ff c0             	inc    %rax
140e360a5:	48 89 43 10          	mov    %rax,0x10(%rbx)
140e360a9:	4c 39 63 08          	cmp    %r12,0x8(%rbx)
140e360ad:	74 06                	je     0x140e360b5
140e360af:	48 3b 43 08          	cmp    0x8(%rbx),%rax
140e360b3:	77 5f                	ja     0x140e36114
140e360b5:	4c 8b 3b             	mov    (%rbx),%r15
140e360b8:	49 8b 0f             	mov    (%r15),%rcx
140e360bb:	e8 20 d2 ff ff       	call   0x140e332e0
140e360c0:	8b d0                	mov    %eax,%edx
140e360c2:	83 f8 ff             	cmp    $0xffffffff,%eax
140e360c5:	74 4d                	je     0x140e36114
140e360c7:	49 ff 47 08          	incq   0x8(%r15)
140e360cb:	8d 48 a8             	lea    -0x58(%rax),%ecx
140e360ce:	f6 c1 df             	test   $0xdf,%cl
140e360d1:	75 43                	jne    0x140e36116
140e360d3:	85 f6                	test   %esi,%esi
140e360d5:	b8 10 00 00 00       	mov    $0x10,%eax
140e360da:	0f 45 c6             	cmovne %esi,%eax
140e360dd:	8b f0                	mov    %eax,%esi
140e360df:	48 8b 43 10          	mov    0x10(%rbx),%rax
140e360e3:	48 ff c0             	inc    %rax
140e360e6:	48 89 43 10          	mov    %rax,0x10(%rbx)
140e360ea:	4c 39 63 08          	cmp    %r12,0x8(%rbx)
140e360ee:	74 0b                	je     0x140e360fb
140e360f0:	48 3b 43 08          	cmp    0x8(%rbx),%rax
140e360f4:	76 05                	jbe    0x140e360fb
140e360f6:	40 32 ff             	xor    %dil,%dil
140e360f9:	eb 6d                	jmp    0x140e36168
140e360fb:	48 8b 3b             	mov    (%rbx),%rdi
140e360fe:	48 8b 0f             	mov    (%rdi),%rcx
140e36101:	e8 da d1 ff ff       	call   0x140e332e0
140e36106:	83 f8 ff             	cmp    $0xffffffff,%eax
140e36109:	74 eb                	je     0x140e360f6
140e3610b:	48 ff 47 08          	incq   0x8(%rdi)
140e3610f:	40 8a f8             	mov    %al,%dil
140e36112:	eb 54                	jmp    0x140e36168
140e36114:	32 d2                	xor    %dl,%dl
140e36116:	85 f6                	test   %esi,%esi
140e36118:	b8 08 00 00 00       	mov    $0x8,%eax
140e3611d:	0f 45 c6             	cmovne %esi,%eax
140e36120:	8b f0                	mov    %eax,%esi
140e36122:	44 8b f8             	mov    %eax,%r15d
140e36125:	48 8b 43 10          	mov    0x10(%rbx),%rax
140e36129:	48 ff c8             	dec    %rax
140e3612c:	48 89 43 10          	mov    %rax,0x10(%rbx)
140e36130:	4c 39 63 08          	cmp    %r12,0x8(%rbx)
140e36134:	74 06                	je     0x140e3613c
140e36136:	48 3b 43 08          	cmp    0x8(%rbx),%rax
140e3613a:	77 2c                	ja     0x140e36168
140e3613c:	8d 42 01             	lea    0x1(%rdx),%eax
140e3613f:	3c 01                	cmp    $0x1,%al
140e36141:	76 25                	jbe    0x140e36168
140e36143:	48 8b 03             	mov    (%rbx),%rax
140e36146:	0f be ca             	movsbl %dl,%ecx
140e36149:	83 f9 ff             	cmp    $0xffffffff,%ecx
140e3614c:	74 1a                	je     0x140e36168
140e3614e:	48 ff 48 08          	decq   0x8(%rax)
140e36152:	48 8b 10             	mov    (%rax),%rdx
140e36155:	e8 1a 84 00 00       	call   0x140e3e574
140e3615a:	eb 0c                	jmp    0x140e36168
140e3615c:	85 f6                	test   %esi,%esi
140e3615e:	b8 0a 00 00 00       	mov    $0xa,%eax
140e36163:	0f 45 c6             	cmovne %esi,%eax
140e36166:	8b f0                	mov    %eax,%esi
140e36168:	4c 63 fe             	movslq %esi,%r15
140e3616b:	33 d2                	xor    %edx,%edx
140e3616d:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
140e36171:	49 f7 f7             	div    %r15
140e36174:	4c 8b f0             	mov    %rax,%r14
140e36177:	8d 4f d0             	lea    -0x30(%rdi),%ecx
140e3617a:	44 0f be c7          	movsbl %dil,%r8d
140e3617e:	80 f9 09             	cmp    $0x9,%cl
140e36181:	77 06                	ja     0x140e36189
140e36183:	41 8d 48 d0          	lea    -0x30(%r8),%ecx
140e36187:	eb 1d                	jmp    0x140e361a6
140e36189:	8d 47 9f             	lea    -0x61(%rdi),%eax
140e3618c:	3c 19                	cmp    $0x19,%al
140e3618e:	77 06                	ja     0x140e36196
140e36190:	41 8d 48 a9          	lea    -0x57(%r8),%ecx
140e36194:	eb 10                	jmp    0x140e361a6
140e36196:	8d 47 bf             	lea    -0x41(%rdi),%eax
140e36199:	3c 19                	cmp    $0x19,%al
140e3619b:	77 06                	ja     0x140e361a3
140e3619d:	41 8d 48 c9          	lea    -0x37(%r8),%ecx
140e361a1:	eb 03                	jmp    0x140e361a6
140e361a3:	83 c9 ff             	or     $0xffffffff,%ecx
140e361a6:	3b ce                	cmp    %esi,%ecx
140e361a8:	73 65                	jae    0x140e3620f
140e361aa:	8b d1                	mov    %ecx,%edx
140e361ac:	49 8b c7             	mov    %r15,%rax
140e361af:	49 0f af c4          	imul   %r12,%rax
140e361b3:	33 c9                	xor    %ecx,%ecx
140e361b5:	48 03 d0             	add    %rax,%rdx
140e361b8:	48 3b d0             	cmp    %rax,%rdx
140e361bb:	0f 92 c1             	setb   %cl
140e361be:	33 c0                	xor    %eax,%eax
140e361c0:	4d 3b e6             	cmp    %r14,%r12
140e361c3:	4c 8b e2             	mov    %rdx,%r12
140e361c6:	0f 97 c0             	seta   %al
140e361c9:	0b c8                	or     %eax,%ecx
140e361cb:	48 8b 43 10          	mov    0x10(%rbx),%rax