14002c735:	00
14002c736:	4c 8b c7             	mov    %rdi,%r8
14002c739:	49 d3 e8             	shr    %cl,%r8
14002c73c:	49 2b f8             	sub    %r8,%rdi
14002c73f:	4d 85 c0             	test   %r8,%r8
14002c742:	74 14                	je     0x14002c758
14002c744:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c748:	48 8b d3             	mov    %rbx,%rdx
14002c74b:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002c750:	e8 cb 2f 00 00       	call   0x14002f720
14002c755:	48 8b 18             	mov    (%rax),%rbx
14002c758:	4c 8b c3             	mov    %rbx,%r8
14002c75b:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14002c760:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14002c765:	e8 f6 03 00 00       	call   0x14002cb60
14002c76a:	48 8b 00             	mov    (%rax),%rax
14002c76d:	48 85 ff             	test   %rdi,%rdi
14002c770:	74 17                	je     0x14002c789
14002c772:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c776:	4c 8b c7             	mov    %rdi,%r8
14002c779:	48 8b d0             	mov    %rax,%rdx
14002c77c:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002c781:	e8 9a 2f 00 00       	call   0x14002f720
14002c786:	48 8b 00             	mov    (%rax),%rax
14002c789:	48 8b 5d 88          	mov    -0x78(%rbp),%rbx
14002c78d:	48 89 03             	mov    %rax,(%rbx)
14002c790:	48 8b 55 18          	mov    0x18(%rbp),%rdx
14002c794:	48 83 fa 0f          	cmp    $0xf,%rdx
14002c798:	76 34                	jbe    0x14002c7ce
14002c79a:	48 ff c2             	inc    %rdx
14002c79d:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
14002c7a1:	48 8b c1             	mov    %rcx,%rax
14002c7a4:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14002c7ab:	72 1c                	jb     0x14002c7c9
14002c7ad:	48 83 c2 27          	add    $0x27,%rdx
14002c7b1:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14002c7b5:	48 2b c1             	sub    %rcx,%rax
14002c7b8:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14002c7bc:	48 83 f8 1f          	cmp    $0x1f,%rax
14002c7c0:	76 07                	jbe    0x14002c7c9
14002c7c2:	ff 15 d8 2d 03 00    	call   *0x32dd8(%rip)        # 0x14005f5a0
14002c7c8:	cc                   	int3
14002c7c9:	e8 c6 d4 02 00       	call   0x140059c94
14002c7ce:	48 8b c3             	mov    %rbx,%rax
14002c7d1:	e9 2f 02 00 00       	jmp    0x14002ca05
14002c7d6:	f7 da                	neg    %edx
14002c7d8:	89 55 b8             	mov    %edx,-0x48(%rbp)
14002c7db:	8b ca                	mov    %edx,%ecx
14002c7dd:	45 85 d2             	test   %r10d,%r10d
14002c7e0:	75 0f                	jne    0x14002c7f1
14002c7e2:	85 c0                	test   %eax,%eax
14002c7e4:	78 0b                	js     0x14002c7f1
14002c7e6:	3b c2                	cmp    %edx,%eax
14002c7e8:	7d 07                	jge    0x14002c7f1
14002c7ea:	8b d0                	mov    %eax,%edx
14002c7ec:	89 45 b8             	mov    %eax,-0x48(%rbp)
14002c7ef:	8b c8                	mov    %eax,%ecx
14002c7f1:	85 c9                	test   %ecx,%ecx
14002c7f3:	75 0f                	jne    0x14002c804
14002c7f5:	45 85 d2             	test   %r10d,%r10d
14002c7f8:	75 0a                	jne    0x14002c804
14002c7fa:	f6 45 c6 08          	testb  $0x8,-0x3a(%rbp)
14002c7fe:	75 04                	jne    0x14002c804
14002c800:	32 c0                	xor    %al,%al
14002c802:	eb 02                	jmp    0x14002c806
14002c804:	b0 01                	mov    $0x1,%al
14002c806:	88 45 ac             	mov    %al,-0x54(%rbp)
14002c809:	0f b6 c8             	movzbl %al,%ecx
14002c80c:	ff c1                	inc    %ecx
14002c80e:	03 ca                	add    %edx,%ecx
14002c810:	49 03 cf             	add    %r15,%rcx
14002c813:	48 8d 45 a0          	lea    -0x60(%rbp),%rax
14002c817:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14002c81c:	48 8d 45 a4          	lea    -0x5c(%rbp),%rax
14002c820:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
14002c825:	48 8d 45 ac          	lea    -0x54(%rbp),%rax
14002c829:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14002c82e:	48 8d 45 a8          	lea    -0x58(%rbp),%rax
14002c832:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14002c837:	48 8d 45 b8          	lea    -0x48(%rbp),%rax
14002c83b:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14002c840:	48 8d 45 b4          	lea    -0x4c(%rbp),%rax
14002c844:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14002c849:	48 8d 45 b0          	lea    -0x50(%rbp),%rax
14002c84d:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
14002c852:	41 8b 45 00          	mov    0x0(%r13),%eax
14002c856:	8b f8                	mov    %eax,%edi
14002c858:	48 2b f9             	sub    %rcx,%rdi
14002c85b:	48 3b c1             	cmp    %rcx,%rax
14002c85e:	48 0f 46 fe          	cmovbe %rsi,%rdi
14002c862:	41 0f b6 4d 09       	movzbl 0x9(%r13),%ecx
14002c867:	83 e1 0f             	and    $0xf,%ecx
14002c86a:	48 8d 05 8f 37 fd ff 	lea    -0x2c871(%rip),%rax        # 0x140000000
14002c871:	0f b6 8c 01 24 04 06 	movzbl 0x60424(%rcx,%rax,1),%ecx
14002c878:	00
14002c879:	4c 8b c7             	mov    %rdi,%r8
14002c87c:	49 d3 e8             	shr    %cl,%r8
14002c87f:	49 2b f8             	sub    %r8,%rdi
14002c882:	4d 85 c0             	test   %r8,%r8
14002c885:	74 14                	je     0x14002c89b
14002c887:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c88b:	48 8b d3             	mov    %rbx,%rdx
14002c88e:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002c893:	e8 88 2e 00 00       	call   0x14002f720
14002c898:	48 8b 18             	mov    (%rax),%rbx
14002c89b:	4c 8b c3             	mov    %rbx,%r8
14002c89e:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14002c8a3:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14002c8a8:	e8 13 05 00 00       	call   0x14002cdc0
14002c8ad:	48 8b 00             	mov    (%rax),%rax
14002c8b0:	48 85 ff             	test   %rdi,%rdi
14002c8b3:	74 17                	je     0x14002c8cc
14002c8b5:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c8b9:	4c 8b c7             	mov    %rdi,%r8
14002c8bc:	48 8b d0             	mov    %rax,%rdx
14002c8bf:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002c8c4:	e8 57 2e 00 00       	call   0x14002f720
14002c8c9:	48 8b 00             	mov    (%rax),%rax
14002c8cc:	48 8b 5d 88          	mov    -0x78(%rbp),%rbx
14002c8d0:	48 89 03             	mov    %rax,(%rbx)
14002c8d3:	48 8b c3             	mov    %rbx,%rax
14002c8d6:	e9 2a 01 00 00       	jmp    0x14002ca05
14002c8db:	44 8b de             	mov    %esi,%r11d
14002c8de:	0f b6 55 c6          	movzbl -0x3a(%rbp),%edx
14002c8e2:	f6 c2 08             	test   $0x8,%dl
14002c8e5:	74 0c                	je     0x14002c8f3
14002c8e7:	41 2b c2             	sub    %r10d,%eax
14002c8ea:	44 0f 49 d8          	cmovns %eax,%r11d
14002c8ee:	4d 03 fb             	add    %r11,%r15
14002c8f1:	eb 0e                	jmp    0x14002c901
14002c8f3:	41 83 fa 01          	cmp    $0x1,%r10d
14002c8f7:	75 08                	jne    0x14002c901
14002c8f9:	44 0f b7 c6          	movzwl %si,%r8d
14002c8fd:	66 89 75 a8          	mov    %si,-0x58(%rbp)
14002c901:	41 8b c1             	mov    %r9d,%eax
14002c904:	f7 d8                	neg    %eax
14002c906:	41 0f 48 c1          	cmovs  %r9d,%eax
14002c90a:	b9 02 00 00 00       	mov    $0x2,%ecx
14002c90f:	83 f8 64             	cmp    $0x64,%eax
14002c912:	7c 0f                	jl     0x14002c923
14002c914:	48 8b ce             	mov    %rsi,%rcx
14002c917:	3d e8 03 00 00       	cmp    $0x3e8,%eax
14002c91c:	0f 9d c1             	setge  %cl
14002c91f:	48 83 c1 03          	add    $0x3,%rcx
14002c923:	48 8b c6             	mov    %rsi,%rax
14002c926:	66 45 85 c0          	test   %r8w,%r8w
14002c92a:	0f 95 c0             	setne  %al
14002c92d:	48 83 c0 02          	add    $0x2,%rax
14002c931:	48 03 c8             	add    %rax,%rcx
14002c934:	49 03 cf             	add    %r15,%rcx
14002c937:	0f b6 44 24 30       	movzbl 0x30(%rsp),%eax
14002c93c:	88 44 24 40          	mov    %al,0x40(%rsp)
14002c940:	44 89 74 24 44       	mov    %r14d,0x44(%rsp)
14002c945:	44 89 54 24 48       	mov    %r10d,0x48(%rsp)
14002c94a:	66 44 89 44 24 4c    	mov    %r8w,0x4c(%rsp)
14002c950:	44 89 5c 24 50       	mov    %r11d,0x50(%rsp)
14002c955:	66 44 89 64 24 54    	mov    %r12w,0x54(%rsp)
14002c95b:	f6 d2                	not    %dl
14002c95d:	80 e2 01             	and    $0x1,%dl
14002c960:	c0 e2 05             	shl    $0x5,%dl
14002c963:	80 ca 45             	or     $0x45,%dl
14002c966:	88 54 24 56          	mov    %dl,0x56(%rsp)
14002c96a:	44 89 4c 24 58       	mov    %r9d,0x58(%rsp)
14002c96f:	41 8b 45 00          	mov    0x0(%r13),%eax
14002c973:	85 c0                	test   %eax,%eax
14002c975:	7e 73                	jle    0x14002c9ea
14002c977:	8b f8                	mov    %eax,%edi
14002c979:	48 2b f9             	sub    %rcx,%rdi
14002c97c:	48 3b c1             	cmp    %rcx,%rax
14002c97f:	48 0f 46 fe          	cmovbe %rsi,%rdi
14002c983:	41 0f b6 4d 09       	movzbl 0x9(%r13),%ecx
14002c988:	83 e1 0f             	and    $0xf,%ecx
14002c98b:	48 8d 05 6e 36 fd ff 	lea    -0x2c992(%rip),%rax        # 0x140000000
14002c992:	0f b6 8c 01 24 04 06 	movzbl 0x60424(%rcx,%rax,1),%ecx
14002c999:	00
14002c99a:	4c 8b c7             	mov    %rdi,%r8
14002c99d:	49 d3 e8             	shr    %cl,%r8
14002c9a0:	49 2b f8             	sub    %r8,%rdi
14002c9a3:	4d 85 c0             	test   %r8,%r8
14002c9a6:	74 14                	je     0x14002c9bc
14002c9a8:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c9ac:	48 8b d3             	mov    %rbx,%rdx
14002c9af:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002c9b4:	e8 67 2d 00 00       	call   0x14002f720
14002c9b9:	48 8b 18             	mov    (%rax),%rbx
14002c9bc:	4c 8b c3             	mov    %rbx,%r8
14002c9bf:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
14002c9c3:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14002c9c8:	e8 63 00 00 00       	call   0x14002ca30
14002c9cd:	48 8b 08             	mov    (%rax),%rcx
14002c9d0:	48 85 ff             	test   %rdi,%rdi
14002c9d3:	74 29                	je     0x14002c9fe
14002c9d5:	4d 8d 4d 0c          	lea    0xc(%r13),%r9
14002c9d9:	4c 8b c7             	mov    %rdi,%r8
14002c9dc:	48 8b d1             	mov    %rcx,%rdx
14002c9df:	48 8d 4d 90          	lea    -0x70(%rbp),%rcx
14002c9e3:	e8 38 2d 00 00       	call   0x14002f720
14002c9e8:	eb 11                	jmp    0x14002c9fb
14002c9ea:	4c 8b c3             	mov    %rbx,%r8
14002c9ed:	48 8d 55 98          	lea    -0x68(%rbp),%rdx
14002c9f1:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
14002c9f6:	e8 35 00 00 00       	call   0x14002ca30
14002c9fb:	48 8b 08             	mov    (%rax),%rcx
14002c9fe:	48 8b 45 88          	mov    -0x78(%rbp),%rax
14002ca02:	48 89 08             	mov    %rcx,(%rax)
14002ca05:	48 8b 4d 28          	mov    0x28(%rbp),%rcx
14002ca09:	48 33 cc             	xor    %rsp,%rcx
14002ca0c:	e8 ef cd 02 00       	call   0x140059800
14002ca11:	48 8b 9c 24 78 01 00 	mov    0x178(%rsp),%rbx
14002ca18:	00
14002ca19:	48 81 c4 30 01 00 00 	add    $0x130,%rsp
14002ca20:	41 5f                	pop    %r15
14002ca22:	41 5e                	pop    %r14
14002ca24:	41 5d                	pop    %r13
14002ca26:	41 5c                	pop    %r12
14002ca28:	5f                   	pop    %rdi
14002ca29:	5e                   	pop    %rsi
14002ca2a:	5d                   	pop    %rbp
14002ca2b:	c3                   	ret
14002ca2c:	cc                   	int3
14002ca2d:	cc                   	int3
14002ca2e:	cc                   	int3
14002ca2f:	cc                   	int3
14002ca30:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14002ca35:	55                   	push   %rbp
14002ca36:	56                   	push   %rsi
14002ca37:	57                   	push   %rdi
14002ca38:	48 83 ec 60          	sub    $0x60,%rsp
14002ca3c:	48 8b 05 fd b5 04 00 	mov    0x4b5fd(%rip),%rax        # 0x140078040
14002ca43:	48 33 c4             	xor    %rsp,%rax
14002ca46:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
14002ca4b:	0f b6 01             	movzbl (%rcx),%eax
14002ca4e:	49 8b d8             	mov    %r8,%rbx
14002ca51:	48 8b ea             	mov    %rdx,%rbp
14002ca54:	48 8b f9             	mov    %rcx,%rdi
14002ca57:	84 c0                	test   %al,%al
14002ca59:	74 30                	je     0x14002ca8b
14002ca5b:	49 8b 50 10          	mov    0x10(%r8),%rdx
14002ca5f:	48 8d 0d ae 39 03 00 	lea    0x339ae(%rip),%rcx        # 0x140060414
14002ca66:	0f be 34 08          	movsbl (%rax,%rcx,1),%esi
14002ca6a:	48 ff c2             	inc    %rdx
14002ca6d:	49 3b 50 18          	cmp    0x18(%r8),%rdx
14002ca71:	76 08                	jbe    0x14002ca7b
14002ca73:	49 8b 00             	mov    (%r8),%rax
14002ca76:	48 8b cb             	mov    %rbx,%rcx
14002ca79:	ff 10                	call   *(%rax)
14002ca7b:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14002ca7f:	48 8b 43 08          	mov    0x8(%rbx),%rax
14002ca83:	66 89 34 48          	mov    %si,(%rax,%rcx,2)
14002ca87:	48 ff 43 10          	incq   0x10(%rbx)
14002ca8b:	0f b7 47 0c          	movzwl 0xc(%rdi),%eax
14002ca8f:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14002ca94:	44 8b 47 08          	mov    0x8(%rdi),%r8d
14002ca98:	41 b9 01 00 00 00    	mov    $0x1,%r9d
14002ca9e:	8b 57 04             	mov    0x4(%rdi),%edx
14002caa1:	66 89 44 24 20       	mov    %ax,0x20(%rsp)
14002caa6:	e8 a5 39 00 00       	call   0x140030450
14002caab:	4c 8b cb             	mov    %rbx,%r9
14002caae:	48 8d 54 24 38       	lea    0x38(%rsp),%rdx
14002cab3:	4c 8b c0             	mov    %rax,%r8
14002cab6:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14002cabb:	e8 10 2a 00 00       	call   0x14002f4d0
14002cac0:	8b 47 10             	mov    0x10(%rdi),%eax
14002cac3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14002cac8:	85 c0                	test   %eax,%eax
14002caca:	7e 33                	jle    0x14002caff
14002cacc:	8b f0                	mov    %eax,%esi
14002cace:	66 90                	xchg   %ax,%ax
14002cad0:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14002cad4:	48 ff c2             	inc    %rdx
14002cad7:	48 3b 53 18          	cmp    0x18(%rbx),%rdx
14002cadb:	76 08                	jbe    0x14002cae5
14002cadd:	48 8b 03             	mov    (%rbx),%rax
14002cae0:	48 8b cb             	mov    %rbx,%rcx
14002cae3:	ff 10                	call   *(%rax)
14002cae5:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14002cae9:	0f b7 47 14          	movzwl 0x14(%rdi),%eax
14002caed:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14002caf1:	66 89 04 51          	mov    %ax,(%rcx,%rdx,2)
14002caf5:	48 ff 43 10          	incq   0x10(%rbx)
14002caf9:	48 83 ee 01          	sub    $0x1,%rsi
14002cafd:	75 d1                	jne    0x14002cad0
14002caff:	48 8b 53 10          	mov    0x10(%rbx),%rdx
14002cb03:	0f be 77 16          	movsbl 0x16(%rdi),%esi
14002cb07:	48 ff c2             	inc    %rdx
14002cb0a:	48 3b 53 18          	cmp    0x18(%rbx),%rdx
14002cb0e:	76 09                	jbe    0x14002cb19
14002cb10:	4c 8b 03             	mov    (%rbx),%r8
14002cb13:	48 8b cb             	mov    %rbx,%rcx
14002cb16:	41 ff 10             	call   *(%r8)
14002cb19:	4c 8b 43 10          	mov    0x10(%rbx),%r8
14002cb1d:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
14002cb21:	66 42 89 34 41       	mov    %si,(%rcx,%r8,2)
14002cb26:	4c 8b c3             	mov    %rbx,%r8
14002cb29:	48 ff 43 10          	incq   0x10(%rbx)
14002cb2d:	48 8b cd             	mov    %rbp,%rcx
14002cb30:	8b 57 18             	mov    0x18(%rdi),%edx
14002cb33:	e8 68 2f 00 00       	call   0x14002faa0
14002cb38:	48 8b c5             	mov    %rbp,%rax
14002cb3b:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14002cb40:	48 33 cc             	xor    %rsp,%rcx
14002cb43:	e8 b8 cc 02 00       	call   0x140059800
14002cb48:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
14002cb4f:	00
14002cb50:	48 83 c4 60          	add    $0x60,%rsp
14002cb54:	5f                   	pop    %rdi
14002cb55:	5e                   	pop    %rsi
14002cb56:	5d                   	pop    %rbp
14002cb57:	c3                   	ret
14002cb58:	cc                   	int3
14002cb59:	cc                   	int3
14002cb5a:	cc                   	int3
14002cb5b:	cc                   	int3
14002cb5c:	cc                   	int3
14002cb5d:	cc                   	int3
14002cb5e:	cc                   	int3
14002cb5f:	cc                   	int3
14002cb60:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14002cb65:	55                   	push   %rbp
14002cb66:	56                   	push   %rsi
14002cb67:	57                   	push   %rdi
14002cb68:	41 54                	push   %r12
14002cb6a:	41 55                	push   %r13
14002cb6c:	41 56                	push   %r14
14002cb6e:	41 57                	push   %r15
14002cb70:	48 8d ac 24 60 fc ff 	lea    -0x3a0(%rsp),%rbp
14002cb77:	ff
14002cb78:	48 81 ec a0 04 00 00 	sub    $0x4a0,%rsp
14002cb7f:	48 8b 05 ba b4 04 00 	mov    0x4b4ba(%rip),%rax        # 0x140078040
14002cb86:	48 33 c4             	xor    %rsp,%rax
14002cb89:	48 89 85 90 03 00 00 	mov    %rax,0x390(%rbp)
14002cb90:	49 8b d8             	mov    %r8,%rbx
14002cb93:	4c 8b f2             	mov    %rdx,%r14
14002cb96:	48 8b f9             	mov    %rcx,%rdi
14002cb99:	48 8b 01             	mov    (%rcx),%rax
14002cb9c:	0f b6 08             	movzbl (%rax),%ecx
14002cb9f:	84 c9                	test   %cl,%cl
14002cba1:	74 32                	je     0x14002cbd5
14002cba3:	8b c1                	mov    %ecx,%eax
14002cba5:	48 8d 0d 68 38 03 00 	lea    0x33868(%rip),%rcx        # 0x140060414
14002cbac:	0f be 34 08          	movsbl (%rax,%rcx,1),%esi
14002cbb0:	49 8b 50 10          	mov    0x10(%r8),%rdx
14002cbb4:	48 ff c2             	inc    %rdx
14002cbb7:	49 3b 50 18          	cmp    0x18(%r8),%rdx
14002cbbb:	76 08                	jbe    0x14002cbc5
14002cbbd:	49 8b 00             	mov    (%r8),%rax
14002cbc0:	48 8b cb             	mov    %rbx,%rcx
14002cbc3:	ff 10                	call   *(%rax)
14002cbc5:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14002cbc9:	48 8b 43 08          	mov    0x8(%rbx),%rax