1402b8601:	48 63 53 30          	movslq 0x30(%rbx),%rdx
1402b8605:	e8 2e e9 ff ff       	call   0x1402b6f38
1402b860a:	48 85 f6             	test   %rsi,%rsi
1402b860d:	75 04                	jne    0x1402b8613
1402b860f:	83 63 28 df          	andl   $0xffffffdf,0x28(%rbx)
1402b8613:	c6 43 4c 01          	movb   $0x1,0x4c(%rbx)
1402b8617:	44 8a c5             	mov    %bpl,%r8b
1402b861a:	48 8b cb             	mov    %rbx,%rcx
1402b861d:	49 3b fe             	cmp    %r14,%rdi
1402b8620:	75 0a                	jne    0x1402b862c
1402b8622:	48 8b d6             	mov    %rsi,%rdx
1402b8625:	e8 ca 06 00 00       	call   0x1402b8cf4
1402b862a:	eb 07                	jmp    0x1402b8633
1402b862c:	8b d6                	mov    %esi,%edx
1402b862e:	e8 31 03 00 00       	call   0x1402b8964
1402b8633:	8b 43 28             	mov    0x28(%rbx),%eax
1402b8636:	c1 e8 07             	shr    $0x7,%eax
1402b8639:	a8 01                	test   $0x1,%al
1402b863b:	74 23                	je     0x1402b8660
1402b863d:	83 7b 48 00          	cmpl   $0x0,0x48(%rbx)
1402b8641:	ba 30 00 00 00       	mov    $0x30,%edx
1402b8646:	74 09                	je     0x1402b8651
1402b8648:	48 8b 43 40          	mov    0x40(%rbx),%rax
1402b864c:	66 39 10             	cmp    %dx,(%rax)
1402b864f:	74 0f                	je     0x1402b8660
1402b8651:	48 83 43 40 fe       	addq   $0xfffffffffffffffe,0x40(%rbx)
1402b8656:	48 8b 4b 40          	mov    0x40(%rbx),%rcx
1402b865a:	66 89 11             	mov    %dx,(%rcx)
1402b865d:	ff 43 48             	incl   0x48(%rbx)
1402b8660:	b0 01                	mov    $0x1,%al
1402b8662:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1402b8667:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1402b866c:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1402b8671:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1402b8676:	48 83 c4 30          	add    $0x30,%rsp
1402b867a:	41 5e                	pop    %r14
1402b867c:	c3                   	ret
1402b867d:	cc                   	int3
1402b867e:	cc                   	int3
1402b867f:	cc                   	int3
1402b8680:	4c 8d 41 50          	lea    0x50(%rcx),%r8
1402b8684:	44 8b ca             	mov    %edx,%r9d
1402b8687:	49 8b 80 08 04 00 00 	mov    0x408(%r8),%rax
1402b868e:	48 85 c0             	test   %rax,%rax
1402b8691:	75 07                	jne    0x1402b869a
1402b8693:	b8 00 02 00 00       	mov    $0x200,%eax
1402b8698:	eb 0d                	jmp    0x1402b86a7
1402b869a:	4c 8b c0             	mov    %rax,%r8
1402b869d:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1402b86a4:	48 d1 e8             	shr    $1,%rax
1402b86a7:	49 8d 50 ff          	lea    -0x1(%r8),%rdx
1402b86ab:	48 03 d0             	add    %rax,%rdx
1402b86ae:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1402b86b2:	4c 8b c2             	mov    %rdx,%r8
1402b86b5:	8b 41 30             	mov    0x30(%rcx),%eax
1402b86b8:	85 c0                	test   %eax,%eax
1402b86ba:	7f 05                	jg     0x1402b86c1
1402b86bc:	45 85 c9             	test   %r9d,%r9d
1402b86bf:	74 1d                	je     0x1402b86de
1402b86c1:	ff c8                	dec    %eax
1402b86c3:	89 41 30             	mov    %eax,0x30(%rcx)
1402b86c6:	41 8a c1             	mov    %r9b,%al
1402b86c9:	24 07                	and    $0x7,%al
1402b86cb:	41 c1 e9 03          	shr    $0x3,%r9d
1402b86cf:	04 30                	add    $0x30,%al
1402b86d1:	41 88 00             	mov    %al,(%r8)
1402b86d4:	48 ff 49 40          	decq   0x40(%rcx)
1402b86d8:	4c 8b 41 40          	mov    0x40(%rcx),%r8
1402b86dc:	eb d7                	jmp    0x1402b86b5
1402b86de:	2b 51 40             	sub    0x40(%rcx),%edx
1402b86e1:	49 8d 40 01          	lea    0x1(%r8),%rax
1402b86e5:	89 51 48             	mov    %edx,0x48(%rcx)
1402b86e8:	48 89 41 40          	mov    %rax,0x40(%rcx)
1402b86ec:	c3                   	ret
1402b86ed:	cc                   	int3
1402b86ee:	cc                   	int3
1402b86ef:	cc                   	int3
1402b86f0:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
1402b86f7:	4c 8b c1             	mov    %rcx,%r8
1402b86fa:	48 83 c1 50          	add    $0x50,%rcx
1402b86fe:	48 85 c0             	test   %rax,%rax
1402b8701:	75 07                	jne    0x1402b870a
1402b8703:	b8 00 01 00 00       	mov    $0x100,%eax
1402b8708:	eb 0e                	jmp    0x1402b8718
1402b870a:	48 8b c8             	mov    %rax,%rcx
1402b870d:	49 8b 80 50 04 00 00 	mov    0x450(%r8),%rax
1402b8714:	48 c1 e8 02          	shr    $0x2,%rax
1402b8718:	48 8d 0c 41          	lea    (%rcx,%rax,2),%rcx
1402b871c:	48 83 c1 fe          	add    $0xfffffffffffffffe,%rcx
1402b8720:	49 89 48 40          	mov    %rcx,0x40(%r8)
1402b8724:	48 8b c1             	mov    %rcx,%rax
1402b8727:	4c 8b d9             	mov    %rcx,%r11
1402b872a:	45 8b 50 30          	mov    0x30(%r8),%r10d
1402b872e:	44 8b ca             	mov    %edx,%r9d
1402b8731:	45 85 d2             	test   %r10d,%r10d
1402b8734:	7f 04                	jg     0x1402b873a
1402b8736:	85 d2                	test   %edx,%edx
1402b8738:	74 27                	je     0x1402b8761
1402b873a:	66 41 83 e1 07       	and    $0x7,%r9w
1402b873f:	c1 ea 03             	shr    $0x3,%edx
1402b8742:	41 8d 42 ff          	lea    -0x1(%r10),%eax
1402b8746:	66 41 83 c1 30       	add    $0x30,%r9w
1402b874b:	41 89 40 30          	mov    %eax,0x30(%r8)
1402b874f:	66 45 89 0b          	mov    %r9w,(%r11)
1402b8753:	49 83 40 40 fe       	addq   $0xfffffffffffffffe,0x40(%r8)
1402b8758:	49 8b 40 40          	mov    0x40(%r8),%rax
1402b875c:	4c 8b d8             	mov    %rax,%r11
1402b875f:	eb c9                	jmp    0x1402b872a
1402b8761:	48 2b c8             	sub    %rax,%rcx
1402b8764:	48 83 c0 02          	add    $0x2,%rax
1402b8768:	48 d1 f9             	sar    $1,%rcx
1402b876b:	41 89 48 48          	mov    %ecx,0x48(%r8)
1402b876f:	49 89 40 40          	mov    %rax,0x40(%r8)
1402b8773:	c3                   	ret
1402b8774:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402b8779:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
1402b8780:	4c 8b c9             	mov    %rcx,%r9
1402b8783:	48 83 c1 50          	add    $0x50,%rcx
1402b8787:	41 8a d8             	mov    %r8b,%bl
1402b878a:	44 8b da             	mov    %edx,%r11d
1402b878d:	48 85 c0             	test   %rax,%rax
1402b8790:	75 07                	jne    0x1402b8799
1402b8792:	b8 00 02 00 00       	mov    $0x200,%eax
1402b8797:	eb 0d                	jmp    0x1402b87a6
1402b8799:	48 8b c8             	mov    %rax,%rcx
1402b879c:	49 8b 81 50 04 00 00 	mov    0x450(%r9),%rax
1402b87a3:	48 d1 e8             	shr    $1,%rax
1402b87a6:	4c 8d 41 ff          	lea    -0x1(%rcx),%r8
1402b87aa:	4c 03 c0             	add    %rax,%r8
1402b87ad:	4d 89 41 40          	mov    %r8,0x40(%r9)
1402b87b1:	4d 8b d0             	mov    %r8,%r10
1402b87b4:	41 8b 41 30          	mov    0x30(%r9),%eax
1402b87b8:	85 c0                	test   %eax,%eax
1402b87ba:	7f 05                	jg     0x1402b87c1
1402b87bc:	45 85 db             	test   %r11d,%r11d
1402b87bf:	74 47                	je     0x1402b8808
1402b87c1:	ff c8                	dec    %eax
1402b87c3:	41 89 41 30          	mov    %eax,0x30(%r9)
1402b87c7:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
1402b87cc:	41 f7 e3             	mul    %r11d
1402b87cf:	c1 ea 03             	shr    $0x3,%edx
1402b87d2:	8a c2                	mov    %dl,%al
1402b87d4:	c0 e0 02             	shl    $0x2,%al
1402b87d7:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
1402b87da:	02 c9                	add    %cl,%cl
1402b87dc:	44 2a d9             	sub    %cl,%r11b
1402b87df:	41 80 c3 30          	add    $0x30,%r11b
1402b87e3:	41 8a c3             	mov    %r11b,%al
1402b87e6:	41 8a cb             	mov    %r11b,%cl
1402b87e9:	44 8b da             	mov    %edx,%r11d
1402b87ec:	3c 39                	cmp    $0x39,%al
1402b87ee:	7e 0b                	jle    0x1402b87fb
1402b87f0:	8a c3                	mov    %bl,%al
1402b87f2:	34 01                	xor    $0x1,%al
1402b87f4:	c0 e0 05             	shl    $0x5,%al
1402b87f7:	04 07                	add    $0x7,%al
1402b87f9:	02 c1                	add    %cl,%al
1402b87fb:	41 88 02             	mov    %al,(%r10)
1402b87fe:	49 ff 49 40          	decq   0x40(%r9)
1402b8802:	4d 8b 51 40          	mov    0x40(%r9),%r10
1402b8806:	eb ac                	jmp    0x1402b87b4
1402b8808:	45 2b 41 40          	sub    0x40(%r9),%r8d
1402b880c:	49 8d 42 01          	lea    0x1(%r10),%rax
1402b8810:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1402b8815:	45 89 41 48          	mov    %r8d,0x48(%r9)
1402b8819:	49 89 41 40          	mov    %rax,0x40(%r9)
1402b881d:	c3                   	ret
1402b881e:	cc                   	int3
1402b881f:	cc                   	int3
1402b8820:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1402b8825:	48 8b 81 58 04 00 00 	mov    0x458(%rcx),%rax
1402b882c:	4c 8b c9             	mov    %rcx,%r9
1402b882f:	48 83 c1 50          	add    $0x50,%rcx
1402b8833:	41 8a d8             	mov    %r8b,%bl
1402b8836:	44 8b d2             	mov    %edx,%r10d
1402b8839:	48 85 c0             	test   %rax,%rax
1402b883c:	75 07                	jne    0x1402b8845
1402b883e:	b8 00 01 00 00       	mov    $0x100,%eax
1402b8843:	eb 0e                	jmp    0x1402b8853
1402b8845:	48 8b c8             	mov    %rax,%rcx
1402b8848:	49 8b 81 50 04 00 00 	mov    0x450(%r9),%rax
1402b884f:	48 c1 e8 02          	shr    $0x2,%rax
1402b8853:	48 8d 40 ff          	lea    -0x1(%rax),%rax
1402b8857:	4c 8d 04 41          	lea    (%rcx,%rax,2),%r8
1402b885b:	4d 89 41 40          	mov    %r8,0x40(%r9)
1402b885f:	49 8b c0             	mov    %r8,%rax
1402b8862:	4d 8b d8             	mov    %r8,%r11
1402b8865:	41 8b 49 30          	mov    0x30(%r9),%ecx
1402b8869:	85 c9                	test   %ecx,%ecx
1402b886b:	7f 05                	jg     0x1402b8872
1402b886d:	45 85 d2             	test   %r10d,%r10d
1402b8870:	74 53                	je     0x1402b88c5
1402b8872:	8d 41 ff             	lea    -0x1(%rcx),%eax
1402b8875:	41 89 41 30          	mov    %eax,0x30(%r9)
1402b8879:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
1402b887e:	41 f7 e2             	mul    %r10d
1402b8881:	c1 ea 03             	shr    $0x3,%edx
1402b8884:	0f b7 c2             	movzwl %dx,%eax
1402b8887:	66 c1 e0 02          	shl    $0x2,%ax
1402b888b:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
1402b888e:	66 03 c9             	add    %cx,%cx
1402b8891:	66 44 2b d1          	sub    %cx,%r10w
1402b8895:	41 8d 4a 30          	lea    0x30(%r10),%ecx
1402b8899:	44 8b d2             	mov    %edx,%r10d
1402b889c:	66 83 f9 39          	cmp    $0x39,%cx
1402b88a0:	76 0e                	jbe    0x1402b88b0
1402b88a2:	8a c3                	mov    %bl,%al
1402b88a4:	34 01                	xor    $0x1,%al
1402b88a6:	c0 e0 05             	shl    $0x5,%al
1402b88a9:	04 07                	add    $0x7,%al
1402b88ab:	02 c1                	add    %cl,%al
1402b88ad:	0f be c8             	movsbl %al,%ecx
1402b88b0:	0f be c1             	movsbl %cl,%eax
1402b88b3:	66 41 89 03          	mov    %ax,(%r11)
1402b88b7:	49 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%r9)
1402b88bc:	49 8b 41 40          	mov    0x40(%r9),%rax
1402b88c0:	4c 8b d8             	mov    %rax,%r11
1402b88c3:	eb a0                	jmp    0x1402b8865
1402b88c5:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1402b88ca:	4c 2b c0             	sub    %rax,%r8
1402b88cd:	49 d1 f8             	sar    $1,%r8
1402b88d0:	48 83 c0 02          	add    $0x2,%rax
1402b88d4:	45 89 41 48          	mov    %r8d,0x48(%r9)
1402b88d8:	49 89 41 40          	mov    %rax,0x40(%r9)
1402b88dc:	c3                   	ret
1402b88dd:	cc                   	int3
1402b88de:	cc                   	int3
1402b88df:	cc                   	int3
1402b88e0:	4c 8d 49 50          	lea    0x50(%rcx),%r9
1402b88e4:	45 8a d8             	mov    %r8b,%r11b
1402b88e7:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
1402b88ee:	44 8b d2             	mov    %edx,%r10d
1402b88f1:	48 85 c0             	test   %rax,%rax
1402b88f4:	75 07                	jne    0x1402b88fd
1402b88f6:	b8 00 02 00 00       	mov    $0x200,%eax
1402b88fb:	eb 0d                	jmp    0x1402b890a
1402b88fd:	4c 8b c8             	mov    %rax,%r9
1402b8900:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1402b8907:	48 d1 e8             	shr    $1,%rax
1402b890a:	49 8d 51 ff          	lea    -0x1(%r9),%rdx
1402b890e:	48 03 d0             	add    %rax,%rdx
1402b8911:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1402b8915:	4c 8b c2             	mov    %rdx,%r8
1402b8918:	8b 41 30             	mov    0x30(%rcx),%eax
1402b891b:	85 c0                	test   %eax,%eax
1402b891d:	7f 05                	jg     0x1402b8924
1402b891f:	45 85 d2             	test   %r10d,%r10d
1402b8922:	74 31                	je     0x1402b8955
1402b8924:	ff c8                	dec    %eax
1402b8926:	89 41 30             	mov    %eax,0x30(%rcx)
1402b8929:	41 8a c2             	mov    %r10b,%al
1402b892c:	24 0f                	and    $0xf,%al
1402b892e:	41 c1 ea 04          	shr    $0x4,%r10d
1402b8932:	04 30                	add    $0x30,%al
1402b8934:	44 8a c8             	mov    %al,%r9b
1402b8937:	3c 39                	cmp    $0x39,%al
1402b8939:	76 0d                	jbe    0x1402b8948
1402b893b:	41 8a c3             	mov    %r11b,%al
1402b893e:	34 01                	xor    $0x1,%al
1402b8940:	c0 e0 05             	shl    $0x5,%al
1402b8943:	04 07                	add    $0x7,%al
1402b8945:	41 02 c1             	add    %r9b,%al
1402b8948:	41 88 00             	mov    %al,(%r8)
1402b894b:	48 ff 49 40          	decq   0x40(%rcx)
1402b894f:	4c 8b 41 40          	mov    0x40(%rcx),%r8
1402b8953:	eb c3                	jmp    0x1402b8918
1402b8955:	2b 51 40             	sub    0x40(%rcx),%edx
1402b8958:	49 8d 40 01          	lea    0x1(%r8),%rax
1402b895c:	89 51 48             	mov    %edx,0x48(%rcx)
1402b895f:	48 89 41 40          	mov    %rax,0x40(%rcx)
1402b8963:	c3                   	ret
1402b8964:	4c 8d 49 50          	lea    0x50(%rcx),%r9
1402b8968:	45 8a d8             	mov    %r8b,%r11b
1402b896b:	49 8b 81 08 04 00 00 	mov    0x408(%r9),%rax
1402b8972:	44 8b d2             	mov    %edx,%r10d
1402b8975:	48 85 c0             	test   %rax,%rax
1402b8978:	75 07                	jne    0x1402b8981
1402b897a:	b8 00 01 00 00       	mov    $0x100,%eax
1402b897f:	eb 0e                	jmp    0x1402b898f
1402b8981:	4c 8b c8             	mov    %rax,%r9
1402b8984:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1402b898b:	48 c1 e8 02          	shr    $0x2,%rax
1402b898f:	48 8d 40 ff          	lea    -0x1(%rax),%rax
1402b8993:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
1402b8997:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1402b899b:	48 8b c2             	mov    %rdx,%rax
1402b899e:	4c 8b ca             	mov    %rdx,%r9
1402b89a1:	44 8b 41 30          	mov    0x30(%rcx),%r8d
1402b89a5:	45 85 c0             	test   %r8d,%r8d
1402b89a8:	7f 05                	jg     0x1402b89af
1402b89aa:	45 85 d2             	test   %r10d,%r10d
1402b89ad:	74 43                	je     0x1402b89f2
1402b89af:	41 8d 40 ff          	lea    -0x1(%r8),%eax
1402b89b3:	45 0f b7 c2          	movzwl %r10w,%r8d
1402b89b7:	66 41 83 e0 0f       	and    $0xf,%r8w
1402b89bc:	41 c1 ea 04          	shr    $0x4,%r10d
1402b89c0:	66 41 83 c0 30       	add    $0x30,%r8w
1402b89c5:	89 41 30             	mov    %eax,0x30(%rcx)
1402b89c8:	66 41 83 f8 39       	cmp    $0x39,%r8w
1402b89cd:	76 11                	jbe    0x1402b89e0
1402b89cf:	41 8a c3             	mov    %r11b,%al
1402b89d2:	34 01                	xor    $0x1,%al
1402b89d4:	c0 e0 05             	shl    $0x5,%al
1402b89d7:	04 07                	add    $0x7,%al
1402b89d9:	41 02 c0             	add    %r8b,%al
1402b89dc:	44 0f b6 c0          	movzbl %al,%r8d
1402b89e0:	66 45 89 01          	mov    %r8w,(%r9)
1402b89e4:	48 83 41 40 fe       	addq   $0xfffffffffffffffe,0x40(%rcx)
1402b89e9:	48 8b 41 40          	mov    0x40(%rcx),%rax
1402b89ed:	4c 8b c8             	mov    %rax,%r9
1402b89f0:	eb af                	jmp    0x1402b89a1
1402b89f2:	48 2b d0             	sub    %rax,%rdx
1402b89f5:	48 83 c0 02          	add    $0x2,%rax
1402b89f9:	48 d1 fa             	sar    $1,%rdx
1402b89fc:	89 51 48             	mov    %edx,0x48(%rcx)
1402b89ff:	48 89 41 40          	mov    %rax,0x40(%rcx)
1402b8a03:	c3                   	ret
1402b8a04:	4c 8d 41 50          	lea    0x50(%rcx),%r8
1402b8a08:	4c 8b ca             	mov    %rdx,%r9
1402b8a0b:	49 8b 80 08 04 00 00 	mov    0x408(%r8),%rax
1402b8a12:	48 85 c0             	test   %rax,%rax
1402b8a15:	75 07                	jne    0x1402b8a1e
1402b8a17:	b8 00 02 00 00       	mov    $0x200,%eax
1402b8a1c:	eb 0d                	jmp    0x1402b8a2b
1402b8a1e:	4c 8b c0             	mov    %rax,%r8
1402b8a21:	48 8b 81 50 04 00 00 	mov    0x450(%rcx),%rax
1402b8a28:	48 d1 e8             	shr    $1,%rax
1402b8a2b:	49 8d 50 ff          	lea    -0x1(%r8),%rdx
1402b8a2f:	48 03 d0             	add    %rax,%rdx
1402b8a32:	48 89 51 40          	mov    %rdx,0x40(%rcx)
1402b8a36:	4c 8b c2             	mov    %rdx,%r8
1402b8a39:	8b 41 30             	mov    0x30(%rcx),%eax
1402b8a3c:	85 c0                	test   %eax,%eax
1402b8a3e:	7f 05                	jg     0x1402b8a45
1402b8a40:	4d 85 c9             	test   %r9,%r9
1402b8a43:	74 1d                	je     0x1402b8a62
1402b8a45:	ff c8                	dec    %eax
1402b8a47:	89 41 30             	mov    %eax,0x30(%rcx)
1402b8a4a:	41 8a c1             	mov    %r9b,%al
1402b8a4d:	24 07                	and    $0x7,%al
1402b8a4f:	49 c1 e9 03          	shr    $0x3,%r9
1402b8a53:	04 30                	add    $0x30,%al
1402b8a55:	41 88 00             	mov    %al,(%r8)
1402b8a58:	48 ff 49 40          	decq   0x40(%rcx)
1402b8a5c:	4c 8b 41 40          	mov    0x40(%rcx),%r8
1402b8a60:	eb d7                	jmp    0x1402b8a39
1402b8a62:	2b 51 40             	sub    0x40(%rcx),%edx
1402b8a65:	49 8d 40 01          	lea    0x1(%r8),%rax
1402b8a69:	89 51 48             	mov    %edx,0x48(%rcx)
1402b8a6c:	48 89 41 40          	mov    %rax,0x40(%rcx)