1400073f2:	0f be c1             	movsbl %cl,%eax
1400073f5:	66 41 89 03          	mov    %ax,(%r11)
1400073f9:	49 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%r9)
1400073fe:	49 8b 41 40          	mov    0x40(%r9),%rax
140007402:	4c 8b d8             	mov    %rax,%r11
140007405:	eb 9a                	jmp    0x1400073a1
140007407:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14000740c:	4c 2b c0             	sub    %rax,%r8
14000740f:	49 d1 f8             	sar    $1,%r8
140007412:	48 83 c0 02          	add    $0x2,%rax
140007416:	45 89 41 48          	mov    %r8d,0x48(%r9)
14000741a:	49 89 41 40          	mov    %rax,0x40(%r9)
14000741e:	c3                   	ret
14000741f:	cc                   	int3
140007420:	4c 8d 49 50          	lea    0x50(%rcx),%r9
140007424:	45 8a d8             	mov    %r8b,%r11b
140007427:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
14000742e:	4c 8b d2             	mov    %rdx,%r10
140007431:	48 85 c0             	test   %rax,%rax
140007434:	75 07                	jne    0x14000743d
140007436:	b8 00 01 00 00       	mov    $0x100,%eax
14000743b:	eb 0e                	jmp    0x14000744b
14000743d:	4c 8b c8             	mov    %rax,%r9
140007440:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
140007447:	48 c1 e8 02          	shr    $0x2,%rax
14000744b:	48 8d 40 ff          	lea    -0x1(%rax),%rax
14000744f:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
140007453:	48 89 51 40          	mov    %rdx,0x40(%rcx)
140007457:	48 8b c2             	mov    %rdx,%rax
14000745a:	4c 8b ca             	mov    %rdx,%r9
14000745d:	44 8b 41 30          	mov    0x30(%rcx),%r8d
140007461:	45 85 c0             	test   %r8d,%r8d
140007464:	7f 05                	jg     0x14000746b
140007466:	4d 85 d2             	test   %r10,%r10
140007469:	74 43                	je     0x1400074ae
14000746b:	41 8d 40 ff          	lea    -0x1(%r8),%eax
14000746f:	45 0f b7 c2          	movzwl %r10w,%r8d
140007473:	66 41 83 e0 0f       	and    $0xf,%r8w
140007478:	49 c1 ea 04          	shr    $0x4,%r10
14000747c:	66 41 83 c0 30       	add    $0x30,%r8w
140007481:	89 41 30             	mov    %eax,0x30(%rcx)
140007484:	66 41 83 f8 39       	cmp    $0x39,%r8w
140007489:	76 11                	jbe    0x14000749c
14000748b:	41 8a c3             	mov    %r11b,%al
14000748e:	34 01                	xor    $0x1,%al
140007490:	c0 e0 05             	shl    $0x5,%al
140007493:	04 07                	add    $0x7,%al
140007495:	41 02 c0             	add    %r8b,%al
140007498:	44 0f b6 c0          	movzbl %al,%r8d
14000749c:	66 45 89 01          	mov    %r8w,(%r9)
1400074a0:	48 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%rcx)
1400074a5:	48 8b 41 40          	mov    0x40(%rcx),%rax
1400074a9:	4c 8b c8             	mov    %rax,%r9
1400074ac:	eb af                	jmp    0x14000745d
1400074ae:	48 2b d0             	sub    %rax,%rdx
1400074b1:	48 83 c0 02          	add    $0x2,%rax
1400074b5:	48 d1 fa             	sar    $1,%rdx
1400074b8:	89 51 48             	mov    %edx,0x48(%rcx)
1400074bb:	48 89 41 40          	mov    %rax,0x40(%rcx)
1400074bf:	c3                   	ret
1400074c0:	4c 8d 49 50          	lea    0x50(%rcx),%r9
1400074c4:	45 8a d8             	mov    %r8b,%r11b
1400074c7:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
1400074ce:	4c 8b d2             	mov    %rdx,%r10
1400074d1:	48 85 c0             	test   %rax,%rax
1400074d4:	75 07                	jne    0x1400074dd
1400074d6:	b8 00 01 00 00       	mov    $0x100,%eax
1400074db:	eb 0e                	jmp    0x1400074eb
1400074dd:	4c 8b c8             	mov    %rax,%r9
1400074e0:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1400074e7:	48 c1 e8 02          	shr    $0x2,%rax
1400074eb:	48 8d 40 ff          	lea    -0x1(%rax),%rax
1400074ef:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
1400074f3:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1400074f7:	48 8b c2             	mov    %rdx,%rax
1400074fa:	4c 8b ca             	mov    %rdx,%r9
1400074fd:	44 8b 41 30          	mov    0x30(%rcx),%r8d
140007501:	45 85 c0             	test   %r8d,%r8d
140007504:	7f 05                	jg     0x14000750b
140007506:	4d 85 d2             	test   %r10,%r10
140007509:	74 43                	je     0x14000754e
14000750b:	41 8d 40 ff          	lea    -0x1(%r8),%eax
14000750f:	45 0f b7 c2          	movzwl %r10w,%r8d
140007513:	66 41 83 e0 0f       	and    $0xf,%r8w
140007518:	49 c1 ea 04          	shr    $0x4,%r10
14000751c:	66 41 83 c0 30       	add    $0x30,%r8w
140007521:	89 41 30             	mov    %eax,0x30(%rcx)
140007524:	66 41 83 f8 39       	cmp    $0x39,%r8w
140007529:	76 11                	jbe    0x14000753c
14000752b:	41 8a c3             	mov    %r11b,%al
14000752e:	34 01                	xor    $0x1,%al
140007530:	c0 e0 05             	shl    $0x5,%al
140007533:	04 07                	add    $0x7,%al
140007535:	41 02 c0             	add    %r8b,%al
140007538:	44 0f b6 c0          	movzbl %al,%r8d
14000753c:	66 45 89 01          	mov    %r8w,(%r9)
140007540:	48 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%rcx)
140007545:	48 8b 41 40          	mov    0x40(%rcx),%rax
140007549:	4c 8b c8             	mov    %rax,%r9
14000754c:	eb af                	jmp    0x1400074fd
14000754e:	48 2b d0             	sub    %rax,%rdx
140007551:	48 83 c0 02          	add    $0x2,%rax
140007555:	48 d1 fa             	sar    $1,%rdx
140007558:	89 51 48             	mov    %edx,0x48(%rcx)
14000755b:	48 89 41 40          	mov    %rax,0x40(%rcx)
14000755f:	c3                   	ret
140007560:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140007565:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14000756a:	55                   	push   %rbp
14000756b:	57                   	push   %rdi
14000756c:	41 54                	push   %r12
14000756e:	41 56                	push   %r14
140007570:	41 57                	push   %r15
140007572:	48 8d ac 24 60 fc ff 	lea    -0x3a0(%rsp),%rbp
140007579:	ff
14000757a:	48 81 ec a0 04 00 00 	sub    $0x4a0,%rsp
140007581:	48 8b 05 78 da 01 00 	mov    0x1da78(%rip),%rax        # 0x140025000
140007588:	48 33 c4             	xor    %rsp,%rax
14000758b:	48 89 85 90 03 00 00 	mov    %rax,0x390(%rbp)
140007592:	48 8b 01             	mov    (%rcx),%rax
140007595:	48 8b d9             	mov    %rcx,%rbx
140007598:	4c 8b 71 08          	mov    0x8(%rcx),%r14
14000759c:	4c 8b 38             	mov    (%rax),%r15
14000759f:	49 8b cf             	mov    %r15,%rcx
1400075a2:	e8 65 62 00 00       	call   0x14000d80c
1400075a7:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
1400075ab:	45 33 e4             	xor    %r12d,%r12d
1400075ae:	4c 8b 0b             	mov    (%rbx),%r9
1400075b1:	0f 57 c0             	xorps  %xmm0,%xmm0
1400075b4:	40 8a f0             	mov    %al,%sil
1400075b7:	48 8b 39             	mov    (%rcx),%rdi
1400075ba:	4d 8b 09             	mov    (%r9),%r9
1400075bd:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
1400075c1:	4c 8b 19             	mov    (%rcx),%r11
1400075c4:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1400075c8:	4c 8b 11             	mov    (%rcx),%r10
1400075cb:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400075cf:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1400075d4:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1400075d9:	44 89 64 24 40       	mov    %r12d,0x40(%rsp)
1400075de:	44 88 64 24 44       	mov    %r12b,0x44(%rsp)
1400075e3:	4c 89 64 24 48       	mov    %r12,0x48(%rsp)
1400075e8:	44 89 64 24 50       	mov    %r12d,0x50(%rsp)
1400075ed:	44 88 64 24 58       	mov    %r12b,0x58(%rsp)
1400075f2:	66 44 89 64 24 5a    	mov    %r12w,0x5a(%rsp)
1400075f8:	44 89 64 24 68       	mov    %r12d,0x68(%rsp)
1400075fd:	44 88 64 24 6c       	mov    %r12b,0x6c(%rsp)
140007602:	66 0f 7f 85 70 03 00 	movdqa %xmm0,0x370(%rbp)
140007609:	00
14000760a:	4c 89 8d 80 03 00 00 	mov    %r9,0x380(%rbp)
140007611:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
140007616:	4c 89 5c 24 30       	mov    %r11,0x30(%rsp)
14000761b:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140007620:	44 89 a5 88 03 00 00 	mov    %r12d,0x388(%rbp)
140007627:	e8 4c 02 00 00       	call   0x140007878
14000762c:	48 8b 8d 78 03 00 00 	mov    0x378(%rbp),%rcx
140007633:	8b d8                	mov    %eax,%ebx
140007635:	e8 f6 46 00 00       	call   0x14000bd30
14000763a:	4d 8b c6             	mov    %r14,%r8
14000763d:	4c 89 a5 78 03 00 00 	mov    %r12,0x378(%rbp)
140007644:	49 8b d7             	mov    %r15,%rdx
140007647:	40 8a ce             	mov    %sil,%cl
14000764a:	e8 85 62 00 00       	call   0x14000d8d4
14000764f:	8b c3                	mov    %ebx,%eax
140007651:	48 8b 8d 90 03 00 00 	mov    0x390(%rbp),%rcx
140007658:	48 33 cc             	xor    %rsp,%rcx
14000765b:	e8 90 a7 ff ff       	call   0x140001df0
140007660:	4c 8d 9c 24 a0 04 00 	lea    0x4a0(%rsp),%r11
140007667:	00
140007668:	49 8b 5b 38          	mov    0x38(%r11),%rbx
14000766c:	49 8b 73 40          	mov    0x40(%r11),%rsi
140007670:	49 8b e3             	mov    %r11,%rsp
140007673:	41 5f                	pop    %r15
140007675:	41 5e                	pop    %r14
140007677:	41 5c                	pop    %r12
140007679:	5f                   	pop    %rdi
14000767a:	5d                   	pop    %rbp
14000767b:	c3                   	ret
14000767c:	48 8b 02             	mov    (%rdx),%rax
14000767f:	48 8b 90 f8 00 00 00 	mov    0xf8(%rax),%rdx
140007686:	48 8b 02             	mov    (%rdx),%rax
140007689:	44 8a 08             	mov    (%rax),%r9b
14000768c:	8a 01                	mov    (%rcx),%al
14000768e:	84 c0                	test   %al,%al
140007690:	74 14                	je     0x1400076a6
140007692:	8a d0                	mov    %al,%dl
140007694:	8a c2                	mov    %dl,%al
140007696:	41 3a d1             	cmp    %r9b,%dl
140007699:	74 0b                	je     0x1400076a6
14000769b:	48 ff c1             	inc    %rcx
14000769e:	8a 01                	mov    (%rcx),%al
1400076a0:	8a d0                	mov    %al,%dl
1400076a2:	84 c0                	test   %al,%al
1400076a4:	75 ee                	jne    0x140007694
1400076a6:	48 ff c1             	inc    %rcx
1400076a9:	84 c0                	test   %al,%al
1400076ab:	74 38                	je     0x1400076e5
1400076ad:	eb 09                	jmp    0x1400076b8
1400076af:	2c 45                	sub    $0x45,%al
1400076b1:	a8 df                	test   $0xdf,%al
1400076b3:	74 09                	je     0x1400076be
1400076b5:	48 ff c1             	inc    %rcx
1400076b8:	8a 01                	mov    (%rcx),%al
1400076ba:	84 c0                	test   %al,%al
1400076bc:	75 f1                	jne    0x1400076af
1400076be:	4c 8b c1             	mov    %rcx,%r8
1400076c1:	48 ff c9             	dec    %rcx
1400076c4:	8a 01                	mov    (%rcx),%al
1400076c6:	3c 30                	cmp    $0x30,%al
1400076c8:	74 f7                	je     0x1400076c1
1400076ca:	41 3a c1             	cmp    %r9b,%al
1400076cd:	48 8d 51 ff          	lea    -0x1(%rcx),%rdx
1400076d1:	48 0f 45 d1          	cmovne %rcx,%rdx
1400076d5:	4c 2b c2             	sub    %rdx,%r8
1400076d8:	41 8a 04 10          	mov    (%r8,%rdx,1),%al
1400076dc:	48 ff c2             	inc    %rdx
1400076df:	88 02                	mov    %al,(%rdx)
1400076e1:	84 c0                	test   %al,%al
1400076e3:	75 f3                	jne    0x1400076d8
1400076e5:	c3                   	ret
1400076e6:	cc                   	int3
1400076e7:	cc                   	int3
1400076e8:	cc                   	int3
1400076e9:	cc                   	int3
1400076ea:	cc                   	int3
1400076eb:	cc                   	int3
1400076ec:	cc                   	int3
1400076ed:	cc                   	int3
1400076ee:	cc                   	int3
1400076ef:	cc                   	int3
1400076f0:	40 57                	rex push %rdi
1400076f2:	48 83 ec 20          	sub    $0x20,%rsp
1400076f6:	48 83 39 00          	cmpq   $0x0,(%rcx)
1400076fa:	48 8b f9             	mov    %rcx,%rdi
1400076fd:	75 49                	jne    0x140007748
1400076ff:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
140007704:	ff 15 8e 09 01 00    	call   *0x1098e(%rip)        # 0x140018098
14000770a:	80 7f 10 00          	cmpb   $0x0,0x10(%rdi)
14000770e:	89 44 24 30          	mov    %eax,0x30(%rsp)
140007712:	75 0c                	jne    0x140007720
140007714:	33 d2                	xor    %edx,%edx
140007716:	c6 47 10 01          	movb   $0x1,0x10(%rdi)
14000771a:	48 89 57 08          	mov    %rdx,0x8(%rdi)
14000771e:	eb 04                	jmp    0x140007724
140007720:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140007724:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140007729:	e8 06 67 00 00       	call   0x14000de34
14000772e:	8b 4c 24 30          	mov    0x30(%rsp),%ecx
140007732:	48 8b d8             	mov    %rax,%rbx
140007735:	48 89 07             	mov    %rax,(%rdi)
140007738:	ff 15 32 0a 01 00    	call   *0x10a32(%rip)        # 0x140018170
14000773e:	48 85 db             	test   %rbx,%rbx
140007741:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140007746:	74 09                	je     0x140007751
140007748:	48 8b 07             	mov    (%rdi),%rax
14000774b:	48 83 c4 20          	add    $0x20,%rsp
14000774f:	5f                   	pop    %rdi
140007750:	c3                   	ret
140007751:	e8 12 40 00 00       	call   0x14000b768
140007756:	cc                   	int3
140007757:	cc                   	int3
140007758:	4c 8b dc             	mov    %rsp,%r11
14000775b:	49 89 5b 10          	mov    %rbx,0x10(%r11)
14000775f:	49 89 6b 18          	mov    %rbp,0x18(%r11)
140007763:	49 89 73 20          	mov    %rsi,0x20(%r11)
140007767:	57                   	push   %rdi
140007768:	48 83 ec 30          	sub    $0x30,%rsp
14000776c:	48 8b 69 08          	mov    0x8(%rcx),%rbp
140007770:	48 8b f1             	mov    %rcx,%rsi
140007773:	48 8b 41 10          	mov    0x10(%rcx),%rax
140007777:	48 8b fa             	mov    %rdx,%rdi
14000777a:	49 8d 4b 08          	lea    0x8(%r11),%rcx
14000777e:	48 83 c0 fe          	add    $0xfffffffffffffffe,%rax
140007782:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
140007786:	49 8d 53 e8          	lea    -0x18(%r11),%rdx
14000778a:	48 8b 5d 2c          	mov    0x2c(%rbp),%rbx
14000778e:	41 b1 01             	mov    $0x1,%r9b
140007791:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
140007797:	49 89 43 08          	mov    %rax,0x8(%r11)
14000779b:	48 8b cd             	mov    %rbp,%rcx
14000779e:	49 89 43 e8          	mov    %rax,-0x18(%r11)
1400077a2:	e8 65 e2 ff ff       	call   0x140005a0c
1400077a7:	89 07                	mov    %eax,(%rdi)
1400077a9:	33 c9                	xor    %ecx,%ecx
1400077ab:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400077af:	38 48 30             	cmp    %cl,0x30(%rax)
1400077b2:	74 06                	je     0x1400077ba
1400077b4:	83 78 2c 22          	cmpl   $0x22,0x2c(%rax)
1400077b8:	74 11                	je     0x1400077cb
1400077ba:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
1400077bf:	48 3b 46 10          	cmp    0x10(%rsi),%rax
1400077c3:	72 06                	jb     0x1400077cb
1400077c5:	48 89 46 10          	mov    %rax,0x10(%rsi)
1400077c9:	b1 01                	mov    $0x1,%cl
1400077cb:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
1400077d0:	8a c1                	mov    %cl,%al
1400077d2:	48 89 5d 2c          	mov    %rbx,0x2c(%rbp)
1400077d6:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1400077db:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
1400077e0:	48 83 c4 30          	add    $0x30,%rsp
1400077e4:	5f                   	pop    %rdi
1400077e5:	c3                   	ret
1400077e6:	cc                   	int3
1400077e7:	cc                   	int3
1400077e8:	4c 8b dc             	mov    %rsp,%r11
1400077eb:	49 89 5b 10          	mov    %rbx,0x10(%r11)
1400077ef:	49 89 6b 18          	mov    %rbp,0x18(%r11)
1400077f3:	49 89 73 20          	mov    %rsi,0x20(%r11)
1400077f7:	57                   	push   %rdi
1400077f8:	48 83 ec 30          	sub    $0x30,%rsp
1400077fc:	48 8b 69 08          	mov    0x8(%rcx),%rbp
140007800:	48 8b f1             	mov    %rcx,%rsi
140007803:	48 8b 41 10          	mov    0x10(%rcx),%rax
140007807:	48 8b fa             	mov    %rdx,%rdi
14000780a:	49 8d 4b 08          	lea    0x8(%r11),%rcx
14000780e:	48 83 c0 fe          	add    $0xfffffffffffffffe,%rax
140007812:	49 89 4b f0          	mov    %rcx,-0x10(%r11)
140007816:	49 8d 53 e8          	lea    -0x18(%r11),%rdx
14000781a:	48 8b 5d 2c          	mov    0x2c(%rbp),%rbx
14000781e:	41 b1 01             	mov    $0x1,%r9b
140007821:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
140007827:	49 89 43 08          	mov    %rax,0x8(%r11)
14000782b:	48 8b cd             	mov    %rbp,%rcx
14000782e:	49 89 43 e8          	mov    %rax,-0x18(%r11)
140007832:	e8 d5 e1 ff ff       	call   0x140005a0c
140007837:	89 07                	mov    %eax,(%rdi)
140007839:	33 c9                	xor    %ecx,%ecx
14000783b:	48 8b 46 08          	mov    0x8(%rsi),%rax
14000783f:	38 48 30             	cmp    %cl,0x30(%rax)
140007842:	74 06                	je     0x14000784a
140007844:	83 78 2c 22          	cmpl   $0x22,0x2c(%rax)
140007848:	74 11                	je     0x14000785b
14000784a:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14000784f:	48 3b 46 10          	cmp    0x10(%rsi),%rax
140007853:	72 06                	jb     0x14000785b
140007855:	48 89 46 10          	mov    %rax,0x10(%rsi)
140007859:	b1 01                	mov    $0x1,%cl
14000785b:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140007860:	8a c1                	mov    %cl,%al
140007862:	48 89 5d 2c          	mov    %rbx,0x2c(%rbp)
140007866:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
14000786b:	48 8b 6c 24 50       	mov    0x50(%rsp),%rbp
140007870:	48 83 c4 30          	add    $0x30,%rsp
140007874:	5f                   	pop    %rdi
140007875:	c3                   	ret
140007876:	cc                   	int3
140007877:	cc                   	int3
140007878:	48 8b c4             	mov    %rsp,%rax
14000787b:	48 89 58 08          	mov    %rbx,0x8(%rax)
14000787f:	48 89 68 10          	mov    %rbp,0x10(%rax)