140097e8d:	83 49 0c 08          	orl    $0x8,0xc(%rcx)
140097e91:	f6 c2 08             	test   $0x8,%dl
140097e94:	74 08                	je     0x140097e9e
140097e96:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097e9a:	83 48 0c 04          	orl    $0x4,0xc(%rax)
140097e9e:	f6 c2 10             	test   $0x10,%dl
140097ea1:	74 08                	je     0x140097eab
140097ea3:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097ea7:	83 48 0c 02          	orl    $0x2,0xc(%rax)
140097eab:	f6 c2 20             	test   $0x20,%dl
140097eae:	74 08                	je     0x140097eb8
140097eb0:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097eb4:	83 48 0c 01          	orl    $0x1,0xc(%rax)
140097eb8:	8b 03                	mov    (%rbx),%eax
140097eba:	b9 00 60 00 00       	mov    $0x6000,%ecx
140097ebf:	48 23 c1             	and    %rcx,%rax
140097ec2:	74 3e                	je     0x140097f02
140097ec4:	48 3d 00 20 00 00    	cmp    $0x2000,%rax
140097eca:	74 26                	je     0x140097ef2
140097ecc:	48 3d 00 40 00 00    	cmp    $0x4000,%rax
140097ed2:	74 0e                	je     0x140097ee2
140097ed4:	48 3b c1             	cmp    %rcx,%rax
140097ed7:	75 30                	jne    0x140097f09
140097ed9:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097edd:	83 08 03             	orl    $0x3,(%rax)
140097ee0:	eb 27                	jmp    0x140097f09
140097ee2:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097ee6:	83 20 fe             	andl   $0xfffffffe,(%rax)
140097ee9:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097eed:	83 08 02             	orl    $0x2,(%rax)
140097ef0:	eb 17                	jmp    0x140097f09
140097ef2:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097ef6:	83 20 fd             	andl   $0xfffffffd,(%rax)
140097ef9:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097efd:	83 08 01             	orl    $0x1,(%rax)
140097f00:	eb 07                	jmp    0x140097f09
140097f02:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f06:	83 20 fc             	andl   $0xfffffffc,(%rax)
140097f09:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f0d:	81 e6 ff 0f 00 00    	and    $0xfff,%esi
140097f13:	c1 e6 05             	shl    $0x5,%esi
140097f16:	81 20 1f 00 fe ff    	andl   $0xfffe001f,(%rax)
140097f1c:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f20:	09 30                	or     %esi,(%rax)
140097f22:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f26:	48 8b 75 38          	mov    0x38(%rbp),%rsi
140097f2a:	83 48 20 01          	orl    $0x1,0x20(%rax)
140097f2e:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
140097f32:	74 33                	je     0x140097f67
140097f34:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f38:	ba e1 ff ff ff       	mov    $0xffffffe1,%edx
140097f3d:	21 50 20             	and    %edx,0x20(%rax)
140097f40:	48 8b 45 30          	mov    0x30(%rbp),%rax
140097f44:	8b 08                	mov    (%rax),%ecx
140097f46:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f4a:	89 48 10             	mov    %ecx,0x10(%rax)
140097f4d:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f51:	83 48 60 01          	orl    $0x1,0x60(%rax)
140097f55:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f59:	21 50 60             	and    %edx,0x60(%rax)
140097f5c:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f60:	8b 0e                	mov    (%rsi),%ecx
140097f62:	89 48 50             	mov    %ecx,0x50(%rax)
140097f65:	eb 48                	jmp    0x140097faf
140097f67:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140097f6b:	41 b8 e3 ff ff ff    	mov    $0xffffffe3,%r8d
140097f71:	8b 41 20             	mov    0x20(%rcx),%eax
140097f74:	41 23 c0             	and    %r8d,%eax
140097f77:	83 c8 02             	or     $0x2,%eax
140097f7a:	89 41 20             	mov    %eax,0x20(%rcx)
140097f7d:	48 8b 45 30          	mov    0x30(%rbp),%rax
140097f81:	48 8b 08             	mov    (%rax),%rcx
140097f84:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f88:	48 89 48 10          	mov    %rcx,0x10(%rax)
140097f8c:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097f90:	83 48 60 01          	orl    $0x1,0x60(%rax)
140097f94:	48 8b 55 10          	mov    0x10(%rbp),%rdx
140097f98:	8b 42 60             	mov    0x60(%rdx),%eax
140097f9b:	41 23 c0             	and    %r8d,%eax
140097f9e:	83 c8 02             	or     $0x2,%eax
140097fa1:	89 42 60             	mov    %eax,0x60(%rdx)
140097fa4:	48 8b 45 10          	mov    0x10(%rbp),%rax
140097fa8:	48 8b 16             	mov    (%rsi),%rdx
140097fab:	48 89 50 50          	mov    %rdx,0x50(%rax)
140097faf:	e8 94 02 00 00       	call   0x140098248
140097fb4:	33 d2                	xor    %edx,%edx
140097fb6:	4c 8d 4d 10          	lea    0x10(%rbp),%r9
140097fba:	8b cf                	mov    %edi,%ecx
140097fbc:	44 8d 42 01          	lea    0x1(%rdx),%r8d
140097fc0:	ff 15 5a f8 05 00    	call   *0x5f85a(%rip)        # 0x1400f7820
140097fc6:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140097fca:	f6 41 08 10          	testb  $0x10,0x8(%rcx)
140097fce:	74 05                	je     0x140097fd5
140097fd0:	48 0f ba 33 07       	btrq   $0x7,(%rbx)
140097fd5:	f6 41 08 08          	testb  $0x8,0x8(%rcx)
140097fd9:	74 05                	je     0x140097fe0
140097fdb:	48 0f ba 33 09       	btrq   $0x9,(%rbx)
140097fe0:	f6 41 08 04          	testb  $0x4,0x8(%rcx)
140097fe4:	74 05                	je     0x140097feb
140097fe6:	48 0f ba 33 0a       	btrq   $0xa,(%rbx)
140097feb:	f6 41 08 02          	testb  $0x2,0x8(%rcx)
140097fef:	74 05                	je     0x140097ff6
140097ff1:	48 0f ba 33 0b       	btrq   $0xb,(%rbx)
140097ff6:	f6 41 08 01          	testb  $0x1,0x8(%rcx)
140097ffa:	74 05                	je     0x140098001
140097ffc:	48 0f ba 33 0c       	btrq   $0xc,(%rbx)
140098001:	8b 01                	mov    (%rcx),%eax
140098003:	83 e0 03             	and    $0x3,%eax
140098006:	74 30                	je     0x140098038
140098008:	83 e8 01             	sub    $0x1,%eax
14009800b:	74 1f                	je     0x14009802c
14009800d:	83 e8 01             	sub    $0x1,%eax
140098010:	74 0e                	je     0x140098020
140098012:	83 f8 01             	cmp    $0x1,%eax
140098015:	75 28                	jne    0x14009803f
140098017:	48 81 0b 00 60 00 00 	orq    $0x6000,(%rbx)
14009801e:	eb 1f                	jmp    0x14009803f
140098020:	48 0f ba 33 0d       	btrq   $0xd,(%rbx)
140098025:	48 0f ba 2b 0e       	btsq   $0xe,(%rbx)
14009802a:	eb 13                	jmp    0x14009803f
14009802c:	48 0f ba 33 0e       	btrq   $0xe,(%rbx)
140098031:	48 0f ba 2b 0d       	btsq   $0xd,(%rbx)
140098036:	eb 07                	jmp    0x14009803f
140098038:	48 81 23 ff 9f ff ff 	andq   $0xffffffffffff9fff,(%rbx)
14009803f:	83 7d 40 00          	cmpl   $0x0,0x40(%rbp)
140098043:	74 07                	je     0x14009804c
140098045:	8b 41 50             	mov    0x50(%rcx),%eax
140098048:	89 06                	mov    %eax,(%rsi)
14009804a:	eb 07                	jmp    0x140098053
14009804c:	48 8b 41 50          	mov    0x50(%rcx),%rax
140098050:	48 89 06             	mov    %rax,(%rsi)
140098053:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140098058:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14009805d:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140098062:	48 83 c4 20          	add    $0x20,%rsp
140098066:	5d                   	pop    %rbp
140098067:	c3                   	ret
140098068:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%rsp)
14009806e:	b9 0f 80 00 00       	mov    $0x800f,%ecx
140098073:	48 8b 44 24 08       	mov    0x8(%rsp),%rax
140098078:	48 c1 e8 30          	shr    $0x30,%rax
14009807c:	66 23 c1             	and    %cx,%ax
14009807f:	f2 0f 11 44 24 18    	movsd  %xmm0,0x18(%rsp)
140098085:	b9 fe 03 00 00       	mov    $0x3fe,%ecx
14009808a:	66 03 d1             	add    %cx,%dx
14009808d:	66 c1 e2 04          	shl    $0x4,%dx
140098091:	66 0b c2             	or     %dx,%ax
140098094:	66 89 44 24 1e       	mov    %ax,0x1e(%rsp)
140098099:	f2 0f 10 44 24 18    	movsd  0x18(%rsp),%xmm0
14009809f:	c3                   	ret
1400980a0:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%rsp)
1400980a6:	48 8b 44 24 08       	mov    0x8(%rsp),%rax
1400980ab:	48 8b c8             	mov    %rax,%rcx
1400980ae:	48 c1 e9 20          	shr    $0x20,%rcx
1400980b2:	81 f9 00 00 f0 7f    	cmp    $0x7ff00000,%ecx
1400980b8:	75 0a                	jne    0x1400980c4
1400980ba:	85 c0                	test   %eax,%eax
1400980bc:	75 18                	jne    0x1400980d6
1400980be:	b8 01 00 00 00       	mov    $0x1,%eax
1400980c3:	c3                   	ret
1400980c4:	81 f9 00 00 f0 ff    	cmp    $0xfff00000,%ecx
1400980ca:	75 0a                	jne    0x1400980d6
1400980cc:	85 c0                	test   %eax,%eax
1400980ce:	75 06                	jne    0x1400980d6
1400980d0:	b8 02 00 00 00       	mov    $0x2,%eax
1400980d5:	c3                   	ret
1400980d6:	41 b8 f8 7f 00 00    	mov    $0x7ff8,%r8d
1400980dc:	48 8b d0             	mov    %rax,%rdx
1400980df:	48 c1 ea 30          	shr    $0x30,%rdx
1400980e3:	66 41 23 d0          	and    %r8w,%dx
1400980e7:	66 41 3b d0          	cmp    %r8w,%dx
1400980eb:	75 06                	jne    0x1400980f3
1400980ed:	b8 03 00 00 00       	mov    $0x3,%eax
1400980f2:	c3                   	ret
1400980f3:	41 b8 f0 7f 00 00    	mov    $0x7ff0,%r8d
1400980f9:	66 41 3b d0          	cmp    %r8w,%dx
1400980fd:	75 16                	jne    0x140098115
1400980ff:	f7 c1 ff ff 07 00    	test   $0x7ffff,%ecx
140098105:	75 08                	jne    0x14009810f
140098107:	f7 d8                	neg    %eax
140098109:	1b c0                	sbb    %eax,%eax
14009810b:	83 e0 04             	and    $0x4,%eax
14009810e:	c3                   	ret
14009810f:	b8 04 00 00 00       	mov    $0x4,%eax
140098114:	c3                   	ret
140098115:	33 c0                	xor    %eax,%eax
140098117:	c3                   	ret
140098118:	0f 28 c8             	movaps %xmm0,%xmm1
14009811b:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%rsp)
140098121:	0f 57 c0             	xorps  %xmm0,%xmm0
140098124:	4c 8b d2             	mov    %rdx,%r10
140098127:	66 0f 2e c8          	ucomisd %xmm0,%xmm1
14009812b:	7a 09                	jp     0x140098136
14009812d:	75 07                	jne    0x140098136
14009812f:	33 c9                	xor    %ecx,%ecx
140098131:	e9 0c 01 00 00       	jmp    0x140098242
140098136:	48 8b 44 24 08       	mov    0x8(%rsp),%rax
14009813b:	b9 f0 7f 00 00       	mov    $0x7ff0,%ecx
140098140:	4c 8b c0             	mov    %rax,%r8
140098143:	49 c1 e8 30          	shr    $0x30,%r8
140098147:	66 44 85 c1          	test   %r8w,%cx
14009814b:	0f 85 ad 00 00 00    	jne    0x1400981fe
140098151:	8b 54 24 08          	mov    0x8(%rsp),%edx
140098155:	48 c1 e8 20          	shr    $0x20,%rax
140098159:	a9 ff ff 0f 00       	test   $0xfffff,%eax
14009815e:	75 08                	jne    0x140098168
140098160:	85 d2                	test   %edx,%edx
140098162:	0f 84 96 00 00 00    	je     0x1400981fe
140098168:	45 33 c9             	xor    %r9d,%r9d
14009816b:	b9 03 fc ff ff       	mov    $0xfffffc03,%ecx
140098170:	66 0f 2f c1          	comisd %xmm1,%xmm0
140098174:	41 0f 97 c1          	seta   %r9b
140098178:	41 f6 c0 10          	test   $0x10,%r8b
14009817c:	75 24                	jne    0x1400981a2
14009817e:	8b 44 24 0c          	mov    0xc(%rsp),%eax
140098182:	03 c0                	add    %eax,%eax
140098184:	89 44 24 0c          	mov    %eax,0xc(%rsp)
140098188:	85 d2                	test   %edx,%edx
14009818a:	79 07                	jns    0x140098193
14009818c:	83 c8 01             	or     $0x1,%eax
14009818f:	89 44 24 0c          	mov    %eax,0xc(%rsp)
140098193:	03 d2                	add    %edx,%edx
140098195:	ff c9                	dec    %ecx
140098197:	f6 44 24 0e 10       	testb  $0x10,0xe(%rsp)
14009819c:	74 e4                	je     0x140098182
14009819e:	89 54 24 08          	mov    %edx,0x8(%rsp)
1400981a2:	0f b7 44 24 0e       	movzwl 0xe(%rsp),%eax
1400981a7:	ba ef ff 00 00       	mov    $0xffef,%edx
1400981ac:	66 23 c2             	and    %dx,%ax
1400981af:	66 89 44 24 0e       	mov    %ax,0xe(%rsp)
1400981b4:	45 85 c9             	test   %r9d,%r9d
1400981b7:	74 0d                	je     0x1400981c6
1400981b9:	ba 00 80 00 00       	mov    $0x8000,%edx
1400981be:	66 0b c2             	or     %dx,%ax
1400981c1:	66 89 44 24 0e       	mov    %ax,0xe(%rsp)
1400981c6:	f2 0f 10 44 24 08    	movsd  0x8(%rsp),%xmm0
1400981cc:	ba ef bf 00 00       	mov    $0xbfef,%edx
1400981d1:	f2 0f 11 44 24 10    	movsd  %xmm0,0x10(%rsp)
1400981d7:	48 8b 44 24 10       	mov    0x10(%rsp),%rax
1400981dc:	48 c1 e8 30          	shr    $0x30,%rax
1400981e0:	66 23 c2             	and    %dx,%ax
1400981e3:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%rsp)
1400981e9:	ba e0 3f 00 00       	mov    $0x3fe0,%edx
1400981ee:	66 0b c2             	or     %dx,%ax
1400981f1:	66 89 44 24 0e       	mov    %ax,0xe(%rsp)
1400981f6:	f2 0f 10 44 24 08    	movsd  0x8(%rsp),%xmm0
1400981fc:	eb 44                	jmp    0x140098242
1400981fe:	0f b7 4c 24 0e       	movzwl 0xe(%rsp),%ecx
140098203:	ba ef bf 00 00       	mov    $0xbfef,%edx
140098208:	c1 e9 04             	shr    $0x4,%ecx
14009820b:	f2 0f 11 4c 24 10    	movsd  %xmm1,0x10(%rsp)
140098211:	81 e1 ff 07 00 00    	and    $0x7ff,%ecx
140098217:	f2 0f 11 4c 24 18    	movsd  %xmm1,0x18(%rsp)
14009821d:	48 8b 44 24 18       	mov    0x18(%rsp),%rax
140098222:	48 c1 e8 30          	shr    $0x30,%rax
140098226:	66 23 c2             	and    %dx,%ax
140098229:	ba e0 3f 00 00       	mov    $0x3fe0,%edx
14009822e:	66 0b c2             	or     %dx,%ax
140098231:	66 89 44 24 16       	mov    %ax,0x16(%rsp)
140098236:	81 e9 fe 03 00 00    	sub    $0x3fe,%ecx
14009823c:	f2 0f 10 44 24 10    	movsd  0x10(%rsp),%xmm0
140098242:	41 89 0a             	mov    %ecx,(%r10)
140098245:	c3                   	ret
140098246:	cc                   	int3
140098247:	cc                   	int3
140098248:	40 53                	rex push %rbx
14009824a:	48 83 ec 20          	sub    $0x20,%rsp
14009824e:	e8 cd 3a 00 00       	call   0x14009bd20
140098253:	8b d8                	mov    %eax,%ebx
140098255:	83 e3 3f             	and    $0x3f,%ebx
140098258:	e8 dd 3a 00 00       	call   0x14009bd3a
14009825d:	8b c3                	mov    %ebx,%eax
14009825f:	48 83 c4 20          	add    $0x20,%rsp
140098263:	5b                   	pop    %rbx
140098264:	c3                   	ret
140098265:	cc                   	int3
140098266:	cc                   	int3
140098267:	cc                   	int3
140098268:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14009826d:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140098272:	57                   	push   %rdi
140098273:	48 83 ec 20          	sub    $0x20,%rsp
140098277:	48 8b da             	mov    %rdx,%rbx
14009827a:	48 8b f9             	mov    %rcx,%rdi
14009827d:	e8 9e 3a 00 00       	call   0x14009bd20
140098282:	8b f0                	mov    %eax,%esi
140098284:	89 44 24 38          	mov    %eax,0x38(%rsp)
140098288:	8b cb                	mov    %ebx,%ecx
14009828a:	f7 d1                	not    %ecx
14009828c:	81 c9 7f 80 ff ff    	or     $0xffff807f,%ecx
140098292:	23 c8                	and    %eax,%ecx
140098294:	23 fb                	and    %ebx,%edi
140098296:	0b cf                	or     %edi,%ecx
140098298:	89 4c 24 30          	mov    %ecx,0x30(%rsp)
14009829c:	80 3d d1 99 06 00 00 	cmpb   $0x0,0x699d1(%rip)        # 0x140101c74
1400982a3:	74 25                	je     0x1400982ca
1400982a5:	f6 c1 40             	test   $0x40,%cl
1400982a8:	74 20                	je     0x1400982ca
1400982aa:	e8 81 3a 00 00       	call   0x14009bd30
1400982af:	eb 21                	jmp    0x1400982d2
1400982b1:	c6 05 bc 99 06 00 00 	movb   $0x0,0x699bc(%rip)        # 0x140101c74
1400982b8:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
1400982bc:	83 e1 bf             	and    $0xffffffbf,%ecx
1400982bf:	e8 6c 3a 00 00       	call   0x14009bd30
1400982c4:	8b 74 24 38          	mov    0x38(%rsp),%esi
1400982c8:	eb 08                	jmp    0x1400982d2
1400982ca:	83 e1 bf             	and    $0xffffffbf,%ecx
1400982cd:	e8 5e 3a 00 00       	call   0x14009bd30
1400982d2:	8b c6                	mov    %esi,%eax
1400982d4:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1400982d9:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
1400982de:	48 83 c4 20          	add    $0x20,%rsp
1400982e2:	5f                   	pop    %rdi
1400982e3:	c3                   	ret
1400982e4:	48 83 ec 28          	sub    $0x28,%rsp
1400982e8:	e8 33 3a 00 00       	call   0x14009bd20
1400982ed:	83 e0 3f             	and    $0x3f,%eax
1400982f0:	48 83 c4 28          	add    $0x28,%rsp
1400982f4:	c3                   	ret
1400982f5:	cc                   	int3
1400982f6:	cc                   	int3
1400982f7:	cc                   	int3
1400982f8:	40 53                	rex push %rbx
1400982fa:	48 83 ec 20          	sub    $0x20,%rsp
1400982fe:	48 8b d9             	mov    %rcx,%rbx
140098301:	e8 1a 3a 00 00       	call   0x14009bd20
140098306:	83 e3 3f             	and    $0x3f,%ebx
140098309:	0b c3                	or     %ebx,%eax
14009830b:	8b c8                	mov    %eax,%ecx
14009830d:	48 83 c4 20          	add    $0x20,%rsp
140098311:	5b                   	pop    %rbx
140098312:	e9 19 3a 00 00       	jmp    0x14009bd30
140098317:	cc                   	int3
140098318:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14009831d:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140098322:	48 83 ec 28          	sub    $0x28,%rsp
140098326:	45 33 c9             	xor    %r9d,%r9d
140098329:	45 33 c0             	xor    %r8d,%r8d
14009832c:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
140098331:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140098336:	ff 15 2c f5 05 00    	call   *0x5f52c(%rip)        # 0x1400f7868
14009833c:	48 83 c4 28          	add    $0x28,%rsp
140098340:	c3                   	ret
140098341:	cc                   	int3
140098342:	cc                   	int3
140098343:	cc                   	int3
140098344:	f2 0f 11 44 24 08    	movsd  %xmm0,0x8(%rsp)
14009834a:	48 8b 4c 24 08       	mov    0x8(%rsp),%rcx
14009834f:	f2 0f 11 4c 24 08    	movsd  %xmm1,0x8(%rsp)
140098355:	48 8b 44 24 08       	mov    0x8(%rsp),%rax