1400210d2:	0f b7 01             	movzwl (%rcx),%eax
1400210d5:	c3                   	ret
1400210d6:	cc                   	int3
1400210d7:	b8 ff ff 00 00       	mov    $0xffff,%eax
1400210dc:	c3                   	ret
1400210dd:	cc                   	int3
1400210de:	cc                   	int3
1400210df:	cc                   	int3
1400210e0:	cc                   	int3
1400210e1:	cc                   	int3
1400210e2:	cc                   	int3
1400210e3:	cc                   	int3
1400210e4:	cc                   	int3
1400210e5:	cc                   	int3
1400210e6:	cc                   	int3
1400210e7:	cc                   	int3
1400210e8:	cc                   	int3
1400210e9:	cc                   	int3
1400210ea:	cc                   	int3
1400210eb:	cc                   	int3
1400210ec:	cc                   	int3
1400210ed:	cc                   	int3
1400210ee:	cc                   	int3
1400210ef:	cc                   	int3
1400210f0:	48 8b 41 38          	mov    0x38(%rcx),%rax
1400210f4:	45 33 d2             	xor    %r10d,%r10d
1400210f7:	41 b9 ff ff 00 00    	mov    $0xffff,%r9d
1400210fd:	4c 8b 00             	mov    (%rax),%r8
140021100:	4d 85 c0             	test   %r8,%r8
140021103:	74 44                	je     0x140021149
140021105:	48 8b 41 18          	mov    0x18(%rcx),%rax
140021109:	4c 3b 00             	cmp    (%rax),%r8
14002110c:	76 3b                	jbe    0x140021149
14002110e:	66 44 3b ca          	cmp    %dx,%r9w
140021112:	74 0d                	je     0x140021121
140021114:	66 41 3b 50 fe       	cmp    -0x2(%r8),%dx
140021119:	74 06                	je     0x140021121
14002111b:	f6 41 70 02          	testb  $0x2,0x70(%rcx)
14002111f:	75 28                	jne    0x140021149
140021121:	48 8b 41 50          	mov    0x50(%rcx),%rax
140021125:	ff 00                	incl   (%rax)
140021127:	48 8b 41 38          	mov    0x38(%rcx),%rax
14002112b:	48 83 00 fe          	addq   $0xfffffffffffffffe,(%rax)
14002112f:	66 44 3b ca          	cmp    %dx,%r9w
140021133:	74 0a                	je     0x14002113f
140021135:	48 8b 41 38          	mov    0x38(%rcx),%rax
140021139:	48 8b 08             	mov    (%rax),%rcx
14002113c:	66 89 11             	mov    %dx,(%rcx)
14002113f:	66 41 0f 44 d2       	cmove  %r10w,%dx
140021144:	0f b7 c2             	movzwl %dx,%eax
140021147:	c3                   	ret
140021148:	cc                   	int3
140021149:	41 0f b7 c1          	movzwl %r9w,%eax
14002114d:	c3                   	ret
14002114e:	cc                   	int3
14002114f:	cc                   	int3
140021150:	cc                   	int3
140021151:	cc                   	int3
140021152:	cc                   	int3
140021153:	cc                   	int3
140021154:	cc                   	int3
140021155:	cc                   	int3
140021156:	cc                   	int3
140021157:	cc                   	int3
140021158:	cc                   	int3
140021159:	cc                   	int3
14002115a:	cc                   	int3
14002115b:	cc                   	int3
14002115c:	cc                   	int3
14002115d:	cc                   	int3
14002115e:	cc                   	int3
14002115f:	cc                   	int3
140021160:	48 8b c4             	mov    %rsp,%rax
140021163:	48 89 58 08          	mov    %rbx,0x8(%rax)
140021167:	48 89 68 10          	mov    %rbp,0x10(%rax)
14002116b:	48 89 70 18          	mov    %rsi,0x18(%rax)
14002116f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140021173:	41 54                	push   %r12
140021175:	41 56                	push   %r14
140021177:	41 57                	push   %r15
140021179:	48 83 ec 20          	sub    $0x20,%rsp
14002117d:	f6 41 70 02          	testb  $0x2,0x70(%rcx)
140021181:	44 0f b7 fa          	movzwl %dx,%r15d
140021185:	48 8b d9             	mov    %rcx,%rbx
140021188:	41 ba ff ff 00 00    	mov    $0xffff,%r10d
14002118e:	0f 85 28 02 00 00    	jne    0x1400213bc
140021194:	33 ed                	xor    %ebp,%ebp
140021196:	66 44 3b d2          	cmp    %dx,%r10w
14002119a:	75 08                	jne    0x1400211a4
14002119c:	0f b7 c5             	movzwl %bp,%eax
14002119f:	e9 1c 02 00 00       	jmp    0x1400213c0
1400211a4:	f6 41 70 08          	testb  $0x8,0x70(%rcx)
1400211a8:	74 2f                	je     0x1400211d9
1400211aa:	4c 8b 49 40          	mov    0x40(%rcx),%r9
1400211ae:	49 8b 11             	mov    (%r9),%rdx
1400211b1:	48 85 d2             	test   %rdx,%rdx
1400211b4:	74 23                	je     0x1400211d9
1400211b6:	4c 8b 41 68          	mov    0x68(%rcx),%r8
1400211ba:	49 3b d0             	cmp    %r8,%rdx
1400211bd:	73 1a                	jae    0x1400211d9
1400211bf:	48 8b 41 58          	mov    0x58(%rcx),%rax
1400211c3:	48 63 08             	movslq (%rax),%rcx
1400211c6:	4d 89 01             	mov    %r8,(%r9)
1400211c9:	48 8b 43 58          	mov    0x58(%rbx),%rax
1400211cd:	48 8d 14 4a          	lea    (%rdx,%rcx,2),%rdx
1400211d1:	49 2b d0             	sub    %r8,%rdx
1400211d4:	48 d1 fa             	sar    $1,%rdx
1400211d7:	89 10                	mov    %edx,(%rax)
1400211d9:	48 8b 43 40          	mov    0x40(%rbx),%rax
1400211dd:	48 8b 38             	mov    (%rax),%rdi
1400211e0:	48 85 ff             	test   %rdi,%rdi
1400211e3:	74 43                	je     0x140021228
1400211e5:	48 8b 4b 58          	mov    0x58(%rbx),%rcx
1400211e9:	48 63 11             	movslq (%rcx),%rdx
1400211ec:	4c 8d 04 12          	lea    (%rdx,%rdx,1),%r8
1400211f0:	4a 8d 04 07          	lea    (%rdi,%r8,1),%rax
1400211f4:	48 3b f8             	cmp    %rax,%rdi
1400211f7:	73 20                	jae    0x140021219
1400211f9:	8d 42 ff             	lea    -0x1(%rdx),%eax
1400211fc:	89 01                	mov    %eax,(%rcx)
1400211fe:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
140021202:	48 8b 11             	mov    (%rcx),%rdx
140021205:	48 8d 42 02          	lea    0x2(%rdx),%rax
140021209:	48 89 01             	mov    %rax,(%rcx)
14002120c:	41 0f b7 c7          	movzwl %r15w,%eax
140021210:	66 44 89 3a          	mov    %r15w,(%rdx)
140021214:	e9 a7 01 00 00       	jmp    0x1400213c0
140021219:	48 8b 43 18          	mov    0x18(%rbx),%rax
14002121d:	48 2b 38             	sub    (%rax),%rdi
140021220:	49 03 f8             	add    %r8,%rdi
140021223:	48 d1 ff             	sar    $1,%rdi
140021226:	eb 03                	jmp    0x14002122b
140021228:	48 8b fd             	mov    %rbp,%rdi
14002122b:	b8 20 00 00 00       	mov    $0x20,%eax
140021230:	48 8b cf             	mov    %rdi,%rcx
140021233:	48 d1 e9             	shr    $1,%rcx
140021236:	48 3b c8             	cmp    %rax,%rcx
140021239:	48 0f 42 c8          	cmovb  %rax,%rcx
14002123d:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
140021242:	48 2b c1             	sub    %rcx,%rax
140021245:	48 3b c7             	cmp    %rdi,%rax
140021248:	73 05                	jae    0x14002124f
14002124a:	48 d1 e9             	shr    $1,%rcx
14002124d:	75 ee                	jne    0x14002123d
14002124f:	48 85 c9             	test   %rcx,%rcx
140021252:	0f 84 64 01 00 00    	je     0x1400213bc
140021258:	4c 8d 34 39          	lea    (%rcx,%rdi,1),%r14
14002125c:	48 8b f5             	mov    %rbp,%rsi
14002125f:	4d 85 f6             	test   %r14,%r14
140021262:	74 28                	je     0x14002128c
140021264:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14002126b:	ff ff 7f
14002126e:	4c 3b f0             	cmp    %rax,%r14
140021271:	0f 87 69 01 00 00    	ja     0x1400213e0
140021277:	4b 8d 0c 36          	lea    (%r14,%r14,1),%rcx
14002127b:	e8 54 30 00 00       	call   0x1400242d4
140021280:	48 8b f0             	mov    %rax,%rsi
140021283:	48 85 c0             	test   %rax,%rax
140021286:	0f 84 54 01 00 00    	je     0x1400213e0
14002128c:	48 8b 43 18          	mov    0x18(%rbx),%rax
140021290:	4c 8b 20             	mov    (%rax),%r12
140021293:	48 85 ff             	test   %rdi,%rdi
140021296:	74 0f                	je     0x1400212a7
140021298:	4c 8d 04 3f          	lea    (%rdi,%rdi,1),%r8
14002129c:	49 8b d4             	mov    %r12,%rdx
14002129f:	48 8b ce             	mov    %rsi,%rcx
1400212a2:	e8 b1 3b 00 00       	call   0x140024e58
1400212a7:	4f 8d 04 36          	lea    (%r14,%r14,1),%r8
1400212ab:	48 85 ff             	test   %rdi,%rdi
1400212ae:	75 3e                	jne    0x1400212ee
1400212b0:	48 8b 43 20          	mov    0x20(%rbx),%rax
1400212b4:	48 89 73 68          	mov    %rsi,0x68(%rbx)
1400212b8:	48 89 30             	mov    %rsi,(%rax)
1400212bb:	48 8b 43 40          	mov    0x40(%rbx),%rax
1400212bf:	48 89 30             	mov    %rsi,(%rax)
1400212c2:	48 8b 43 58          	mov    0x58(%rbx),%rax
1400212c6:	44 89 30             	mov    %r14d,(%rax)
1400212c9:	48 8b 43 18          	mov    0x18(%rbx),%rax
1400212cd:	8b 4b 70             	mov    0x70(%rbx),%ecx
1400212d0:	48 89 30             	mov    %rsi,(%rax)
1400212d3:	48 8b 43 38          	mov    0x38(%rbx),%rax
1400212d7:	83 e1 04             	and    $0x4,%ecx
1400212da:	75 71                	jne    0x14002134d
1400212dc:	48 89 30             	mov    %rsi,(%rax)
1400212df:	48 8b 43 50          	mov    0x50(%rbx),%rax
1400212e3:	c7 00 01 00 00 00    	movl   $0x1,(%rax)
1400212e9:	e9 a4 00 00 00       	jmp    0x140021392
1400212ee:	48 8b 43 68          	mov    0x68(%rbx),%rax
1400212f2:	49 2b c4             	sub    %r12,%rax
1400212f5:	48 d1 f8             	sar    $1,%rax
1400212f8:	48 8d 04 46          	lea    (%rsi,%rax,2),%rax
1400212fc:	48 89 43 68          	mov    %rax,0x68(%rbx)
140021300:	48 8b 43 40          	mov    0x40(%rbx),%rax
140021304:	48 8b 08             	mov    (%rax),%rcx
140021307:	49 2b cc             	sub    %r12,%rcx
14002130a:	48 d1 f9             	sar    $1,%rcx
14002130d:	48 8d 14 4e          	lea    (%rsi,%rcx,2),%rdx
140021311:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
140021315:	4c 2b c2             	sub    %rdx,%r8
140021318:	4c 03 c6             	add    %rsi,%r8
14002131b:	49 d1 f8             	sar    $1,%r8
14002131e:	48 8b 01             	mov    (%rcx),%rax
140021321:	49 2b c4             	sub    %r12,%rax
140021324:	48 d1 f8             	sar    $1,%rax
140021327:	48 8d 04 46          	lea    (%rsi,%rax,2),%rax
14002132b:	48 89 01             	mov    %rax,(%rcx)
14002132e:	48 8b 43 40          	mov    0x40(%rbx),%rax
140021332:	48 89 10             	mov    %rdx,(%rax)
140021335:	48 8b 43 58          	mov    0x58(%rbx),%rax
140021339:	44 89 00             	mov    %r8d,(%rax)
14002133c:	f6 43 70 04          	testb  $0x4,0x70(%rbx)
140021340:	74 19                	je     0x14002135b
140021342:	48 8b 43 18          	mov    0x18(%rbx),%rax
140021346:	48 89 30             	mov    %rsi,(%rax)
140021349:	48 8b 43 38          	mov    0x38(%rbx),%rax
14002134d:	48 89 28             	mov    %rbp,(%rax)
140021350:	48 8b 43 50          	mov    0x50(%rbx),%rax
140021354:	48 d1 fe             	sar    $1,%rsi
140021357:	89 30                	mov    %esi,(%rax)
140021359:	eb 37                	jmp    0x140021392
14002135b:	48 8b 43 40          	mov    0x40(%rbx),%rax
14002135f:	4c 8b 00             	mov    (%rax),%r8
140021362:	48 8b 43 38          	mov    0x38(%rbx),%rax
140021366:	48 8b 08             	mov    (%rax),%rcx
140021369:	48 8b 43 18          	mov    0x18(%rbx),%rax
14002136d:	49 2b cc             	sub    %r12,%rcx
140021370:	48 d1 f9             	sar    $1,%rcx
140021373:	48 89 30             	mov    %rsi,(%rax)
140021376:	48 8b 43 38          	mov    0x38(%rbx),%rax
14002137a:	48 8d 14 4e          	lea    (%rsi,%rcx,2),%rdx
14002137e:	4c 2b c2             	sub    %rdx,%r8
140021381:	49 83 c0 02          	add    $0x2,%r8
140021385:	49 d1 f8             	sar    $1,%r8
140021388:	48 89 10             	mov    %rdx,(%rax)
14002138b:	48 8b 43 50          	mov    0x50(%rbx),%rax
14002138f:	44 89 00             	mov    %r8d,(%rax)
140021392:	8b 43 70             	mov    0x70(%rbx),%eax
140021395:	a8 01                	test   $0x1,%al
140021397:	74 12                	je     0x1400213ab
140021399:	49 8b cc             	mov    %r12,%rcx
14002139c:	48 ff 15 85 9b 00 00 	rex.W call *0x9b85(%rip)        # 0x14002af28
1400213a3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400213a8:	8b 43 70             	mov    0x70(%rbx),%eax
1400213ab:	83 c8 01             	or     $0x1,%eax
1400213ae:	89 43 70             	mov    %eax,0x70(%rbx)
1400213b1:	48 8b 43 58          	mov    0x58(%rbx),%rax
1400213b5:	ff 08                	decl   (%rax)
1400213b7:	e9 42 fe ff ff       	jmp    0x1400211fe
1400213bc:	41 0f b7 c2          	movzwl %r10w,%eax
1400213c0:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1400213c5:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1400213ca:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1400213cf:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1400213d4:	48 83 c4 20          	add    $0x20,%rsp
1400213d8:	41 5f                	pop    %r15
1400213da:	41 5e                	pop    %r14
1400213dc:	41 5c                	pop    %r12
1400213de:	c3                   	ret
1400213df:	cc                   	int3
1400213e0:	e8 93 30 00 00       	call   0x140024478
1400213e5:	cc                   	int3
1400213e6:	cc                   	int3
1400213e7:	cc                   	int3
1400213e8:	cc                   	int3
1400213e9:	cc                   	int3
1400213ea:	cc                   	int3
1400213eb:	cc                   	int3
1400213ec:	40 53                	rex push %rbx
1400213ee:	48 83 ec 20          	sub    $0x20,%rsp
1400213f2:	f6 41 70 01          	testb  $0x1,0x70(%rcx)
1400213f6:	48 8d 05 4b 94 00 00 	lea    0x944b(%rip),%rax        # 0x14002a848
1400213fd:	48 89 01             	mov    %rax,(%rcx)
140021400:	48 8b d9             	mov    %rcx,%rbx
140021403:	74 13                	je     0x140021418
140021405:	48 8b 49 18          	mov    0x18(%rcx),%rcx
140021409:	48 8b 09             	mov    (%rcx),%rcx
14002140c:	48 ff 15 15 9b 00 00 	rex.W call *0x9b15(%rip)        # 0x14002af28
140021413:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021418:	48 8b 43 18          	mov    0x18(%rbx),%rax
14002141c:	48 83 20 00          	andq   $0x0,(%rax)
140021420:	48 8b 43 38          	mov    0x38(%rbx),%rax
140021424:	48 83 20 00          	andq   $0x0,(%rax)
140021428:	48 8b 43 50          	mov    0x50(%rbx),%rax
14002142c:	83 20 00             	andl   $0x0,(%rax)
14002142f:	48 8b 43 20          	mov    0x20(%rbx),%rax
140021433:	48 83 20 00          	andq   $0x0,(%rax)
140021437:	48 8b 43 40          	mov    0x40(%rbx),%rax
14002143b:	48 83 20 00          	andq   $0x0,(%rax)
14002143f:	48 8b 43 58          	mov    0x58(%rbx),%rax
140021443:	83 20 00             	andl   $0x0,(%rax)
140021446:	48 8d 05 73 93 00 00 	lea    0x9373(%rip),%rax        # 0x14002a7c0
14002144d:	48 83 63 68 00       	andq   $0x0,0x68(%rbx)
140021452:	83 63 70 fe          	andl   $0xfffffffe,0x70(%rbx)
140021456:	48 89 03             	mov    %rax,(%rbx)
140021459:	48 8b 5b 60          	mov    0x60(%rbx),%rbx
14002145d:	48 85 db             	test   %rbx,%rbx
140021460:	74 3d                	je     0x14002149f
140021462:	48 8b 0b             	mov    (%rbx),%rcx
140021465:	48 85 c9             	test   %rcx,%rcx
140021468:	74 26                	je     0x140021490
14002146a:	48 8b 01             	mov    (%rcx),%rax
14002146d:	48 8b 40 10          	mov    0x10(%rax),%rax
140021471:	ff 15 d1 9c 00 00    	call   *0x9cd1(%rip)        # 0x14002b148
140021477:	48 85 c0             	test   %rax,%rax
14002147a:	74 14                	je     0x140021490
14002147c:	4c 8b 00             	mov    (%rax),%r8
14002147f:	48 8b c8             	mov    %rax,%rcx
140021482:	ba 01 00 00 00       	mov    $0x1,%edx
140021487:	49 8b 00             	mov    (%r8),%rax
14002148a:	ff 15 b8 9c 00 00    	call   *0x9cb8(%rip)        # 0x14002b148
140021490:	48 8b cb             	mov    %rbx,%rcx
140021493:	48 ff 15 8e 9a 00 00 	rex.W call *0x9a8e(%rip)        # 0x14002af28
14002149a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14002149f:	48 83 c4 20          	add    $0x20,%rsp
1400214a3:	5b                   	pop    %rbx
1400214a4:	c3                   	ret
1400214a5:	cc                   	int3
1400214a6:	cc                   	int3
1400214a7:	cc                   	int3
1400214a8:	cc                   	int3
1400214a9:	cc                   	int3
1400214aa:	cc                   	int3
1400214ab:	cc                   	int3
1400214ac:	48 8b 41 e0          	mov    -0x20(%rcx),%rax
1400214b0:	4c 8b c9             	mov    %rcx,%r9
1400214b3:	48 63 50 04          	movslq 0x4(%rax),%rdx
1400214b7:	48 8d 05 c2 94 00 00 	lea    0x94c2(%rip),%rax        # 0x14002a980
1400214be:	48 89 44 0a e0       	mov    %rax,-0x20(%rdx,%rcx,1)
1400214c3:	48 8b 41 e0          	mov    -0x20(%rcx),%rax
1400214c7:	48 63 50 04          	movslq 0x4(%rax),%rdx
1400214cb:	44 8d 42 e0          	lea    -0x20(%rdx),%r8d
1400214cf:	44 89 44 0a dc       	mov    %r8d,-0x24(%rdx,%rcx,1)
1400214d4:	48 8b 41 f0          	mov    -0x10(%rcx),%rax
1400214d8:	48 63 50 04          	movslq 0x4(%rax),%rdx
1400214dc:	48 8d 05 85 94 00 00 	lea    0x9485(%rip),%rax        # 0x14002a968
1400214e3:	48 89 44 0a f0       	mov    %rax,-0x10(%rdx,%rcx,1)
1400214e8:	48 8b 41 f0          	mov    -0x10(%rcx),%rax
1400214ec:	48 63 48 04          	movslq 0x4(%rax),%rcx
1400214f0:	8d 51 f0             	lea    -0x10(%rcx),%edx
1400214f3:	42 89 54 09 ec       	mov    %edx,-0x14(%rcx,%r9,1)
1400214f8:	49 8b 41 e0          	mov    -0x20(%r9),%rax
1400214fc:	48 63 48 04          	movslq 0x4(%rax),%rcx
140021500:	48 8d 05 89 92 00 00 	lea    0x9289(%rip),%rax        # 0x14002a790
140021507:	4a 89 44 09 e0       	mov    %rax,-0x20(%rcx,%r9,1)
14002150c:	49 8b 41 e0          	mov    -0x20(%r9),%rax
140021510:	48 63 48 04          	movslq 0x4(%rax),%rcx
140021514:	8d 51 e8             	lea    -0x18(%rcx),%edx
140021517:	42 89 54 09 dc       	mov    %edx,-0x24(%rcx,%r9,1)
14002151c:	c3                   	ret
14002151d:	cc                   	int3