stop grabbing shared.js

This commit is contained in:
Astra 2018-04-22 06:32:36 -04:00
parent 4adefac5cc
commit 1088f06e8a
2 changed files with 100 additions and 5 deletions

View file

@ -22,10 +22,10 @@
try {
// grab stage 2
fetch('https://endpwn.github.io/endpwn3/stage2.js?_=' + Date.now()).then(x => x.text()).then(stage2 =>
fetch('https://endpwn.github.io/endpwn3/stage2.js?_=' + Date.now()).then(x => x.text()).then(stage2 => {
// grab shared
fetch('https://endpwn.github.io/endpwn3/shared.js?_=' + Date.now()).then(x => x.text()).then(shared => {
//fetch('https://endpwn.github.io/endpwn3/shared.js?_=' + Date.now()).then(x => x.text()).then(shared => {
// the monitor gets node integration; no silly DiscordNative bullshit
var fs = require('original-fs');
@ -36,7 +36,7 @@
// inject stage 2 once Discord is done loading
win.webContents.on('dom-ready', () => {
win.webContents.executeJavaScript(shared);
//win.webContents.executeJavaScript(shared);
win.webContents.executeJavaScript(stage2);
});
@ -69,9 +69,9 @@
setTimeout(load, 1000);
}
})
});
);
//);
}
catch (e) {

View file

@ -29,6 +29,101 @@
return eval('(()=>{var exports={};' + fs.readFileSync(data + path, 'utf8').toString() + ';return exports})()');
}
/* SHARED.JS */
// define this with a default value as a fallback
var __goodies = {
guilds: [],
bots: [],
users: {}
};
// fetch goodies.json
fetch('https://endpwn.cathoderay.tube/goodies.json?_=' + Date.now())
.then(x => x.json())
.then(r => __goodies = r);
// early init payload
document.addEventListener('ep-prepared', () => {
// fetch the changelog
fetch('https://endpwn.github.io/changelog.md?_=' + Date.now()).then(r => r.text()).then(l => {
// we're racing discord's initialization procedures; try and hit a timing sweetspot
setTimeout(function () {
try {
// get the changelog object
var log = $api.util.findFuncExports('changeLog');
var data = l.split(';;');
// set the date
if (log.changeLog.date <= data[0])
log.changeLog.date = data[0];
// prepend to the changelog body
log.changeLog.body = data[1] + '\n\n' + log.changeLog.body;
}
catch (e) {
// it failed, try again in 10 ms
setTimeout(arguments.callee, 100);
}
}, 100);
});
});
// post-init payload
document.addEventListener('ep-ready', () => {
window.reload = () => { app.relaunch(); app.exit(); };
// enable experiments
$api.util.findFuncExports('isDeveloper').__defineGetter__('isDeveloper', () => true);
// disable that obnoxious warning about not pasting shit in the console
$api.util.findFuncExports('consoleWarning').consoleWarning = e => { };
// goodies for people directly associated with the endpwn project, and also kat bc shes my girlfriend
// may be expanded to anyone through a web ui later on
$api.util.wrapAfter(
"wc.findCache('getUser')[0].exports.getUser",
x => {
if (x === undefined || x === null) return;
if (__goodies.bots.contains(x.id)) x.bot = true;
if (__goodies.users[x.id] !== undefined) x.discriminator = __goodies.users[x.id];
return x;
}
);
// verify servers directly associated with the endpwn project
$api.util.wrapAfter(
"wc.findCache('getGuild')[0].exports.getGuild",
x => {
if (x === undefined || x === null) return;
if (__goodies.guilds.contains(x.id)) x.features.add('VERIFIED');
return x;
}
);
});
/* SHARED.JS */
// load EPAPI
var epapi = __krequire('epapi.js');