mirror of
https://github.com/pysunday/rs-reverse.git
synced 2025-04-12 03:46:56 +08:00
fix: readme and console
This commit is contained in:
parent
fe2577e51f
commit
cb08efe0f1
@ -24,11 +24,16 @@
|
||||
|
||||
**`npx rs-reverse *`与在当前目录下运行`node main.js *`相对应**
|
||||
|
||||
如npx运行的包不是最新的,可以加上-p参数后执行如:`npx -p rs-reverse@latest rs-reverse makecookie`,非官方源可能存在版本不同步问题。
|
||||
|
||||
npm包不能保证最新代码,最新代码以仓库代码为准!
|
||||
|
||||
### 2.1. makecode子命令
|
||||
|
||||
> 体验命令:`npx rs-reverse makecode`
|
||||
执行子命令`makecode`生成动态代码, 可以传入包含`$_ts.nsd`和`$_ts.cd`的文本文件或者直接给url让程序自己去拿,命令示例:
|
||||
|
||||
执行子命令`makecode`生成动态代码, 可以传入包含`$_ts.nsd`和`$_ts.cd`的文本文件或者直接给url让程序自己去拿。
|
||||
1. npx方式:`npx rs-reverse makecode`
|
||||
2. 文件方式:`node main.js makecode`
|
||||
|
||||
如运行:`npx rs-reverse makecode -u http://wcjs.sbj.cnipa.gov.cn/sgtmi`,后生成三个文件:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "rs-reverse",
|
||||
"version": "1.1.0",
|
||||
"version": "1.1.2",
|
||||
"description": "瑞数算法逆向,website reverse engineering",
|
||||
"main": "main.js",
|
||||
"directories": {
|
||||
|
@ -3,14 +3,14 @@ const monitor = require('@utils/monitor');
|
||||
const logger = require('@utils/logger');
|
||||
|
||||
module.exports = function(...params) {
|
||||
logger.info('执行开始!');
|
||||
logger.trace('执行开始!');
|
||||
try {
|
||||
return dynamicExec(...params);
|
||||
} catch (err) {
|
||||
logger.error(String(err));
|
||||
process.exit();
|
||||
} finally {
|
||||
logger.info('执行结束!');
|
||||
logger.trace('执行结束!');
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,7 +19,7 @@ function dynamicExec(task, start = 0, args = [], loop_res = [], global_res = [])
|
||||
loop_res = monitor(loop_res, 'loop_res', { getLog: true, setLog: true, getCb: (key) => {if(['81', '83'].includes(key))debugger}});
|
||||
global_res = monitor(global_res, 'global_res', { getLog: true, setLog: true });
|
||||
if (typeof task === 'string') task = gv.r2mka(task).taskarr;
|
||||
console.log(`动态代码运行,任务列表:${task}, 起点:${start},长度:${task.length}`);
|
||||
logger.trace(`动态代码运行,任务列表:${task}, 起点:${start},长度:${task.length}`);
|
||||
const data = [];
|
||||
const ret = [];
|
||||
ret[0] = args;
|
||||
@ -97,7 +97,6 @@ function dynamicExec(task, start = 0, args = [], loop_res = [], global_res = [])
|
||||
d_cursor -= 3;
|
||||
temp1 = d_cursor;
|
||||
setTarget();
|
||||
console.log(target);
|
||||
target = target[tarkey];
|
||||
temp1 = target(data[temp1], data[temp1 + 1], data[temp1 + 2]);
|
||||
break;
|
||||
@ -593,7 +592,7 @@ function dynamicExec(task, start = 0, args = [], loop_res = [], global_res = [])
|
||||
tarkey = data[--d_cursor];
|
||||
target = data[--d_cursor];
|
||||
} else if (next > 24 && next <= 27) {
|
||||
console.log(`[no] 设置关键对象与下标:${next}`)
|
||||
logger.trace(`[no] 设置关键对象与下标:${next}`)
|
||||
// temp3 = task[++t_cursor];
|
||||
// tarkey = task[++t_cursor];
|
||||
// target = ret[3][temp3];
|
||||
@ -624,7 +623,7 @@ function dynamicExec(task, start = 0, args = [], loop_res = [], global_res = [])
|
||||
task[t_cursor] = tarkey;
|
||||
target = data[--d_cursor];
|
||||
} else if (next > 99 && next <= 104) {
|
||||
console.log(`[no] 设置关键对象与下标:${next}`)
|
||||
logger.trace(`[no] 设置关键对象与下标:${next}`)
|
||||
// temp3 = task[++t_cursor];
|
||||
// tarkey = task[++t_cursor];
|
||||
// target = ret[1][temp3];
|
||||
|
@ -41,7 +41,7 @@ function getTaskarr(arr, idx, ans = []) {
|
||||
|
||||
function getOffset(arr) {
|
||||
const [task0, task1, task2, task3] = getTaskarr(arr, arr[3]);
|
||||
console.log([task0, task1, task3]);
|
||||
logger.trace([task0, task1, task3]);
|
||||
const l81 = gv.r2mka("0-0").taskarr[42] + gv.cp2[56];
|
||||
const l83 = (gv.cp0_96(1, gv.r2mka("0-0").taskarr[57]).charCodeAt() + l81) * l81;
|
||||
const offset = dynamicExec('0>one>22-24', 0, undefined, {
|
||||
|
@ -1,3 +1,5 @@
|
||||
const logger = require('./logger');
|
||||
|
||||
module.exports = function monitor(tar, name, config = {}) {
|
||||
const {
|
||||
getLog, // 开启get日志
|
||||
@ -12,13 +14,13 @@ module.exports = function monitor(tar, name, config = {}) {
|
||||
} = config;
|
||||
return new Proxy(tar, {
|
||||
get: function(target, property, receiver) {
|
||||
getLog && console.log(`${name} Getting ${property}`);
|
||||
getLog && logger.trace(`${name} Getting ${property}`);
|
||||
if (getKeys.includes(property) || keys.includes(property)) debugger;
|
||||
(getCb || cb)?.(property);
|
||||
return Reflect.get(target, property, receiver);
|
||||
},
|
||||
set: function(target, property, value, receiver) {
|
||||
setLog && console.log(`${name} Setting ${property} to ${value}`);
|
||||
setLog && logger.trace(`${name} Setting ${property} to ${value}`);
|
||||
if (getKeys.includes(property) || keys.includes(property)) debugger;
|
||||
(setCb || cb)?.(property, value);
|
||||
return Reflect.set(target, property, parse(property, value), receiver);
|
||||
|
Loading…
x
Reference in New Issue
Block a user