140070a5c:	0f 1f 40 00          	nopl   0x0(%rax)
140070a60:	57                   	push   %rdi
140070a61:	56                   	push   %rsi
140070a62:	53                   	push   %rbx
140070a63:	48 83 ec 20          	sub    $0x20,%rsp
140070a67:	48 83 79 08 00       	cmpq   $0x0,0x8(%rcx)
140070a6c:	48 89 ce             	mov    %rcx,%rsi
140070a6f:	74 3a                	je     0x140070aab
140070a71:	31 db                	xor    %ebx,%ebx
140070a73:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140070a7a:	00 00 00 00
140070a7e:	66 90                	xchg   %ax,%ax
140070a80:	48 8b 06             	mov    (%rsi),%rax
140070a83:	48 89 df             	mov    %rbx,%rdi
140070a86:	48 83 c3 01          	add    $0x1,%rbx
140070a8a:	48 c1 e7 06          	shl    $0x6,%rdi
140070a8e:	48 8b 4c 38 10       	mov    0x10(%rax,%rdi,1),%rcx
140070a93:	e8 78 d5 16 00       	call   0x1401de010
140070a98:	48 8b 06             	mov    (%rsi),%rax
140070a9b:	48 8b 4c 38 18       	mov    0x18(%rax,%rdi,1),%rcx
140070aa0:	e8 0b 84 08 00       	call   0x1400f8eb0
140070aa5:	48 3b 5e 08          	cmp    0x8(%rsi),%rbx
140070aa9:	72 d5                	jb     0x140070a80
140070aab:	48 8b 0e             	mov    (%rsi),%rcx
140070aae:	e8 fd 83 08 00       	call   0x1400f8eb0
140070ab3:	48 89 f1             	mov    %rsi,%rcx
140070ab6:	48 83 c4 20          	add    $0x20,%rsp
140070aba:	5b                   	pop    %rbx
140070abb:	5e                   	pop    %rsi
140070abc:	5f                   	pop    %rdi
140070abd:	e9 ee 83 08 00       	jmp    0x1400f8eb0
140070ac2:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140070ac9:	00 00 00 00
140070acd:	0f 1f 00             	nopl   (%rax)
140070ad0:	53                   	push   %rbx
140070ad1:	48 83 ec 20          	sub    $0x20,%rsp
140070ad5:	48 8b 4a 28          	mov    0x28(%rdx),%rcx
140070ad9:	48 89 d3             	mov    %rdx,%rbx
140070adc:	48 85 c9             	test   %rcx,%rcx
140070adf:	74 05                	je     0x140070ae6
140070ae1:	e8 7a ff ff ff       	call   0x140070a60
140070ae6:	31 c0                	xor    %eax,%eax
140070ae8:	c7 43 20 02 00 00 00 	movl   $0x2,0x20(%rbx)
140070aef:	48 83 c4 20          	add    $0x20,%rsp
140070af3:	5b                   	pop    %rbx
140070af4:	c3                   	ret
140070af5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140070afc:	00 00 00 00
140070b00:	48 83 ec 28          	sub    $0x28,%rsp
140070b04:	41 b8 ac 00 00 00    	mov    $0xac,%r8d
140070b0a:	48 8d 15 d8 32 19 00 	lea    0x1932d8(%rip),%rdx        # 0x140203de9
140070b11:	48 8d 0d e2 32 19 00 	lea    0x1932e2(%rip),%rcx        # 0x140203dfa
140070b18:	ff 15 ba e8 23 00    	call   *0x23e8ba(%rip)        # 0x1402af3d8
140070b1e:	90                   	nop
140070b1f:	90                   	nop
140070b20:	48 8b 05 b9 84 1c 00 	mov    0x1c84b9(%rip),%rax        # 0x140238fe0
140070b27:	8b 00                	mov    (%rax),%eax
140070b29:	85 c0                	test   %eax,%eax
140070b2b:	75 0b                	jne    0x140070b38
140070b2d:	48 89 c8             	mov    %rcx,%rax
140070b30:	c3                   	ret
140070b31:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140070b38:	e9 2b 28 17 00       	jmp    0x1401e3368
140070b3d:	0f 1f 00             	nopl   (%rax)
140070b40:	55                   	push   %rbp
140070b41:	57                   	push   %rdi
140070b42:	56                   	push   %rsi
140070b43:	53                   	push   %rbx
140070b44:	48 83 ec 28          	sub    $0x28,%rsp
140070b48:	48 89 d5             	mov    %rdx,%rbp
140070b4b:	48 8d 15 bb 32 19 00 	lea    0x1932bb(%rip),%rdx        # 0x140203e0d
140070b52:	48 89 cb             	mov    %rcx,%rbx
140070b55:	4c 89 c7             	mov    %r8,%rdi
140070b58:	4c 89 ce             	mov    %r9,%rsi
140070b5b:	e8 18 93 17 00       	call   0x1401e9e78
140070b60:	85 c0                	test   %eax,%eax
140070b62:	0f 84 a8 00 00 00    	je     0x140070c10
140070b68:	48 8d 15 d8 32 19 00 	lea    0x1932d8(%rip),%rdx        # 0x140203e47
140070b6f:	48 89 d9             	mov    %rbx,%rcx
140070b72:	e8 01 93 17 00       	call   0x1401e9e78
140070b77:	85 c0                	test   %eax,%eax
140070b79:	74 6d                	je     0x140070be8
140070b7b:	48 8d 15 03 33 19 00 	lea    0x193303(%rip),%rdx        # 0x140203e85
140070b82:	48 89 d9             	mov    %rbx,%rcx
140070b85:	e8 ee 92 17 00       	call   0x1401e9e78
140070b8a:	85 c0                	test   %eax,%eax
140070b8c:	0f 84 a6 00 00 00    	je     0x140070c38
140070b92:	48 8d 15 02 33 19 00 	lea    0x193302(%rip),%rdx        # 0x140203e9b
140070b99:	48 89 d9             	mov    %rbx,%rcx
140070b9c:	e8 d7 92 17 00       	call   0x1401e9e78
140070ba1:	85 c0                	test   %eax,%eax
140070ba3:	0f 84 b7 00 00 00    	je     0x140070c60
140070ba9:	48 8d 15 33 33 19 00 	lea    0x193333(%rip),%rdx        # 0x140203ee3
140070bb0:	48 89 d9             	mov    %rbx,%rcx
140070bb3:	e8 c0 92 17 00       	call   0x1401e9e78
140070bb8:	85 c0                	test   %eax,%eax
140070bba:	75 49                	jne    0x140070c05
140070bbc:	4c 8b 07             	mov    (%rdi),%r8
140070bbf:	48 89 ea             	mov    %rbp,%rdx
140070bc2:	48 89 d9             	mov    %rbx,%rcx
140070bc5:	e8 46 25 fa ff       	call   0x140013110
140070bca:	48 3d ff ff ff 7f    	cmp    $0x7fffffff,%rax
140070bd0:	0f 8f c4 00 00 00    	jg     0x140070c9a
140070bd6:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140070bda:	0f 8c dc 00 00 00    	jl     0x140070cbc
140070be0:	89 46 20             	mov    %eax,0x20(%rsi)
140070be3:	eb 20                	jmp    0x140070c05
140070be5:	0f 1f 00             	nopl   (%rax)
140070be8:	4c 8b 07             	mov    (%rdi),%r8
140070beb:	48 89 ea             	mov    %rbp,%rdx
140070bee:	48 89 d9             	mov    %rbx,%rcx
140070bf1:	e8 7a 25 fa ff       	call   0x140013170
140070bf6:	3d ff ff 00 00       	cmp    $0xffff,%eax
140070bfb:	0f 87 88 00 00 00    	ja     0x140070c89
140070c01:	66 89 46 0c          	mov    %ax,0xc(%rsi)
140070c05:	31 c0                	xor    %eax,%eax
140070c07:	48 83 c4 28          	add    $0x28,%rsp
140070c0b:	5b                   	pop    %rbx
140070c0c:	5e                   	pop    %rsi
140070c0d:	5f                   	pop    %rdi
140070c0e:	5d                   	pop    %rbp
140070c0f:	c3                   	ret
140070c10:	4c 8b 07             	mov    (%rdi),%r8
140070c13:	48 89 ea             	mov    %rbp,%rdx
140070c16:	48 89 d9             	mov    %rbx,%rcx
140070c19:	e8 52 25 fa ff       	call   0x140013170
140070c1e:	3d ff ff ff 00       	cmp    $0xffffff,%eax
140070c23:	77 58                	ja     0x140070c7d
140070c25:	89 46 04             	mov    %eax,0x4(%rsi)
140070c28:	31 c0                	xor    %eax,%eax
140070c2a:	48 83 c4 28          	add    $0x28,%rsp
140070c2e:	5b                   	pop    %rbx
140070c2f:	5e                   	pop    %rsi
140070c30:	5f                   	pop    %rdi
140070c31:	5d                   	pop    %rbp
140070c32:	c3                   	ret
140070c33:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140070c38:	48 89 ea             	mov    %rbp,%rdx
140070c3b:	48 89 d9             	mov    %rbx,%rcx
140070c3e:	e8 dd 26 fa ff       	call   0x140013320
140070c43:	85 c0                	test   %eax,%eax
140070c45:	0f b6 46 08          	movzbl 0x8(%rsi),%eax
140070c49:	0f 94 c2             	sete   %dl
140070c4c:	83 e0 fe             	and    $0xfffffffe,%eax
140070c4f:	09 d0                	or     %edx,%eax
140070c51:	88 46 08             	mov    %al,0x8(%rsi)
140070c54:	31 c0                	xor    %eax,%eax
140070c56:	48 83 c4 28          	add    $0x28,%rsp
140070c5a:	5b                   	pop    %rbx
140070c5b:	5e                   	pop    %rsi
140070c5c:	5f                   	pop    %rdi
140070c5d:	5d                   	pop    %rbp
140070c5e:	c3                   	ret
140070c5f:	90                   	nop
140070c60:	4c 8b 07             	mov    (%rdi),%r8
140070c63:	48 89 ea             	mov    %rbp,%rdx
140070c66:	48 89 d9             	mov    %rbx,%rcx
140070c69:	e8 02 25 fa ff       	call   0x140013170
140070c6e:	3d ff 00 00 00       	cmp    $0xff,%eax
140070c73:	77 36                	ja     0x140070cab
140070c75:	88 46 1c             	mov    %al,0x1c(%rsi)
140070c78:	e9 88 ff ff ff       	jmp    0x140070c05
140070c7d:	48 8d 0d 9c 31 19 00 	lea    0x19319c(%rip),%rcx        # 0x140203e20
140070c84:	e8 07 27 05 00       	call   0x1400c3390
140070c89:	ba ff ff 00 00       	mov    $0xffff,%edx
140070c8e:	48 8d 0d cb 31 19 00 	lea    0x1931cb(%rip),%rcx        # 0x140203e60
140070c95:	e8 f6 26 05 00       	call   0x1400c3390
140070c9a:	ba ff ff ff 7f       	mov    $0x7fffffff,%edx
140070c9f:	48 8d 0d 52 32 19 00 	lea    0x193252(%rip),%rcx        # 0x140203ef8
140070ca6:	e8 e5 26 05 00       	call   0x1400c3390
140070cab:	ba ff 00 00 00       	mov    $0xff,%edx
140070cb0:	48 8d 0d 01 32 19 00 	lea    0x193201(%rip),%rcx        # 0x140203eb8
140070cb7:	e8 d4 26 05 00       	call   0x1400c3390
140070cbc:	48 8d 0d 65 32 19 00 	lea    0x193265(%rip),%rcx        # 0x140203f28
140070cc3:	e8 c8 26 05 00       	call   0x1400c3390
140070cc8:	90                   	nop
140070cc9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140070cd0:	55                   	push   %rbp
140070cd1:	57                   	push   %rdi
140070cd2:	56                   	push   %rsi
140070cd3:	53                   	push   %rbx
140070cd4:	48 83 ec 48          	sub    $0x48,%rsp
140070cd8:	48 8b 3d 11 7e 1c 00 	mov    0x1c7e11(%rip),%rdi        # 0x140238af0
140070cdf:	31 d2                	xor    %edx,%edx
140070ce1:	4c 8b 07             	mov    (%rdi),%r8
140070ce4:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
140070ce9:	4c 8d 05 7d 32 19 00 	lea    0x19327d(%rip),%r8        # 0x140203f6d
140070cf0:	e8 1b ec ff ff       	call   0x14006f910
140070cf5:	48 8b 48 18          	mov    0x18(%rax),%rcx
140070cf9:	48 89 c6             	mov    %rax,%rsi
140070cfc:	48 85 c9             	test   %rcx,%rcx
140070cff:	74 16                	je     0x140070d17
140070d01:	e8 8a ce 16 00       	call   0x1401ddb90
140070d06:	48 c7 46 18 00 00 00 	movq   $0x0,0x18(%rsi)
140070d0d:	00
140070d0e:	48 8d 4e 20          	lea    0x20(%rsi),%rcx
140070d12:	e8 19 6d 16 00       	call   0x1401d7a30
140070d17:	48 8b 4e 30          	mov    0x30(%rsi),%rcx
140070d1b:	48 85 c9             	test   %rcx,%rcx
140070d1e:	74 16                	je     0x140070d36
140070d20:	e8 6b ce 16 00       	call   0x1401ddb90
140070d25:	48 c7 46 30 00 00 00 	movq   $0x0,0x30(%rsi)
140070d2c:	00
140070d2d:	48 8d 4e 38          	lea    0x38(%rsi),%rcx
140070d31:	e8 fa 6c 16 00       	call   0x1401d7a30
140070d36:	48 83 c6 48          	add    $0x48,%rsi
140070d3a:	48 8d 6c 24 20       	lea    0x20(%rsp),%rbp
140070d3f:	48 89 f1             	mov    %rsi,%rcx
140070d42:	48 89 ea             	mov    %rbp,%rdx
140070d45:	e8 06 e3 fb ff       	call   0x14002f050
140070d4a:	48 89 e9             	mov    %rbp,%rcx
140070d4d:	e8 1e e3 fb ff       	call   0x14002f070
140070d52:	48 85 c0             	test   %rax,%rax
140070d55:	74 3a                	je     0x140070d91
140070d57:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140070d5e:	00 00
140070d60:	48 8b 58 18          	mov    0x18(%rax),%rbx
140070d64:	48 8b 0b             	mov    (%rbx),%rcx
140070d67:	e8 24 ce 16 00       	call   0x1401ddb90
140070d6c:	48 c7 03 00 00 00 00 	movq   $0x0,(%rbx)
140070d73:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140070d77:	e8 b4 6c 16 00       	call   0x1401d7a30
140070d7c:	48 89 d9             	mov    %rbx,%rcx
140070d7f:	e8 2c 81 08 00       	call   0x1400f8eb0
140070d84:	48 89 e9             	mov    %rbp,%rcx
140070d87:	e8 e4 e2 fb ff       	call   0x14002f070
140070d8c:	48 85 c0             	test   %rax,%rax
140070d8f:	75 cf                	jne    0x140070d60
140070d91:	31 d2                	xor    %edx,%edx
140070d93:	48 89 f1             	mov    %rsi,%rcx
140070d96:	e8 65 f6 02 00       	call   0x1400a0400
140070d9b:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140070da0:	48 2b 07             	sub    (%rdi),%rax
140070da3:	75 09                	jne    0x140070dae
140070da5:	48 83 c4 48          	add    $0x48,%rsp
140070da9:	5b                   	pop    %rbx
140070daa:	5e                   	pop    %rsi
140070dab:	5f                   	pop    %rdi
140070dac:	5d                   	pop    %rbp
140070dad:	c3                   	ret
140070dae:	e8 bd 3a 17 00       	call   0x1401e4870
140070db3:	90                   	nop
140070db4:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140070dbb:	00 00 00 00
140070dbf:	90                   	nop
140070dc0:	53                   	push   %rbx
140070dc1:	48 83 ec 20          	sub    $0x20,%rsp
140070dc5:	83 79 58 02          	cmpl   $0x2,0x58(%rcx)
140070dc9:	49 89 d1             	mov    %rdx,%r9
140070dcc:	0f 85 de 00 00 00    	jne    0x140070eb0
140070dd2:	48 8b 41 28          	mov    0x28(%rcx),%rax
140070dd6:	48 8d 91 80 00 00 00 	lea    0x80(%rcx),%rdx
140070ddd:	4c 89 c9             	mov    %r9,%rcx
140070de0:	48 8b 40 08          	mov    0x8(%rax),%rax
140070de4:	48 8b 98 90 01 00 00 	mov    0x190(%rax),%rbx
140070deb:	4c 8b 43 10          	mov    0x10(%rbx),%r8
140070def:	e8 fc 8f 17 00       	call   0x1401e9df0
140070df4:	49 89 c1             	mov    %rax,%r9
140070df7:	48 8b 43 10          	mov    0x10(%rbx),%rax
140070dfb:	48 83 f8 1f          	cmp    $0x1f,%rax
140070dff:	76 2f                	jbe    0x140070e30
140070e01:	48 2b 1d 98 82 1c 00 	sub    0x1c8298(%rip),%rbx        # 0x1402390a0
140070e08:	48 b8 39 8e e3 38 8e 	movabs $0x8e38e38e38e38e39,%rax
140070e0f:	e3 38 8e
140070e12:	48 c1 fb 04          	sar    $0x4,%rbx
140070e16:	48 0f af d8          	imul   %rax,%rbx
140070e1a:	31 c0                	xor    %eax,%eax
140070e1c:	41 89 59 20          	mov    %ebx,0x20(%r9)
140070e20:	48 83 c4 20          	add    $0x20,%rsp
140070e24:	5b                   	pop    %rbx
140070e25:	c3                   	ret
140070e26:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140070e2d:	00 00 00
140070e30:	ba 20 00 00 00       	mov    $0x20,%edx
140070e35:	45 31 c0             	xor    %r8d,%r8d
140070e38:	48 29 c2             	sub    %rax,%rdx
140070e3b:	4c 01 c8             	add    %r9,%rax
140070e3e:	83 fa 08             	cmp    $0x8,%edx
140070e41:	72 3d                	jb     0x140070e80
140070e43:	89 d1                	mov    %edx,%ecx
140070e45:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140070e4c:	48 c7 44 08 f8 00 00 	movq   $0x0,-0x8(%rax,%rcx,1)
140070e53:	00 00
140070e55:	48 8d 48 08          	lea    0x8(%rax),%rcx
140070e59:	48 83 e1 f8          	and    $0xfffffffffffffff8,%rcx
140070e5d:	48 29 c8             	sub    %rcx,%rax
140070e60:	01 c2                	add    %eax,%edx
140070e62:	83 e2 f8             	and    $0xfffffff8,%edx
140070e65:	83 fa 08             	cmp    $0x8,%edx
140070e68:	72 97                	jb     0x140070e01
140070e6a:	83 e2 f8             	and    $0xfffffff8,%edx
140070e6d:	31 c0                	xor    %eax,%eax
140070e6f:	41 89 c2             	mov    %eax,%r10d
140070e72:	83 c0 08             	add    $0x8,%eax
140070e75:	4e 89 04 11          	mov    %r8,(%rcx,%r10,1)
140070e79:	39 d0                	cmp    %edx,%eax
140070e7b:	72 f2                	jb     0x140070e6f
140070e7d:	eb 82                	jmp    0x140070e01
140070e7f:	90                   	nop
140070e80:	f6 c2 04             	test   $0x4,%dl
140070e83:	75 3b                	jne    0x140070ec0
140070e85:	85 d2                	test   %edx,%edx
140070e87:	0f 84 74 ff ff ff    	je     0x140070e01
140070e8d:	c6 00 00             	movb   $0x0,(%rax)
140070e90:	f6 c2 02             	test   $0x2,%dl
140070e93:	0f 84 68 ff ff ff    	je     0x140070e01
140070e99:	89 d2                	mov    %edx,%edx
140070e9b:	31 c9                	xor    %ecx,%ecx
140070e9d:	66 89 4c 10 fe       	mov    %cx,-0x2(%rax,%rdx,1)
140070ea2:	e9 5a ff ff ff       	jmp    0x140070e01
140070ea7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140070eae:	00 00
140070eb0:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140070eb5:	48 83 c4 20          	add    $0x20,%rsp
140070eb9:	5b                   	pop    %rbx
140070eba:	c3                   	ret
140070ebb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140070ec0:	89 d2                	mov    %edx,%edx
140070ec2:	c7 00 00 00 00 00    	movl   $0x0,(%rax)
140070ec8:	c7 44 10 fc 00 00 00 	movl   $0x0,-0x4(%rax,%rdx,1)
140070ecf:	00
140070ed0:	e9 2c ff ff ff       	jmp    0x140070e01
140070ed5:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140070edc:	00 00 00 00
140070ee0:	41 57                	push   %r15
140070ee2:	41 56                	push   %r14
140070ee4:	41 55                	push   %r13
140070ee6:	41 54                	push   %r12
140070ee8:	55                   	push   %rbp
140070ee9:	57                   	push   %rdi
140070eea:	56                   	push   %rsi
140070eeb:	53                   	push   %rbx
140070eec:	48 81 ec a8 00 00 00 	sub    $0xa8,%rsp
140070ef3:	4c 8b 35 f6 7b 1c 00 	mov    0x1c7bf6(%rip),%r14        # 0x140238af0
140070efa:	4d 8b 3e             	mov    (%r14),%r15
140070efd:	4c 89 bc 24 98 00 00 	mov    %r15,0x98(%rsp)
140070f04:	00
140070f05:	4c 8b b9 90 01 00 00 	mov    0x190(%rcx),%r15
140070f0c:	4c 89 c7             	mov    %r8,%rdi
140070f0f:	4c 8d 64 24 40       	lea    0x40(%rsp),%r12
140070f14:	48 89 d3             	mov    %rdx,%rbx
140070f17:	4c 89 e1             	mov    %r12,%rcx
140070f1a:	48 8d 52 40          	lea    0x40(%rdx),%rdx
140070f1e:	4c 89 cd             	mov    %r9,%rbp
140070f21:	4d 8b 47 10          	mov    0x10(%r15),%r8
140070f25:	e8 c6 8e 17 00       	call   0x1401e9df0
140070f2a:	4d 8b 47 10          	mov    0x10(%r15),%r8
140070f2e:	49 83 f8 1f          	cmp    $0x1f,%r8
140070f32:	0f 86 a8 01 00 00    	jbe    0x1400710e0
140070f38:	4c 89 fe             	mov    %r15,%rsi