140588bb2:	5f                   	pop    %rdi
140588bb3:	5e                   	pop    %rsi
140588bb4:	5d                   	pop    %rbp
140588bb5:	c3                   	ret
140588bb6:	e8 e9 15 8a 00       	call   0x140e2a1a4
140588bbb:	90                   	nop
140588bbc:	33 c9                	xor    %ecx,%ecx
140588bbe:	e8 3d 1b 20 00       	call   0x14078a700
140588bc3:	cc                   	int3
140588bc4:	b9 01 00 00 00       	mov    $0x1,%ecx
140588bc9:	e8 32 1b 20 00       	call   0x14078a700
140588bce:	90                   	nop
140588bcf:	b9 02 00 00 00       	mov    $0x2,%ecx
140588bd4:	e8 27 1b 20 00       	call   0x14078a700
140588bd9:	90                   	nop
140588bda:	b9 02 00 00 00       	mov    $0x2,%ecx
140588bdf:	e8 1c 1b 20 00       	call   0x14078a700
140588be4:	90                   	nop
140588be5:	33 c9                	xor    %ecx,%ecx
140588be7:	e8 14 1b 20 00       	call   0x14078a700
140588bec:	cc                   	int3
140588bed:	b9 01 00 00 00       	mov    $0x1,%ecx
140588bf2:	e8 09 1b 20 00       	call   0x14078a700
140588bf7:	90                   	nop
140588bf8:	33 c9                	xor    %ecx,%ecx
140588bfa:	e8 01 1b 20 00       	call   0x14078a700
140588bff:	cc                   	int3
140588c00:	b9 01 00 00 00       	mov    $0x1,%ecx
140588c05:	e8 f6 1a 20 00       	call   0x14078a700
140588c0a:	90                   	nop
140588c0b:	33 c9                	xor    %ecx,%ecx
140588c0d:	e8 ee 1a 20 00       	call   0x14078a700
140588c12:	cc                   	int3
140588c13:	b9 01 00 00 00       	mov    $0x1,%ecx
140588c18:	e8 e3 1a 20 00       	call   0x14078a700
140588c1d:	90                   	nop
140588c1e:	33 c9                	xor    %ecx,%ecx
140588c20:	e8 db 1a 20 00       	call   0x14078a700
140588c25:	cc                   	int3
140588c26:	b9 01 00 00 00       	mov    $0x1,%ecx
140588c2b:	e8 d0 1a 20 00       	call   0x14078a700
140588c30:	90                   	nop
140588c31:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c36:	e8 c5 1a 20 00       	call   0x14078a700
140588c3b:	90                   	nop
140588c3c:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c41:	e8 ba 1a 20 00       	call   0x14078a700
140588c46:	90                   	nop
140588c47:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c4c:	e8 af 1a 20 00       	call   0x14078a700
140588c51:	90                   	nop
140588c52:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c57:	e8 a4 1a 20 00       	call   0x14078a700
140588c5c:	90                   	nop
140588c5d:	33 c9                	xor    %ecx,%ecx
140588c5f:	e8 9c 1a 20 00       	call   0x14078a700
140588c64:	cc                   	int3
140588c65:	b9 01 00 00 00       	mov    $0x1,%ecx
140588c6a:	e8 91 1a 20 00       	call   0x14078a700
140588c6f:	90                   	nop
140588c70:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c75:	e8 86 1a 20 00       	call   0x14078a700
140588c7a:	90                   	nop
140588c7b:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c80:	e8 7b 1a 20 00       	call   0x14078a700
140588c85:	90                   	nop
140588c86:	33 c9                	xor    %ecx,%ecx
140588c88:	e8 73 1a 20 00       	call   0x14078a700
140588c8d:	cc                   	int3
140588c8e:	b9 01 00 00 00       	mov    $0x1,%ecx
140588c93:	e8 68 1a 20 00       	call   0x14078a700
140588c98:	90                   	nop
140588c99:	b9 02 00 00 00       	mov    $0x2,%ecx
140588c9e:	e8 5d 1a 20 00       	call   0x14078a700
140588ca3:	90                   	nop
140588ca4:	e8 fb 14 8a 00       	call   0x140e2a1a4
140588ca9:	cc                   	int3
140588caa:	33 c9                	xor    %ecx,%ecx
140588cac:	e8 4f 1a 20 00       	call   0x14078a700
140588cb1:	cc                   	int3
140588cb2:	b9 01 00 00 00       	mov    $0x1,%ecx
140588cb7:	e8 44 1a 20 00       	call   0x14078a700
140588cbc:	90                   	nop
140588cbd:	e8 e2 14 8a 00       	call   0x140e2a1a4
140588cc2:	90                   	nop
140588cc3:	b9 02 00 00 00       	mov    $0x2,%ecx
140588cc8:	e8 33 1a 20 00       	call   0x14078a700
140588ccd:	90                   	nop
140588cce:	b9 02 00 00 00       	mov    $0x2,%ecx
140588cd3:	e8 28 1a 20 00       	call   0x14078a700
140588cd8:	90                   	nop
140588cd9:	b9 02 00 00 00       	mov    $0x2,%ecx
140588cde:	e8 1d 1a 20 00       	call   0x14078a700
140588ce3:	90                   	nop
140588ce4:	b9 02 00 00 00       	mov    $0x2,%ecx
140588ce9:	e8 12 1a 20 00       	call   0x14078a700
140588cee:	90                   	nop
140588cef:	b9 02 00 00 00       	mov    $0x2,%ecx
140588cf4:	e8 07 1a 20 00       	call   0x14078a700
140588cf9:	90                   	nop
140588cfa:	b9 02 00 00 00       	mov    $0x2,%ecx
140588cff:	e8 fc 19 20 00       	call   0x14078a700
140588d04:	90                   	nop
140588d05:	b9 02 00 00 00       	mov    $0x2,%ecx
140588d0a:	e8 f1 19 20 00       	call   0x14078a700
140588d0f:	90                   	nop
140588d10:	b9 02 00 00 00       	mov    $0x2,%ecx
140588d15:	e8 e6 19 20 00       	call   0x14078a700
140588d1a:	cc                   	int3
140588d1b:	cc                   	int3
140588d1c:	cc                   	int3
140588d1d:	cc                   	int3
140588d1e:	cc                   	int3
140588d1f:	cc                   	int3
140588d20:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140588d25:	55                   	push   %rbp
140588d26:	53                   	push   %rbx
140588d27:	56                   	push   %rsi
140588d28:	57                   	push   %rdi
140588d29:	41 54                	push   %r12
140588d2b:	41 55                	push   %r13
140588d2d:	41 56                	push   %r14
140588d2f:	41 57                	push   %r15
140588d31:	48 8d 6c 24 c8       	lea    -0x38(%rsp),%rbp
140588d36:	48 81 ec 38 01 00 00 	sub    $0x138,%rsp
140588d3d:	4c 8b e1             	mov    %rcx,%r12
140588d40:	33 f6                	xor    %esi,%esi
140588d42:	4c 8b 81 80 00 00 00 	mov    0x80(%rcx),%r8
140588d49:	49 8b 40 08          	mov    0x8(%r8),%rax
140588d4d:	4d 8b f0             	mov    %r8,%r14
140588d50:	40 38 70 19          	cmp    %sil,0x19(%rax)
140588d54:	75 18                	jne    0x140588d6e
140588d56:	48 39 50 20          	cmp    %rdx,0x20(%rax)
140588d5a:	73 06                	jae    0x140588d62
140588d5c:	48 8b 40 10          	mov    0x10(%rax),%rax
140588d60:	eb 06                	jmp    0x140588d68
140588d62:	4c 8b f0             	mov    %rax,%r14
140588d65:	48 8b 00             	mov    (%rax),%rax
140588d68:	40 38 70 19          	cmp    %sil,0x19(%rax)
140588d6c:	74 e8                	je     0x140588d56
140588d6e:	41 38 76 19          	cmp    %sil,0x19(%r14)
140588d72:	0f 85 ca 07 00 00    	jne    0x140589542
140588d78:	49 3b 56 20          	cmp    0x20(%r14),%rdx
140588d7c:	0f 82 c0 07 00 00    	jb     0x140589542
140588d82:	4d 3b f0             	cmp    %r8,%r14
140588d85:	0f 84 b7 07 00 00    	je     0x140589542
140588d8b:	4d 8b 76 28          	mov    0x28(%r14),%r14
140588d8f:	4d 85 f6             	test   %r14,%r14
140588d92:	0f 84 aa 07 00 00    	je     0x140589542
140588d98:	41 39 76 2c          	cmp    %esi,0x2c(%r14)
140588d9c:	74 0d                	je     0x140588dab
140588d9e:	49 8b d6             	mov    %r14,%rdx
140588da1:	e8 1a 24 00 00       	call   0x14058b1c0
140588da6:	e9 b5 07 00 00       	jmp    0x140589560
140588dab:	49 8d 86 88 00 00 00 	lea    0x88(%r14),%rax
140588db2:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
140588db7:	48 8b 18             	mov    (%rax),%rbx
140588dba:	48 39 73 50          	cmp    %rsi,0x50(%rbx)
140588dbe:	0f 85 bb 07 00 00    	jne    0x14058957f
140588dc4:	48 39 73 48          	cmp    %rsi,0x48(%rbx)
140588dc8:	75 23                	jne    0x140588ded
140588dca:	b9 18 00 00 00       	mov    $0x18,%ecx
140588dcf:	e8 34 23 89 00       	call   0x140e1b108
140588dd4:	48 85 c0             	test   %rax,%rax
140588dd7:	74 0d                	je     0x140588de6
140588dd9:	48 89 30             	mov    %rsi,(%rax)
140588ddc:	48 89 70 08          	mov    %rsi,0x8(%rax)
140588de0:	48 89 70 10          	mov    %rsi,0x10(%rax)
140588de4:	eb 03                	jmp    0x140588de9
140588de6:	48 8b c6             	mov    %rsi,%rax
140588de9:	48 89 43 48          	mov    %rax,0x48(%rbx)
140588ded:	48 8b d3             	mov    %rbx,%rdx
140588df0:	48 8d 4d a0          	lea    -0x60(%rbp),%rcx
140588df4:	e8 67 bb ff ff       	call   0x140584960
140588df9:	90                   	nop
140588dfa:	b8 ff ff 00 00       	mov    $0xffff,%eax
140588dff:	0f 57 c0             	xorps  %xmm0,%xmm0
140588e02:	f3 0f 7f 45 e0       	movdqu %xmm0,-0x20(%rbp)
140588e07:	66 89 45 f0          	mov    %ax,-0x10(%rbp)
140588e0b:	48 c7 45 f4 00 00 00 	movq   $0x0,-0xc(%rbp)
140588e12:	00
140588e13:	48 89 75 00          	mov    %rsi,0x0(%rbp)
140588e17:	48 89 75 10          	mov    %rsi,0x10(%rbp)
140588e1b:	c7 45 18 ff ff ff ff 	movl   $0xffffffff,0x18(%rbp)
140588e22:	83 7d b8 00          	cmpl   $0x0,-0x48(%rbp)
140588e26:	75 24                	jne    0x140588e4c
140588e28:	48 8b 45 b0          	mov    -0x50(%rbp),%rax
140588e2c:	48 c1 e8 20          	shr    $0x20,%rax
140588e30:	85 c0                	test   %eax,%eax
140588e32:	75 18                	jne    0x140588e4c
140588e34:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140588e38:	4c 8b c0             	mov    %rax,%r8
140588e3b:	48 8d 55 08          	lea    0x8(%rbp),%rdx
140588e3f:	e8 0c 6c 95 00       	call   0x140edfa50
140588e44:	85 c0                	test   %eax,%eax
140588e46:	0f 84 24 06 00 00    	je     0x140589470
140588e4c:	4c 89 75 88          	mov    %r14,-0x78(%rbp)
140588e50:	48 8d 5d c8          	lea    -0x38(%rbp),%rbx
140588e54:	83 7d b4 08          	cmpl   $0x8,-0x4c(%rbp)
140588e58:	48 0f 47 5d c8       	cmova  -0x38(%rbp),%rbx
140588e5d:	b9 38 00 00 00       	mov    $0x38,%ecx
140588e62:	e8 a1 22 89 00       	call   0x140e1b108
140588e67:	48 89 45 20          	mov    %rax,0x20(%rbp)
140588e6b:	48 85 c0             	test   %rax,%rax
140588e6e:	74 18                	je     0x140588e88
140588e70:	44 8b 4d b8          	mov    -0x48(%rbp),%r9d
140588e74:	44 8b 45 b4          	mov    -0x4c(%rbp),%r8d
140588e78:	48 8b d3             	mov    %rbx,%rdx
140588e7b:	48 8b c8             	mov    %rax,%rcx
140588e7e:	e8 2d 8c 21 00       	call   0x1407a1ab0
140588e83:	4c 8b f8             	mov    %rax,%r15
140588e86:	eb 03                	jmp    0x140588e8b
140588e88:	4c 8b fe             	mov    %rsi,%r15
140588e8b:	4c 89 bd 98 00 00 00 	mov    %r15,0x98(%rbp)
140588e92:	4c 89 7d 28          	mov    %r15,0x28(%rbp)
140588e96:	4c 8b 6d c0          	mov    -0x40(%rbp),%r13
140588e9a:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
140588e9f:	33 ff                	xor    %edi,%edi
140588ea1:	48 89 7c 24 60       	mov    %rdi,0x60(%rsp)
140588ea6:	33 db                	xor    %ebx,%ebx
140588ea8:	48 89 5c 24 68       	mov    %rbx,0x68(%rsp)
140588ead:	89 9d 88 00 00 00    	mov    %ebx,0x88(%rbp)
140588eb3:	49 39 9e 90 00 00 00 	cmp    %rbx,0x90(%r14)
140588eba:	75 1d                	jne    0x140588ed9
140588ebc:	49 8b 8e 98 00 00 00 	mov    0x98(%r14),%rcx
140588ec3:	48 85 c9             	test   %rcx,%rcx
140588ec6:	0f 84 59 01 00 00    	je     0x140589025
140588ecc:	e8 5f c6 28 00       	call   0x140815530
140588ed1:	84 c0                	test   %al,%al
140588ed3:	0f 84 4c 01 00 00    	je     0x140589025
140588ed9:	4d 8b 45 08          	mov    0x8(%r13),%r8
140588edd:	48 8d 95 90 00 00 00 	lea    0x90(%rbp),%rdx
140588ee4:	49 8b 4e 68          	mov    0x68(%r14),%rcx
140588ee8:	e8 93 6d 1b 00       	call   0x14073fc80
140588eed:	90                   	nop
140588eee:	49 8b 4e 68          	mov    0x68(%r14),%rcx
140588ef2:	48 8b 95 90 00 00 00 	mov    0x90(%rbp),%rdx
140588ef9:	48 85 d2             	test   %rdx,%rdx
140588efc:	74 1c                	je     0x140588f1a
140588efe:	8b 42 10             	mov    0x10(%rdx),%eax
140588f01:	ff c0                	inc    %eax
140588f03:	89 42 10             	mov    %eax,0x10(%rdx)
140588f06:	83 f8 01             	cmp    $0x1,%eax
140588f09:	0f 8e 8f 06 00 00    	jle    0x14058959e
140588f0f:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140588f14:	0f 84 79 06 00 00    	je     0x140589593
140588f1a:	48 89 54 24 40       	mov    %rdx,0x40(%rsp)
140588f1f:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
140588f24:	48 8d 54 24 58       	lea    0x58(%rsp),%rdx
140588f29:	e8 c2 38 1b 00       	call   0x14073c7f0
140588f2e:	48 8b 30             	mov    (%rax),%rsi
140588f31:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
140588f36:	48 c7 00 00 00 00 00 	movq   $0x0,(%rax)
140588f3d:	48 8b 4c 24 58       	mov    0x58(%rsp),%rcx
140588f42:	48 85 c9             	test   %rcx,%rcx
140588f45:	74 24                	je     0x140588f6b
140588f47:	8b 41 10             	mov    0x10(%rcx),%eax
140588f4a:	ff c8                	dec    %eax
140588f4c:	89 41 10             	mov    %eax,0x10(%rcx)
140588f4f:	85 c0                	test   %eax,%eax
140588f51:	7f 18                	jg     0x140588f6b
140588f53:	0f 88 4d 06 00 00    	js     0x1405895a6
140588f59:	48 8b 01             	mov    (%rcx),%rax
140588f5c:	ba 01 00 00 00       	mov    $0x1,%edx
140588f61:	48 8b 00             	mov    (%rax),%rax
140588f64:	ff 15 b6 aa 9f 00    	call   *0x9faab6(%rip)        # 0x140f83a20
140588f6a:	90                   	nop
140588f6b:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140588f70:	48 85 c9             	test   %rcx,%rcx
140588f73:	74 24                	je     0x140588f99
140588f75:	8b 41 10             	mov    0x10(%rcx),%eax
140588f78:	ff c8                	dec    %eax
140588f7a:	89 41 10             	mov    %eax,0x10(%rcx)
140588f7d:	85 c0                	test   %eax,%eax
140588f7f:	7f 18                	jg     0x140588f99
140588f81:	0f 88 2a 06 00 00    	js     0x1405895b1
140588f87:	48 8b 01             	mov    (%rcx),%rax
140588f8a:	ba 01 00 00 00       	mov    $0x1,%edx
140588f8f:	48 8b 00             	mov    (%rax),%rax
140588f92:	ff 15 88 aa 9f 00    	call   *0x9faa88(%rip)        # 0x140f83a20
140588f98:	90                   	nop
140588f99:	4c 8d 8d 88 00 00 00 	lea    0x88(%rbp),%r9
140588fa0:	4d 8b 46 78          	mov    0x78(%r14),%r8
140588fa4:	48 8b 95 90 00 00 00 	mov    0x90(%rbp),%rdx
140588fab:	49 8b cc             	mov    %r12,%rcx
140588fae:	e8 8d 13 00 00       	call   0x14058a340
140588fb3:	48 8b f8             	mov    %rax,%rdi
140588fb6:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140588fbb:	ba 02 00 00 00       	mov    $0x2,%edx
140588fc0:	48 8b 0d 79 8c ea 00 	mov    0xea8c79(%rip),%rcx        # 0x141431c40
140588fc7:	e8 24 4f 1c 00       	call   0x14074def0
140588fcc:	48 8b 18             	mov    (%rax),%rbx
140588fcf:	48 85 db             	test   %rbx,%rbx
140588fd2:	74 1c                	je     0x140588ff0
140588fd4:	8b 43 10             	mov    0x10(%rbx),%eax
140588fd7:	ff c0                	inc    %eax
140588fd9:	89 43 10             	mov    %eax,0x10(%rbx)
140588fdc:	83 f8 01             	cmp    $0x1,%eax
140588fdf:	0f 8e e2 05 00 00    	jle    0x1405895c7
140588fe5:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140588fea:	0f 84 cc 05 00 00    	je     0x1405895bc
140588ff0:	48 89 5c 24 68       	mov    %rbx,0x68(%rsp)
140588ff5:	48 8b 8d 90 00 00 00 	mov    0x90(%rbp),%rcx
140588ffc:	48 85 c9             	test   %rcx,%rcx
140588fff:	74 24                	je     0x140589025
140589001:	8b 41 10             	mov    0x10(%rcx),%eax
140589004:	ff c8                	dec    %eax
140589006:	89 41 10             	mov    %eax,0x10(%rcx)
140589009:	85 c0                	test   %eax,%eax
14058900b:	7f 18                	jg     0x140589025
14058900d:	0f 88 bc 05 00 00    	js     0x1405895cf
140589013:	48 8b 01             	mov    (%rcx),%rax
140589016:	ba 01 00 00 00       	mov    $0x1,%edx
14058901b:	48 8b 00             	mov    (%rax),%rax
14058901e:	ff 15 fc a9 9f 00    	call   *0x9fa9fc(%rip)        # 0x140f83a20
140589024:	90                   	nop
140589025:	49 83 be 90 00 00 00 	cmpq   $0x0,0x90(%r14)
14058902c:	00
14058902d:	0f 84 81 01 00 00    	je     0x1405891b4
140589033:	8b 46 10             	mov    0x10(%rsi),%eax
140589036:	ff c0                	inc    %eax
140589038:	89 46 10             	mov    %eax,0x10(%rsi)
14058903b:	83 f8 01             	cmp    $0x1,%eax
14058903e:	0f 8e c2 05 00 00    	jle    0x140589606
140589044:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140589049:	0f 84 ac 05 00 00    	je     0x1405895fb
14058904f:	8b 47 10             	mov    0x10(%rdi),%eax
140589052:	ff c0                	inc    %eax
140589054:	89 47 10             	mov    %eax,0x10(%rdi)
140589057:	83 f8 01             	cmp    $0x1,%eax
14058905a:	0f 8e a6 05 00 00    	jle    0x140589606
140589060:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140589065:	0f 84 90 05 00 00    	je     0x1405895fb
14058906b:	8b 43 10             	mov    0x10(%rbx),%eax
14058906e:	ff c0                	inc    %eax
140589070:	89 43 10             	mov    %eax,0x10(%rbx)
140589073:	83 f8 01             	cmp    $0x1,%eax
140589076:	0f 8e 8a 05 00 00    	jle    0x140589606
14058907c:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140589081:	0f 84 74 05 00 00    	je     0x1405895fb
140589087:	48 89 74 24 28       	mov    %rsi,0x28(%rsp)
14058908c:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140589091:	4c 8b cb             	mov    %rbx,%r9
140589094:	41 b8 03 00 00 00    	mov    $0x3,%r8d
14058909a:	49 8b 96 90 00 00 00 	mov    0x90(%r14),%rdx
1405890a1:	49 8b cc             	mov    %r12,%rcx
1405890a4:	e8 37 c0 ff ff       	call   0x1405850e0
1405890a9:	84 c0                	test   %al,%al
1405890ab:	0f 85 03 01 00 00    	jne    0x1405891b4
1405890b1:	4d 8b ae 80 00 00 00 	mov    0x80(%r14),%r13