140097f93:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140097f98:	4c 89 e2             	mov    %r12,%rdx
140097f9b:	44 89 cd             	mov    %r9d,%ebp
140097f9e:	48 8b 01             	mov    (%rcx),%rax
140097fa1:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
140097fa6:	31 c0                	xor    %eax,%eax
140097fa8:	48 8b 05 f1 13 1a 00 	mov    0x1a13f1(%rip),%rax        # 0x1402393a0
140097faf:	48 89 f1             	mov    %rsi,%rcx
140097fb2:	48 c7 44 24 60 00 00 	movq   $0x0,0x60(%rsp)
140097fb9:	00 00
140097fbb:	48 c7 44 24 68 00 00 	movq   $0x0,0x68(%rsp)
140097fc2:	00 00
140097fc4:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140097fc9:	e8 32 d9 f8 ff       	call   0x140025900
140097fce:	85 c0                	test   %eax,%eax
140097fd0:	0f 85 a2 01 00 00    	jne    0x140098178
140097fd6:	39 eb                	cmp    %ebp,%ebx
140097fd8:	0f 8d a2 01 00 00    	jge    0x140098180
140097fde:	8d 4b 01             	lea    0x1(%rbx),%ecx
140097fe1:	4d 8b 3c 24          	mov    (%r12),%r15
140097fe5:	48 63 c9             	movslq %ecx,%rcx
140097fe8:	49 8b 54 cf f8       	mov    -0x8(%r15,%rcx,8),%rdx
140097fed:	8b 42 38             	mov    0x38(%rdx),%eax
140097ff0:	f6 c4 30             	test   $0x30,%ah
140097ff3:	75 3b                	jne    0x140098030
140097ff5:	8b 52 34             	mov    0x34(%rdx),%edx
140097ff8:	81 e2 00 f0 00 00    	and    $0xf000,%edx
140097ffe:	81 fa 00 e0 00 00    	cmp    $0xe000,%edx
140098004:	74 2a                	je     0x140098030
140098006:	25 00 00 00 40       	and    $0x40000000,%eax
14009800b:	39 cd                	cmp    %ecx,%ebp
14009800d:	89 c2                	mov    %eax,%edx
14009800f:	41 0f 9f c1          	setg   %r9b
140098013:	48 83 c1 01          	add    $0x1,%rcx
140098017:	c1 ea 1e             	shr    $0x1e,%edx
14009801a:	41 84 d1             	test   %dl,%r9b
14009801d:	75 c9                	jne    0x140097fe8
14009801f:	85 c0                	test   %eax,%eax
140098021:	0f 85 5d 01 00 00    	jne    0x140098184
140098027:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14009802e:	00 00
140098030:	89 fe                	mov    %edi,%esi
140098032:	48 63 c3             	movslq %ebx,%rax
140098035:	48 8b 8c 24 f8 00 00 	mov    0xf8(%rsp),%rcx
14009803c:	00
14009803d:	ba 2f 00 00 00       	mov    $0x2f,%edx
140098042:	4d 8b 34 c7          	mov    (%r15,%rax,8),%r14
140098046:	4d 8d 6e 6c          	lea    0x6c(%r14),%r13
14009804a:	4c 01 e9             	add    %r13,%rcx
14009804d:	48 89 4c 24 48       	mov    %rcx,0x48(%rsp)
140098052:	e8 19 1e 15 00       	call   0x1401e9e70
140098057:	48 85 c0             	test   %rax,%rax
14009805a:	0f 84 bc 00 00 00    	je     0x14009811c
140098060:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
140098065:	41 89 c0             	mov    %eax,%r8d
140098068:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14009806d:	41 29 c8             	sub    %ecx,%r8d
140098070:	48 89 ca             	mov    %rcx,%rdx
140098073:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
140098078:	e8 83 83 07 00       	call   0x140110400
14009807d:	4c 8b 4c 24 58       	mov    0x58(%rsp),%r9
140098082:	85 c0                	test   %eax,%eax
140098084:	41 89 c7             	mov    %eax,%r15d
140098087:	0f 88 8b 00 00 00    	js     0x140098118
14009808d:	48 c7 44 24 68 00 00 	movq   $0x0,0x68(%rsp)
140098094:	00 00
140098096:	48 8b 54 24 70       	mov    0x70(%rsp),%rdx
14009809b:	48 3b 15 fe 12 1a 00 	cmp    0x1a12fe(%rip),%rdx        # 0x1402393a0
1400980a2:	0f 84 b8 00 00 00    	je     0x140098160
1400980a8:	c6 02 00             	movb   $0x0,(%rdx)
1400980ab:	4d 29 e9             	sub    %r13,%r9
1400980ae:	4c 89 ea             	mov    %r13,%rdx
1400980b1:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1400980b6:	4d 8d 41 01          	lea    0x1(%r9),%r8
1400980ba:	e8 f1 38 00 00       	call   0x14009b9b0
1400980bf:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
1400980c4:	49 63 c7             	movslq %r15d,%rax
1400980c7:	41 89 d8             	mov    %ebx,%r8d
1400980ca:	48 8b 51 30          	mov    0x30(%rcx),%rdx
1400980ce:	4c 89 e1             	mov    %r12,%rcx
1400980d1:	48 8b 04 c2          	mov    (%rdx,%rax,8),%rax
1400980d5:	89 f2                	mov    %esi,%edx
1400980d7:	48 8b 00             	mov    (%rax),%rax
1400980da:	44 8b 28             	mov    (%rax),%r13d
1400980dd:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1400980e2:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
1400980e7:	41 01 dd             	add    %ebx,%r13d
1400980ea:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400980ef:	48 8b 44 24 70       	mov    0x70(%rsp),%rax
1400980f4:	45 89 e9             	mov    %r13d,%r9d
1400980f7:	44 89 eb             	mov    %r13d,%ebx
1400980fa:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
1400980ff:	e8 5c fe ff ff       	call   0x140097f60
140098104:	01 c6                	add    %eax,%esi
140098106:	39 dd                	cmp    %ebx,%ebp
140098108:	7e 23                	jle    0x14009812d
14009810a:	4d 8b 3c 24          	mov    (%r12),%r15
14009810e:	e9 1f ff ff ff       	jmp    0x140098032
140098113:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140098118:	4d 8b 3c 24          	mov    (%r12),%r15
14009811c:	48 63 c6             	movslq %esi,%rax
14009811f:	83 c3 01             	add    $0x1,%ebx
140098122:	83 c6 01             	add    $0x1,%esi
140098125:	4d 89 34 c7          	mov    %r14,(%r15,%rax,8)
140098129:	39 dd                	cmp    %ebx,%ebp
14009812b:	7f dd                	jg     0x14009810a
14009812d:	29 fe                	sub    %edi,%esi
14009812f:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140098134:	e8 07 28 00 00       	call   0x14009a940
140098139:	48 8b 3d b0 09 1a 00 	mov    0x1a09b0(%rip),%rdi        # 0x140238af0
140098140:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
140098145:	48 2b 07             	sub    (%rdi),%rax
140098148:	75 7c                	jne    0x1400981c6
14009814a:	89 f0                	mov    %esi,%eax
14009814c:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
140098153:	5b                   	pop    %rbx
140098154:	5e                   	pop    %rsi
140098155:	5f                   	pop    %rdi
140098156:	5d                   	pop    %rbp
140098157:	41 5c                	pop    %r12
140098159:	41 5d                	pop    %r13
14009815b:	41 5e                	pop    %r14
14009815d:	41 5f                	pop    %r15
14009815f:	c3                   	ret
140098160:	48 8b 05 39 12 1a 00 	mov    0x1a1239(%rip),%rax        # 0x1402393a0
140098167:	80 38 00             	cmpb   $0x0,(%rax)
14009816a:	0f 84 3b ff ff ff    	je     0x1400980ab
140098170:	e8 ab fd ff ff       	call   0x140097f20
140098175:	0f 1f 00             	nopl   (%rax)
140098178:	39 eb                	cmp    %ebp,%ebx
14009817a:	7c 4f                	jl     0x1400981cb
14009817c:	31 f6                	xor    %esi,%esi
14009817e:	eb af                	jmp    0x14009812f
140098180:	85 c0                	test   %eax,%eax
140098182:	75 f4                	jne    0x140098178
140098184:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140098189:	49 89 f1             	mov    %rsi,%r9
14009818c:	ba 00 40 00 00       	mov    $0x4000,%edx
140098191:	4c 89 e1             	mov    %r12,%rcx
140098194:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%rsp)
14009819b:	00
14009819c:	be 01 00 00 00       	mov    $0x1,%esi
1400981a1:	c7 44 24 20 00 00 00 	movl   $0x0,0x20(%rsp)
1400981a8:	00
1400981a9:	4c 8d 40 04          	lea    0x4(%rax),%r8
1400981ad:	e8 4e 54 fc ff       	call   0x14005d600
1400981b2:	49 8b 14 24          	mov    (%r12),%rdx
1400981b6:	81 48 38 00 00 00 40 	orl    $0x40000000,0x38(%rax)
1400981bd:	48 89 04 fa          	mov    %rax,(%rdx,%rdi,8)
1400981c1:	e9 73 ff ff ff       	jmp    0x140098139
1400981c6:	e8 a5 c6 14 00       	call   0x1401e4870
1400981cb:	89 fe                	mov    %edi,%esi
1400981cd:	e9 38 ff ff ff       	jmp    0x14009810a
1400981d2:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1400981d9:	00 00 00 00
1400981dd:	0f 1f 00             	nopl   (%rax)
1400981e0:	41 55                	push   %r13
1400981e2:	41 54                	push   %r12
1400981e4:	55                   	push   %rbp
1400981e5:	57                   	push   %rdi
1400981e6:	56                   	push   %rsi
1400981e7:	53                   	push   %rbx
1400981e8:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
1400981ef:	4c 8b 2d fa 08 1a 00 	mov    0x1a08fa(%rip),%r13        # 0x140238af0
1400981f6:	4d 8b 45 00          	mov    0x0(%r13),%r8
1400981fa:	4c 89 44 24 78       	mov    %r8,0x78(%rsp)
1400981ff:	4c 8b 42 08          	mov    0x8(%rdx),%r8
140098203:	48 89 cf             	mov    %rcx,%rdi
140098206:	48 89 d6             	mov    %rdx,%rsi
140098209:	4d 85 c0             	test   %r8,%r8
14009820c:	74 11                	je     0x14009821f
14009820e:	48 8b 52 10          	mov    0x10(%rdx),%rdx
140098212:	e8 d1 1b 15 00       	call   0x1401e9de8
140098217:	85 c0                	test   %eax,%eax
140098219:	0f 84 3f 01 00 00    	je     0x14009835e
14009821f:	4c 8b 25 0a 0f 1a 00 	mov    0x1a0f0a(%rip),%r12        # 0x140239130
140098226:	48 8d 6c 24 20       	lea    0x20(%rsp),%rbp
14009822b:	48 83 46 18 01       	addq   $0x1,0x18(%rsi)
140098230:	48 89 f9             	mov    %rdi,%rcx
140098233:	48 89 ea             	mov    %rbp,%rdx
140098236:	41 ff 14 24          	call   *(%r12)
14009823a:	89 c2                	mov    %eax,%edx
14009823c:	b8 01 00 00 00       	mov    $0x1,%eax
140098241:	85 d2                	test   %edx,%edx
140098243:	75 23                	jne    0x140098268
140098245:	48 8b 54 24 78       	mov    0x78(%rsp),%rdx
14009824a:	49 2b 55 00          	sub    0x0(%r13),%rdx
14009824e:	0f 85 3b 01 00 00    	jne    0x14009838f
140098254:	48 81 c4 88 00 00 00 	add    $0x88,%rsp
14009825b:	5b                   	pop    %rbx
14009825c:	5e                   	pop    %rsi
14009825d:	5f                   	pop    %rdi
14009825e:	5d                   	pop    %rbp
14009825f:	41 5c                	pop    %r12
140098261:	41 5d                	pop    %r13
140098263:	c3                   	ret
140098264:	0f 1f 40 00          	nopl   0x0(%rax)
140098268:	0f b6 0f             	movzbl (%rdi),%ecx
14009826b:	4c 8b 4e 10          	mov    0x10(%rsi),%r9
14009826f:	31 c0                	xor    %eax,%eax
140098271:	31 d2                	xor    %edx,%edx
140098273:	4c 8b 16             	mov    (%rsi),%r10
140098276:	84 c9                	test   %cl,%cl
140098278:	75 1e                	jne    0x140098298
14009827a:	eb 37                	jmp    0x1400982b3
14009827c:	0f 1f 40 00          	nopl   0x0(%rax)
140098280:	44 38 c1             	cmp    %r8b,%cl
140098283:	75 1d                	jne    0x1400982a2
140098285:	48 83 c2 01          	add    $0x1,%rdx
140098289:	80 f9 2f             	cmp    $0x2f,%cl
14009828c:	0f b6 0c 17          	movzbl (%rdi,%rdx,1),%ecx
140098290:	48 0f 44 c2          	cmove  %rdx,%rax
140098294:	84 c9                	test   %cl,%cl
140098296:	74 0a                	je     0x1400982a2
140098298:	45 0f b6 04 11       	movzbl (%r9,%rdx,1),%r8d
14009829d:	45 84 c0             	test   %r8b,%r8b
1400982a0:	75 de                	jne    0x140098280
1400982a2:	49 83 fa 01          	cmp    $0x1,%r10
1400982a6:	49 83 d2 ff          	adc    $0xffffffffffffffff,%r10
1400982aa:	49 39 c2             	cmp    %rax,%r10
1400982ad:	0f 82 e1 00 00 00    	jb     0x140098394
1400982b3:	4c 3b 0d e6 10 1a 00 	cmp    0x1a10e6(%rip),%r9        # 0x1402393a0
1400982ba:	48 89 46 08          	mov    %rax,0x8(%rsi)
1400982be:	0f 84 bc 00 00 00    	je     0x140098380
1400982c4:	41 c6 04 01 00       	movb   $0x0,(%r9,%rax,1)
1400982c9:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400982cd:	eb 2b                	jmp    0x1400982fa
1400982cf:	90                   	nop
1400982d0:	49 29 d8             	sub    %rbx,%r8
1400982d3:	48 89 da             	mov    %rbx,%rdx
1400982d6:	48 89 f1             	mov    %rsi,%rcx
1400982d9:	49 83 c0 01          	add    $0x1,%r8
1400982dd:	e8 ce 36 00 00       	call   0x14009b9b0
1400982e2:	48 83 46 18 01       	addq   $0x1,0x18(%rsi)
1400982e7:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1400982eb:	48 89 ea             	mov    %rbp,%rdx
1400982ee:	41 ff 14 24          	call   *(%r12)
1400982f2:	85 c0                	test   %eax,%eax
1400982f4:	75 68                	jne    0x14009835e
1400982f6:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400982fa:	48 8d 1c 07          	lea    (%rdi,%rax,1),%rbx
1400982fe:	ba 2f 00 00 00       	mov    $0x2f,%edx
140098303:	48 89 d9             	mov    %rbx,%rcx
140098306:	e8 65 1b 15 00       	call   0x1401e9e70
14009830b:	49 89 c0             	mov    %rax,%r8
14009830e:	48 85 c0             	test   %rax,%rax
140098311:	75 bd                	jne    0x1400982d0
140098313:	48 89 d9             	mov    %rbx,%rcx
140098316:	e8 7d 1b 15 00       	call   0x1401e9e98
14009831b:	48 89 da             	mov    %rbx,%rdx
14009831e:	48 89 f1             	mov    %rsi,%rcx
140098321:	49 89 c0             	mov    %rax,%r8
140098324:	e8 87 36 00 00       	call   0x14009b9b0
140098329:	48 8b 16             	mov    (%rsi),%rdx
14009832c:	48 85 d2             	test   %rdx,%rdx
14009832f:	75 37                	jne    0x140098368
140098331:	ba 01 00 00 00       	mov    $0x1,%edx
140098336:	48 89 f1             	mov    %rsi,%rcx
140098339:	e8 62 28 00 00       	call   0x14009aba0
14009833e:	48 8b 46 08          	mov    0x8(%rsi),%rax
140098342:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140098346:	48 8d 48 01          	lea    0x1(%rax),%rcx
14009834a:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
14009834e:	c6 04 02 2f          	movb   $0x2f,(%rdx,%rax,1)
140098352:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140098356:	48 8b 46 08          	mov    0x8(%rsi),%rax
14009835a:	c6 04 02 00          	movb   $0x0,(%rdx,%rax,1)
14009835e:	31 c0                	xor    %eax,%eax
140098360:	e9 e0 fe ff ff       	jmp    0x140098245
140098365:	0f 1f 00             	nopl   (%rax)
140098368:	48 8b 46 08          	mov    0x8(%rsi),%rax
14009836c:	48 29 c2             	sub    %rax,%rdx
14009836f:	48 83 fa 01          	cmp    $0x1,%rdx
140098373:	75 cd                	jne    0x140098342
140098375:	eb ba                	jmp    0x140098331
140098377:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14009837e:	00 00
140098380:	41 80 39 00          	cmpb   $0x0,(%r9)
140098384:	0f 84 70 ff ff ff    	je     0x1400982fa
14009838a:	e8 91 fb ff ff       	call   0x140097f20
14009838f:	e8 dc c4 14 00       	call   0x1401e4870
140098394:	4c 8d 05 fb 0b 17 00 	lea    0x170bfb(%rip),%r8        # 0x140208f96
14009839b:	ba a7 00 00 00       	mov    $0xa7,%edx
1400983a0:	48 8d 0d 99 0b 17 00 	lea    0x170b99(%rip),%rcx        # 0x140208f40
1400983a7:	e8 e4 b3 02 00       	call   0x1400c3790
1400983ac:	90                   	nop
1400983ad:	0f 1f 00             	nopl   (%rax)
1400983b0:	41 56                	push   %r14
1400983b2:	41 55                	push   %r13
1400983b4:	41 54                	push   %r12
1400983b6:	55                   	push   %rbp
1400983b7:	57                   	push   %rdi
1400983b8:	56                   	push   %rsi
1400983b9:	53                   	push   %rbx
1400983ba:	48 83 ec 40          	sub    $0x40,%rsp
1400983be:	4c 8b 2d 2b 07 1a 00 	mov    0x1a072b(%rip),%r13        # 0x140238af0
1400983c5:	4c 8b a4 24 a0 00 00 	mov    0xa0(%rsp),%r12
1400983cc:	00
1400983cd:	44 89 c8             	mov    %r9d,%eax
1400983d0:	48 89 cd             	mov    %rcx,%rbp
1400983d3:	48 89 d3             	mov    %rdx,%rbx
1400983d6:	4c 89 c7             	mov    %r8,%rdi
1400983d9:	4d 8b 75 00          	mov    0x0(%r13),%r14
1400983dd:	4c 89 74 24 38       	mov    %r14,0x38(%rsp)
1400983e2:	4c 8b 72 08          	mov    0x8(%rdx),%r14
1400983e6:	25 00 f0 00 00       	and    $0xf000,%eax
1400983eb:	44 89 ce             	mov    %r9d,%esi
1400983ee:	3d 00 40 00 00       	cmp    $0x4000,%eax
1400983f3:	0f 85 f7 00 00 00    	jne    0x1400984f0
1400983f9:	49 83 7c 24 08 00    	cmpq   $0x0,0x8(%r12)
1400983ff:	0f 84 c6 00 00 00    	je     0x1400984cb
140098405:	4c 89 c1             	mov    %r8,%rcx
140098408:	e8 8b 1a 15 00       	call   0x1401e9e98
14009840d:	48 89 fa             	mov    %rdi,%rdx
140098410:	48 89 d9             	mov    %rbx,%rcx
140098413:	49 89 c0             	mov    %rax,%r8
140098416:	e8 95 35 00 00       	call   0x14009b9b0
14009841b:	41 b8 02 00 00 00    	mov    $0x2,%r8d
140098421:	48 8d 15 8c 0b 17 00 	lea    0x170b8c(%rip),%rdx        # 0x140208fb4
140098428:	48 89 d9             	mov    %rbx,%rcx
14009842b:	e8 80 35 00 00       	call   0x14009b9b0
140098430:	49 8b 04 24          	mov    (%r12),%rax
140098434:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140098438:	45 31 c0             	xor    %r8d,%r8d
14009843b:	4c 8d 4c 24 34       	lea    0x34(%rsp),%r9
140098440:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140098445:	49 8b 44 24 08       	mov    0x8(%r12),%rax
14009844a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14009844f:	8b 53 08             	mov    0x8(%rbx),%edx
140098452:	e8 19 d0 f8 ff       	call   0x140025470
140098457:	89 c2                	mov    %eax,%edx
140098459:	48 8b 03             	mov    (%rbx),%rax
14009845c:	85 d2                	test   %edx,%edx
14009845e:	75 40                	jne    0x1400984a0
140098460:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140098464:	48 83 f8 01          	cmp    $0x1,%rax
140098468:	48 83 d0 ff          	adc    $0xffffffffffffffff,%rax
14009846c:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
140098470:	48 39 d0             	cmp    %rdx,%rax
140098473:	0f 82 2f 01 00 00    	jb     0x1400985a8
140098479:	4c 8b 4b 10          	mov    0x10(%rbx),%r9
14009847d:	4c 3b 0d 1c 0f 1a 00 	cmp    0x1a0f1c(%rip),%r9        # 0x1402393a0
140098484:	48 89 53 08          	mov    %rdx,0x8(%rbx)
140098488:	0f 84 fa 00 00 00    	je     0x140098588
14009848e:	41 c6 44 09 ff 00    	movb   $0x0,-0x1(%r9,%rcx,1)
140098494:	4c 8b 4b 10          	mov    0x10(%rbx),%r9
140098498:	eb 70                	jmp    0x14009850a
14009849a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1400984a0:	48 83 f8 01          	cmp    $0x1,%rax
1400984a4:	48 83 d0 ff          	adc    $0xffffffffffffffff,%rax