14008197e:	48 01 d0             	add    %rdx,%rax
140081981:	48 39 c2             	cmp    %rax,%rdx
140081984:	0f 83 16 01 00 00    	jae    0x140081aa0
14008198a:	4c 8b 35 6f 7a 1b 00 	mov    0x1b7a6f(%rip),%r14        # 0x140239400
140081991:	48 89 d5             	mov    %rdx,%rbp
140081994:	eb 21                	jmp    0x1400819b7
140081996:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14008199d:	00 00 00
1400819a0:	48 89 c8             	mov    %rcx,%rax
1400819a3:	48 83 c5 10          	add    $0x10,%rbp
1400819a7:	48 c1 e0 04          	shl    $0x4,%rax
1400819ab:	48 01 d0             	add    %rdx,%rax
1400819ae:	48 39 c5             	cmp    %rax,%rbp
1400819b1:	0f 83 e9 00 00 00    	jae    0x140081aa0
1400819b7:	48 8b 7d 08          	mov    0x8(%rbp),%rdi
1400819bb:	48 85 ff             	test   %rdi,%rdi
1400819be:	74 e0                	je     0x1400819a0
1400819c0:	48 8b 5d 00          	mov    0x0(%rbp),%rbx
1400819c4:	48 89 d9             	mov    %rbx,%rcx
1400819c7:	e8 cc 84 16 00       	call   0x1401e9e98
1400819cc:	48 89 da             	mov    %rbx,%rdx
1400819cf:	48 89 f1             	mov    %rsi,%rcx
1400819d2:	49 89 c0             	mov    %rax,%r8
1400819d5:	e8 d6 9f 01 00       	call   0x14009b9b0
1400819da:	48 8b 16             	mov    (%rsi),%rdx
1400819dd:	48 85 d2             	test   %rdx,%rdx
1400819e0:	0f 84 9a 00 00 00    	je     0x140081a80
1400819e6:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400819ea:	48 29 c2             	sub    %rax,%rdx
1400819ed:	48 83 fa 01          	cmp    $0x1,%rdx
1400819f1:	0f 84 89 00 00 00    	je     0x140081a80
1400819f7:	48 8b 56 10          	mov    0x10(%rsi),%rdx
1400819fb:	48 8d 48 01          	lea    0x1(%rax),%rcx
1400819ff:	49 89 fd             	mov    %rdi,%r13
140081a02:	48 8d 5f 0c          	lea    0xc(%rdi),%rbx
140081a06:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140081a0a:	49 89 ff             	mov    %rdi,%r15
140081a0d:	c6 04 02 00          	movb   $0x0,(%rdx,%rax,1)
140081a11:	48 8b 56 10          	mov    0x10(%rsi),%rdx
140081a15:	48 8b 46 08          	mov    0x8(%rsi),%rax
140081a19:	c6 04 02 00          	movb   $0x0,(%rdx,%rax,1)
140081a1d:	45 8b 07             	mov    (%r15),%r8d
140081a20:	45 31 c9             	xor    %r9d,%r9d
140081a23:	48 8d 15 86 49 18 00 	lea    0x184986(%rip),%rdx        # 0x1402063b0
140081a2a:	48 89 f1             	mov    %rsi,%rcx
140081a2d:	49 83 c7 04          	add    $0x4,%r15
140081a31:	e8 8a a5 01 00       	call   0x14009bfc0
140081a36:	4c 39 fb             	cmp    %r15,%rbx
140081a39:	75 e2                	jne    0x140081a1d
140081a3b:	48 83 c7 78          	add    $0x78,%rdi
140081a3f:	41 8b 45 00          	mov    0x0(%r13),%eax
140081a43:	85 c0                	test   %eax,%eax
140081a45:	74 19                	je     0x140081a60
140081a47:	49 8b 16             	mov    (%r14),%rdx
140081a4a:	48 89 f1             	mov    %rsi,%rcx
140081a4d:	48 8b 92 90 01 00 00 	mov    0x190(%rdx),%rdx
140081a54:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140081a58:	48 89 da             	mov    %rbx,%rdx
140081a5b:	e8 50 9f 01 00       	call   0x14009b9b0
140081a60:	48 83 c3 24          	add    $0x24,%rbx
140081a64:	49 83 c5 04          	add    $0x4,%r13
140081a68:	48 39 fb             	cmp    %rdi,%rbx
140081a6b:	75 d2                	jne    0x140081a3f
140081a6d:	49 8b 14 24          	mov    (%r12),%rdx
140081a71:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
140081a76:	e9 25 ff ff ff       	jmp    0x1400819a0
140081a7b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140081a80:	ba 01 00 00 00       	mov    $0x1,%edx
140081a85:	48 89 f1             	mov    %rsi,%rcx
140081a88:	e8 13 91 01 00       	call   0x14009aba0
140081a8d:	48 8b 46 08          	mov    0x8(%rsi),%rax
140081a91:	e9 61 ff ff ff       	jmp    0x1400819f7
140081a96:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140081a9d:	00 00 00
140081aa0:	48 83 c4 28          	add    $0x28,%rsp
140081aa4:	5b                   	pop    %rbx
140081aa5:	5e                   	pop    %rsi
140081aa6:	5f                   	pop    %rdi
140081aa7:	5d                   	pop    %rbp
140081aa8:	41 5c                	pop    %r12
140081aaa:	41 5d                	pop    %r13
140081aac:	41 5e                	pop    %r14
140081aae:	41 5f                	pop    %r15
140081ab0:	c3                   	ret
140081ab1:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140081ab8:	00 00 00 00
140081abc:	0f 1f 40 00          	nopl   0x0(%rax)
140081ac0:	41 57                	push   %r15
140081ac2:	41 56                	push   %r14
140081ac4:	41 55                	push   %r13
140081ac6:	41 54                	push   %r12
140081ac8:	55                   	push   %rbp
140081ac9:	57                   	push   %rdi
140081aca:	56                   	push   %rsi
140081acb:	53                   	push   %rbx
140081acc:	48 83 ec 58          	sub    $0x58,%rsp
140081ad0:	89 d6                	mov    %edx,%esi
140081ad2:	48 8b 15 17 70 1b 00 	mov    0x1b7017(%rip),%rdx        # 0x140238af0
140081ad9:	48 89 cb             	mov    %rcx,%rbx
140081adc:	b9 01 00 00 00       	mov    $0x1,%ecx
140081ae1:	48 8b 02             	mov    (%rdx),%rax
140081ae4:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140081ae9:	48 8b 05 10 79 1b 00 	mov    0x1b7910(%rip),%rax        # 0x140239400
140081af0:	ba 28 00 00 00       	mov    $0x28,%edx
140081af5:	48 8b 00             	mov    (%rax),%rax
140081af8:	48 8b 80 90 01 00 00 	mov    0x190(%rax),%rax
140081aff:	48 8b 40 10          	mov    0x10(%rax),%rax
140081b03:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140081b08:	41 89 c4             	mov    %eax,%r12d
140081b0b:	e8 90 91 04 00       	call   0x1400caca0
140081b10:	80 48 18 01          	orb    $0x1,0x18(%rax)
140081b14:	85 f6                	test   %esi,%esi
140081b16:	0f 84 44 01 00 00    	je     0x140081c60
140081b1c:	44 89 64 24 3c       	mov    %r12d,0x3c(%rsp)
140081b21:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140081b26:	48 89 d9             	mov    %rbx,%rcx
140081b29:	e8 6a 83 16 00       	call   0x1401e9e98
140081b2e:	48 8d 78 01          	lea    0x1(%rax),%rdi
140081b32:	89 f0                	mov    %esi,%eax
140081b34:	48 39 c7             	cmp    %rax,%rdi
140081b37:	0f 83 93 01 00 00    	jae    0x140081cd0
140081b3d:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140081b42:	48 89 da             	mov    %rbx,%rdx
140081b45:	e8 c6 d9 01 00       	call   0x14009f510
140081b4a:	4c 8b 70 08          	mov    0x8(%rax),%r14
140081b4e:	48 89 c5             	mov    %rax,%rbp
140081b51:	4d 85 f6             	test   %r14,%r14
140081b54:	0f 84 e6 01 00 00    	je     0x140081d40
140081b5a:	29 fe                	sub    %edi,%esi
140081b5c:	4d 89 f4             	mov    %r14,%r12
140081b5f:	48 01 df             	add    %rbx,%rdi
140081b62:	4d 89 f5             	mov    %r14,%r13
140081b65:	4d 8d 7e 0c          	lea    0xc(%r14),%r15
140081b69:	48 8d 6c 24 40       	lea    0x40(%rsp),%rbp
140081b6e:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140081b74:	48 89 ea             	mov    %rbp,%rdx
140081b77:	48 89 f9             	mov    %rdi,%rcx
140081b7a:	e8 51 83 16 00       	call   0x1401e9ed0
140081b7f:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140081b84:	41 89 45 00          	mov    %eax,0x0(%r13)
140081b88:	48 85 db             	test   %rbx,%rbx
140081b8b:	0f 84 3f 01 00 00    	je     0x140081cd0
140081b91:	48 39 fb             	cmp    %rdi,%rbx
140081b94:	0f 84 36 01 00 00    	je     0x140081cd0
140081b9a:	80 3b 00             	cmpb   $0x0,(%rbx)
140081b9d:	0f 85 2d 01 00 00    	jne    0x140081cd0
140081ba3:	48 83 c3 01          	add    $0x1,%rbx
140081ba7:	89 f2                	mov    %esi,%edx
140081ba9:	48 89 d8             	mov    %rbx,%rax
140081bac:	48 29 f8             	sub    %rdi,%rax
140081baf:	48 39 d0             	cmp    %rdx,%rax
140081bb2:	0f 83 18 01 00 00    	jae    0x140081cd0
140081bb8:	49 83 c5 04          	add    $0x4,%r13
140081bbc:	29 c6                	sub    %eax,%esi
140081bbe:	4d 39 fd             	cmp    %r15,%r13
140081bc1:	74 0d                	je     0x140081bd0
140081bc3:	48 89 df             	mov    %rbx,%rdi
140081bc6:	eb a6                	jmp    0x140081b6e
140081bc8:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140081bcf:	00
140081bd0:	4c 89 e9             	mov    %r13,%rcx
140081bd3:	8b 7c 24 30          	mov    0x30(%rsp),%edi
140081bd7:	44 8b 6c 24 3c       	mov    0x3c(%rsp),%r13d
140081bdc:	4d 8d 7e 78          	lea    0x78(%r14),%r15
140081be0:	45 8b 0c 24          	mov    (%r12),%r9d
140081be4:	45 85 c9             	test   %r9d,%r9d
140081be7:	74 55                	je     0x140081c3e
140081be9:	44 39 ee             	cmp    %r13d,%esi
140081bec:	0f 82 de 00 00 00    	jb     0x140081cd0
140081bf2:	48 8b 05 07 78 1b 00 	mov    0x1b7807(%rip),%rax        # 0x140239400
140081bf9:	48 89 da             	mov    %rbx,%rdx
140081bfc:	48 8b 00             	mov    (%rax),%rax
140081bff:	48 8b a8 90 01 00 00 	mov    0x190(%rax),%rbp
140081c06:	4c 8b 45 10          	mov    0x10(%rbp),%r8
140081c0a:	e8 e1 81 16 00       	call   0x1401e9df0
140081c0f:	48 89 c1             	mov    %rax,%rcx
140081c12:	48 8b 45 10          	mov    0x10(%rbp),%rax
140081c16:	48 83 f8 1f          	cmp    $0x1f,%rax
140081c1a:	76 74                	jbe    0x140081c90
140081c1c:	48 2b 2d 7d 74 1b 00 	sub    0x1b747d(%rip),%rbp        # 0x1402390a0
140081c23:	44 29 ee             	sub    %r13d,%esi
140081c26:	48 01 fb             	add    %rdi,%rbx
140081c29:	48 b8 39 8e e3 38 8e 	movabs $0x8e38e38e38e38e39,%rax
140081c30:	e3 38 8e
140081c33:	48 c1 fd 04          	sar    $0x4,%rbp
140081c37:	48 0f af e8          	imul   %rax,%rbp
140081c3b:	89 69 20             	mov    %ebp,0x20(%rcx)
140081c3e:	48 83 c1 24          	add    $0x24,%rcx
140081c42:	49 83 c4 04          	add    $0x4,%r12
140081c46:	4c 39 f9             	cmp    %r15,%rcx
140081c49:	75 95                	jne    0x140081be0
140081c4b:	85 f6                	test   %esi,%esi
140081c4d:	0f 85 d3 fe ff ff    	jne    0x140081b26
140081c53:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140081c58:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
140081c5f:	00
140081c60:	48 8b 35 89 6e 1b 00 	mov    0x1b6e89(%rip),%rsi        # 0x140238af0
140081c67:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
140081c6c:	48 2b 16             	sub    (%rsi),%rdx
140081c6f:	0f 85 fb 00 00 00    	jne    0x140081d70
140081c75:	48 83 c4 58          	add    $0x58,%rsp
140081c79:	5b                   	pop    %rbx
140081c7a:	5e                   	pop    %rsi
140081c7b:	5f                   	pop    %rdi
140081c7c:	5d                   	pop    %rbp
140081c7d:	41 5c                	pop    %r12
140081c7f:	41 5d                	pop    %r13
140081c81:	41 5e                	pop    %r14
140081c83:	41 5f                	pop    %r15
140081c85:	c3                   	ret
140081c86:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140081c8d:	00 00 00
140081c90:	ba 20 00 00 00       	mov    $0x20,%edx
140081c95:	45 31 c9             	xor    %r9d,%r9d
140081c98:	48 29 c2             	sub    %rax,%rdx
140081c9b:	48 01 c8             	add    %rcx,%rax
140081c9e:	83 fa 08             	cmp    $0x8,%edx
140081ca1:	73 55                	jae    0x140081cf8
140081ca3:	f6 c2 04             	test   $0x4,%dl
140081ca6:	0f 85 af 00 00 00    	jne    0x140081d5b
140081cac:	85 d2                	test   %edx,%edx
140081cae:	0f 84 68 ff ff ff    	je     0x140081c1c
140081cb4:	c6 00 00             	movb   $0x0,(%rax)
140081cb7:	f6 c2 02             	test   $0x2,%dl
140081cba:	0f 84 5c ff ff ff    	je     0x140081c1c
140081cc0:	89 d2                	mov    %edx,%edx
140081cc2:	45 31 c0             	xor    %r8d,%r8d
140081cc5:	66 44 89 44 10 fe    	mov    %r8w,-0x2(%rax,%rdx,1)
140081ccb:	e9 4c ff ff ff       	jmp    0x140081c1c
140081cd0:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
140081cd5:	ba 01 00 00 00       	mov    $0x1,%edx
140081cda:	48 89 c1             	mov    %rax,%rcx
140081cdd:	e8 1e de 01 00       	call   0x14009fb00
140081ce2:	48 8d 0d cf 46 18 00 	lea    0x1846cf(%rip),%rcx        # 0x1402063b8
140081ce9:	e8 42 19 04 00       	call   0x1400c3630
140081cee:	31 c0                	xor    %eax,%eax
140081cf0:	e9 6b ff ff ff       	jmp    0x140081c60
140081cf5:	0f 1f 00             	nopl   (%rax)
140081cf8:	41 89 d0             	mov    %edx,%r8d
140081cfb:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140081d02:	4a c7 44 00 f8 00 00 	movq   $0x0,-0x8(%rax,%r8,1)
140081d09:	00 00
140081d0b:	4c 8d 40 08          	lea    0x8(%rax),%r8
140081d0f:	49 83 e0 f8          	and    $0xfffffffffffffff8,%r8
140081d13:	4c 29 c0             	sub    %r8,%rax
140081d16:	01 c2                	add    %eax,%edx
140081d18:	83 e2 f8             	and    $0xfffffff8,%edx
140081d1b:	83 fa 08             	cmp    $0x8,%edx
140081d1e:	0f 82 f8 fe ff ff    	jb     0x140081c1c
140081d24:	83 e2 f8             	and    $0xfffffff8,%edx
140081d27:	31 c0                	xor    %eax,%eax
140081d29:	41 89 c2             	mov    %eax,%r10d
140081d2c:	83 c0 08             	add    $0x8,%eax
140081d2f:	4f 89 0c 10          	mov    %r9,(%r8,%r10,1)
140081d33:	39 d0                	cmp    %edx,%eax
140081d35:	72 f2                	jb     0x140081d29
140081d37:	e9 e0 fe ff ff       	jmp    0x140081c1c
140081d3c:	0f 1f 40 00          	nopl   0x0(%rax)
140081d40:	ba 78 00 00 00       	mov    $0x78,%edx
140081d45:	b9 01 00 00 00       	mov    $0x1,%ecx
140081d4a:	e8 51 8f 04 00       	call   0x1400caca0
140081d4f:	48 89 45 08          	mov    %rax,0x8(%rbp)
140081d53:	49 89 c6             	mov    %rax,%r14
140081d56:	e9 ff fd ff ff       	jmp    0x140081b5a
140081d5b:	89 d2                	mov    %edx,%edx
140081d5d:	c7 00 00 00 00 00    	movl   $0x0,(%rax)
140081d63:	c7 44 10 fc 00 00 00 	movl   $0x0,-0x4(%rax,%rdx,1)
140081d6a:	00
140081d6b:	e9 ac fe ff ff       	jmp    0x140081c1c
140081d70:	e8 fb 2a 16 00       	call   0x1401e4870
140081d75:	90                   	nop
140081d76:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140081d7d:	00 00 00
140081d80:	56                   	push   %rsi
140081d81:	53                   	push   %rbx
140081d82:	48 83 ec 28          	sub    $0x28,%rsp
140081d86:	48 8b 71 18          	mov    0x18(%rcx),%rsi
140081d8a:	48 89 cb             	mov    %rcx,%rbx
140081d8d:	48 85 f6             	test   %rsi,%rsi
140081d90:	74 21                	je     0x140081db3
140081d92:	ba 01 00 00 00       	mov    $0x1,%edx
140081d97:	48 89 f1             	mov    %rsi,%rcx
140081d9a:	e8 61 dd 01 00       	call   0x14009fb00
140081d9f:	48 89 f1             	mov    %rsi,%rcx
140081da2:	e8 09 71 07 00       	call   0x1400f8eb0
140081da7:	83 4b 14 10          	orl    $0x10,0x14(%rbx)
140081dab:	48 c7 43 18 00 00 00 	movq   $0x0,0x18(%rbx)
140081db2:	00
140081db3:	48 83 c4 28          	add    $0x28,%rsp
140081db7:	5b                   	pop    %rbx
140081db8:	5e                   	pop    %rsi
140081db9:	c3                   	ret
140081dba:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140081dc0:	41 55                	push   %r13
140081dc2:	41 54                	push   %r12
140081dc4:	55                   	push   %rbp
140081dc5:	57                   	push   %rdi
140081dc6:	56                   	push   %rsi
140081dc7:	53                   	push   %rbx
140081dc8:	48 83 ec 38          	sub    $0x38,%rsp
140081dcc:	48 89 ce             	mov    %rcx,%rsi
140081dcf:	48 89 d1             	mov    %rdx,%rcx
140081dd2:	48 89 d7             	mov    %rdx,%rdi
140081dd5:	4c 89 c5             	mov    %r8,%rbp
140081dd8:	45 89 cc             	mov    %r9d,%r12d
140081ddb:	e8 b8 80 16 00       	call   0x1401e9e98
140081de0:	48 89 fa             	mov    %rdi,%rdx
140081de3:	48 89 f1             	mov    %rsi,%rcx
140081de6:	41 89 c0             	mov    %eax,%r8d
140081de9:	e8 f2 92 fd ff       	call   0x14005b0e0
140081dee:	89 c2                	mov    %eax,%edx
140081df0:	85 c0                	test   %eax,%eax
140081df2:	0f 89 88 00 00 00    	jns    0x140081e80
140081df8:	f7 d2                	not    %edx
140081dfa:	3b 56 0c             	cmp    0xc(%rsi),%edx
140081dfd:	72 61                	jb     0x140081e60
140081dff:	4c 8d 6d 0c          	lea    0xc(%rbp),%r13
140081e03:	bb 01 00 00 00       	mov    $0x1,%ebx
140081e08:	8b 54 9d fc          	mov    -0x4(%rbp,%rbx,4),%edx
140081e0c:	85 d2                	test   %edx,%edx
140081e0e:	74 33                	je     0x140081e43
140081e10:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140081e14:	4d 89 e8             	mov    %r13,%r8
140081e17:	48 89 f1             	mov    %rsi,%rcx
140081e1a:	49 89 f9             	mov    %rdi,%r9
140081e1d:	c7 44 24 28 00 00 00 	movl   $0x0,0x28(%rsp)
140081e24:	00
140081e25:	e8 d6 b7 fd ff       	call   0x14005d600
140081e2a:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140081e30:	48 89 f1             	mov    %rsi,%rcx
140081e33:	44 09 60 38          	or     %r12d,0x38(%rax)
140081e37:	48 89 c2             	mov    %rax,%rdx
140081e3a:	e8 11 ba fd ff       	call   0x14005d850
140081e3f:	85 c0                	test   %eax,%eax
140081e41:	75 4d                	jne    0x140081e90
140081e43:	48 83 c3 01          	add    $0x1,%rbx
140081e47:	49 83 c5 24          	add    $0x24,%r13
140081e4b:	48 83 fb 04          	cmp    $0x4,%rbx
140081e4f:	75 b7                	jne    0x140081e08
140081e51:	31 c0                	xor    %eax,%eax
140081e53:	48 83 c4 38          	add    $0x38,%rsp
140081e57:	5b                   	pop    %rbx
140081e58:	5e                   	pop    %rsi
140081e59:	5f                   	pop    %rdi
140081e5a:	5d                   	pop    %rbp
140081e5b:	41 5c                	pop    %r12
140081e5d:	41 5d                	pop    %r13
140081e5f:	c3                   	ret
140081e60:	48 8b 06             	mov    (%rsi),%rax
140081e63:	48 63 d2             	movslq %edx,%rdx