Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

var _0xda19 = ["Message received : ", "log", "stop", "Stopping", "container", "on"]; $box..

Decoded Output download

<?  var _0xda19 = ["Message received : ", "log", "stop", "Stopping", "container", "on"]; 
$box[_0xda19[5]]((_0xc739x1, _0xc739x2) => { 
  console[_0xda19[1]](_0xda19[0] + _0xc739x1); 
  if (_0xc739x1 == _0xda19[2]) { 
    console[_0xda19[1]](_0xda19[3]); 
    TaskManager[_0xda19[4]][_0xda19[2]](); 
  } 
}); 
 
/*-------------------------- On Load ------------------------*/ 
var _0xe9d2 = ["Content.js loaded", "log", "status", "Starting Process", "getLocal"]; 
$(() => { 
  console[_0xe9d2[1]](_0xe9d2[0]); 
  $box[_0xe9d2[4]](_0x70dcx1 => { 
    console[_0xe9d2[1]](_0x70dcx1); 
    if (_0x70dcx1[_0xe9d2[2]]) { 
      console[_0xe9d2[1]](_0xe9d2[3]); 
      extractResults(); 
    } 
  }); 
}); 
var startTime = new Date(); 
var _0x526d = ["** Extracting Google Maps data...", "log", "random", "floor", "** saveResults callback called...", "** End of list reached, opening new search query...", "shift", "taskList", "Sendig send message", "start", "send", "setLocal", "getLocal"]; 
function extractResults(_0x4b1cx2 = true) { 
  $box[_0x526d[12]](_0x4b1cx3 => { 
    console[_0x526d[1]](_0x526d[0]); 
    var _0x4b1cx4 = Math[_0x526d[3]](Math[_0x526d[2]]() * 2) + 3; 
    saveResults(_0x4b1cx3 => { 
      console[_0x526d[1]](_0x526d[4]); 
      setTimeout(() => { 
        if (!endOfListExists()) { 
          var _0x4b1cx4 = Math[_0x526d[3]](Math[_0x526d[2]]() * 2) + 3; 
          scrollPage(); 
          setTimeout(() => { 
            extractResults(false); 
          }, _0x4b1cx4 * 1000); 
        } else { 
          console[_0x526d[1]](_0x526d[5]); 
          _0x4b1cx3[_0x526d[7]][_0x526d[6]](); 
          $box[_0x526d[11]](_0x4b1cx3, { 
            onSet: () => { 
              console[_0x526d[1]](_0x526d[8]); 
              $box[_0x526d[10]](_0x526d[9]); 
            } 
          }); 
        } 
      }, _0x4b1cx4 * 1000); 
    }, _0x4b1cx2); 
  }); 
} 
var _0x252e = ["innerHTML", "html", "getElementsByTagName", "newdata", "getAttribute", "newDataHolder", "getElementById", "** newdata not valid, calling callback...", "log", "getLocal"]; 
function saveResults(_0xef4bx2, _0xef4bx3) { 
  $box[_0x252e[9]](_0xef4bx4 => { 
    var _0xef4bx5; 
    if (_0xef4bx3) { 
      _0xef4bx5 = voegToeAanCollection(document[_0x252e[2]](_0x252e[1])[0][_0x252e[0]]); 
    } else { 
      try { 
        _0xef4bx5 = leesCollection(document[_0x252e[6]](_0x252e[5])[_0x252e[4]](_0x252e[3])); 
        startTime = new Date(); 
      } catch (e) { 
        console[_0x252e[8]](_0x252e[7]); 
        setTimeout(() => { 
          _0xef4bx2(_0xef4bx4); 
        }, 1000); 
        return; 
      } 
    } 
    ; 
    saveToLocal(_0xef4bx2, _0xef4bx5); 
  }); 
} 
var _0x60bd = ["length", "keyword", "trim", "~in~", "split", "taskList", "location", "hasValidKey", "_auth", "collect", "** exceeded free quota...", "log", "showLoginModal", "push", "cid", "uniqBy", "** Saving Data...", "** set successfully...", "Calling callback", "stop", "send", "setLocal", "getLocal"]; 
function saveToLocal(_0x6c48x2, _0x6c48x3) { 
  $box[_0x60bd[22]](_0x6c48x4 => { 
    for (let _0x6c48x5 = 0; _0x6c48x5 < _0x6c48x3[_0x60bd[0]]; _0x6c48x5++) { 
      data = _0x6c48x3[_0x6c48x5]; 
      data[_0x60bd[1]] = _0x6c48x4[_0x60bd[5]][0][_0x60bd[4]](_0x60bd[3])[0][_0x60bd[2]](); 
      data[_0x60bd[6]] = _0x6c48x4[_0x60bd[5]][0][_0x60bd[4]](_0x60bd[3])[1][_0x60bd[2]](); 
      if (!_0x6c48x4[_0x60bd[8]][_0x60bd[7]] && _0x6c48x4[_0x60bd[9]][_0x60bd[0]] >= 50) { 
        _0x6c48x4[_0x60bd[12]] = false; 
      } 
      ; 
      _0x6c48x4[_0x60bd[9]][_0x60bd[13]](data); 
      _0x6c48x4[_0x60bd[9]] = _[_0x60bd[15]](_0x6c48x4[_0x60bd[9]], _0x60bd[14]); 
    } 
    ; 
    console[_0x60bd[11]](_0x60bd[16]); 
    console[_0x60bd[11]](_0x6c48x4[_0x60bd[9]]); 
    $box[_0x60bd[21]](_0x6c48x4, { 
      onSet: () => { 
        console[_0x60bd[11]](_0x60bd[17]); 
        console[_0x60bd[11]](_0x60bd[18]); 
        if (!_0x6c48x4[_0x60bd[8]][_0x60bd[7]] && _0x6c48x4[_0x60bd[9]][_0x60bd[0]] >= 50) { 
          $box[_0x60bd[20]]('start'); 
        } else { 
          console[_0x60bd[11]](_0x60bd[18]); 
          _0x6c48x2(_0x6c48x4); 
        } 
      } 
    }); 
  }); 
} 
setTimeout(() => { 
  /** 
   * Addes a requests intercepting script. Which will appen the data 
   * to 'newData' element on the page. Which will be used to add further data.  
   */ 
 
  // adding a new element to DOM 
  const dataHolder = document.createElement("div"); 
  dataHolder.setAttribute("id", "newDataHolder"); 
  document.body.appendChild(dataHolder); 
 
  // observer for listening changes to added element 
  const observer = new MutationObserver(function (mutations) { 
    // pass 
  }); 
  observer.observe(dataHolder, { 
    //configure it to listen to attribute changes 
    attributes: true 
  }); 
 
  // script to intercept the requests, if correct response then 'append' to element 
  const injectedScript = "(" + function () { 
    // define monkey patch function 
    const monkeyPatch = () => { 
      let oldXHROpen = window.XMLHttpRequest.prototype.open; 
      window.XMLHttpRequest.prototype.open = function () { 
        this.addEventListener("load", function () { 
          try { 
            // try parsing the response, correct if works 
            const responseBody = this.response.replace("/*\"\"*/", ''); 
            parsedRespone = JSON.parse(responseBody); 
            if (parsedRespone.d) { 
              var data = parsedRespone.d.substr(4); 
              document.getElementById('newDataHolder').setAttribute('newData', data); 
            } 
          } catch (e) { 
            // not the required response 
            // pass 
          } 
        }); 
        return oldXHROpen.apply(this, arguments); 
      }; 
    }; 
    monkeyPatch(); 
  } + ")();"; 
 
  // script element for intercepting the requests 
  const injectScript = () => { 
    console.log("** Injecting Script"); 
    var script = document.createElement("script"); 
    script.textContent = injectedScript; 
    (document.head || document.documentElement).appendChild(script); 
    script.remove(); 
  }; 
  injectScript(); // injecting the script to dom 
  console.log("** Requests interceptions started..."); 
}, 2000); 
 
// HELPER FUNCTIONS 
var _0x3696 = ["getMinutes", "abs", "** ", " minutes elapsed before getting new data, refreshing the page...", "log", "Sendig send message", "start", "send", "setLocal", "getLocal", "** Scrolling page...", "scrollTop", ".m6QErb .DxyBCb .kA9KIf", "querySelectorAll"]; 
function scrollPage() { 
  let _0x1f82x2 = new Date(); 
  let _0x1f82x3 = Math[_0x3696[1]](_0x1f82x2[_0x3696[0]]() - startTime[_0x3696[0]]()); 
  if (_0x1f82x3 > 2) { 
    console[_0x3696[4]](`${_0x3696[2]}${_0x1f82x3}${_0x3696[3]}`); 
    $box[_0x3696[9]](_0x1f82x4 => { 
      $box[_0x3696[8]](_0x1f82x4, { 
        onSet: () => { 
          console[_0x3696[4]](_0x3696[5]); 
          $box[_0x3696[7]](_0x3696[6]); 
        } 
      }); 
    }); 
  } 
  ; 
  console[_0x3696[4]](_0x3696[10], _0x1f82x3); 
  document[_0x3696[13]](_0x3696[12])[0][_0x3696[11]] = 1000000; 
  return; 
} 
var _0x65d5 = ["length", ".fontHeadlineLarge", "querySelectorAll", "single page result...", "log", "HlvSq", "getElementsByClassName"]; 
function endOfListExists() { 
  if (document[_0x65d5[2]](_0x65d5[1])[_0x65d5[0]]) { 
    console[_0x65d5[4]](_0x65d5[3]); 
    return true; 
  } 
  ; 
  return document[_0x65d5[6]](_0x65d5[5])[_0x65d5[0]]; 
} 
 
// setTimeout(() => { 
// 	/** 
// 	 * Automattically reloading page after 30 secs to avoid stuck loading issue. 
// 	 */ 
// 	console.log('** Quiting scrapping session after 5 minutes...'); 
 
// 	$box.getLocal(local => { 
// 		local.taskList.shift(); 
// 		$box.setLocal(local, { 
// 			onSet: () => { 
// 				console.log("Sendig send message"); 
// 				$box.send('start'); 
// 			} 
// 		}); 
// 	}) 
 
// }, 300 * 1000) 
 
// SCRAPING FUNCTIONS 
var _0x76ca = ["window.APP_INITIALIZATION_STATE", "includes", "d", "slice", "parse", "window.APP_INITIALIZATION_STATE=", "indexOf", ";window.APP_FLAGS", "substr", "response", "data", "log", "status", "headers", "request", "Error", "message"]; 
function voegToeAanCollection(_0xe8d5x2) { 
  try { 
    collectedFlag = true; 
    var _0xe8d5x3 = null; 
    if (!_0xe8d5x2[_0x76ca[1]](_0x76ca[0])) { 
      _0xe8d5x3 = JSON[_0x76ca[4]](_0xe8d5x2[_0x76ca[3]](0, -6))[_0x76ca[2]]; 
    } else { 
      _0xe8d5x3 = JSON[_0x76ca[4]](_0xe8d5x2[_0x76ca[3]](_0xe8d5x2[_0x76ca[6]](_0x76ca[5]) + 32, _0xe8d5x2[_0x76ca[6]](_0x76ca[7])))[3][2]; 
    } 
    ; 
    if (_0xe8d5x3 === null) { 
      return; 
    } 
    ; 
    var _0xe8d5x4 = _0xe8d5x3[_0x76ca[8]](4); 
    if (_0xe8d5x4) { 
      return leesCollection(_0xe8d5x4); 
    } 
  } catch (error) { 
    if (error[_0x76ca[9]]) { 
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[10]]); 
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[12]]); 
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[13]]); 
    } else { 
      if (error[_0x76ca[14]]) { 
        console[_0x76ca[11]](error[_0x76ca[14]]); 
      } else { 
        console[_0x76ca[11]](_0x76ca[15], error[_0x76ca[16]]); 
      } 
    } 
    ; 
    console[_0x76ca[11]](error); 
  } 
  ; 
  return; 
} 
var _0xe7c9 = ["parse", "length", "company_name", "", "website", ":", "split", "https://www.google.com/maps?cid=", "cid", "phone", "rating_count", "review", "address", "pincode", "match", "pop", "category", "trim", ",", "city", "replace", "state", "push"]; 
function leesCollection(_0xfb2fx2) { 
  var _0xfb2fx3 = JSON[_0xe7c9[0]](_0xfb2fx2)[0][1]; 
  var _0xfb2fx4 = _0xfb2fx3[_0xe7c9[1]]; 
  var _0xfb2fx5 = []; 
  for (i = 0; i < _0xfb2fx4; i++) { 
    if (_0xfb2fx3[i][_0xe7c9[1]] == 15) { 
      result = {}; 
      result[_0xe7c9[2]] = _0xfb2fx3[i][14][11]; 
      var _0xfb2fx6 = _0xe7c9[3]; 
      if (_0xfb2fx3[i][14][7]) { 
        _0xfb2fx6 = _0xfb2fx3[i][14][7][0]; 
      } 
      ; 
      result[_0xe7c9[4]] = _0xfb2fx6; 
      cid = hexToDec(_0xfb2fx3[i][14][10][_0xe7c9[6]](_0xe7c9[5])[1]); 
      gmu = _0xe7c9[7] + cid; 
      result[_0xe7c9[8]] = cid; 
      try { 
        if (_0xfb2fx3[i][14][178][0][0]) { 
          var _0xfb2fx7 = _0xfb2fx3[i][14][178][0][3]; 
        } 
      } catch (e) { 
        var _0xfb2fx7 = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[9]] = _0xfb2fx7; 
      try { 
        if (_0xfb2fx3[i][14][4][8]) { 
          var _0xfb2fx8 = _0xfb2fx3[i][14][4][8]; 
        } 
      } catch (e) { 
        var _0xfb2fx8 = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[10]] = _0xfb2fx8; 
      try { 
        if (_0xfb2fx3[i][14][4][7]) { 
          var _0xfb2fx9 = _0xfb2fx3[i][14][4][7]; 
        } 
      } catch (e) { 
        var _0xfb2fx9 = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[11]] = _0xfb2fx9; 
      var _0xfb2fxa = _0xe7c9[3]; 
      if (_0xfb2fx3[i][14][39]) { 
        _0xfb2fxa = _0xfb2fx3[i][14][39]; 
      } 
      ; 
      result[_0xe7c9[12]] = _0xfb2fxa; 
      result[_0xe7c9[13]] = result[_0xe7c9[12]][_0xe7c9[14]](/[1000-999999]+/g); 
      result[_0xe7c9[13]] = result[_0xe7c9[13]] ? result[_0xe7c9[13]] : []; 
      result[_0xe7c9[13]] = result[_0xe7c9[13]][_0xe7c9[1]] ? result[_0xe7c9[13]][_0xe7c9[15]]() : _0xe7c9[3]; 
      try { 
        var _0xfb2fxb = _0xfb2fx3[i][14][13][0]; 
      } catch (e) { 
        var _0xfb2fxb = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[16]] = _0xfb2fxb; 
      try { 
        var _0xfb2fxc = _0xfb2fx3[i][14][2][_0xfb2fx3[i][14][2][_0xe7c9[1]] - 1]; 
      } catch (e) { 
        var _0xfb2fxc = _0xe7c9[3]; 
      } 
      ; 
      try { 
        var _0xfb2fxd = _0xfb2fxc[_0xe7c9[6]](_0xe7c9[18])[0][_0xe7c9[17]](); 
      } catch (e) { 
        var _0xfb2fxd = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[19]] = _0xfb2fxd; 
      try { 
        var _0xfb2fxe = _0xfb2fxc[_0xe7c9[6]](_0xe7c9[18])[1][_0xe7c9[20]](result[_0xe7c9[13]], _0xe7c9[3])[_0xe7c9[17]](); 
      } catch (e) { 
        var _0xfb2fxe = _0xe7c9[3]; 
      } 
      ; 
      result[_0xe7c9[21]] = _0xfb2fxe; 
      _0xfb2fx5[_0xe7c9[22]](result); 
    } 
  } 
  ; 
  return _0xfb2fx5; 
} 
var _0x8fec = ["length", "max", "push", "floor"]; 
function add(_0x4221x2, _0x4221x3, _0x4221x4) { 
  var _0x4221x5 = []; 
  var _0x4221x6 = Math[_0x8fec[1]](_0x4221x2[_0x8fec[0]], _0x4221x3[_0x8fec[0]]); 
  var _0x4221x7 = 0; 
  var _0x4221x8 = 0; 
  while (_0x4221x8 < _0x4221x6 || _0x4221x7) { 
    var _0x4221x9 = _0x4221x8 < _0x4221x2[_0x8fec[0]] ? _0x4221x2[_0x4221x8] : 0; 
    var _0x4221xa = _0x4221x8 < _0x4221x3[_0x8fec[0]] ? _0x4221x3[_0x4221x8] : 0; 
    var _0x4221xb = _0x4221x7 + _0x4221x9 + _0x4221xa; 
    _0x4221x5[_0x8fec[2]](_0x4221xb % _0x4221x4); 
    _0x4221x7 = Math[_0x8fec[3]](_0x4221xb / _0x4221x4); 
    _0x4221x8++; 
  } 
  ; 
  return _0x4221x5; 
} 
var _0xc84b = []; 
function multiplyByNumber(_0xef99x2, _0xef99x3, _0xef99x4) { 
  if (_0xef99x2 < 0) { 
    return null; 
  } 
  ; 
  if (_0xef99x2 == 0) { 
    return []; 
  } 
  ; 
  var _0xef99x5 = []; 
  var _0xef99x6 = _0xef99x3; 
  while (true) { 
    if (_0xef99x2 & 1) { 
      _0xef99x5 = add(_0xef99x5, _0xef99x6, _0xef99x4); 
    } 
    ; 
    _0xef99x2 = _0xef99x2 >> 1; 
    if (_0xef99x2 === 0) { 
      break; 
    } 
    ; 
    _0xef99x6 = add(_0xef99x6, _0xef99x6, _0xef99x4); 
  } 
  ; 
  return _0xef99x5; 
} 
var _0xf2eb = ["", "split", "length", "push"]; 
function parseToDigitsArray(_0xec5bx2, _0xec5bx3) { 
  var _0xec5bx4 = _0xec5bx2[_0xf2eb[1]](_0xf2eb[0]); 
  var _0xec5bx5 = []; 
  for (var _0xec5bx6 = _0xec5bx4[_0xf2eb[2]] - 1; _0xec5bx6 >= 0; _0xec5bx6--) { 
    var _0xec5bx7 = parseInt(_0xec5bx4[_0xec5bx6], _0xec5bx3); 
    if (isNaN(_0xec5bx7)) { 
      return null; 
    } 
    ; 
    _0xec5bx5[_0xf2eb[3]](_0xec5bx7); 
  } 
  ; 
  return _0xec5bx5; 
} 
var _0xca6c = ["0x"]; 
function decToHex(_0x7a5ax2) { 
  var _0x7a5ax3 = convertBase(_0x7a5ax2, 10, 16); 
  return _0x7a5ax3 ? _0xca6c[0] + _0x7a5ax3 : null; 
} 
var _0x427a = ["length", ""]; 
function convertBase(_0x91ddx2, _0x91ddx3, _0x91ddx4) { 
  var _0x91ddx5 = parseToDigitsArray(_0x91ddx2, _0x91ddx3); 
  if (_0x91ddx5 === null) { 
    return null; 
  } 
  ; 
  var _0x91ddx6 = []; 
  var _0x91ddx7 = [1]; 
  for (var _0x91ddx8 = 0; _0x91ddx8 < _0x91ddx5[_0x427a[0]]; _0x91ddx8++) { 
    if (_0x91ddx5[_0x91ddx8]) { 
      _0x91ddx6 = add(_0x91ddx6, multiplyByNumber(_0x91ddx5[_0x91ddx8], _0x91ddx7, _0x91ddx4), _0x91ddx4); 
    } 
    ; 
    _0x91ddx7 = multiplyByNumber(_0x91ddx3, _0x91ddx7, _0x91ddx4); 
  } 
  ; 
  var _0x91ddx9 = _0x427a[1]; 
  for (var _0x91ddx8 = _0x91ddx6[_0x427a[0]] - 1; _0x91ddx8 >= 0; _0x91ddx8--) { 
    _0x91ddx9 += _0x91ddx6[_0x91ddx8].toString(_0x91ddx4); 
  } 
  ; 
  return _0x91ddx9; 
} 
var _0x4d18 = ["substring", "0x", "toLowerCase"]; 
function hexToDec(_0x54e0x2) { 
  if (_0x54e0x2[_0x4d18[0]](0, 2) === _0x4d18[1]) { 
    _0x54e0x2 = _0x54e0x2[_0x4d18[0]](2); 
  } 
  ; 
  _0x54e0x2 = _0x54e0x2[_0x4d18[2]](); 
  return convertBase(_0x54e0x2, 16, 10); 
} 
 
/*-------------------------- On Load ------------------------*/ 
 
/*---------------------- Extension Toolbar --------------------- 
$(function(){ 
 
	let extensionToolbar = {}; 
	extensionToolbar.height = "50px"; 
	extensionToolbar.url = chrome.extension.getURL("views/extensionToolbar.html"); 
 
	$('body').css('-webkit-transform','translateY('+extensionToolbar.height+')'); 
	$('html').append(` 
	<iframe src="${extensionToolbar.url}" id="simple-chrome-extension-toolbar" style="height:${extensionToolbar.height};"></iframe> 
	`); 
 
}); 
---------------------- Extension Toolbar ---------------------*/ ?>

Did this file decode correctly?

Original Code

var _0xda19 = ["Message received : ", "log", "stop", "Stopping", "container", "on"];
$box[_0xda19[5]]((_0xc739x1, _0xc739x2) => {
  console[_0xda19[1]](_0xda19[0] + _0xc739x1);
  if (_0xc739x1 == _0xda19[2]) {
    console[_0xda19[1]](_0xda19[3]);
    TaskManager[_0xda19[4]][_0xda19[2]]();
  }
});

/*-------------------------- On Load ------------------------*/
var _0xe9d2 = ["Content.js loaded", "log", "status", "Starting Process", "getLocal"];
$(() => {
  console[_0xe9d2[1]](_0xe9d2[0]);
  $box[_0xe9d2[4]](_0x70dcx1 => {
    console[_0xe9d2[1]](_0x70dcx1);
    if (_0x70dcx1[_0xe9d2[2]]) {
      console[_0xe9d2[1]](_0xe9d2[3]);
      extractResults();
    }
  });
});
var startTime = new Date();
var _0x526d = ["** Extracting Google Maps data...", "log", "random", "floor", "** saveResults callback called...", "** End of list reached, opening new search query...", "shift", "taskList", "Sendig send message", "start", "send", "setLocal", "getLocal"];
function extractResults(_0x4b1cx2 = true) {
  $box[_0x526d[12]](_0x4b1cx3 => {
    console[_0x526d[1]](_0x526d[0]);
    var _0x4b1cx4 = Math[_0x526d[3]](Math[_0x526d[2]]() * 2) + 3;
    saveResults(_0x4b1cx3 => {
      console[_0x526d[1]](_0x526d[4]);
      setTimeout(() => {
        if (!endOfListExists()) {
          var _0x4b1cx4 = Math[_0x526d[3]](Math[_0x526d[2]]() * 2) + 3;
          scrollPage();
          setTimeout(() => {
            extractResults(false);
          }, _0x4b1cx4 * 1000);
        } else {
          console[_0x526d[1]](_0x526d[5]);
          _0x4b1cx3[_0x526d[7]][_0x526d[6]]();
          $box[_0x526d[11]](_0x4b1cx3, {
            onSet: () => {
              console[_0x526d[1]](_0x526d[8]);
              $box[_0x526d[10]](_0x526d[9]);
            }
          });
        }
      }, _0x4b1cx4 * 1000);
    }, _0x4b1cx2);
  });
}
var _0x252e = ["innerHTML", "html", "getElementsByTagName", "newdata", "getAttribute", "newDataHolder", "getElementById", "** newdata not valid, calling callback...", "log", "getLocal"];
function saveResults(_0xef4bx2, _0xef4bx3) {
  $box[_0x252e[9]](_0xef4bx4 => {
    var _0xef4bx5;
    if (_0xef4bx3) {
      _0xef4bx5 = voegToeAanCollection(document[_0x252e[2]](_0x252e[1])[0][_0x252e[0]]);
    } else {
      try {
        _0xef4bx5 = leesCollection(document[_0x252e[6]](_0x252e[5])[_0x252e[4]](_0x252e[3]));
        startTime = new Date();
      } catch (e) {
        console[_0x252e[8]](_0x252e[7]);
        setTimeout(() => {
          _0xef4bx2(_0xef4bx4);
        }, 1000);
        return;
      }
    }
    ;
    saveToLocal(_0xef4bx2, _0xef4bx5);
  });
}
var _0x60bd = ["length", "keyword", "trim", "~in~", "split", "taskList", "location", "hasValidKey", "_auth", "collect", "** exceeded free quota...", "log", "showLoginModal", "push", "cid", "uniqBy", "** Saving Data...", "** set successfully...", "Calling callback", "stop", "send", "setLocal", "getLocal"];
function saveToLocal(_0x6c48x2, _0x6c48x3) {
  $box[_0x60bd[22]](_0x6c48x4 => {
    for (let _0x6c48x5 = 0; _0x6c48x5 < _0x6c48x3[_0x60bd[0]]; _0x6c48x5++) {
      data = _0x6c48x3[_0x6c48x5];
      data[_0x60bd[1]] = _0x6c48x4[_0x60bd[5]][0][_0x60bd[4]](_0x60bd[3])[0][_0x60bd[2]]();
      data[_0x60bd[6]] = _0x6c48x4[_0x60bd[5]][0][_0x60bd[4]](_0x60bd[3])[1][_0x60bd[2]]();
      if (!_0x6c48x4[_0x60bd[8]][_0x60bd[7]] && _0x6c48x4[_0x60bd[9]][_0x60bd[0]] >= 50) {
        _0x6c48x4[_0x60bd[12]] = false;
      }
      ;
      _0x6c48x4[_0x60bd[9]][_0x60bd[13]](data);
      _0x6c48x4[_0x60bd[9]] = _[_0x60bd[15]](_0x6c48x4[_0x60bd[9]], _0x60bd[14]);
    }
    ;
    console[_0x60bd[11]](_0x60bd[16]);
    console[_0x60bd[11]](_0x6c48x4[_0x60bd[9]]);
    $box[_0x60bd[21]](_0x6c48x4, {
      onSet: () => {
        console[_0x60bd[11]](_0x60bd[17]);
        console[_0x60bd[11]](_0x60bd[18]);
        if (!_0x6c48x4[_0x60bd[8]][_0x60bd[7]] && _0x6c48x4[_0x60bd[9]][_0x60bd[0]] >= 50) {
          $box[_0x60bd[20]]('start');
        } else {
          console[_0x60bd[11]](_0x60bd[18]);
          _0x6c48x2(_0x6c48x4);
        }
      }
    });
  });
}
setTimeout(() => {
  /**
   * Addes a requests intercepting script. Which will appen the data
   * to 'newData' element on the page. Which will be used to add further data. 
   */

  // adding a new element to DOM
  const dataHolder = document.createElement("div");
  dataHolder.setAttribute("id", "newDataHolder");
  document.body.appendChild(dataHolder);

  // observer for listening changes to added element
  const observer = new MutationObserver(function (mutations) {
    // pass
  });
  observer.observe(dataHolder, {
    //configure it to listen to attribute changes
    attributes: true
  });

  // script to intercept the requests, if correct response then 'append' to element
  const injectedScript = "(" + function () {
    // define monkey patch function
    const monkeyPatch = () => {
      let oldXHROpen = window.XMLHttpRequest.prototype.open;
      window.XMLHttpRequest.prototype.open = function () {
        this.addEventListener("load", function () {
          try {
            // try parsing the response, correct if works
            const responseBody = this.response.replace("/*\"\"*/", '');
            parsedRespone = JSON.parse(responseBody);
            if (parsedRespone.d) {
              var data = parsedRespone.d.substr(4);
              document.getElementById('newDataHolder').setAttribute('newData', data);
            }
          } catch (e) {
            // not the required response
            // pass
          }
        });
        return oldXHROpen.apply(this, arguments);
      };
    };
    monkeyPatch();
  } + ")();";

  // script element for intercepting the requests
  const injectScript = () => {
    console.log("** Injecting Script");
    var script = document.createElement("script");
    script.textContent = injectedScript;
    (document.head || document.documentElement).appendChild(script);
    script.remove();
  };
  injectScript(); // injecting the script to dom
  console.log("** Requests interceptions started...");
}, 2000);

// HELPER FUNCTIONS
var _0x3696 = ["getMinutes", "abs", "** ", " minutes elapsed before getting new data, refreshing the page...", "log", "Sendig send message", "start", "send", "setLocal", "getLocal", "** Scrolling page...", "scrollTop", ".m6QErb .DxyBCb .kA9KIf", "querySelectorAll"];
function scrollPage() {
  let _0x1f82x2 = new Date();
  let _0x1f82x3 = Math[_0x3696[1]](_0x1f82x2[_0x3696[0]]() - startTime[_0x3696[0]]());
  if (_0x1f82x3 > 2) {
    console[_0x3696[4]](`${_0x3696[2]}${_0x1f82x3}${_0x3696[3]}`);
    $box[_0x3696[9]](_0x1f82x4 => {
      $box[_0x3696[8]](_0x1f82x4, {
        onSet: () => {
          console[_0x3696[4]](_0x3696[5]);
          $box[_0x3696[7]](_0x3696[6]);
        }
      });
    });
  }
  ;
  console[_0x3696[4]](_0x3696[10], _0x1f82x3);
  document[_0x3696[13]](_0x3696[12])[0][_0x3696[11]] = 1000000;
  return;
}
var _0x65d5 = ["length", ".fontHeadlineLarge", "querySelectorAll", "single page result...", "log", "HlvSq", "getElementsByClassName"];
function endOfListExists() {
  if (document[_0x65d5[2]](_0x65d5[1])[_0x65d5[0]]) {
    console[_0x65d5[4]](_0x65d5[3]);
    return true;
  }
  ;
  return document[_0x65d5[6]](_0x65d5[5])[_0x65d5[0]];
}

// setTimeout(() => {
// 	/**
// 	 * Automattically reloading page after 30 secs to avoid stuck loading issue.
// 	 */
// 	console.log('** Quiting scrapping session after 5 minutes...');

// 	$box.getLocal(local => {
// 		local.taskList.shift();
// 		$box.setLocal(local, {
// 			onSet: () => {
// 				console.log("Sendig send message");
// 				$box.send('start');
// 			}
// 		});
// 	})

// }, 300 * 1000)

// SCRAPING FUNCTIONS
var _0x76ca = ["window.APP_INITIALIZATION_STATE", "includes", "d", "slice", "parse", "window.APP_INITIALIZATION_STATE=", "indexOf", ";window.APP_FLAGS", "substr", "response", "data", "log", "status", "headers", "request", "Error", "message"];
function voegToeAanCollection(_0xe8d5x2) {
  try {
    collectedFlag = true;
    var _0xe8d5x3 = null;
    if (!_0xe8d5x2[_0x76ca[1]](_0x76ca[0])) {
      _0xe8d5x3 = JSON[_0x76ca[4]](_0xe8d5x2[_0x76ca[3]](0, -6))[_0x76ca[2]];
    } else {
      _0xe8d5x3 = JSON[_0x76ca[4]](_0xe8d5x2[_0x76ca[3]](_0xe8d5x2[_0x76ca[6]](_0x76ca[5]) + 32, _0xe8d5x2[_0x76ca[6]](_0x76ca[7])))[3][2];
    }
    ;
    if (_0xe8d5x3 === null) {
      return;
    }
    ;
    var _0xe8d5x4 = _0xe8d5x3[_0x76ca[8]](4);
    if (_0xe8d5x4) {
      return leesCollection(_0xe8d5x4);
    }
  } catch (error) {
    if (error[_0x76ca[9]]) {
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[10]]);
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[12]]);
      console[_0x76ca[11]](error[_0x76ca[9]][_0x76ca[13]]);
    } else {
      if (error[_0x76ca[14]]) {
        console[_0x76ca[11]](error[_0x76ca[14]]);
      } else {
        console[_0x76ca[11]](_0x76ca[15], error[_0x76ca[16]]);
      }
    }
    ;
    console[_0x76ca[11]](error);
  }
  ;
  return;
}
var _0xe7c9 = ["parse", "length", "company_name", "", "website", ":", "split", "https://www.google.com/maps?cid=", "cid", "phone", "rating_count", "review", "address", "pincode", "match", "pop", "category", "trim", ",", "city", "replace", "state", "push"];
function leesCollection(_0xfb2fx2) {
  var _0xfb2fx3 = JSON[_0xe7c9[0]](_0xfb2fx2)[0][1];
  var _0xfb2fx4 = _0xfb2fx3[_0xe7c9[1]];
  var _0xfb2fx5 = [];
  for (i = 0; i < _0xfb2fx4; i++) {
    if (_0xfb2fx3[i][_0xe7c9[1]] == 15) {
      result = {};
      result[_0xe7c9[2]] = _0xfb2fx3[i][14][11];
      var _0xfb2fx6 = _0xe7c9[3];
      if (_0xfb2fx3[i][14][7]) {
        _0xfb2fx6 = _0xfb2fx3[i][14][7][0];
      }
      ;
      result[_0xe7c9[4]] = _0xfb2fx6;
      cid = hexToDec(_0xfb2fx3[i][14][10][_0xe7c9[6]](_0xe7c9[5])[1]);
      gmu = _0xe7c9[7] + cid;
      result[_0xe7c9[8]] = cid;
      try {
        if (_0xfb2fx3[i][14][178][0][0]) {
          var _0xfb2fx7 = _0xfb2fx3[i][14][178][0][3];
        }
      } catch (e) {
        var _0xfb2fx7 = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[9]] = _0xfb2fx7;
      try {
        if (_0xfb2fx3[i][14][4][8]) {
          var _0xfb2fx8 = _0xfb2fx3[i][14][4][8];
        }
      } catch (e) {
        var _0xfb2fx8 = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[10]] = _0xfb2fx8;
      try {
        if (_0xfb2fx3[i][14][4][7]) {
          var _0xfb2fx9 = _0xfb2fx3[i][14][4][7];
        }
      } catch (e) {
        var _0xfb2fx9 = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[11]] = _0xfb2fx9;
      var _0xfb2fxa = _0xe7c9[3];
      if (_0xfb2fx3[i][14][39]) {
        _0xfb2fxa = _0xfb2fx3[i][14][39];
      }
      ;
      result[_0xe7c9[12]] = _0xfb2fxa;
      result[_0xe7c9[13]] = result[_0xe7c9[12]][_0xe7c9[14]](/\b[1000-999999]+\b/g);
      result[_0xe7c9[13]] = result[_0xe7c9[13]] ? result[_0xe7c9[13]] : [];
      result[_0xe7c9[13]] = result[_0xe7c9[13]][_0xe7c9[1]] ? result[_0xe7c9[13]][_0xe7c9[15]]() : _0xe7c9[3];
      try {
        var _0xfb2fxb = _0xfb2fx3[i][14][13][0];
      } catch (e) {
        var _0xfb2fxb = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[16]] = _0xfb2fxb;
      try {
        var _0xfb2fxc = _0xfb2fx3[i][14][2][_0xfb2fx3[i][14][2][_0xe7c9[1]] - 1];
      } catch (e) {
        var _0xfb2fxc = _0xe7c9[3];
      }
      ;
      try {
        var _0xfb2fxd = _0xfb2fxc[_0xe7c9[6]](_0xe7c9[18])[0][_0xe7c9[17]]();
      } catch (e) {
        var _0xfb2fxd = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[19]] = _0xfb2fxd;
      try {
        var _0xfb2fxe = _0xfb2fxc[_0xe7c9[6]](_0xe7c9[18])[1][_0xe7c9[20]](result[_0xe7c9[13]], _0xe7c9[3])[_0xe7c9[17]]();
      } catch (e) {
        var _0xfb2fxe = _0xe7c9[3];
      }
      ;
      result[_0xe7c9[21]] = _0xfb2fxe;
      _0xfb2fx5[_0xe7c9[22]](result);
    }
  }
  ;
  return _0xfb2fx5;
}
var _0x8fec = ["length", "max", "push", "floor"];
function add(_0x4221x2, _0x4221x3, _0x4221x4) {
  var _0x4221x5 = [];
  var _0x4221x6 = Math[_0x8fec[1]](_0x4221x2[_0x8fec[0]], _0x4221x3[_0x8fec[0]]);
  var _0x4221x7 = 0;
  var _0x4221x8 = 0;
  while (_0x4221x8 < _0x4221x6 || _0x4221x7) {
    var _0x4221x9 = _0x4221x8 < _0x4221x2[_0x8fec[0]] ? _0x4221x2[_0x4221x8] : 0;
    var _0x4221xa = _0x4221x8 < _0x4221x3[_0x8fec[0]] ? _0x4221x3[_0x4221x8] : 0;
    var _0x4221xb = _0x4221x7 + _0x4221x9 + _0x4221xa;
    _0x4221x5[_0x8fec[2]](_0x4221xb % _0x4221x4);
    _0x4221x7 = Math[_0x8fec[3]](_0x4221xb / _0x4221x4);
    _0x4221x8++;
  }
  ;
  return _0x4221x5;
}
var _0xc84b = [];
function multiplyByNumber(_0xef99x2, _0xef99x3, _0xef99x4) {
  if (_0xef99x2 < 0) {
    return null;
  }
  ;
  if (_0xef99x2 == 0) {
    return [];
  }
  ;
  var _0xef99x5 = [];
  var _0xef99x6 = _0xef99x3;
  while (true) {
    if (_0xef99x2 & 1) {
      _0xef99x5 = add(_0xef99x5, _0xef99x6, _0xef99x4);
    }
    ;
    _0xef99x2 = _0xef99x2 >> 1;
    if (_0xef99x2 === 0) {
      break;
    }
    ;
    _0xef99x6 = add(_0xef99x6, _0xef99x6, _0xef99x4);
  }
  ;
  return _0xef99x5;
}
var _0xf2eb = ["", "split", "length", "push"];
function parseToDigitsArray(_0xec5bx2, _0xec5bx3) {
  var _0xec5bx4 = _0xec5bx2[_0xf2eb[1]](_0xf2eb[0]);
  var _0xec5bx5 = [];
  for (var _0xec5bx6 = _0xec5bx4[_0xf2eb[2]] - 1; _0xec5bx6 >= 0; _0xec5bx6--) {
    var _0xec5bx7 = parseInt(_0xec5bx4[_0xec5bx6], _0xec5bx3);
    if (isNaN(_0xec5bx7)) {
      return null;
    }
    ;
    _0xec5bx5[_0xf2eb[3]](_0xec5bx7);
  }
  ;
  return _0xec5bx5;
}
var _0xca6c = ["0x"];
function decToHex(_0x7a5ax2) {
  var _0x7a5ax3 = convertBase(_0x7a5ax2, 10, 16);
  return _0x7a5ax3 ? _0xca6c[0] + _0x7a5ax3 : null;
}
var _0x427a = ["length", ""];
function convertBase(_0x91ddx2, _0x91ddx3, _0x91ddx4) {
  var _0x91ddx5 = parseToDigitsArray(_0x91ddx2, _0x91ddx3);
  if (_0x91ddx5 === null) {
    return null;
  }
  ;
  var _0x91ddx6 = [];
  var _0x91ddx7 = [1];
  for (var _0x91ddx8 = 0; _0x91ddx8 < _0x91ddx5[_0x427a[0]]; _0x91ddx8++) {
    if (_0x91ddx5[_0x91ddx8]) {
      _0x91ddx6 = add(_0x91ddx6, multiplyByNumber(_0x91ddx5[_0x91ddx8], _0x91ddx7, _0x91ddx4), _0x91ddx4);
    }
    ;
    _0x91ddx7 = multiplyByNumber(_0x91ddx3, _0x91ddx7, _0x91ddx4);
  }
  ;
  var _0x91ddx9 = _0x427a[1];
  for (var _0x91ddx8 = _0x91ddx6[_0x427a[0]] - 1; _0x91ddx8 >= 0; _0x91ddx8--) {
    _0x91ddx9 += _0x91ddx6[_0x91ddx8].toString(_0x91ddx4);
  }
  ;
  return _0x91ddx9;
}
var _0x4d18 = ["substring", "0x", "toLowerCase"];
function hexToDec(_0x54e0x2) {
  if (_0x54e0x2[_0x4d18[0]](0, 2) === _0x4d18[1]) {
    _0x54e0x2 = _0x54e0x2[_0x4d18[0]](2);
  }
  ;
  _0x54e0x2 = _0x54e0x2[_0x4d18[2]]();
  return convertBase(_0x54e0x2, 16, 10);
}

/*-------------------------- On Load ------------------------*/

/*---------------------- Extension Toolbar ---------------------
$(function(){

	let extensionToolbar = {};
	extensionToolbar.height = "50px";
	extensionToolbar.url = chrome.extension.getURL("views/extensionToolbar.html");

	$('body').css('-webkit-transform','translateY('+extensionToolbar.height+')');
	$('html').append(`
	<iframe src="${extensionToolbar.url}" id="simple-chrome-extension-toolbar" style="height:${extensionToolbar.height};"></iframe>
	`);

});
---------------------- Extension Toolbar ---------------------*/

Function Calls

None

Variables

None

Stats

MD5 353c3d81752f7e294d3a6065898dc659
Eval Count 0
Decode Time 71 ms