Bypass FileCrypt

Bypass FileCrypt and get the original link! Try this version first. If Bypass FileCrypt shows a "2" in the page and doesn't redirect to the final page, then remove this script and try Bypass FileCrypt (XHR) instead.

Ekde 2021/08/23. Vidu La ĝisdata versio.

  1. // ==UserScript==
  2. // @name Bypass FileCrypt
  3. // @name:it Bypassa FileCrypt
  4. // @namespace StephenP
  5. // @version 1.3.4
  6. // @description Bypass FileCrypt and get the original link! Try this version first. If Bypass FileCrypt shows a "2" in the page and doesn't redirect to the final page, then remove this script and try Bypass FileCrypt (XHR) instead.
  7. // @description:it Bypassa Filecrypt e ottieni il collegamento originale! Prova prima questa versione. Se Bypass Filecrypt mostra un "2" nella pagina e non reindirizza alla destinazione finale, allora rimuovi questo script e prova Bypass Filecrypt (XHR) al suo posto.
  8. // @author StephenP
  9. // @grant GM.xmlHttpRequest
  10. // @match http://filecrypt.cc/*
  11. // @match http://www.filecrypt.cc/*
  12. // @match http://filecrypt.co/*
  13. // @match http://www.filecrypt.co/*
  14. // @match https://filecrypt.cc/*
  15. // @match https://www.filecrypt.cc/*
  16. // @match https://filecrypt.co/*
  17. // @match https://www.filecrypt.co/*
  18. // @run-at document-end
  19. // @connect dcrypt.it
  20. // @connect self
  21. // ==/UserScript==
  22. (function () {
  23. var usenetAd=document.getElementsByTagName('A');//come on, why should anyone pay for access to pirated content?
  24. for(var i=0;i<usenetAd.length;i++){
  25. if(usenetAd[i].href.includes('/pink/')){
  26. usenetAd[i].parentNode.remove();
  27. i=usenetAd.length;
  28. }
  29. }
  30. if(document.location.href.includes("/Link/")){
  31. getSingleLink();
  32. }
  33. else if(document.location.href.includes("/Container/")){
  34. let art=document.getElementsByClassName("download")[0].parentNode.parentNode.parentNode.parentNode;
  35. let load=document.createElement("DIV");
  36. load.id="dcryptLoadMsg";
  37. load.style.marginBottom="2em";
  38. load.innerHTML="Loading decrypted links list from dcrypt.it ...";
  39. art.parentNode.insertBefore(load,art);
  40. getCNL();
  41. }
  42. })();
  43. function getSingleLink(){
  44. if(document.body.getElementsByTagName("SCRIPT").length==0){
  45. window.stop();
  46. if(body.children.length>0){
  47. const a=document.body.innerHTML.lastIndexOf("http");
  48. top.location.href=document.body.innerHTML.substring(a,document.body.innerHTML.indexOf('id=',a)+43).replace('&amp;', '&');
  49. }
  50. else{
  51. GM.xmlHttpRequest({
  52. method: "GET",
  53. url: document.location.href,
  54. onload: function(response) {
  55. const a=response.responseText.lastIndexOf("http");
  56. top.location.href=response.responseText.substring(a,response.responseText.indexOf('id=',a)+43);
  57. }
  58. });
  59. }
  60. }
  61. }
  62. function getCNL(){
  63. var dlcButton=document.getElementsByClassName("dlcdownload");
  64. if(dlcButton.length>0){
  65. var inputs=document.getElementsByTagName('INPUT');
  66. var dlcId;
  67. /*for(var i=0;i<inputs.length;i++){
  68. if(inputs[i].getAttribute('name')=='hidden_cnl_id'){
  69. dlcId=inputs[i].getAttribute('value');
  70. i=inputs.length;
  71. }
  72. }*/ //left for reference
  73. dlcId=document.getElementsByClassName("dlcdownload")[0].attributes["onclick"].nodeValue.split('\'')[1];
  74. console.log('dlcId='+dlcId);
  75. GM.xmlHttpRequest({
  76. method: "GET",
  77. url: "https://"+document.location.hostname+"/DLC/"+dlcId+".dlc",
  78. onload: function(response) {
  79. dcrypt(response.responseText);
  80. },
  81. onerror: function(response) {
  82. }
  83. });
  84. }
  85. }
  86. function dcrypt(content){
  87. GM.xmlHttpRequest({
  88. method: "POST",
  89. url: "http://dcrypt.it/decrypt/paste",
  90. headers: {
  91. "Content-Type": "application/x-www-form-urlencoded"
  92. },
  93. data: "content="+encodeURIComponent(content),
  94. onload: function(response) {
  95. var obj=JSON.parse(response.response);
  96. var finalLinksDiv=document.createElement("DIV");
  97. finalLinksDiv.style.backgroundColor="white";
  98. finalLinksDiv.style.borderRadius="10px";
  99. finalLinksDiv.style.padding="1em";
  100. finalLinksDiv.style.marginTop="1em";
  101. finalLinksDiv.style.color="black";
  102. finalLinksDiv.innerHTML+="Decrypted links:<br><br>";
  103. for (var link of obj.success.links) {
  104. finalLinksDiv.innerHTML+=link+"<br>";
  105. }
  106. document.getElementById("dcryptLoadMsg").replaceWith(finalLinksDiv);
  107. },
  108. onerror: function(response) {
  109. }
  110. });
  111. }