14002e158:	eb 0d                	jmp    0x14002e167
14002e15a:	4c 8b c0             	mov    %rax,%r8
14002e15d:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
14002e164:	48 d1 e8             	shr    $1,%rax
14002e167:	49 8d 50 ff          	lea    -0x1(%r8),%rdx
14002e16b:	48 03 d0             	add    %rax,%rdx
14002e16e:	48 89 51 40          	mov    %rdx,0x40(%rcx)
14002e172:	4c 8b c2             	mov    %rdx,%r8
14002e175:	8b 41 30             	mov    0x30(%rcx),%eax
14002e178:	85 c0                	test   %eax,%eax
14002e17a:	7f 05                	jg     0x14002e181
14002e17c:	4d 85 c9             	test   %r9,%r9
14002e17f:	74 1d                	je     0x14002e19e
14002e181:	ff c8                	dec    %eax
14002e183:	89 41 30             	mov    %eax,0x30(%rcx)
14002e186:	41 8a c1             	mov    %r9b,%al
14002e189:	24 07                	and    $0x7,%al
14002e18b:	49 c1 e9 03          	shr    $0x3,%r9
14002e18f:	04 30                	add    $0x30,%al
14002e191:	41 88 00             	mov    %al,(%r8)
14002e194:	48 ff 49 40          	decq   0x40(%rcx)
14002e198:	4c 8b 41 40          	mov    0x40(%rcx),%r8
14002e19c:	eb d7                	jmp    0x14002e175
14002e19e:	2b 51 40             	sub    0x40(%rcx),%edx
14002e1a1:	49 8d 40 01          	lea    0x1(%r8),%rax
14002e1a5:	89 51 48             	mov    %edx,0x48(%rcx)
14002e1a8:	48 89 41 40          	mov    %rax,0x40(%rcx)
14002e1ac:	c3                   	ret
14002e1ad:	cc                   	int3
14002e1ae:	cc                   	int3
14002e1af:	cc                   	int3
14002e1b0:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
14002e1b7:	4c 8b c1             	mov    %rcx,%r8
14002e1ba:	48 83 c1 50          	add    $0x50,%rcx
14002e1be:	48 85 c0             	test   %rax,%rax
14002e1c1:	75 07                	jne    0x14002e1ca
14002e1c3:	b8 00 01 00 00       	mov    $0x100,%eax
14002e1c8:	eb 0e                	jmp    0x14002e1d8
14002e1ca:	48 8b c8             	mov    %rax,%rcx
14002e1cd:	49 8b 80 50 04 00 00 	mov    0x450(%r8),%rax
14002e1d4:	48 c1 e8 02          	shr    $0x2,%rax
14002e1d8:	48 8d 0c 41          	lea    (%rcx,%rax,2),%rcx
14002e1dc:	48 83 c1 fe          	add    $0xfffffffffffffffe,%rcx
14002e1e0:	49 89 48 40          	mov    %rcx,0x40(%r8)
14002e1e4:	48 8b c1             	mov    %rcx,%rax
14002e1e7:	4c 8b d9             	mov    %rcx,%r11
14002e1ea:	45 8b 50 30          	mov    0x30(%r8),%r10d
14002e1ee:	4c 8b ca             	mov    %rdx,%r9
14002e1f1:	45 85 d2             	test   %r10d,%r10d
14002e1f4:	7f 05                	jg     0x14002e1fb
14002e1f6:	48 85 d2             	test   %rdx,%rdx
14002e1f9:	74 28                	je     0x14002e223
14002e1fb:	66 41 83 e1 07       	and    $0x7,%r9w
14002e200:	48 c1 ea 03          	shr    $0x3,%rdx
14002e204:	41 8d 42 ff          	lea    -0x1(%r10),%eax
14002e208:	66 41 83 c1 30       	add    $0x30,%r9w
14002e20d:	41 89 40 30          	mov    %eax,0x30(%r8)
14002e211:	66 45 89 0b          	mov    %r9w,(%r11)
14002e215:	49 83 40 40 fe       	addq   $0xfffffffffffffffe,0x40(%r8)
14002e21a:	49 8b 40 40          	mov    0x40(%r8),%rax
14002e21e:	4c 8b d8             	mov    %rax,%r11
14002e221:	eb c7                	jmp    0x14002e1ea
14002e223:	48 2b c8             	sub    %rax,%rcx
14002e226:	48 83 c0 02          	add    $0x2,%rax
14002e22a:	48 d1 f9             	sar    $1,%rcx
14002e22d:	41 89 48 48          	mov    %ecx,0x48(%r8)
14002e231:	49 89 40 40          	mov    %rax,0x40(%r8)
14002e235:	c3                   	ret
14002e236:	cc                   	int3
14002e237:	cc                   	int3
14002e238:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14002e23d:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
14002e244:	4c 8b c9             	mov    %rcx,%r9
14002e247:	48 83 c1 50          	add    $0x50,%rcx
14002e24b:	41 8a d8             	mov    %r8b,%bl
14002e24e:	4c 8b da             	mov    %rdx,%r11
14002e251:	48 85 c0             	test   %rax,%rax
14002e254:	75 07                	jne    0x14002e25d
14002e256:	b8 00 02 00 00       	mov    $0x200,%eax
14002e25b:	eb 0d                	jmp    0x14002e26a
14002e25d:	48 8b c8             	mov    %rax,%rcx
14002e260:	49 8b 81 50 04 00 00 	mov    0x450(%r9),%rax
14002e267:	48 d1 e8             	shr    $1,%rax
14002e26a:	4c 8d 41 ff          	lea    -0x1(%rcx),%r8
14002e26e:	4c 03 c0             	add    %rax,%r8
14002e271:	4d 89 41 40          	mov    %r8,0x40(%r9)
14002e275:	4d 8b d0             	mov    %r8,%r10
14002e278:	41 8b 41 30          	mov    0x30(%r9),%eax
14002e27c:	85 c0                	test   %eax,%eax
14002e27e:	7f 05                	jg     0x14002e285
14002e280:	4d 85 db             	test   %r11,%r11
14002e283:	74 4d                	je     0x14002e2d2
14002e285:	ff c8                	dec    %eax
14002e287:	41 89 41 30          	mov    %eax,0x30(%r9)
14002e28b:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
14002e292:	cc cc cc
14002e295:	49 f7 e3             	mul    %r11
14002e298:	48 c1 ea 03          	shr    $0x3,%rdx
14002e29c:	8a c2                	mov    %dl,%al
14002e29e:	c0 e0 02             	shl    $0x2,%al
14002e2a1:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
14002e2a4:	02 c9                	add    %cl,%cl
14002e2a6:	44 2a d9             	sub    %cl,%r11b
14002e2a9:	41 80 c3 30          	add    $0x30,%r11b
14002e2ad:	41 8a c3             	mov    %r11b,%al
14002e2b0:	41 8a cb             	mov    %r11b,%cl
14002e2b3:	4c 8b da             	mov    %rdx,%r11
14002e2b6:	3c 39                	cmp    $0x39,%al
14002e2b8:	7e 0b                	jle    0x14002e2c5
14002e2ba:	8a c3                	mov    %bl,%al
14002e2bc:	34 01                	xor    $0x1,%al
14002e2be:	c0 e0 05             	shl    $0x5,%al
14002e2c1:	04 07                	add    $0x7,%al
14002e2c3:	02 c1                	add    %cl,%al
14002e2c5:	41 88 02             	mov    %al,(%r10)
14002e2c8:	49 ff 49 40          	decq   0x40(%r9)
14002e2cc:	4d 8b 51 40          	mov    0x40(%r9),%r10
14002e2d0:	eb a6                	jmp    0x14002e278
14002e2d2:	45 2b 41 40          	sub    0x40(%r9),%r8d
14002e2d6:	49 8d 42 01          	lea    0x1(%r10),%rax
14002e2da:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14002e2df:	45 89 41 48          	mov    %r8d,0x48(%r9)
14002e2e3:	49 89 41 40          	mov    %rax,0x40(%r9)
14002e2e7:	c3                   	ret
14002e2e8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14002e2ed:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
14002e2f4:	4c 8b c9             	mov    %rcx,%r9
14002e2f7:	48 83 c1 50          	add    $0x50,%rcx
14002e2fb:	41 8a d8             	mov    %r8b,%bl
14002e2fe:	4c 8b d2             	mov    %rdx,%r10
14002e301:	48 85 c0             	test   %rax,%rax
14002e304:	75 07                	jne    0x14002e30d
14002e306:	b8 00 01 00 00       	mov    $0x100,%eax
14002e30b:	eb 0e                	jmp    0x14002e31b
14002e30d:	48 8b c8             	mov    %rax,%rcx
14002e310:	49 8b 81 50 04 00 00 	mov    0x450(%r9),%rax
14002e317:	48 c1 e8 02          	shr    $0x2,%rax
14002e31b:	48 8d 40 ff          	lea    -0x1(%rax),%rax
14002e31f:	4c 8d 04 41          	lea    (%rcx,%rax,2),%r8
14002e323:	4d 89 41 40          	mov    %r8,0x40(%r9)
14002e327:	49 8b c0             	mov    %r8,%rax
14002e32a:	4d 8b d8             	mov    %r8,%r11
14002e32d:	41 8b 49 30          	mov    0x30(%r9),%ecx
14002e331:	85 c9                	test   %ecx,%ecx
14002e333:	7f 05                	jg     0x14002e33a
14002e335:	4d 85 d2             	test   %r10,%r10
14002e338:	74 59                	je     0x14002e393
14002e33a:	8d 41 ff             	lea    -0x1(%rcx),%eax
14002e33d:	41 89 41 30          	mov    %eax,0x30(%r9)
14002e341:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
14002e348:	cc cc cc
14002e34b:	49 f7 e2             	mul    %r10
14002e34e:	48 c1 ea 03          	shr    $0x3,%rdx
14002e352:	0f b7 c2             	movzwl %dx,%eax
14002e355:	66 c1 e0 02          	shl    $0x2,%ax
14002e359:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
14002e35c:	66 03 c9             	add    %cx,%cx
14002e35f:	66 44 2b d1          	sub    %cx,%r10w
14002e363:	41 8d 4a 30          	lea    0x30(%r10),%ecx
14002e367:	4c 8b d2             	mov    %rdx,%r10
14002e36a:	66 83 f9 39          	cmp    $0x39,%cx
14002e36e:	76 0e                	jbe    0x14002e37e
14002e370:	8a c3                	mov    %bl,%al
14002e372:	34 01                	xor    $0x1,%al
14002e374:	c0 e0 05             	shl    $0x5,%al
14002e377:	04 07                	add    $0x7,%al
14002e379:	02 c1                	add    %cl,%al
14002e37b:	0f be c8             	movsbl %al,%ecx
14002e37e:	0f be c1             	movsbl %cl,%eax
14002e381:	66 41 89 03          	mov    %ax,(%r11)
14002e385:	49 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%r9)
14002e38a:	49 8b 41 40          	mov    0x40(%r9),%rax
14002e38e:	4c 8b d8             	mov    %rax,%r11
14002e391:	eb 9a                	jmp    0x14002e32d
14002e393:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14002e398:	4c 2b c0             	sub    %rax,%r8
14002e39b:	49 d1 f8             	sar    $1,%r8
14002e39e:	48 83 c0 02          	add    $0x2,%rax
14002e3a2:	45 89 41 48          	mov    %r8d,0x48(%r9)
14002e3a6:	49 89 41 40          	mov    %rax,0x40(%r9)
14002e3aa:	c3                   	ret
14002e3ab:	cc                   	int3
14002e3ac:	4c 8d 49 50          	lea    0x50(%rcx),%r9
14002e3b0:	45 8a d8             	mov    %r8b,%r11b
14002e3b3:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
14002e3ba:	4c 8b d2             	mov    %rdx,%r10
14002e3bd:	48 85 c0             	test   %rax,%rax
14002e3c0:	75 07                	jne    0x14002e3c9
14002e3c2:	b8 00 02 00 00       	mov    $0x200,%eax
14002e3c7:	eb 0d                	jmp    0x14002e3d6
14002e3c9:	4c 8b c8             	mov    %rax,%r9
14002e3cc:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
14002e3d3:	48 d1 e8             	shr    $1,%rax
14002e3d6:	49 8d 51 ff          	lea    -0x1(%r9),%rdx
14002e3da:	48 03 d0             	add    %rax,%rdx
14002e3dd:	48 89 51 40          	mov    %rdx,0x40(%rcx)
14002e3e1:	4c 8b c2             	mov    %rdx,%r8
14002e3e4:	8b 41 30             	mov    0x30(%rcx),%eax
14002e3e7:	85 c0                	test   %eax,%eax
14002e3e9:	7f 05                	jg     0x14002e3f0
14002e3eb:	4d 85 d2             	test   %r10,%r10
14002e3ee:	74 31                	je     0x14002e421
14002e3f0:	ff c8                	dec    %eax
14002e3f2:	89 41 30             	mov    %eax,0x30(%rcx)
14002e3f5:	41 8a c2             	mov    %r10b,%al
14002e3f8:	24 0f                	and    $0xf,%al
14002e3fa:	49 c1 ea 04          	shr    $0x4,%r10
14002e3fe:	04 30                	add    $0x30,%al
14002e400:	44 8a c8             	mov    %al,%r9b
14002e403:	3c 39                	cmp    $0x39,%al
14002e405:	76 0d                	jbe    0x14002e414
14002e407:	41 8a c3             	mov    %r11b,%al
14002e40a:	34 01                	xor    $0x1,%al
14002e40c:	c0 e0 05             	shl    $0x5,%al
14002e40f:	04 07                	add    $0x7,%al
14002e411:	41 02 c1             	add    %r9b,%al
14002e414:	41 88 00             	mov    %al,(%r8)
14002e417:	48 ff 49 40          	decq   0x40(%rcx)
14002e41b:	4c 8b 41 40          	mov    0x40(%rcx),%r8
14002e41f:	eb c3                	jmp    0x14002e3e4
14002e421:	2b 51 40             	sub    0x40(%rcx),%edx
14002e424:	49 8d 40 01          	lea    0x1(%r8),%rax
14002e428:	89 51 48             	mov    %edx,0x48(%rcx)
14002e42b:	48 89 41 40          	mov    %rax,0x40(%rcx)
14002e42f:	c3                   	ret
14002e430:	4c 8d 49 50          	lea    0x50(%rcx),%r9
14002e434:	45 8a d8             	mov    %r8b,%r11b
14002e437:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
14002e43e:	4c 8b d2             	mov    %rdx,%r10
14002e441:	48 85 c0             	test   %rax,%rax
14002e444:	75 07                	jne    0x14002e44d
14002e446:	b8 00 01 00 00       	mov    $0x100,%eax
14002e44b:	eb 0e                	jmp    0x14002e45b
14002e44d:	4c 8b c8             	mov    %rax,%r9
14002e450:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
14002e457:	48 c1 e8 02          	shr    $0x2,%rax
14002e45b:	48 8d 40 ff          	lea    -0x1(%rax),%rax
14002e45f:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
14002e463:	48 89 51 40          	mov    %rdx,0x40(%rcx)
14002e467:	48 8b c2             	mov    %rdx,%rax
14002e46a:	4c 8b ca             	mov    %rdx,%r9
14002e46d:	44 8b 41 30          	mov    0x30(%rcx),%r8d
14002e471:	45 85 c0             	test   %r8d,%r8d
14002e474:	7f 05                	jg     0x14002e47b
14002e476:	4d 85 d2             	test   %r10,%r10
14002e479:	74 43                	je     0x14002e4be
14002e47b:	41 8d 40 ff          	lea    -0x1(%r8),%eax
14002e47f:	45 0f b7 c2          	movzwl %r10w,%r8d
14002e483:	66 41 83 e0 0f       	and    $0xf,%r8w
14002e488:	49 c1 ea 04          	shr    $0x4,%r10
14002e48c:	66 41 83 c0 30       	add    $0x30,%r8w
14002e491:	89 41 30             	mov    %eax,0x30(%rcx)
14002e494:	66 41 83 f8 39       	cmp    $0x39,%r8w
14002e499:	76 11                	jbe    0x14002e4ac
14002e49b:	41 8a c3             	mov    %r11b,%al
14002e49e:	34 01                	xor    $0x1,%al
14002e4a0:	c0 e0 05             	shl    $0x5,%al
14002e4a3:	04 07                	add    $0x7,%al
14002e4a5:	41 02 c0             	add    %r8b,%al
14002e4a8:	44 0f b6 c0          	movzbl %al,%r8d
14002e4ac:	66 45 89 01          	mov    %r8w,(%r9)
14002e4b0:	48 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%rcx)
14002e4b5:	48 8b 41 40          	mov    0x40(%rcx),%rax
14002e4b9:	4c 8b c8             	mov    %rax,%r9
14002e4bc:	eb af                	jmp    0x14002e46d
14002e4be:	48 2b d0             	sub    %rax,%rdx
14002e4c1:	48 83 c0 02          	add    $0x2,%rax
14002e4c5:	48 d1 fa             	sar    $1,%rdx
14002e4c8:	89 51 48             	mov    %edx,0x48(%rcx)
14002e4cb:	48 89 41 40          	mov    %rax,0x40(%rcx)
14002e4cf:	c3                   	ret
14002e4d0:	48 8b 02             	mov    (%rdx),%rax
14002e4d3:	48 8b 90 f8 00 00 00 	mov    0xf8(%rax),%rdx
14002e4da:	48 8b 02             	mov    (%rdx),%rax
14002e4dd:	44 8a 08             	mov    (%rax),%r9b
14002e4e0:	8a 01                	mov    (%rcx),%al
14002e4e2:	84 c0                	test   %al,%al
14002e4e4:	74 14                	je     0x14002e4fa
14002e4e6:	8a d0                	mov    %al,%dl
14002e4e8:	8a c2                	mov    %dl,%al
14002e4ea:	41 3a d1             	cmp    %r9b,%dl
14002e4ed:	74 0b                	je     0x14002e4fa
14002e4ef:	48 ff c1             	inc    %rcx
14002e4f2:	8a 01                	mov    (%rcx),%al
14002e4f4:	8a d0                	mov    %al,%dl
14002e4f6:	84 c0                	test   %al,%al
14002e4f8:	75 ee                	jne    0x14002e4e8
14002e4fa:	48 ff c1             	inc    %rcx
14002e4fd:	84 c0                	test   %al,%al
14002e4ff:	74 38                	je     0x14002e539
14002e501:	eb 09                	jmp    0x14002e50c
14002e503:	2c 45                	sub    $0x45,%al
14002e505:	a8 df                	test   $0xdf,%al
14002e507:	74 09                	je     0x14002e512
14002e509:	48 ff c1             	inc    %rcx
14002e50c:	8a 01                	mov    (%rcx),%al
14002e50e:	84 c0                	test   %al,%al
14002e510:	75 f1                	jne    0x14002e503
14002e512:	4c 8b c1             	mov    %rcx,%r8
14002e515:	48 ff c9             	dec    %rcx
14002e518:	8a 01                	mov    (%rcx),%al
14002e51a:	3c 30                	cmp    $0x30,%al
14002e51c:	74 f7                	je     0x14002e515
14002e51e:	41 3a c1             	cmp    %r9b,%al
14002e521:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
14002e525:	48 0f 45 d1          	cmovne %rcx,%rdx
14002e529:	4c 2b c2             	sub    %rdx,%r8
14002e52c:	41 8a 04 10          	mov    (%r8,%rdx,1),%al
14002e530:	48 ff c2             	inc    %rdx
14002e533:	88 02                	mov    %al,(%rdx)
14002e535:	84 c0                	test   %al,%al
14002e537:	75 f3                	jne    0x14002e52c
14002e539:	c3                   	ret
14002e53a:	cc                   	int3
14002e53b:	cc                   	int3
14002e53c:	4c 8b dc             	mov    %rsp,%r11
14002e53f:	49 89 5b 10          	mov    %rbx,0x10(%r11)
14002e543:	49 89 6b 18          	mov    %rbp,0x18(%r11)
14002e547:	49 89 73 20          	mov    %rsi,0x20(%r11)
14002e54b:	57                   	push   %rdi
14002e54c:	48 83 ec 30          	sub    $0x30,%rsp
14002e550:	48 8b 69 08          	mov    0x8(%rcx),%rbp
14002e554:	48 8b f1             	mov    %rcx,%rsi
14002e557:	48 8b 41 10          	mov    0x10(%rcx),%rax
14002e55b:	48 8b fa             	mov    %rdx,%rdi
14002e55e:	49 8d 4b 08          	lea    0x8(%r11),%rcx
14002e562:	48 ff c8             	dec    %rax
14002e565:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
14002e569:	49 8d 53 e8          	lea    -0x18(%r11),%rdx
14002e56d:	48 8b 5d 2c          	mov    0x2c(%rbp),%rbx
14002e571:	41 b1 01             	mov    $0x1,%r9b
14002e574:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
14002e57a:	49 89 43 08          	mov    %rax,0x8(%r11)
14002e57e:	48 8b cd             	mov    %rbp,%rcx
14002e581:	49 89 43 e8          	mov    %rax,-0x18(%r11)
14002e585:	e8 d6 e1 ff ff       	call   0x14002c760
14002e58a:	89 07                	mov    %eax,(%rdi)
14002e58c:	33 c9                	xor    %ecx,%ecx
14002e58e:	48 8b 46 08          	mov    0x8(%rsi),%rax
14002e592:	38 48 30             	cmp    %cl,0x30(%rax)
14002e595:	74 06                	je     0x14002e59d
14002e597:	83 78 2c 22          	cmpl   $0x22,0x2c(%rax)
14002e59b:	74 11                	je     0x14002e5ae
14002e59d:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14002e5a2:	48 3b 46 10          	cmp    0x10(%rsi),%rax
14002e5a6:	72 06                	jb     0x14002e5ae
14002e5a8:	48 89 46 10          	mov    %rax,0x10(%rsi)
14002e5ac:	b1 01                	mov    $0x1,%cl
14002e5ae:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14002e5b3:	8a c1                	mov    %cl,%al