1400246fd:	48 85 c9             	test   %rcx,%rcx
140024700:	74 20                	je     0x140024722
140024702:	48 8b c7             	mov    %rdi,%rax
140024705:	48 2b cf             	sub    %rdi,%rcx
140024708:	0f b7 10             	movzwl (%rax),%edx
14002470b:	44 0f b7 04 08       	movzwl (%rax,%rcx,1),%r8d
140024710:	41 2b d0             	sub    %r8d,%edx
140024713:	75 09                	jne    0x14002471e
140024715:	48 83 c0 02          	add    $0x2,%rax
140024719:	45 85 c0             	test   %r8d,%r8d
14002471c:	75 ea                	jne    0x140024708
14002471e:	85 d2                	test   %edx,%edx
140024720:	74 2d                	je     0x14002474f
140024722:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
140024726:	48 8b ce             	mov    %rsi,%rcx
140024729:	48 ff c1             	inc    %rcx
14002472c:	66 44 39 24 4f       	cmp    %r12w,(%rdi,%rcx,2)
140024731:	75 f6                	jne    0x140024729
140024733:	48 8d 0c 4d 02 00 00 	lea    0x2(,%rcx,2),%rcx
14002473a:	00
14002473b:	e8 c0 cd fd ff       	call   0x140001500
140024740:	48 8b d8             	mov    %rax,%rbx
140024743:	48 85 c0             	test   %rax,%rax
140024746:	75 16                	jne    0x14002475e
140024748:	33 c9                	xor    %ecx,%ecx
14002474a:	e8 91 cd fd ff       	call   0x1400014e0
14002474f:	48 83 c4 30          	add    $0x30,%rsp
140024753:	41 5f                	pop    %r15
140024755:	41 5e                	pop    %r14
140024757:	41 5c                	pop    %r12
140024759:	5f                   	pop    %rdi
14002475a:	5e                   	pop    %rsi
14002475b:	5b                   	pop    %rbx
14002475c:	5d                   	pop    %rbp
14002475d:	c3                   	ret
14002475e:	48 8b 0d 7b df 02 00 	mov    0x2df7b(%rip),%rcx        # 0x1400526e0
140024765:	e8 76 cd fd ff       	call   0x1400014e0
14002476a:	48 89 1d 6f df 02 00 	mov    %rbx,0x2df6f(%rip)        # 0x1400526e0
140024771:	48 ff c6             	inc    %rsi
140024774:	66 44 39 24 77       	cmp    %r12w,(%rdi,%rsi,2)
140024779:	75 f6                	jne    0x140024771
14002477b:	48 8d 56 01          	lea    0x1(%rsi),%rdx
14002477f:	4c 8b c7             	mov    %rdi,%r8
140024782:	48 8b cb             	mov    %rbx,%rcx
140024785:	e8 ba 1a ff ff       	call   0x140016244
14002478a:	85 c0                	test   %eax,%eax
14002478c:	0f 85 77 01 00 00    	jne    0x140024909
140024792:	49 8b 0f             	mov    (%r15),%rcx
140024795:	bb 80 00 00 00       	mov    $0x80,%ebx
14002479a:	44 8b c3             	mov    %ebx,%r8d
14002479d:	33 d2                	xor    %edx,%edx
14002479f:	e8 0c 67 01 00       	call   0x14003aeb0
1400247a4:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1400247a8:	44 8b c3             	mov    %ebx,%r8d
1400247ab:	33 d2                	xor    %edx,%edx
1400247ad:	e8 fe 66 01 00       	call   0x14003aeb0
1400247b2:	49 8b 0e             	mov    (%r14),%rcx
1400247b5:	bb 40 00 00 00       	mov    $0x40,%ebx
1400247ba:	44 8b c3             	mov    %ebx,%r8d
1400247bd:	33 d2                	xor    %edx,%edx
1400247bf:	e8 ec 66 01 00       	call   0x14003aeb0
1400247c4:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400247c8:	44 8b c3             	mov    %ebx,%r8d
1400247cb:	33 d2                	xor    %edx,%edx
1400247cd:	e8 de 66 01 00       	call   0x14003aeb0
1400247d2:	4d 8b 06             	mov    (%r14),%r8
1400247d5:	bb 03 00 00 00       	mov    $0x3,%ebx
1400247da:	49 8b 17             	mov    (%r15),%rdx
1400247dd:	44 8b cb             	mov    %ebx,%r9d
1400247e0:	48 8b cf             	mov    %rdi,%rcx
1400247e3:	e8 d8 fd ff ff       	call   0x1400245c0
1400247e8:	8b c3                	mov    %ebx,%eax
1400247ea:	66 44 39 27          	cmp    %r12w,(%rdi)
1400247ee:	74 04                	je     0x1400247f4
1400247f0:	48 83 c7 02          	add    $0x2,%rdi
1400247f4:	48 83 e8 01          	sub    $0x1,%rax
1400247f8:	75 f0                	jne    0x1400247ea
1400247fa:	0f b7 37             	movzwl (%rdi),%esi
1400247fd:	48 8d 5f 02          	lea    0x2(%rdi),%rbx
140024801:	66 83 fe 2d          	cmp    $0x2d,%si
140024805:	44 8d 40 0a          	lea    0xa(%rax),%r8d
140024809:	48 8d 55 58          	lea    0x58(%rbp),%rdx
14002480d:	48 0f 45 df          	cmovne %rdi,%rbx
140024811:	48 8b cb             	mov    %rbx,%rcx
140024814:	e8 3f 90 ff ff       	call   0x14001d858
140024819:	69 f8 10 0e 00 00    	imul   $0xe10,%eax,%edi
14002481f:	89 7d 48             	mov    %edi,0x48(%rbp)
140024822:	66 83 3b 2b          	cmpw   $0x2b,(%rbx)
140024826:	74 0d                	je     0x140024835
140024828:	0f b7 03             	movzwl (%rbx),%eax
14002482b:	66 83 e8 30          	sub    $0x30,%ax
14002482f:	66 83 f8 09          	cmp    $0x9,%ax
140024833:	77 06                	ja     0x14002483b
140024835:	48 83 c3 02          	add    $0x2,%rbx
140024839:	eb e7                	jmp    0x140024822
14002483b:	66 83 3b 3a          	cmpw   $0x3a,(%rbx)
14002483f:	75 7f                	jne    0x1400248c0
140024841:	48 83 c3 02          	add    $0x2,%rbx
140024845:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140024849:	48 8b cb             	mov    %rbx,%rcx
14002484c:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
140024852:	e8 01 90 ff ff       	call   0x14001d858
140024857:	8b 7d 48             	mov    0x48(%rbp),%edi
14002485a:	6b c8 3c             	imul   $0x3c,%eax,%ecx
14002485d:	0f b7 03             	movzwl (%rbx),%eax
140024860:	03 f9                	add    %ecx,%edi
140024862:	89 7d 48             	mov    %edi,0x48(%rbp)
140024865:	66 83 f8 30          	cmp    $0x30,%ax
140024869:	72 1c                	jb     0x140024887
14002486b:	0f b7 c8             	movzwl %ax,%ecx
14002486e:	0f b7 c1             	movzwl %cx,%eax
140024871:	66 83 f9 39          	cmp    $0x39,%cx
140024875:	77 10                	ja     0x140024887
140024877:	48 83 c3 02          	add    $0x2,%rbx
14002487b:	0f b7 03             	movzwl (%rbx),%eax
14002487e:	0f b7 c8             	movzwl %ax,%ecx
140024881:	66 83 f8 30          	cmp    $0x30,%ax
140024885:	73 e7                	jae    0x14002486e
140024887:	66 83 f8 3a          	cmp    $0x3a,%ax
14002488b:	75 33                	jne    0x1400248c0
14002488d:	48 83 c3 02          	add    $0x2,%rbx
140024891:	48 8d 55 58          	lea    0x58(%rbp),%rdx
140024895:	48 8b cb             	mov    %rbx,%rcx
140024898:	41 b8 0a 00 00 00    	mov    $0xa,%r8d
14002489e:	e8 b5 8f ff ff       	call   0x14001d858
1400248a3:	8b 7d 48             	mov    0x48(%rbp),%edi
1400248a6:	03 f8                	add    %eax,%edi
1400248a8:	89 7d 48             	mov    %edi,0x48(%rbp)
1400248ab:	eb 0a                	jmp    0x1400248b7
1400248ad:	66 83 f8 39          	cmp    $0x39,%ax
1400248b1:	77 0d                	ja     0x1400248c0
1400248b3:	48 83 c3 02          	add    $0x2,%rbx
1400248b7:	0f b7 03             	movzwl (%rbx),%eax
1400248ba:	66 83 f8 30          	cmp    $0x30,%ax
1400248be:	73 ed                	jae    0x1400248ad
1400248c0:	66 83 fe 2d          	cmp    $0x2d,%si
1400248c4:	75 05                	jne    0x1400248cb
1400248c6:	f7 df                	neg    %edi
1400248c8:	89 7d 48             	mov    %edi,0x48(%rbp)
1400248cb:	66 44 39 23          	cmp    %r12w,(%rbx)
1400248cf:	41 8b c4             	mov    %r12d,%eax
1400248d2:	0f 95 c0             	setne  %al
1400248d5:	89 45 50             	mov    %eax,0x50(%rbp)
1400248d8:	74 19                	je     0x1400248f3
1400248da:	4d 8b 46 08          	mov    0x8(%r14),%r8
1400248de:	41 b9 03 00 00 00    	mov    $0x3,%r9d
1400248e4:	49 8b 57 08          	mov    0x8(%r15),%rdx
1400248e8:	48 8b cb             	mov    %rbx,%rcx
1400248eb:	e8 d0 fc ff ff       	call   0x1400245c0
1400248f0:	8b 7d 48             	mov    0x48(%rbp),%edi
1400248f3:	e8 40 f4 ff ff       	call   0x140023d38
1400248f8:	89 38                	mov    %edi,(%rax)
1400248fa:	8b 5d 50             	mov    0x50(%rbp),%ebx
1400248fd:	e8 26 f4 ff ff       	call   0x140023d28
140024902:	89 18                	mov    %ebx,(%rax)
140024904:	e9 3f fe ff ff       	jmp    0x140024748
140024909:	45 33 c9             	xor    %r9d,%r9d
14002490c:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140024911:	45 33 c0             	xor    %r8d,%r8d
140024914:	33 d2                	xor    %edx,%edx
140024916:	33 c9                	xor    %ecx,%ecx
140024918:	e8 87 a6 fe ff       	call   0x14000efa4
14002491d:	cc                   	int3
14002491e:	cc                   	int3
14002491f:	cc                   	int3
140024920:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140024925:	55                   	push   %rbp
140024926:	56                   	push   %rsi
140024927:	57                   	push   %rdi
140024928:	48 8b ec             	mov    %rsp,%rbp
14002492b:	48 83 ec 30          	sub    $0x30,%rsp
14002492f:	e8 0c f4 ff ff       	call   0x140023d40
140024934:	48 8b f8             	mov    %rax,%rdi
140024937:	e8 0c f4 ff ff       	call   0x140023d48
14002493c:	33 db                	xor    %ebx,%ebx
14002493e:	48 8d 4d 20          	lea    0x20(%rbp),%rcx
140024942:	89 5d 20             	mov    %ebx,0x20(%rbp)
140024945:	48 8b f0             	mov    %rax,%rsi
140024948:	89 5d 28             	mov    %ebx,0x28(%rbp)
14002494b:	89 5d 30             	mov    %ebx,0x30(%rbp)
14002494e:	e8 5d f4 ff ff       	call   0x140023db0
140024953:	85 c0                	test   %eax,%eax
140024955:	0f 85 38 01 00 00    	jne    0x140024a93
14002495b:	48 8d 4d 28          	lea    0x28(%rbp),%rcx
14002495f:	e8 ec f3 ff ff       	call   0x140023d50
140024964:	85 c0                	test   %eax,%eax
140024966:	0f 85 27 01 00 00    	jne    0x140024a93
14002496c:	48 8d 4d 30          	lea    0x30(%rbp),%rcx
140024970:	e8 0b f4 ff ff       	call   0x140023d80
140024975:	85 c0                	test   %eax,%eax
140024977:	0f 85 16 01 00 00    	jne    0x140024a93
14002497d:	48 8b 0d 5c dd 02 00 	mov    0x2dd5c(%rip),%rcx        # 0x1400526e0
140024984:	e8 57 cb fd ff       	call   0x1400014e0
140024989:	48 8d 0d 70 dd 02 00 	lea    0x2dd70(%rip),%rcx        # 0x140052700
140024990:	48 89 1d 49 dd 02 00 	mov    %rbx,0x2dd49(%rip)        # 0x1400526e0
140024997:	ff 15 73 77 01 00    	call   *0x17773(%rip)        # 0x14003c110
14002499d:	83 f8 ff             	cmp    $0xffffffff,%eax
1400249a0:	0f 84 c2 00 00 00    	je     0x140024a68
1400249a6:	6b 15 53 dd 02 00 3c 	imul   $0x3c,0x2dd53(%rip),%edx        # 0x140052700
1400249ad:	8d 4b 01             	lea    0x1(%rbx),%ecx
1400249b0:	66 39 1d 8f dd 02 00 	cmp    %bx,0x2dd8f(%rip)        # 0x140052746
1400249b7:	44 8b 05 96 dd 02 00 	mov    0x2dd96(%rip),%r8d        # 0x140052754
1400249be:	89 0d 2c dd 02 00    	mov    %ecx,0x2dd2c(%rip)        # 0x1400526f0
1400249c4:	89 55 20             	mov    %edx,0x20(%rbp)
1400249c7:	74 09                	je     0x1400249d2
1400249c9:	41 6b c0 3c          	imul   $0x3c,%r8d,%eax
1400249cd:	03 c2                	add    %edx,%eax
1400249cf:	89 45 20             	mov    %eax,0x20(%rbp)
1400249d2:	66 39 1d c1 dd 02 00 	cmp    %bx,0x2ddc1(%rip)        # 0x14005279a
1400249d9:	74 12                	je     0x1400249ed
1400249db:	8b 05 c7 dd 02 00    	mov    0x2ddc7(%rip),%eax        # 0x1400527a8
1400249e1:	85 c0                	test   %eax,%eax
1400249e3:	74 08                	je     0x1400249ed
1400249e5:	41 2b c0             	sub    %r8d,%eax
1400249e8:	6b d8 3c             	imul   $0x3c,%eax,%ebx
1400249eb:	eb 02                	jmp    0x1400249ef
1400249ed:	8b cb                	mov    %ebx,%ecx
1400249ef:	89 5d 30             	mov    %ebx,0x30(%rbp)
1400249f2:	33 d2                	xor    %edx,%edx
1400249f4:	89 4d 28             	mov    %ecx,0x28(%rbp)
1400249f7:	bb 80 00 00 00       	mov    $0x80,%ebx
1400249fc:	48 8b 0e             	mov    (%rsi),%rcx
1400249ff:	44 8b c3             	mov    %ebx,%r8d
140024a02:	e8 a9 64 01 00       	call   0x14003aeb0
140024a07:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140024a0b:	44 8b c3             	mov    %ebx,%r8d
140024a0e:	33 d2                	xor    %edx,%edx
140024a10:	e8 9b 64 01 00       	call   0x14003aeb0
140024a15:	48 8b 0f             	mov    (%rdi),%rcx
140024a18:	bb 40 00 00 00       	mov    $0x40,%ebx
140024a1d:	44 8b c3             	mov    %ebx,%r8d
140024a20:	33 d2                	xor    %edx,%edx
140024a22:	e8 89 64 01 00       	call   0x14003aeb0
140024a27:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140024a2b:	44 8b c3             	mov    %ebx,%r8d
140024a2e:	33 d2                	xor    %edx,%edx
140024a30:	e8 7b 64 01 00       	call   0x14003aeb0
140024a35:	e8 0a 4f 00 00       	call   0x140029944
140024a3a:	4c 8b 07             	mov    (%rdi),%r8
140024a3d:	48 8d 0d c0 dc 02 00 	lea    0x2dcc0(%rip),%rcx        # 0x140052704
140024a44:	48 8b 16             	mov    (%rsi),%rdx
140024a47:	44 8b c8             	mov    %eax,%r9d
140024a4a:	8b d8                	mov    %eax,%ebx
140024a4c:	e8 67 01 00 00       	call   0x140024bb8
140024a51:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140024a55:	48 8d 0d fc dc 02 00 	lea    0x2dcfc(%rip),%rcx        # 0x140052758
140024a5c:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140024a60:	44 8b cb             	mov    %ebx,%r9d
140024a63:	e8 50 01 00 00       	call   0x140024bb8
140024a68:	8b 5d 20             	mov    0x20(%rbp),%ebx
140024a6b:	e8 c8 f2 ff ff       	call   0x140023d38
140024a70:	89 18                	mov    %ebx,(%rax)
140024a72:	8b 5d 28             	mov    0x28(%rbp),%ebx
140024a75:	e8 ae f2 ff ff       	call   0x140023d28
140024a7a:	89 18                	mov    %ebx,(%rax)
140024a7c:	8b 5d 30             	mov    0x30(%rbp),%ebx
140024a7f:	e8 ac f2 ff ff       	call   0x140023d30
140024a84:	89 18                	mov    %ebx,(%rax)
140024a86:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
140024a8b:	48 83 c4 30          	add    $0x30,%rsp
140024a8f:	5f                   	pop    %rdi
140024a90:	5e                   	pop    %rsi
140024a91:	5d                   	pop    %rbp
140024a92:	c3                   	ret
140024a93:	45 33 c9             	xor    %r9d,%r9d
140024a96:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140024a9b:	45 33 c0             	xor    %r8d,%r8d
140024a9e:	33 d2                	xor    %edx,%edx
140024aa0:	33 c9                	xor    %ecx,%ecx
140024aa2:	e8 fd a4 fe ff       	call   0x14000efa4
140024aa7:	cc                   	int3
140024aa8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140024aad:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140024ab2:	57                   	push   %rdi
140024ab3:	48 81 ec 40 02 00 00 	sub    $0x240,%rsp
140024aba:	48 8b 05 ff 96 02 00 	mov    0x296ff(%rip),%rax        # 0x14004e1c0
140024ac1:	48 33 c4             	xor    %rsp,%rax
140024ac4:	48 89 84 24 30 02 00 	mov    %rax,0x230(%rsp)
140024acb:	00
140024acc:	83 c8 ff             	or     $0xffffffff,%eax
140024acf:	4c 8d 0d 4a be 01 00 	lea    0x1be4a(%rip),%r9        # 0x140040920
140024ad6:	33 f6                	xor    %esi,%esi
140024ad8:	89 05 32 9c 02 00    	mov    %eax,0x29c32(%rip)        # 0x14004e710
140024ade:	41 b8 00 01 00 00    	mov    $0x100,%r8d
140024ae4:	89 35 06 dc 02 00    	mov    %esi,0x2dc06(%rip)        # 0x1400526f0
140024aea:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140024aef:	89 05 0b 9c 02 00    	mov    %eax,0x29c0b(%rip)        # 0x14004e700
140024af5:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140024afa:	e8 39 a2 00 00       	call   0x14002ed38
140024aff:	85 c0                	test   %eax,%eax
140024b01:	75 0c                	jne    0x140024b0f
140024b03:	48 8d 7c 24 30       	lea    0x30(%rsp),%rdi
140024b08:	8b de                	mov    %esi,%ebx
140024b0a:	e9 90 00 00 00       	jmp    0x140024b9f
140024b0f:	83 f8 22             	cmp    $0x22,%eax
140024b12:	74 35                	je     0x140024b49
140024b14:	48 8b de             	mov    %rsi,%rbx
140024b17:	e8 04 fe ff ff       	call   0x140024920
140024b1c:	48 8b cb             	mov    %rbx,%rcx
140024b1f:	e8 bc c9 fd ff       	call   0x1400014e0
140024b24:	48 8b 8c 24 30 02 00 	mov    0x230(%rsp),%rcx
140024b2b:	00
140024b2c:	48 33 cc             	xor    %rsp,%rcx
140024b2f:	e8 6c 48 fe ff       	call   0x1400093a0
140024b34:	4c 8d 9c 24 40 02 00 	lea    0x240(%rsp),%r11
140024b3b:	00
140024b3c:	49 8b 5b 10          	mov    0x10(%r11),%rbx
140024b40:	49 8b 73 18          	mov    0x18(%r11),%rsi
140024b44:	49 8b e3             	mov    %r11,%rsp
140024b47:	5f                   	pop    %rdi
140024b48:	c3                   	ret
140024b49:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
140024b4e:	48 03 c9             	add    %rcx,%rcx
140024b51:	e8 aa c9 fd ff       	call   0x140001500
140024b56:	48 8b f8             	mov    %rax,%rdi
140024b59:	48 85 c0             	test   %rax,%rax
140024b5c:	75 09                	jne    0x140024b67
140024b5e:	33 c9                	xor    %ecx,%ecx
140024b60:	e8 7b c9 fd ff       	call   0x1400014e0
140024b65:	eb ad                	jmp    0x140024b14
140024b67:	4c 8b 44 24 20       	mov    0x20(%rsp),%r8
140024b6c:	4c 8d 0d ad bd 01 00 	lea    0x1bdad(%rip),%r9        # 0x140040920
140024b73:	48 8b d7             	mov    %rdi,%rdx
140024b76:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
140024b7b:	e8 b8 a1 00 00       	call   0x14002ed38
140024b80:	85 c0                	test   %eax,%eax
140024b82:	74 05                	je     0x140024b89
140024b84:	48 8b cf             	mov    %rdi,%rcx
140024b87:	eb d7                	jmp    0x140024b60
140024b89:	33 c9                	xor    %ecx,%ecx
140024b8b:	e8 50 c9 fd ff       	call   0x1400014e0
140024b90:	48 8d 44 24 30       	lea    0x30(%rsp),%rax
140024b95:	48 8b df             	mov    %rdi,%rbx
140024b98:	48 3b f8             	cmp    %rax,%rdi
140024b9b:	48 0f 44 de          	cmove  %rsi,%rbx
140024b9f:	66 39 37             	cmp    %si,(%rdi)
140024ba2:	0f 84 6f ff ff ff    	je     0x140024b17
140024ba8:	48 8b cf             	mov    %rdi,%rcx
140024bab:	e8 f4 fa ff ff       	call   0x1400246a4
140024bb0:	e9 67 ff ff ff       	jmp    0x140024b1c
140024bb5:	cc                   	int3
140024bb6:	cc                   	int3
140024bb7:	cc                   	int3
140024bb8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140024bbd:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140024bc2:	57                   	push   %rdi
140024bc3:	48 83 ec 40          	sub    $0x40,%rsp
140024bc7:	48 8b c2             	mov    %rdx,%rax
140024bca:	41 8b f9             	mov    %r9d,%edi
140024bcd:	41 b9 20 00 00 00    	mov    $0x20,%r9d