mirror of
https://github.com/qaiu/netdisk-fast-download.git
synced 2025-12-16 12:23:03 +00:00
解析用到的js文件改为String方式引入
This commit is contained in:
@@ -1,18 +1,23 @@
|
|||||||
package cn.qaiu;
|
package cn.qaiu;
|
||||||
|
|
||||||
import io.vertx.core.Vertx;
|
import io.vertx.core.Vertx;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
|
||||||
public class WebClientVertxInit {
|
public class WebClientVertxInit {
|
||||||
private Vertx vertx = null;
|
private Vertx vertx = null;
|
||||||
private static final WebClientVertxInit INSTANCE = new WebClientVertxInit();
|
private static final WebClientVertxInit INSTANCE = new WebClientVertxInit();
|
||||||
|
|
||||||
|
private static final Logger log = LoggerFactory.getLogger(WebClientVertxInit.class);
|
||||||
|
|
||||||
public static void init(Vertx vx) {
|
public static void init(Vertx vx) {
|
||||||
INSTANCE.vertx = vx;
|
INSTANCE.vertx = vx;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Vertx get() {
|
public static Vertx get() {
|
||||||
if (INSTANCE.vertx == null) {
|
if (INSTANCE.vertx == null) {
|
||||||
throw new IllegalArgumentException("VertxInit getVertx: vertx is null");
|
log.info("getVertx: Vertx实例不存在, 创建Vertx实例.");
|
||||||
|
INSTANCE.vertx = Vertx.vertx();
|
||||||
}
|
}
|
||||||
return INSTANCE.vertx;
|
return INSTANCE.vertx;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -112,9 +112,7 @@ public class LzTool extends PanBase implements IPanTool {
|
|||||||
headers.set("sec-ch-ua-mobile", "sec-ch-ua-mobile");
|
headers.set("sec-ch-ua-mobile", "sec-ch-ua-mobile");
|
||||||
|
|
||||||
String url = SHARE_URL_PREFIX + "/ajaxm.php";
|
String url = SHARE_URL_PREFIX + "/ajaxm.php";
|
||||||
client.postAbs(url).putHeaders(headers).sendForm(MultiMap
|
client.postAbs(url).putHeaders(headers).sendForm(map).onSuccess(res2 -> {
|
||||||
.caseInsensitiveMultiMap()
|
|
||||||
.setAll(map)).onSuccess(res2 -> {
|
|
||||||
JsonObject urlJson = res2.bodyAsJsonObject();
|
JsonObject urlJson = res2.bodyAsJsonObject();
|
||||||
if (urlJson.getInteger("zt") != 1) {
|
if (urlJson.getInteger("zt") != 1) {
|
||||||
fail(urlJson.getString("inf"));
|
fail(urlJson.getString("inf"));
|
||||||
|
|||||||
152
parser/src/main/java/cn/qaiu/util/JsContent.java
Normal file
152
parser/src/main/java/cn/qaiu/util/JsContent.java
Normal file
@@ -0,0 +1,152 @@
|
|||||||
|
package cn.qaiu.util;
|
||||||
|
|
||||||
|
public interface JsContent {
|
||||||
|
String ye123 = """
|
||||||
|
/*
|
||||||
|
https://statics.123pan.com/share-static/dist/umi.fb72555e.js
|
||||||
|
eaefamemdead
|
||||||
|
eaefameidldy
|
||||||
|
_0x4f141a(1690439821|5790548|/b/api/share/download/info|web|3|1946841013) = 秘钥
|
||||||
|
|
||||||
|
_0x1e2592 1690439821 时间戳
|
||||||
|
_0x48562f 5790548 随机码
|
||||||
|
_0x1e37d5 /b/api/share/download/info
|
||||||
|
_0x4e2d74 web
|
||||||
|
_0x56f040 3
|
||||||
|
_0x43bdc6 1946841013 加密时间HASH戳
|
||||||
|
|
||||||
|
>>>>
|
||||||
|
_0x43bdc6=''['concat'](_0x1e2592, '-')['concat'](_0x48562f, '-')['concat'](_0x406c4e)
|
||||||
|
加密时间HASH戳 = 时间戳-随机码-秘钥
|
||||||
|
*/
|
||||||
|
|
||||||
|
function _0x1b5d95(_0x278d1a) {
|
||||||
|
var _0x839b57,
|
||||||
|
_0x4ed4dc = arguments['length'] > 0x2 && void 0x0 !== arguments[0x2] ? arguments[0x2] : 0x8;
|
||||||
|
if (0x0 === arguments['length'])
|
||||||
|
return null;
|
||||||
|
'object' === typeof _0x278d1a ? _0x839b57 = _0x278d1a : (0xa === ('' + _0x278d1a)['length'] && (_0x278d1a = 0x3e8 * parseInt(_0x278d1a)),
|
||||||
|
_0x839b57 = new Date(_0x278d1a));
|
||||||
|
var _0xc5c54a = _0x278d1a + 0xea60 * new Date(_0x278d1a)['getTimezoneOffset']()
|
||||||
|
, _0x3732dc = _0xc5c54a + 0x36ee80 * _0x4ed4dc;
|
||||||
|
return _0x839b57 = new Date(_0x3732dc),
|
||||||
|
{
|
||||||
|
'y': _0x839b57['getFullYear'](),
|
||||||
|
'm': _0x839b57['getMonth']() + 0x1 < 0xa ? '0' + (_0x839b57['getMonth']() + 0x1) : _0x839b57['getMonth']() + 0x1,
|
||||||
|
'd': _0x839b57['getDate']() < 0xa ? '0' + _0x839b57['getDate']() : _0x839b57['getDate'](),
|
||||||
|
'h': _0x839b57['getHours']() < 0xa ? '0' + _0x839b57['getHours']() : _0x839b57['getHours'](),
|
||||||
|
'f': _0x839b57['getMinutes']() < 0xa ? '0' + _0x839b57['getMinutes']() : _0x839b57['getMinutes']()
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function _0x4f141a(_0x4075b1) {
|
||||||
|
|
||||||
|
for (var _0x4eddcb = arguments['length'] > 0x1 && void 0x0 !== arguments[0x1] ? arguments[0x1] : 0xa,
|
||||||
|
_0x2fc680 = function() {
|
||||||
|
for (var _0x515c63, _0x361314 = [], _0x4cbdba = 0x0; _0x4cbdba < 0x100; _0x4cbdba++) {
|
||||||
|
_0x515c63 = _0x4cbdba;
|
||||||
|
for (var _0x460960 = 0x0; _0x460960 < 0x8; _0x460960++)
|
||||||
|
_0x515c63 = 0x1 & _0x515c63 ? 0xedb88320 ^ _0x515c63 >>> 0x1 : _0x515c63 >>> 0x1;
|
||||||
|
_0x361314[_0x4cbdba] = _0x515c63;
|
||||||
|
}
|
||||||
|
return _0x361314;
|
||||||
|
},
|
||||||
|
_0x4aed86 = _0x2fc680(),
|
||||||
|
_0x5880f0 = _0x4075b1,
|
||||||
|
_0x492393 = -0x1, _0x25d82c = 0x0;
|
||||||
|
_0x25d82c < _0x5880f0['length'];
|
||||||
|
_0x25d82c++)
|
||||||
|
|
||||||
|
_0x492393 = _0x492393 >>> 0x8 ^ _0x4aed86[0xff & (_0x492393 ^ _0x5880f0.charCodeAt(_0x25d82c))];
|
||||||
|
return _0x492393 = (-0x1 ^ _0x492393) >>> 0x0,
|
||||||
|
_0x492393.toString(_0x4eddcb);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function getSign(_0x1e37d5) {
|
||||||
|
var _0x4e2d74 = 'web';
|
||||||
|
var _0x56f040 = 3;
|
||||||
|
var _0x1e2592 = Math.round((new Date().getTime() + 0x3c * new Date().getTimezoneOffset() * 0x3e8 + 28800000) / 0x3e8).toString();
|
||||||
|
var key = 'a,d,e,f,g,h,l,m,y,i,j,n,o,p,k,q,r,s,t,u,b,c,v,w,s,z';
|
||||||
|
var _0x48562f = Math['round'](0x989680 * Math['random']());
|
||||||
|
|
||||||
|
var _0x2f7dfc;
|
||||||
|
var _0x35a889;
|
||||||
|
var _0x36f983;
|
||||||
|
var _0x3b043d;
|
||||||
|
var _0x5bc73b;
|
||||||
|
var _0x4b30b2;
|
||||||
|
var _0x32399e;
|
||||||
|
var _0x25d94e;
|
||||||
|
var _0x373490;
|
||||||
|
for (var _0x1c540f in (_0x2f7dfc = key.split(','),
|
||||||
|
_0x35a889 = _0x1b5d95(_0x1e2592),
|
||||||
|
_0x36f983 = _0x35a889['y'],
|
||||||
|
_0x3b043d = _0x35a889['m'],
|
||||||
|
_0x5bc73b = _0x35a889['d'],
|
||||||
|
_0x4b30b2 = _0x35a889['h'],
|
||||||
|
_0x32399e = _0x35a889['f'],
|
||||||
|
_0x25d94e = [_0x36f983, _0x3b043d, _0x5bc73b, _0x4b30b2, _0x32399e].join(''),
|
||||||
|
_0x373490 = [],
|
||||||
|
_0x25d94e))
|
||||||
|
_0x373490['push'](_0x2f7dfc[Number(_0x25d94e[_0x1c540f])]);
|
||||||
|
var _0x43bdc6;
|
||||||
|
var _0x406c4e;
|
||||||
|
return _0x43bdc6 = _0x4f141a(_0x373490['join']('')),
|
||||||
|
_0x406c4e = _0x4f141a(''['concat'](_0x1e2592, '|')['concat'](_0x48562f, '|')['concat'](_0x1e37d5, '|')['concat'](_0x4e2d74, '|')['concat'](_0x56f040, '|')['concat'](_0x43bdc6)),
|
||||||
|
[_0x43bdc6, ''['concat'](_0x1e2592, '-')['concat'](_0x48562f, '-')['concat'](_0x406c4e)];
|
||||||
|
}
|
||||||
|
|
||||||
|
""";
|
||||||
|
String lz = """
|
||||||
|
/**
|
||||||
|
* 蓝奏云解析器js签名获取工具
|
||||||
|
*/
|
||||||
|
|
||||||
|
var signObj;
|
||||||
|
|
||||||
|
|
||||||
|
var $, jQuery;
|
||||||
|
|
||||||
|
$ = jQuery = function () {
|
||||||
|
return new jQuery.fn.init();
|
||||||
|
}
|
||||||
|
|
||||||
|
jQuery.fn = jQuery.prototype = {
|
||||||
|
init: function () {
|
||||||
|
return {
|
||||||
|
focus: function (a) {
|
||||||
|
|
||||||
|
},
|
||||||
|
keyup: function(a) {
|
||||||
|
|
||||||
|
},
|
||||||
|
ajax: function (obj) {
|
||||||
|
signObj = obj
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
jQuery.fn.init.prototype = jQuery.fn;
|
||||||
|
|
||||||
|
|
||||||
|
// 伪装jquery.ajax函数获取关键数据
|
||||||
|
$.ajax = function (obj) {
|
||||||
|
signObj = obj
|
||||||
|
}
|
||||||
|
|
||||||
|
var document = {
|
||||||
|
getElementById: function (v) {
|
||||||
|
return {
|
||||||
|
value: 'v'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
""";
|
||||||
|
|
||||||
|
}
|
||||||
@@ -7,12 +7,6 @@ import javax.script.Invocable;
|
|||||||
import javax.script.ScriptEngine;
|
import javax.script.ScriptEngine;
|
||||||
import javax.script.ScriptEngineManager;
|
import javax.script.ScriptEngineManager;
|
||||||
import javax.script.ScriptException;
|
import javax.script.ScriptException;
|
||||||
import java.io.FileReader;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.net.URL;
|
|
||||||
import java.nio.file.Files;
|
|
||||||
import java.nio.file.Path;
|
|
||||||
import java.nio.file.Paths;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 执行Js脚本
|
* 执行Js脚本
|
||||||
@@ -21,28 +15,17 @@ import java.nio.file.Paths;
|
|||||||
* @date 2023/7/29 17:35
|
* @date 2023/7/29 17:35
|
||||||
*/
|
*/
|
||||||
public class JsExecUtils {
|
public class JsExecUtils {
|
||||||
private static final String JS_PATH = "js/ye123.js";
|
|
||||||
private static final String LZ_JS_PATH = "js/lz.js";
|
|
||||||
|
|
||||||
private static final String RES_PATH;
|
|
||||||
private static final Invocable inv;
|
private static final Invocable inv;
|
||||||
|
|
||||||
// 初始化脚本引擎
|
// 初始化脚本引擎
|
||||||
static {
|
static {
|
||||||
ScriptEngineManager engineManager = new ScriptEngineManager();
|
ScriptEngineManager engineManager = new ScriptEngineManager();
|
||||||
ScriptEngine engine = engineManager.getEngineByName("JavaScript"); // 得到脚本引擎
|
ScriptEngine engine = engineManager.getEngineByName("JavaScript"); // 得到脚本引擎
|
||||||
//获取文件所在的相对路径
|
|
||||||
URL resource = JsExecUtils.class.getResource("/");
|
try {
|
||||||
if (resource == null) {
|
engine.eval(JsContent.ye123);
|
||||||
throw new RuntimeException("js resource path is null");
|
|
||||||
}
|
|
||||||
RES_PATH = resource.getPath();
|
|
||||||
String reader = RES_PATH + JS_PATH;
|
|
||||||
try (FileReader fReader = new FileReader(reader)) {
|
|
||||||
engine.eval(fReader);
|
|
||||||
fReader.close();
|
|
||||||
inv = (Invocable) engine;
|
inv = (Invocable) engine;
|
||||||
} catch (IOException | ScriptException e) {
|
} catch (ScriptException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -63,23 +46,11 @@ public class JsExecUtils {
|
|||||||
NoSuchMethodException {
|
NoSuchMethodException {
|
||||||
ScriptEngineManager engineManager = new ScriptEngineManager();
|
ScriptEngineManager engineManager = new ScriptEngineManager();
|
||||||
ScriptEngine engine = engineManager.getEngineByName("JavaScript"); // 得到脚本引擎
|
ScriptEngine engine = engineManager.getEngineByName("JavaScript"); // 得到脚本引擎
|
||||||
try {
|
engine.eval(JsContent.lz);
|
||||||
//获取文件所在的相对路径
|
Invocable inv = (Invocable) engine;
|
||||||
Path path;
|
//调用js中的函数
|
||||||
try {
|
if (StringUtils.isNotEmpty(funName)) {
|
||||||
path = Paths.get(RES_PATH + LZ_JS_PATH);
|
inv.invokeFunction(funName);
|
||||||
} catch (RuntimeException ioe) {
|
|
||||||
path = Paths.get(RES_PATH.substring(1) + LZ_JS_PATH);
|
|
||||||
}
|
|
||||||
String jsContent = Files.readString(path) + "\n" + jsText;
|
|
||||||
engine.eval(jsContent);
|
|
||||||
Invocable inv = (Invocable) engine;
|
|
||||||
//调用js中的函数
|
|
||||||
if (StringUtils.isNotEmpty(funName)) {
|
|
||||||
inv.invokeFunction(funName);
|
|
||||||
}
|
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return (ScriptObjectMirror) engine.get("signObj");
|
return (ScriptObjectMirror) engine.get("signObj");
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
/**
|
|
||||||
* 蓝奏云解析器js签名获取工具
|
|
||||||
*/
|
|
||||||
|
|
||||||
var signObj;
|
|
||||||
|
|
||||||
|
|
||||||
var $, jQuery;
|
|
||||||
|
|
||||||
$ = jQuery = function () {
|
|
||||||
return new jQuery.fn.init();
|
|
||||||
}
|
|
||||||
|
|
||||||
jQuery.fn = jQuery.prototype = {
|
|
||||||
init: function () {
|
|
||||||
return {
|
|
||||||
focus: function (a) {
|
|
||||||
|
|
||||||
},
|
|
||||||
keyup: function(a) {
|
|
||||||
|
|
||||||
},
|
|
||||||
ajax: function (obj) {
|
|
||||||
signObj = obj
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
jQuery.fn.init.prototype = jQuery.fn;
|
|
||||||
|
|
||||||
|
|
||||||
// 伪装jquery.ajax函数获取关键数据
|
|
||||||
$.ajax = function (obj) {
|
|
||||||
signObj = obj
|
|
||||||
}
|
|
||||||
|
|
||||||
var document = {
|
|
||||||
getElementById: function (v) {
|
|
||||||
return {
|
|
||||||
value: 'v'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
@@ -1,95 +0,0 @@
|
|||||||
/*
|
|
||||||
https://statics.123pan.com/share-static/dist/umi.fb72555e.js
|
|
||||||
eaefamemdead
|
|
||||||
eaefameidldy
|
|
||||||
_0x4f141a(1690439821|5790548|/b/api/share/download/info|web|3|1946841013) = 秘钥
|
|
||||||
|
|
||||||
_0x1e2592 1690439821 时间戳
|
|
||||||
_0x48562f 5790548 随机码
|
|
||||||
_0x1e37d5 /b/api/share/download/info
|
|
||||||
_0x4e2d74 web
|
|
||||||
_0x56f040 3
|
|
||||||
_0x43bdc6 1946841013 加密时间HASH戳
|
|
||||||
|
|
||||||
>>>>
|
|
||||||
_0x43bdc6=''['concat'](_0x1e2592, '-')['concat'](_0x48562f, '-')['concat'](_0x406c4e)
|
|
||||||
加密时间HASH戳 = 时间戳-随机码-秘钥
|
|
||||||
*/
|
|
||||||
|
|
||||||
function _0x1b5d95(_0x278d1a) {
|
|
||||||
var _0x839b57,
|
|
||||||
_0x4ed4dc = arguments['length'] > 0x2 && void 0x0 !== arguments[0x2] ? arguments[0x2] : 0x8;
|
|
||||||
if (0x0 === arguments['length'])
|
|
||||||
return null;
|
|
||||||
'object' === typeof _0x278d1a ? _0x839b57 = _0x278d1a : (0xa === ('' + _0x278d1a)['length'] && (_0x278d1a = 0x3e8 * parseInt(_0x278d1a)),
|
|
||||||
_0x839b57 = new Date(_0x278d1a));
|
|
||||||
var _0xc5c54a = _0x278d1a + 0xea60 * new Date(_0x278d1a)['getTimezoneOffset']()
|
|
||||||
, _0x3732dc = _0xc5c54a + 0x36ee80 * _0x4ed4dc;
|
|
||||||
return _0x839b57 = new Date(_0x3732dc),
|
|
||||||
{
|
|
||||||
'y': _0x839b57['getFullYear'](),
|
|
||||||
'm': _0x839b57['getMonth']() + 0x1 < 0xa ? '0' + (_0x839b57['getMonth']() + 0x1) : _0x839b57['getMonth']() + 0x1,
|
|
||||||
'd': _0x839b57['getDate']() < 0xa ? '0' + _0x839b57['getDate']() : _0x839b57['getDate'](),
|
|
||||||
'h': _0x839b57['getHours']() < 0xa ? '0' + _0x839b57['getHours']() : _0x839b57['getHours'](),
|
|
||||||
'f': _0x839b57['getMinutes']() < 0xa ? '0' + _0x839b57['getMinutes']() : _0x839b57['getMinutes']()
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function _0x4f141a(_0x4075b1) {
|
|
||||||
|
|
||||||
for (var _0x4eddcb = arguments['length'] > 0x1 && void 0x0 !== arguments[0x1] ? arguments[0x1] : 0xa,
|
|
||||||
_0x2fc680 = function() {
|
|
||||||
for (var _0x515c63, _0x361314 = [], _0x4cbdba = 0x0; _0x4cbdba < 0x100; _0x4cbdba++) {
|
|
||||||
_0x515c63 = _0x4cbdba;
|
|
||||||
for (var _0x460960 = 0x0; _0x460960 < 0x8; _0x460960++)
|
|
||||||
_0x515c63 = 0x1 & _0x515c63 ? 0xedb88320 ^ _0x515c63 >>> 0x1 : _0x515c63 >>> 0x1;
|
|
||||||
_0x361314[_0x4cbdba] = _0x515c63;
|
|
||||||
}
|
|
||||||
return _0x361314;
|
|
||||||
},
|
|
||||||
_0x4aed86 = _0x2fc680(),
|
|
||||||
_0x5880f0 = _0x4075b1,
|
|
||||||
_0x492393 = -0x1, _0x25d82c = 0x0;
|
|
||||||
_0x25d82c < _0x5880f0['length'];
|
|
||||||
_0x25d82c++)
|
|
||||||
|
|
||||||
_0x492393 = _0x492393 >>> 0x8 ^ _0x4aed86[0xff & (_0x492393 ^ _0x5880f0.charCodeAt(_0x25d82c))];
|
|
||||||
return _0x492393 = (-0x1 ^ _0x492393) >>> 0x0,
|
|
||||||
_0x492393.toString(_0x4eddcb);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function getSign(_0x1e37d5) {
|
|
||||||
var _0x4e2d74 = 'web';
|
|
||||||
var _0x56f040 = 3;
|
|
||||||
var _0x1e2592 = Math.round((new Date().getTime() + 0x3c * new Date().getTimezoneOffset() * 0x3e8 + 28800000) / 0x3e8).toString();
|
|
||||||
var key = 'a,d,e,f,g,h,l,m,y,i,j,n,o,p,k,q,r,s,t,u,b,c,v,w,s,z';
|
|
||||||
var _0x48562f = Math['round'](0x989680 * Math['random']());
|
|
||||||
|
|
||||||
var _0x2f7dfc;
|
|
||||||
var _0x35a889;
|
|
||||||
var _0x36f983;
|
|
||||||
var _0x3b043d;
|
|
||||||
var _0x5bc73b;
|
|
||||||
var _0x4b30b2;
|
|
||||||
var _0x32399e;
|
|
||||||
var _0x25d94e;
|
|
||||||
var _0x373490;
|
|
||||||
for (var _0x1c540f in (_0x2f7dfc = key.split(','),
|
|
||||||
_0x35a889 = _0x1b5d95(_0x1e2592),
|
|
||||||
_0x36f983 = _0x35a889['y'],
|
|
||||||
_0x3b043d = _0x35a889['m'],
|
|
||||||
_0x5bc73b = _0x35a889['d'],
|
|
||||||
_0x4b30b2 = _0x35a889['h'],
|
|
||||||
_0x32399e = _0x35a889['f'],
|
|
||||||
_0x25d94e = [_0x36f983, _0x3b043d, _0x5bc73b, _0x4b30b2, _0x32399e].join(''),
|
|
||||||
_0x373490 = [],
|
|
||||||
_0x25d94e))
|
|
||||||
_0x373490['push'](_0x2f7dfc[Number(_0x25d94e[_0x1c540f])]);
|
|
||||||
var _0x43bdc6;
|
|
||||||
var _0x406c4e;
|
|
||||||
return _0x43bdc6 = _0x4f141a(_0x373490['join']('')),
|
|
||||||
_0x406c4e = _0x4f141a(''['concat'](_0x1e2592, '|')['concat'](_0x48562f, '|')['concat'](_0x1e37d5, '|')['concat'](_0x4e2d74, '|')['concat'](_0x56f040, '|')['concat'](_0x43bdc6)),
|
|
||||||
[_0x43bdc6, ''['concat'](_0x1e2592, '-')['concat'](_0x48562f, '-')['concat'](_0x406c4e)];
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user