Skip to content

'ReferenceError: _0x2194cf is not defined' #125

@malafaya

Description

@malafaya

I'm occasionaly getting an error when running after obfuscation. I believe another error may also be related (Unexpected identifier) because sometimes(?) it misses the 'async' keyword before a function using 'await'.

Original code:

'use strict';

async function saveOsValues() {
	return 0;
}

var save = async function() {
  // Create cfg dir if it does not exist
  let checkCfgDirPromise = new Promise((resolve, reject) => {
	  resolve(1);
  });

  try {
    // Save actual values to OS
    let osSaver = saveOsValues();

    //
    // Save the configuration object to disk
    //
    await checkCfgDirPromise;
    let saveCfgPromise = new Promise((resolve, reject) => {
  		resolve(1);
    });
    await osSaver;
    await saveCfgPromise;
  }
  catch(err) {
    console.error('[config.save]', err);
  }
};

async function ttt() {
  var sdfsdf = await Promise.all([ save(), save() ]);
}

ttt();

Obfuscated code:
var _0xb4a1=['Rlh3S2I=','RHJyVXU=','cVFidkg=','ZXJyb3I=','YWxs','d09n','W2NvbmZpZy5zYXZlXQ==','eEtJa1U='];(function(a,c){var b=function(b){while(--b){a['push'](a['shift']());}};b(++c);}(_0xb4a1,0x1bd));var _0x1b4a=function(b,d){b=b-0x0;var a=_0xb4a1[b];if(_0x1b4a['initialized']===undefined){(function(){var a;try{var b=Function('return\x20(function()\x20'+'{}.constructor(\x22return\x20this\x22)(\x20)'+');');a=b();}catch(b){a=window;}var c='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';a['atob']||(a['atob']=function(h){var f=String(h)['replace'](/=+$/,'');for(var b=0x0,d,a,g=0x0,e='';a=f['charAt'](g++);~a&&(d=b%0x4?d*0x40+a:a,b++%0x4)?e+=String['fromCharCode'](0xff&d>>(-0x2*b&0x6)):0x0){a=c['indexOf'](a);}return e;});}());_0x1b4a['base64DecodeUnicode']=function(e){var b=atob(e);var c=[];for(var a=0x0,d=b['length'];a<d;a++){c+='%'+('00'+b['charCodeAt'](a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(c);};_0x1b4a['data']={};_0x1b4a['initialized']=!![];}var c=_0x1b4a['data'][b];if(c===undefined){a=_0x1b4a['base64DecodeUnicode'](a);_0x1b4a['data'][b]=a;}else{a=c;}return a;};'use strict';async function saveOsValues(){return 0x0;}var save=async function(){var a={'bPLBm':function f(a,b){return a!==b;},'xKIkU':_0x1b4a('0x0'),'FXwKb':'jpO','JYOkH':_0x1b4a('0x1')};let c=new Promise((_0x52b026,_0x471b2d)=>{_0x52b026(0x1);});try{if(a['bPLBm'](a[_0x1b4a('0x2')],a[_0x1b4a('0x3')])){let d=saveOsValues();await _0x2194cf;let e=new Promise((_0x229174,_0x3e960e)=>{var b={'DrrUu':function g(a,b){return a===b;},'qQbvH':'HqR'};if(b[_0x1b4a('0x4')](b[_0x1b4a('0x5')],'HqR')){_0x229174(0x1);}else{console['error'](_0x1b4a('0x1'),err);}});await _0x29a77a;await _0x14d154;}else{return 0x0;}}catch(b){console[_0x1b4a('0x6')](a['JYOkH'],b);}};async function ttt(){var a={'GyEqm':function c(a){return a();}};var b=await Promise[_0x1b4a('0x7')]([save(),a['GyEqm'](save)]);}ttt();

Run error:
[config.save] ReferenceError: _0x2194cf is not defined
at save (C:\Workspace\system\iii.js:1:1516)
at ttt (C:\Workspace\system\iii.js:1:1940)
at Object. (C:\Workspace\system\iii.js:1:1967)
at Module._compile (module.js:573:30)
at Object.Module._extensions..js (module.js:584:10)
at Module.load (module.js:507:32)
at tryModuleLoad (module.js:470:12)
at Function.Module._load (module.js:462:3)
at Function.Module.runMain (module.js:609:10)
at startup (bootstrap_node.js:158:16)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions