1408cc66e:	48 c1 e8 06          	shr    $0x6,%rax
1408cc672:	48 6b c0 7c          	imul   $0x7c,%rax,%rax
1408cc676:	4c 2b d0             	sub    %rax,%r10
1408cc679:	41 8b c2             	mov    %r10d,%eax
1408cc67c:	41 8b 4c 80 10       	mov    0x10(%r8,%rax,4),%ecx
1408cc681:	85 c9                	test   %ecx,%ecx
1408cc683:	74 31                	je     0x1408cc6b6
1408cc685:	41 3b c9             	cmp    %r9d,%ecx
1408cc688:	74 2f                	je     0x1408cc6b9
1408cc68a:	41 8d 4a 01          	lea    0x1(%r10),%ecx
1408cc68e:	49 8b c3             	mov    %r11,%rax
1408cc691:	48 f7 e1             	mul    %rcx
1408cc694:	8b c1                	mov    %ecx,%eax
1408cc696:	48 2b c2             	sub    %rdx,%rax
1408cc699:	48 d1 e8             	shr    $1,%rax
1408cc69c:	48 03 c2             	add    %rdx,%rax
1408cc69f:	48 c1 e8 06          	shr    $0x6,%rax
1408cc6a3:	48 6b c0 7c          	imul   $0x7c,%rax,%rax
1408cc6a7:	48 2b c8             	sub    %rax,%rcx
1408cc6aa:	44 8b d1             	mov    %ecx,%r10d
1408cc6ad:	43 8b 4c 90 10       	mov    0x10(%r8,%r10,4),%ecx
1408cc6b2:	85 c9                	test   %ecx,%ecx
1408cc6b4:	75 cf                	jne    0x1408cc685
1408cc6b6:	33 c0                	xor    %eax,%eax
1408cc6b8:	c3                   	ret
1408cc6b9:	b8 01 00 00 00       	mov    $0x1,%eax
1408cc6be:	c3                   	ret
1408cc6bf:	cc                   	int3
1408cc6c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1408cc6c5:	57                   	push   %rdi
1408cc6c6:	48 83 ec 20          	sub    $0x20,%rsp
1408cc6ca:	48 63 7a 10          	movslq 0x10(%rdx),%rdi
1408cc6ce:	4c 8b ca             	mov    %rdx,%r9
1408cc6d1:	0f b7 51 14          	movzwl 0x14(%rcx),%edx
1408cc6d5:	4c 8b d1             	mov    %rcx,%r10
1408cc6d8:	48 63 59 10          	movslq 0x10(%rcx),%rbx
1408cc6dc:	41 0f b7 49 14       	movzwl 0x14(%r9),%ecx
1408cc6e1:	0f b7 c1             	movzwl %cx,%eax
1408cc6e4:	66 0b c2             	or     %dx,%ax
1408cc6e7:	66 0f ba e0 0a       	bt     $0xa,%ax
1408cc6ec:	0f 83 94 00 00 00    	jae    0x1408cc786
1408cc6f2:	66 23 ca             	and    %dx,%cx
1408cc6f5:	66 0f ba e1 0a       	bt     $0xa,%cx
1408cc6fa:	73 11                	jae    0x1408cc70d
1408cc6fc:	41 8b 02             	mov    (%r10),%eax
1408cc6ff:	41 2b 01             	sub    (%r9),%eax
1408cc702:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc707:	48 83 c4 20          	add    $0x20,%rsp
1408cc70b:	5f                   	pop    %rdi
1408cc70c:	c3                   	ret
1408cc70d:	66 0f ba e2 0a       	bt     $0xa,%dx
1408cc712:	73 3a                	jae    0x1408cc74e
1408cc714:	85 ff                	test   %edi,%edi
1408cc716:	7e 16                	jle    0x1408cc72e
1408cc718:	49 8b 49 08          	mov    0x8(%r9),%rcx
1408cc71c:	33 c0                	xor    %eax,%eax
1408cc71e:	66 90                	xchg   %ax,%ax
1408cc720:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
1408cc724:	75 18                	jne    0x1408cc73e
1408cc726:	48 ff c0             	inc    %rax
1408cc729:	48 3b c7             	cmp    %rdi,%rax
1408cc72c:	7c f2                	jl     0x1408cc720
1408cc72e:	41 8b 02             	mov    (%r10),%eax
1408cc731:	2b c7                	sub    %edi,%eax
1408cc733:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc738:	48 83 c4 20          	add    $0x20,%rsp
1408cc73c:	5f                   	pop    %rdi
1408cc73d:	c3                   	ret
1408cc73e:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1408cc743:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc748:	48 83 c4 20          	add    $0x20,%rsp
1408cc74c:	5f                   	pop    %rdi
1408cc74d:	c3                   	ret
1408cc74e:	85 db                	test   %ebx,%ebx
1408cc750:	7e 14                	jle    0x1408cc766
1408cc752:	49 8b 4a 08          	mov    0x8(%r10),%rcx
1408cc756:	33 c0                	xor    %eax,%eax
1408cc758:	80 3c 01 00          	cmpb   $0x0,(%rcx,%rax,1)
1408cc75c:	75 18                	jne    0x1408cc776
1408cc75e:	48 ff c0             	inc    %rax
1408cc761:	48 3b c3             	cmp    %rbx,%rax
1408cc764:	7c f2                	jl     0x1408cc758
1408cc766:	41 2b 19             	sub    (%r9),%ebx
1408cc769:	8b c3                	mov    %ebx,%eax
1408cc76b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc770:	48 83 c4 20          	add    $0x20,%rsp
1408cc774:	5f                   	pop    %rdi
1408cc775:	c3                   	ret
1408cc776:	b8 01 00 00 00       	mov    $0x1,%eax
1408cc77b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc780:	48 83 c4 20          	add    $0x20,%rsp
1408cc784:	5f                   	pop    %rdi
1408cc785:	c3                   	ret
1408cc786:	49 8b 51 08          	mov    0x8(%r9),%rdx
1408cc78a:	8b c3                	mov    %ebx,%eax
1408cc78c:	49 8b 4a 08          	mov    0x8(%r10),%rcx
1408cc790:	3b df                	cmp    %edi,%ebx
1408cc792:	0f 4f c7             	cmovg  %edi,%eax
1408cc795:	4c 63 c0             	movslq %eax,%r8
1408cc798:	e8 b3 32 61 00       	call   0x140edfa50
1408cc79d:	2b df                	sub    %edi,%ebx
1408cc79f:	85 c0                	test   %eax,%eax
1408cc7a1:	0f 45 d8             	cmovne %eax,%ebx
1408cc7a4:	8b c3                	mov    %ebx,%eax
1408cc7a6:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1408cc7ab:	48 83 c4 20          	add    $0x20,%rsp
1408cc7af:	5f                   	pop    %rdi
1408cc7b0:	c3                   	ret
1408cc7b1:	cc                   	int3
1408cc7b2:	cc                   	int3
1408cc7b3:	cc                   	int3
1408cc7b4:	cc                   	int3
1408cc7b5:	cc                   	int3
1408cc7b6:	cc                   	int3
1408cc7b7:	cc                   	int3
1408cc7b8:	cc                   	int3
1408cc7b9:	cc                   	int3
1408cc7ba:	cc                   	int3
1408cc7bb:	cc                   	int3
1408cc7bc:	cc                   	int3
1408cc7bd:	cc                   	int3
1408cc7be:	cc                   	int3
1408cc7bf:	cc                   	int3
1408cc7c0:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
1408cc7c5:	53                   	push   %rbx
1408cc7c6:	41 57                	push   %r15
1408cc7c8:	48 83 ec 48          	sub    $0x48,%rsp
1408cc7cc:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1408cc7d1:	33 db                	xor    %ebx,%ebx
1408cc7d3:	4c 8b f9             	mov    %rcx,%r15
1408cc7d6:	48 8b 79 08          	mov    0x8(%rcx),%rdi
1408cc7da:	4c 89 64 24 30       	mov    %r12,0x30(%rsp)
1408cc7df:	44 8b e2             	mov    %edx,%r12d
1408cc7e2:	4c 89 6c 24 28       	mov    %r13,0x28(%rsp)
1408cc7e7:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1408cc7ec:	4d 8b f0             	mov    %r8,%r14
1408cc7ef:	4c 8b 2f             	mov    (%rdi),%r13
1408cc7f2:	38 59 11             	cmp    %bl,0x11(%rcx)
1408cc7f5:	74 0d                	je     0x1408cc804
1408cc7f7:	ff 41 14             	incl   0x14(%rcx)
1408cc7fa:	38 59 12             	cmp    %bl,0x12(%rcx)
1408cc7fd:	75 05                	jne    0x1408cc804
1408cc7ff:	e8 ac 8d fc ff       	call   0x1408955b0
1408cc804:	41 0f b6 47 10       	movzbl 0x10(%r15),%eax
1408cc809:	48 89 6c 24 68       	mov    %rbp,0x68(%rsp)
1408cc80e:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
1408cc813:	3c 02                	cmp    $0x2,%al
1408cc815:	0f 84 a1 02 00 00    	je     0x1408ccabc
1408cc81b:	3c 01                	cmp    $0x1,%al
1408cc81d:	75 09                	jne    0x1408cc828
1408cc81f:	45 85 e4             	test   %r12d,%r12d
1408cc822:	0f 84 94 02 00 00    	je     0x1408ccabc
1408cc828:	49 8b 07             	mov    (%r15),%rax
1408cc82b:	8b 48 30             	mov    0x30(%rax),%ecx
1408cc82e:	48 0f ba e1 19       	bt     $0x19,%rcx
1408cc833:	73 0f                	jae    0x1408cc844
1408cc835:	41 38 5d 12          	cmp    %bl,0x12(%r13)
1408cc839:	75 09                	jne    0x1408cc844
1408cc83b:	b8 fe ff 00 00       	mov    $0xfffe,%eax
1408cc840:	66 21 47 28          	and    %ax,0x28(%rdi)
1408cc844:	0f b7 57 28          	movzwl 0x28(%rdi),%edx
1408cc848:	0f b7 c2             	movzwl %dx,%eax
1408cc84b:	66 83 e0 01          	and    $0x1,%ax
1408cc84f:	45 85 e4             	test   %r12d,%r12d
1408cc852:	74 15                	je     0x1408cc869
1408cc854:	66 85 c0             	test   %ax,%ax
1408cc857:	74 0a                	je     0x1408cc863
1408cc859:	bb 08 00 00 00       	mov    $0x8,%ebx
1408cc85e:	e9 9a 02 00 00       	jmp    0x1408ccafd
1408cc863:	80 7f 24 02          	cmpb   $0x2,0x24(%rdi)
1408cc867:	74 04                	je     0x1408cc86d
1408cc869:	84 d2                	test   %dl,%dl
1408cc86b:	79 16                	jns    0x1408cc883
1408cc86d:	48 8b 8f 80 00 00 00 	mov    0x80(%rdi),%rcx
1408cc874:	48 39 19             	cmp    %rbx,(%rcx)
1408cc877:	74 2a                	je     0x1408cc8a3
1408cc879:	bb 06 01 00 00       	mov    $0x106,%ebx
1408cc87e:	e9 7a 02 00 00       	jmp    0x1408ccafd
1408cc883:	41 83 fc 01          	cmp    $0x1,%r12d
1408cc887:	7e 1a                	jle    0x1408cc8a3
1408cc889:	48 8b 47 78          	mov    0x78(%rdi),%rax
1408cc88d:	48 85 c0             	test   %rax,%rax
1408cc890:	74 11                	je     0x1408cc8a3
1408cc892:	48 8b 08             	mov    (%rax),%rcx
1408cc895:	49 3b cf             	cmp    %r15,%rcx
1408cc898:	75 da                	jne    0x1408cc874
1408cc89a:	48 8b 40 10          	mov    0x10(%rax),%rax
1408cc89e:	48 85 c0             	test   %rax,%rax
1408cc8a1:	75 ef                	jne    0x1408cc892
1408cc8a3:	49 8b 47 08          	mov    0x8(%r15),%rax
1408cc8a7:	41 38 5f 11          	cmp    %bl,0x11(%r15)
1408cc8ab:	74 3d                	je     0x1408cc8ea
1408cc8ad:	4c 39 b8 80 00 00 00 	cmp    %r15,0x80(%rax)
1408cc8b4:	74 10                	je     0x1408cc8c6
1408cc8b6:	f6 40 28 40          	testb  $0x40,0x28(%rax)
1408cc8ba:	74 0a                	je     0x1408cc8c6
1408cc8bc:	bb 06 01 00 00       	mov    $0x106,%ebx
1408cc8c1:	e9 37 02 00 00       	jmp    0x1408ccafd
1408cc8c6:	48 8b 40 78          	mov    0x78(%rax),%rax
1408cc8ca:	48 85 c0             	test   %rax,%rax
1408cc8cd:	74 1b                	je     0x1408cc8ea
1408cc8cf:	90                   	nop
1408cc8d0:	4c 39 38             	cmp    %r15,(%rax)
1408cc8d3:	74 0c                	je     0x1408cc8e1
1408cc8d5:	83 78 08 01          	cmpl   $0x1,0x8(%rax)
1408cc8d9:	75 06                	jne    0x1408cc8e1
1408cc8db:	80 78 0c 01          	cmpb   $0x1,0xc(%rax)
1408cc8df:	75 98                	jne    0x1408cc879
1408cc8e1:	48 8b 40 10          	mov    0x10(%rax),%rax
1408cc8e5:	48 85 c0             	test   %rax,%rax
1408cc8e8:	75 e6                	jne    0x1408cc8d0
1408cc8ea:	b8 ef ff 00 00       	mov    $0xffef,%eax
1408cc8ef:	66 23 d0             	and    %ax,%dx
1408cc8f2:	83 7f 40 00          	cmpl   $0x0,0x40(%rdi)
1408cc8f6:	66 89 57 28          	mov    %dx,0x28(%rdi)
1408cc8fa:	75 08                	jne    0x1408cc904
1408cc8fc:	66 83 ca 10          	or     $0x10,%dx
1408cc900:	66 89 57 28          	mov    %dx,0x28(%rdi)
1408cc904:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc908:	48 83 7f 18 00       	cmpq   $0x0,0x18(%rdi)
1408cc90d:	75 18                	jne    0x1408cc927
1408cc90f:	48 8b cf             	mov    %rdi,%rcx
1408cc912:	e8 39 58 fe ff       	call   0x1408b2150
1408cc917:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc91b:	8b d8                	mov    %eax,%ebx
1408cc91d:	85 c0                	test   %eax,%eax
1408cc91f:	74 e7                	je     0x1408cc908
1408cc921:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc925:	eb 59                	jmp    0x1408cc980
1408cc927:	85 db                	test   %ebx,%ebx
1408cc929:	75 55                	jne    0x1408cc980
1408cc92b:	45 85 e4             	test   %r12d,%r12d
1408cc92e:	0f 84 84 00 00 00    	je     0x1408cc9b8
1408cc934:	f6 47 28 01          	testb  $0x1,0x28(%rdi)
1408cc938:	74 0b                	je     0x1408cc945
1408cc93a:	bb 08 00 00 00       	mov    $0x8,%ebx
1408cc93f:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc943:	eb 3b                	jmp    0x1408cc980
1408cc945:	49 8b 07             	mov    (%r15),%rax
1408cc948:	45 33 c0             	xor    %r8d,%r8d
1408cc94b:	49 8b cd             	mov    %r13,%rcx
1408cc94e:	80 78 66 02          	cmpb   $0x2,0x66(%rax)
1408cc952:	41 0f 94 c0          	sete   %r8b
1408cc956:	33 d2                	xor    %edx,%edx
1408cc958:	41 83 fc 01          	cmp    $0x1,%r12d
1408cc95c:	0f 9f c2             	setg   %dl
1408cc95f:	e8 fc 21 02 00       	call   0x1408eeb60
1408cc964:	8b d8                	mov    %eax,%ebx
1408cc966:	85 c0                	test   %eax,%eax
1408cc968:	0f 85 8b 00 00 00    	jne    0x1408cc9f9
1408cc96e:	48 8b cf             	mov    %rdi,%rcx
1408cc971:	e8 6a a0 fe ff       	call   0x1408b69e0
1408cc976:	8b d8                	mov    %eax,%ebx
1408cc978:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc97c:	85 db                	test   %ebx,%ebx
1408cc97e:	74 38                	je     0x1408cc9b8
1408cc980:	80 3e 00             	cmpb   $0x0,(%rsi)
1408cc983:	75 33                	jne    0x1408cc9b8
1408cc985:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
1408cc989:	48 85 c9             	test   %rcx,%rcx
1408cc98c:	74 2a                	je     0x1408cc9b8
1408cc98e:	48 c7 47 18 00 00 00 	movq   $0x0,0x18(%rdi)
1408cc995:	00
1408cc996:	48 8b 49 70          	mov    0x70(%rcx),%rcx
1408cc99a:	48 8b 71 28          	mov    0x28(%rcx),%rsi
1408cc99e:	e8 2d 51 02 00       	call   0x1408f1ad0
1408cc9a3:	48 8b 86 20 01 00 00 	mov    0x120(%rsi),%rax
1408cc9aa:	83 78 18 00          	cmpl   $0x0,0x18(%rax)
1408cc9ae:	75 08                	jne    0x1408cc9b8
1408cc9b0:	48 8b ce             	mov    %rsi,%rcx
1408cc9b3:	e8 c8 c2 fe ff       	call   0x1408b8c80
1408cc9b8:	80 fb 05             	cmp    $0x5,%bl
1408cc9bb:	75 63                	jne    0x1408cca20
1408cc9bd:	80 7f 24 00          	cmpb   $0x0,0x24(%rdi)
1408cc9c1:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cc9c5:	75 59                	jne    0x1408cca20
1408cc9c7:	4c 8b 77 08          	mov    0x8(%rdi),%r14
1408cc9cb:	49 81 c6 80 02 00 00 	add    $0x280,%r14
1408cc9d2:	49 8b 06             	mov    (%r14),%rax
1408cc9d5:	48 85 c0             	test   %rax,%rax
1408cc9d8:	74 46                	je     0x1408cca20
1408cc9da:	41 8b 56 10          	mov    0x10(%r14),%edx
1408cc9de:	85 d2                	test   %edx,%edx
1408cc9e0:	78 3e                	js     0x1408cca20
1408cc9e2:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1408cc9e6:	ff 15 34 70 6b 00    	call   *0x6b7034(%rip)        # 0x140f83a20
1408cc9ec:	85 c0                	test   %eax,%eax
1408cc9ee:	74 28                	je     0x1408cca18
1408cc9f0:	41 ff 46 10          	incl   0x10(%r14)
1408cc9f4:	e9 0f ff ff ff       	jmp    0x1408cc908
1408cc9f9:	3d 05 02 00 00       	cmp    $0x205,%eax
1408cc9fe:	0f 85 74 ff ff ff    	jne    0x1408cc978
1408cca04:	80 7f 24 00          	cmpb   $0x0,0x24(%rdi)
1408cca08:	48 8d 77 24          	lea    0x24(%rdi),%rsi
1408cca0c:	75 aa                	jne    0x1408cc9b8
1408cca0e:	bb 05 00 00 00       	mov    $0x5,%ebx
1408cca13:	e9 6d ff ff ff       	jmp    0x1408cc985
1408cca18:	41 c7 46 10 ff ff ff 	movl   $0xffffffff,0x10(%r14)
1408cca1f:	ff
1408cca20:	85 db                	test   %ebx,%ebx
1408cca22:	0f 85 d5 00 00 00    	jne    0x1408ccafd
1408cca28:	41 38 5f 10          	cmp    %bl,0x10(%r15)
1408cca2c:	75 1e                	jne    0x1408cca4c
1408cca2e:	ff 47 3c             	incl   0x3c(%rdi)
1408cca31:	41 38 5f 11          	cmp    %bl,0x11(%r15)
1408cca35:	74 15                	je     0x1408cca4c
1408cca37:	41 c6 47 3c 01       	movb   $0x1,0x3c(%r15)
1408cca3c:	48 8b 47 78          	mov    0x78(%rdi),%rax
1408cca40:	49 89 47 40          	mov    %rax,0x40(%r15)
1408cca44:	49 8d 47 30          	lea    0x30(%r15),%rax
1408cca48:	48 89 47 78          	mov    %rax,0x78(%rdi)
1408cca4c:	45 85 e4             	test   %r12d,%r12d
1408cca4f:	0f 95 c0             	setne  %al
1408cca52:	fe c0                	inc    %al
1408cca54:	41 88 47 10          	mov    %al,0x10(%r15)
1408cca58:	3a 47 24             	cmp    0x24(%rdi),%al
1408cca5b:	76 03                	jbe    0x1408cca60
1408cca5d:	88 47 24             	mov    %al,0x24(%rdi)
1408cca60:	45 85 e4             	test   %r12d,%r12d
1408cca63:	74 52                	je     0x1408ccab7
1408cca65:	0f b7 47 28          	movzwl 0x28(%rdi),%eax
1408cca69:	b9 bf ff 00 00       	mov    $0xffbf,%ecx
1408cca6e:	48 8b 77 18          	mov    0x18(%rdi),%rsi
1408cca72:	66 23 c1             	and    %cx,%ax
1408cca75:	4c 89 bf 80 00 00 00 	mov    %r15,0x80(%rdi)
1408cca7c:	66 89 47 28          	mov    %ax,0x28(%rdi)
1408cca80:	41 83 fc 01          	cmp    $0x1,%r12d
1408cca84:	7e 08                	jle    0x1408cca8e
1408cca86:	66 83 c8 40          	or     $0x40,%ax
1408cca8a:	66 89 47 28          	mov    %ax,0x28(%rdi)
1408cca8e:	48 8b 46 50          	mov    0x50(%rsi),%rax
1408cca92:	8b 48 1c             	mov    0x1c(%rax),%ecx
1408cca95:	0f c9                	bswap  %ecx
1408cca97:	39 4f 40             	cmp    %ecx,0x40(%rdi)
1408cca9a:	74 1b                	je     0x1408ccab7
1408cca9c:	48 8b 4e 70          	mov    0x70(%rsi),%rcx
1408ccaa0:	e8 3b 3f 02 00       	call   0x1408f09e0
1408ccaa5:	8b d8                	mov    %eax,%ebx
1408ccaa7:	85 c0                	test   %eax,%eax
1408ccaa9:	75 52                	jne    0x1408ccafd
1408ccaab:	8b 4f 40             	mov    0x40(%rdi),%ecx
1408ccaae:	48 8b 46 50          	mov    0x50(%rsi),%rax
1408ccab2:	0f c9                	bswap  %ecx
1408ccab4:	89 48 1c             	mov    %ecx,0x1c(%rax)
1408ccab7:	4c 8b 74 24 70       	mov    0x70(%rsp),%r14
1408ccabc:	4d 85 f6             	test   %r14,%r14
1408ccabf:	74 10                	je     0x1408ccad1
1408ccac1:	48 8b 47 18          	mov    0x18(%rdi),%rax
1408ccac5:	48 8b 48 50          	mov    0x50(%rax),%rcx
1408ccac9:	8b 41 28             	mov    0x28(%rcx),%eax