Michael Brasington
Michael Brasington
When installing the program via PowerShell everything goes good until "Successfully installed Python 2.7" then it just pauses and does absolutely nothing. No error message, everything was good until that....
The [generator function](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*) or `function*` provides a useful `yield` expression that can be used to divert control flow. This can be used instead of a `break` statement as a more...
**Config and Small code sample** Config: ```js { target: "node", controlFlowFlattening: true } ``` Code: ```js "use strict"; var myFunction = function () { console.log("Inner"); }; if (true) { function...
**Config and Small code sample** Config: ```js { target: "node", controlFlowFlattening: true } ``` Code: ```js switch (true) { case false: function myFunction() { // This block is never ran,...
**Config and Small code sample** Config: ```js { target: "node", controlFlowFlattening: true } ``` Code: ```js if (true) { function myFunction() { console.log("Top Function Declaration"); } function myFunction() { console.log("Bottom...
**Describe the bug:**   **Config and Small code sample** Config: ```js { target: "node", preset: "high" } ``` Code: ```js var affect = 0; class MyClass{ constructor(){ affect =...
Implement @doctor8296's trick to detect tampering to the global object. Securing the global object is a great protection for fighting against monkey patching. ```js let check = false; eval("check =...
The [`with`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/with) statement is able to obfuscate variable names, that could be very difficult for AST analyzers to understand. You can also do weird things with proxies. ```js const namespace...
**Config and Small code sample** Config: ```js { target: "node", renameVariables: true } ``` Code: ```js var a = "Incorrect value"; with ({ a: "Correct Value" }) { console.log(a); }...
We can use source itself to decrypt strings ```js function decrypt(str, password) { // ... } const encryptedString = "ABC..."; decrypt(encryptedString, decrypt.toString()); ``` the only thing which is required is...