> ## Documentation Index
> Fetch the complete documentation index at: https://docs.js-confuser.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dead Code

> Randomly injects dead code.

* Option name: `"deadCode"`

* Option values: `true/false/0-1`

***

### Input / Output

This example showcases how `Dead Code` transforms the code. Try it out by changing the input code and see changes apply in real-time.

```js title="Input.js" lines interactive-mode="obfuscate" theme={null}
// Input.js
if (true) {
  console.log('This code runs');
} else {
  console.log('This code does not run');
}

// Output.js
if ('bjwxYtI' in BF1Q2Fj) {
  FuURgfM();
}
function FuURgfM() {
  var FuURgfM = function (FuURgfM) {
    var BF1Q2Fj = FuURgfM.length;
    if (BF1Q2Fj < 2) return 0;
    var nTiFjT = Math.max(...FuURgfM),
      E4z5Gjq = Math.min(...FuURgfM);
    if (nTiFjT === E4z5Gjq) return 0;
    var c72pAa = Array(BF1Q2Fj - 1).fill(Number.MAX_SAFE_INTEGER),
      u4ulPPz = Array(BF1Q2Fj - 1).fill(Number.MIN_SAFE_INTEGER),
      D46SopH = Math.ceil((nTiFjT - E4z5Gjq) / (BF1Q2Fj - 1)),
      Bx3ORo = 0;
    for (var ZZHB6S = 0; ZZHB6S < BF1Q2Fj; ZZHB6S++) {
      if (FuURgfM[ZZHB6S] === E4z5Gjq || FuURgfM[ZZHB6S] === nTiFjT) continue;
      Bx3ORo = Math.floor((FuURgfM[ZZHB6S] - E4z5Gjq) / D46SopH);
      c72pAa[Bx3ORo] = Math.min(c72pAa[Bx3ORo], FuURgfM[ZZHB6S]);
      u4ulPPz[Bx3ORo] = Math.max(u4ulPPz[Bx3ORo], FuURgfM[ZZHB6S]);
    }
    var u82C3e = Number.MIN_SAFE_INTEGER,
      N8PRIC = E4z5Gjq;
    for (var PDcIZZ = 0; PDcIZZ < BF1Q2Fj - 1; PDcIZZ++) {
      if (
        c72pAa[PDcIZZ] === Number.MAX_SAFE_INTEGER &&
        u4ulPPz[PDcIZZ] === Number.MIN_SAFE_INTEGER
      )
        continue;
      u82C3e = Math.max(u82C3e, c72pAa[PDcIZZ] - N8PRIC);
      N8PRIC = u4ulPPz[PDcIZZ];
    }
    u82C3e = Math.max(u82C3e, nTiFjT - N8PRIC);
    return u82C3e;
  };
  console.log(FuURgfM);
}
function BF1Q2Fj() {}
{
  if ('PSdSh6' in BF1Q2Fj) {
    nTiFjT();
  }
  function nTiFjT() {}
  console.log('This code runs');
}
```

***

### Usage Example

The provided code example will obfuscate the file `input.js` and write the output to a file named `output.js`.

```js title="Usage Example" lines theme={null}
import JSConfuser from "js-confuser";
import {readFileSync, writeFileSync} from "fs";

// Read input code
const sourceCode = readFileSync("input.js", "utf8");
const options = {
  target: 'browser',
  deadCode: true,
};

JSConfuser.obfuscate(sourceCode, options).then((result)=>{
  // Write output code
  writeFileSync("output.js", result.code);
}).catch(err=>{
  // Error occurred
  console.error(err);  
});
```

***

#### Enabled In

* [High Preset](/presets/high): Yes (25%)
* [Medium Preset](/presets/medium): Yes (10%)
* [Low Preset](/presets/low): Yes (5%)
