14007ea02:	48 83 ec 60          	sub    $0x60,%rsp
14007ea06:	48 8b d9             	mov    %rcx,%rbx
14007ea09:	48 8b 01             	mov    (%rcx),%rax
14007ea0c:	48 63 50 04          	movslq 0x4(%rax),%rdx
14007ea10:	83 7c 0a 10 00       	cmpl   $0x0,0x10(%rdx,%rcx,1)
14007ea15:	75 32                	jne    0x14007ea49
14007ea17:	f6 44 0a 18 02       	testb  $0x2,0x18(%rdx,%rcx,1)
14007ea1c:	74 2b                	je     0x14007ea49
14007ea1e:	48 8b 4c 0a 48       	mov    0x48(%rdx,%rcx,1),%rcx
14007ea23:	48 8b 01             	mov    (%rcx),%rax
14007ea26:	ff 50 68             	call   *0x68(%rax)
14007ea29:	83 f8 ff             	cmp    $0xffffffff,%eax
14007ea2c:	75 1b                	jne    0x14007ea49
14007ea2e:	48 8b 03             	mov    (%rbx),%rax
14007ea31:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007ea35:	8b 44 19 10          	mov    0x10(%rcx,%rbx,1),%eax
14007ea39:	83 e0 13             	and    $0x13,%eax
14007ea3c:	83 c8 04             	or     $0x4,%eax
14007ea3f:	89 44 19 10          	mov    %eax,0x10(%rcx,%rbx,1)
14007ea43:	23 44 19 14          	and    0x14(%rcx,%rbx,1),%eax
14007ea47:	75 06                	jne    0x14007ea4f
14007ea49:	48 83 c4 60          	add    $0x60,%rsp
14007ea4d:	5b                   	pop    %rbx
14007ea4e:	c3                   	ret
14007ea4f:	a8 04                	test   $0x4,%al
14007ea51:	74 09                	je     0x14007ea5c
14007ea53:	48 8d 1d 36 95 32 00 	lea    0x329536(%rip),%rbx        # 0x1403a7f90
14007ea5a:	eb 14                	jmp    0x14007ea70
14007ea5c:	a8 02                	test   $0x2,%al
14007ea5e:	48 8d 1d 43 95 32 00 	lea    0x329543(%rip),%rbx        # 0x1403a7fa8
14007ea65:	48 8d 05 54 95 32 00 	lea    0x329554(%rip),%rax        # 0x1403a7fc0
14007ea6c:	48 0f 44 d8          	cmove  %rax,%rbx
14007ea70:	ba 01 00 00 00       	mov    $0x1,%edx
14007ea75:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14007ea7a:	e8 41 eb ff ff       	call   0x14007d5c0
14007ea7f:	4c 8b c0             	mov    %rax,%r8
14007ea82:	48 8b d3             	mov    %rbx,%rdx
14007ea85:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14007ea8a:	e8 b1 f5 ff ff       	call   0x14007e040
14007ea8f:	48 8d 15 42 e3 34 00 	lea    0x34e342(%rip),%rdx        # 0x1403ccdd8
14007ea96:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14007ea9b:	e8 10 3a 23 00       	call   0x1402b24b0
14007eaa0:	cc                   	int3
14007eaa1:	cc                   	int3
14007eaa2:	cc                   	int3
14007eaa3:	cc                   	int3
14007eaa4:	cc                   	int3
14007eaa5:	cc                   	int3
14007eaa6:	cc                   	int3
14007eaa7:	cc                   	int3
14007eaa8:	cc                   	int3
14007eaa9:	cc                   	int3
14007eaaa:	cc                   	int3
14007eaab:	cc                   	int3
14007eaac:	cc                   	int3
14007eaad:	cc                   	int3
14007eaae:	cc                   	int3
14007eaaf:	cc                   	int3
14007eab0:	48 83 ec 38          	sub    $0x38,%rsp
14007eab4:	4c 8b 49 10          	mov    0x10(%rcx),%r9
14007eab8:	49 3b d1             	cmp    %r9,%rdx
14007eabb:	77 17                	ja     0x14007ead4
14007eabd:	48 89 51 10          	mov    %rdx,0x10(%rcx)
14007eac1:	48 83 79 18 0f       	cmpq   $0xf,0x18(%rcx)
14007eac6:	76 03                	jbe    0x14007eacb
14007eac8:	48 8b 09             	mov    (%rcx),%rcx
14007eacb:	c6 04 11 00          	movb   $0x0,(%rcx,%rdx,1)
14007eacf:	48 83 c4 38          	add    $0x38,%rsp
14007ead3:	c3                   	ret
14007ead4:	4c 8b 51 18          	mov    0x18(%rcx),%r10
14007ead8:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14007eadd:	49 8b c2             	mov    %r10,%rax
14007eae0:	48 8b fa             	mov    %rdx,%rdi
14007eae3:	49 2b c1             	sub    %r9,%rax
14007eae6:	49 2b f9             	sub    %r9,%rdi
14007eae9:	48 3b f8             	cmp    %rax,%rdi
14007eaec:	77 38                	ja     0x14007eb26
14007eaee:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14007eaf3:	48 89 51 10          	mov    %rdx,0x10(%rcx)
14007eaf7:	49 83 fa 0f          	cmp    $0xf,%r10
14007eafb:	76 03                	jbe    0x14007eb00
14007eafd:	48 8b 09             	mov    (%rcx),%rcx
14007eb00:	4a 8d 1c 09          	lea    (%rcx,%r9,1),%rbx
14007eb04:	41 0f be d0          	movsbl %r8b,%edx
14007eb08:	48 8b cb             	mov    %rbx,%rcx
14007eb0b:	4c 8b c7             	mov    %rdi,%r8
14007eb0e:	e8 ed 2e 26 00       	call   0x1402e1a00
14007eb13:	c6 04 3b 00          	movb   $0x0,(%rbx,%rdi,1)
14007eb17:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14007eb1c:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14007eb21:	48 83 c4 38          	add    $0x38,%rsp
14007eb25:	c3                   	ret
14007eb26:	44 88 44 24 20       	mov    %r8b,0x20(%rsp)
14007eb2b:	4c 8b cf             	mov    %rdi,%r9
14007eb2e:	45 33 c0             	xor    %r8d,%r8d
14007eb31:	48 8b d7             	mov    %rdi,%rdx
14007eb34:	e8 37 e7 ff ff       	call   0x14007d270
14007eb39:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14007eb3e:	48 83 c4 38          	add    $0x38,%rsp
14007eb42:	c3                   	ret
14007eb43:	cc                   	int3
14007eb44:	cc                   	int3
14007eb45:	cc                   	int3
14007eb46:	cc                   	int3
14007eb47:	cc                   	int3
14007eb48:	cc                   	int3
14007eb49:	cc                   	int3
14007eb4a:	cc                   	int3
14007eb4b:	cc                   	int3
14007eb4c:	cc                   	int3
14007eb4d:	cc                   	int3
14007eb4e:	cc                   	int3
14007eb4f:	cc                   	int3
14007eb50:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14007eb55:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14007eb5a:	56                   	push   %rsi
14007eb5b:	57                   	push   %rdi
14007eb5c:	41 56                	push   %r14
14007eb5e:	48 83 ec 40          	sub    $0x40,%rsp
14007eb62:	48 8b 05 17 6f 35 00 	mov    0x356f17(%rip),%rax        # 0x1403d5a80
14007eb69:	48 33 c4             	xor    %rsp,%rax
14007eb6c:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14007eb71:	4c 8b f1             	mov    %rcx,%r14
14007eb74:	33 d2                	xor    %edx,%edx
14007eb76:	48 8d 4c 24 24       	lea    0x24(%rsp),%rcx
14007eb7b:	e8 e4 fd 22 00       	call   0x1402ae964
14007eb80:	90                   	nop
14007eb81:	48 8b 2d 28 cd 35 00 	mov    0x35cd28(%rip),%rbp        # 0x1403db8b0
14007eb88:	48 89 6c 24 28       	mov    %rbp,0x28(%rsp)
14007eb8d:	48 8b 3d 14 b3 35 00 	mov    0x35b314(%rip),%rdi        # 0x1403d9ea8
14007eb94:	48 85 ff             	test   %rdi,%rdi
14007eb97:	75 3d                	jne    0x14007ebd6
14007eb99:	33 d2                	xor    %edx,%edx
14007eb9b:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14007eba0:	e8 bf fd 22 00       	call   0x1402ae964
14007eba5:	48 39 3d fc b2 35 00 	cmp    %rdi,0x35b2fc(%rip)        # 0x1403d9ea8
14007ebac:	75 17                	jne    0x14007ebc5
14007ebae:	8b 05 dc b2 35 00    	mov    0x35b2dc(%rip),%eax        # 0x1403d9e90
14007ebb4:	ff c0                	inc    %eax
14007ebb6:	89 05 d4 b2 35 00    	mov    %eax,0x35b2d4(%rip)        # 0x1403d9e90
14007ebbc:	48 98                	cltq
14007ebbe:	48 89 05 e3 b2 35 00 	mov    %rax,0x35b2e3(%rip)        # 0x1403d9ea8
14007ebc5:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
14007ebca:	e8 0d fe 22 00       	call   0x1402ae9dc
14007ebcf:	48 8b 3d d2 b2 35 00 	mov    0x35b2d2(%rip),%rdi        # 0x1403d9ea8
14007ebd6:	49 8b 4e 08          	mov    0x8(%r14),%rcx
14007ebda:	48 8d 34 fd 00 00 00 	lea    0x0(,%rdi,8),%rsi
14007ebe1:	00
14007ebe2:	48 3b 79 18          	cmp    0x18(%rcx),%rdi
14007ebe6:	73 0f                	jae    0x14007ebf7
14007ebe8:	48 8b 41 10          	mov    0x10(%rcx),%rax
14007ebec:	48 8b 1c 06          	mov    (%rsi,%rax,1),%rbx
14007ebf0:	48 85 db             	test   %rbx,%rbx
14007ebf3:	75 64                	jne    0x14007ec59
14007ebf5:	eb 02                	jmp    0x14007ebf9
14007ebf7:	33 db                	xor    %ebx,%ebx
14007ebf9:	80 79 24 00          	cmpb   $0x0,0x24(%rcx)
14007ebfd:	74 13                	je     0x14007ec12
14007ebff:	e8 a4 ff 22 00       	call   0x1402aeba8
14007ec04:	48 3b 78 18          	cmp    0x18(%rax),%rdi
14007ec08:	73 0d                	jae    0x14007ec17
14007ec0a:	48 8b 40 10          	mov    0x10(%rax),%rax
14007ec0e:	48 8b 1c 06          	mov    (%rsi,%rax,1),%rbx
14007ec12:	48 85 db             	test   %rbx,%rbx
14007ec15:	75 42                	jne    0x14007ec59
14007ec17:	48 85 ed             	test   %rbp,%rbp
14007ec1a:	74 05                	je     0x14007ec21
14007ec1c:	48 8b dd             	mov    %rbp,%rbx
14007ec1f:	eb 38                	jmp    0x14007ec59
14007ec21:	49 8b d6             	mov    %r14,%rdx
14007ec24:	48 8d 4c 24 28       	lea    0x28(%rsp),%rcx
14007ec29:	e8 02 f1 ff ff       	call   0x14007dd30
14007ec2e:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
14007ec32:	74 52                	je     0x14007ec86
14007ec34:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
14007ec39:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14007ec3e:	48 8b cb             	mov    %rbx,%rcx
14007ec41:	e8 26 ff 22 00       	call   0x1402aeb6c
14007ec46:	48 8b 0b             	mov    (%rbx),%rcx
14007ec49:	48 8b 51 08          	mov    0x8(%rcx),%rdx
14007ec4d:	48 8b cb             	mov    %rbx,%rcx
14007ec50:	ff d2                	call   *%rdx
14007ec52:	48 89 1d 57 cc 35 00 	mov    %rbx,0x35cc57(%rip)        # 0x1403db8b0
14007ec59:	48 8d 4c 24 24       	lea    0x24(%rsp),%rcx
14007ec5e:	e8 79 fd 22 00       	call   0x1402ae9dc
14007ec63:	48 8b c3             	mov    %rbx,%rax
14007ec66:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
14007ec6b:	48 33 cc             	xor    %rsp,%rcx
14007ec6e:	e8 3d 12 23 00       	call   0x1402afeb0
14007ec73:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
14007ec78:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
14007ec7d:	48 83 c4 40          	add    $0x40,%rsp
14007ec81:	41 5e                	pop    %r14
14007ec83:	5f                   	pop    %rdi
14007ec84:	5e                   	pop    %rsi
14007ec85:	c3                   	ret
14007ec86:	e8 b5 ef ff ff       	call   0x14007dc40
14007ec8b:	90                   	nop
14007ec8c:	cc                   	int3
14007ec8d:	cc                   	int3
14007ec8e:	cc                   	int3
14007ec8f:	cc                   	int3
14007ec90:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14007ec95:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14007ec9a:	56                   	push   %rsi
14007ec9b:	57                   	push   %rdi
14007ec9c:	41 56                	push   %r14
14007ec9e:	48 83 ec 40          	sub    $0x40,%rsp
14007eca2:	48 8b da             	mov    %rdx,%rbx
14007eca5:	48 89 54 24 38       	mov    %rdx,0x38(%rsp)
14007ecaa:	33 ff                	xor    %edi,%edi
14007ecac:	89 7c 24 30          	mov    %edi,0x30(%rsp)
14007ecb0:	48 8b e9             	mov    %rcx,%rbp
14007ecb3:	48 83 79 18 07       	cmpq   $0x7,0x18(%rcx)
14007ecb8:	76 03                	jbe    0x14007ecbd
14007ecba:	48 8b 29             	mov    (%rcx),%rbp
14007ecbd:	48 8b 71 10          	mov    0x10(%rcx),%rsi
14007ecc1:	e8 f2 f5 22 00       	call   0x1402ae2b8
14007ecc6:	44 8b f0             	mov    %eax,%r14d
14007ecc9:	0f 57 c0             	xorps  %xmm0,%xmm0
14007eccc:	0f 11 03             	movups %xmm0,(%rbx)
14007eccf:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
14007ecd3:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
14007ecda:	00
14007ecdb:	c6 03 00             	movb   $0x0,(%rbx)
14007ecde:	c7 44 24 30 04 00 00 	movl   $0x4,0x30(%rsp)
14007ece5:	00
14007ece6:	48 85 f6             	test   %rsi,%rsi
14007ece9:	74 60                	je     0x14007ed4b
14007eceb:	48 81 fe ff ff ff 7f 	cmp    $0x7fffffff,%rsi
14007ecf2:	77 6d                	ja     0x14007ed61
14007ecf4:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14007ecf8:	45 33 c9             	xor    %r9d,%r9d
14007ecfb:	44 8b c6             	mov    %esi,%r8d
14007ecfe:	48 8b d5             	mov    %rbp,%rdx
14007ed01:	8b c8                	mov    %eax,%ecx
14007ed03:	e8 d8 f5 22 00       	call   0x1402ae2e0
14007ed08:	48 8b f8             	mov    %rax,%rdi
14007ed0b:	48 c1 e8 20          	shr    $0x20,%rax
14007ed0f:	85 c0                	test   %eax,%eax
14007ed11:	75 54                	jne    0x14007ed67
14007ed13:	48 63 d7             	movslq %edi,%rdx
14007ed16:	45 33 c0             	xor    %r8d,%r8d
14007ed19:	48 8b cb             	mov    %rbx,%rcx
14007ed1c:	e8 8f fd ff ff       	call   0x14007eab0
14007ed21:	4c 8b cb             	mov    %rbx,%r9
14007ed24:	48 83 7b 18 0f       	cmpq   $0xf,0x18(%rbx)
14007ed29:	76 03                	jbe    0x14007ed2e
14007ed2b:	4c 8b 0b             	mov    (%rbx),%r9
14007ed2e:	89 7c 24 20          	mov    %edi,0x20(%rsp)
14007ed32:	44 8b c6             	mov    %esi,%r8d
14007ed35:	48 8b d5             	mov    %rbp,%rdx
14007ed38:	41 8b ce             	mov    %r14d,%ecx
14007ed3b:	e8 a0 f5 22 00       	call   0x1402ae2e0
14007ed40:	48 8b c8             	mov    %rax,%rcx
14007ed43:	48 c1 e8 20          	shr    $0x20,%rax
14007ed47:	85 c0                	test   %eax,%eax
14007ed49:	75 28                	jne    0x14007ed73
14007ed4b:	48 8b c3             	mov    %rbx,%rax
14007ed4e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14007ed53:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
14007ed58:	48 83 c4 40          	add    $0x40,%rsp
14007ed5c:	41 5e                	pop    %r14
14007ed5e:	5f                   	pop    %rdi
14007ed5f:	5e                   	pop    %rsi
14007ed60:	c3                   	ret
14007ed61:	e8 ea ea ff ff       	call   0x14007d850
14007ed66:	90                   	nop
14007ed67:	48 c1 ef 20          	shr    $0x20,%rdi
14007ed6b:	8b cf                	mov    %edi,%ecx
14007ed6d:	e8 5e ee ff ff       	call   0x14007dbd0
14007ed72:	cc                   	int3
14007ed73:	48 c1 e9 20          	shr    $0x20,%rcx
14007ed77:	e8 54 ee ff ff       	call   0x14007dbd0
14007ed7c:	cc                   	int3
14007ed7d:	cc                   	int3
14007ed7e:	cc                   	int3
14007ed7f:	cc                   	int3
14007ed80:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14007ed85:	53                   	push   %rbx
14007ed86:	56                   	push   %rsi
14007ed87:	57                   	push   %rdi
14007ed88:	41 54                	push   %r12
14007ed8a:	41 55                	push   %r13
14007ed8c:	41 56                	push   %r14
14007ed8e:	41 57                	push   %r15
14007ed90:	48 83 ec 70          	sub    $0x70,%rsp
14007ed94:	4c 8b fa             	mov    %rdx,%r15
14007ed97:	48 8b f1             	mov    %rcx,%rsi
14007ed9a:	45 33 ed             	xor    %r13d,%r13d
14007ed9d:	41 8b fd             	mov    %r13d,%edi
14007eda0:	44 89 ac 24 c0 00 00 	mov    %r13d,0xc0(%rsp)
14007eda7:	00
14007eda8:	49 c7 c6 ff ff ff ff 	mov    $0xffffffffffffffff,%r14
14007edaf:	90                   	nop
14007edb0:	49 ff c6             	inc    %r14
14007edb3:	42 38 3c 32          	cmp    %dil,(%rdx,%r14,1)
14007edb7:	75 f7                	jne    0x14007edb0
14007edb9:	48 8b 01             	mov    (%rcx),%rax
14007edbc:	48 63 48 04          	movslq 0x4(%rax),%rcx
14007edc0:	48 8b 5c 31 28       	mov    0x28(%rcx,%rsi,1),%rbx
14007edc5:	48 85 db             	test   %rbx,%rbx
14007edc8:	7e 0a                	jle    0x14007edd4
14007edca:	49 3b de             	cmp    %r14,%rbx
14007edcd:	7e 05                	jle    0x14007edd4
14007edcf:	49 2b de             	sub    %r14,%rbx
14007edd2:	eb 03                	jmp    0x14007edd7
14007edd4:	49 8b dd             	mov    %r13,%rbx
14007edd7:	4c 8b e6             	mov    %rsi,%r12
14007edda:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14007eddf:	48 8b 4c 31 48       	mov    0x48(%rcx,%rsi,1),%rcx
14007ede4:	48 85 c9             	test   %rcx,%rcx
14007ede7:	74 07                	je     0x14007edf0
14007ede9:	48 8b 01             	mov    (%rcx),%rax
14007edec:	ff 50 08             	call   *0x8(%rax)
14007edef:	90                   	nop
14007edf0:	48 8b 0e             	mov    (%rsi),%rcx
14007edf3:	48 63 41 04          	movslq 0x4(%rcx),%rax
14007edf7:	83 7c 30 10 00       	cmpl   $0x0,0x10(%rax,%rsi,1)
14007edfc:	74 04                	je     0x14007ee02
14007edfe:	32 c0                	xor    %al,%al
14007ee00:	eb 2a                	jmp    0x14007ee2c
14007ee02:	48 8b 44 30 50       	mov    0x50(%rax,%rsi,1),%rax
14007ee07:	48 85 c0             	test   %rax,%rax
14007ee0a:	74 1e                	je     0x14007ee2a
14007ee0c:	48 3b c6             	cmp    %rsi,%rax
14007ee0f:	74 19                	je     0x14007ee2a
14007ee11:	48 8b c8             	mov    %rax,%rcx
14007ee14:	e8 87 fa ff ff       	call   0x14007e8a0
14007ee19:	48 8b 0e             	mov    (%rsi),%rcx
14007ee1c:	48 63 41 04          	movslq 0x4(%rcx),%rax
14007ee20:	83 7c 30 10 00       	cmpl   $0x0,0x10(%rax,%rsi,1)
14007ee25:	0f 94 c0             	sete   %al
14007ee28:	eb 02                	jmp    0x14007ee2c
14007ee2a:	b0 01                	mov    $0x1,%al
14007ee2c:	88 44 24 28          	mov    %al,0x28(%rsp)
14007ee30:	84 c0                	test   %al,%al
14007ee32:	75 0c                	jne    0x14007ee40
14007ee34:	ba 04 00 00 00       	mov    $0x4,%edx
14007ee39:	8b fa                	mov    %edx,%edi
14007ee3b:	e9 34 01 00 00       	jmp    0x14007ef74
14007ee40:	48 63 41 04          	movslq 0x4(%rcx),%rax
14007ee44:	8b 4c 30 18          	mov    0x18(%rax,%rsi,1),%ecx
14007ee48:	81 e1 c0 01 00 00    	and    $0x1c0,%ecx
14007ee4e:	83 f9 40             	cmp    $0x40,%ecx
14007ee51:	74 6e                	je     0x14007eec1
14007ee53:	48 85 db             	test   %rbx,%rbx
14007ee56:	7e 69                	jle    0x14007eec1
14007ee58:	48 8b 06             	mov    (%rsi),%rax
14007ee5b:	48 63 48 04          	movslq 0x4(%rax),%rcx