Advertisement
HwapX

Backup Codigo Fonte - Md5 Cracker

Nov 1st, 2015
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 71.41 KB | None | 0 0
  1. <!-- http://www.forum-invaders.com.br/vb/showthread.php/40343-Codigo-Fonte-Md5-Cracker -->
  2.  
  3. Fiz este programa seguindo a ideia do que foi postado neste <a href="http://www.forum-invaders.com.br/vb/showthread.php/40300-Md5-Cracker-1.0-(PERL)?p=287470&amp;viewfull=1#post287470" target="_blank"><b>topico</b></a>.<br>
  4. <br>
  5. <div style="text-align: center;"><img src="http://dl.dropbox.com/u/1227623/Imagens/Outros/Invaders/Md5%20Cracker.jpg" alt="" border="0"></div><br>
  6. <hr><br>
  7. Bom esse programa recebe um hash de entrada e faz a busca em uma lista de sites contidos em um xml com o seguinte formato.<br>
  8. <br>
  9. <ul><li style=""><b>&lt;Website&gt;</b> = url completa do site em que a checagem deve ser feita.<br>
  10. <ul><li style="">Atributo <b>Method</b> = Metodo utilizado para enviar os dados Get ou Post.</li><li style="">Atributo <b>Field</b>= Campo onde o hash deve ser inserido.</li><li style="">Atributo <b>RegEx</b> = Expressão Regular usada para pegar o retorno da requisição(Deve conter uma Named Capture com o nome Result (?'Result'.*) por exemplo).</li></ul></li></ul><br>
  11. <br>
  12. <div class="bbcode_container">
  13.     <div class="bbcode_description">Código PHP:</div>
  14.     <div class="bbcode_code" style="height:168px;"><code><code><span style="color: #000000">
  15. <span style="color: #0000BB"></span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Websites</span><span style="color: #007700">&gt;
  16. <br>&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Post"&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"term"&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"md5\(\x22(?'Result'.*)\x22\)"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//md5crack.com/crackmd5.php&lt;/Website&gt;
  17. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Post"&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"search_field"&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"\x3cb\x3e(?'Result'.*)\x3c/b\x3e&nbsp;used&nbsp;charlist"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//www.hashchecker.com/index.php?_sls=search_hash&lt;/Website&gt;
  18. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">""&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"\x3c/td\x3e\x3ctd&nbsp;class=\x22border\x22\x3e(?!Sorry.+database\.)(?'Result'.*)\x3c/td\x3e\x3c/tr\x3e\x3c/table\x3e"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//www.netmd5crack.com/cgi-bin/Crack.py?InputHash&lt;/Website&gt;
  19. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"x"&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"(?'Result'.*)"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//www.decrypt-md5.com/decrypt_api.php?&lt;/Website&gt;
  20. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"h"&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"plaintext=\x22(?'Result'.*)\x22&nbsp;type="</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//cracker.fox21.at/api.php?a=check&amp;amp;&lt;/Website&gt;
  21. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Post"&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"text"&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"md5&nbsp;hash&nbsp;.*&nbsp;=&nbsp;(?!Sorry.*found\.)(?'Result'.*)&nbsp;\x3c/p"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//isc.sans.edu/tools/reversehash.html&lt;/Website&gt;
  22. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"s"&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"textarea_md5_decrypter\x22\x3e(?'Result'.*)\x3c"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//www.stringfunction.com/md5-decrypter.html?&lt;/Website&gt;
  23. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"hash"&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"string\x3e\x3c!\[CDATA\[(?'Result'.*).*\]\]"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//md5.noisette.ch/md5.php?&lt;/Website&gt;
  24. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Get"&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"md5"&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"Cleartext&nbsp;of&nbsp;.*&nbsp;is&nbsp;(?'Result'.*)"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//md5.hashcracking.com/search.php?&lt;/Website&gt;
  25. <br>&nbsp;&nbsp;</span><span style="color: #007700">&lt;</span><span style="color: #0000BB">Website&nbsp;Method</span><span style="color: #007700">=</span><span style="color: #DD0000">"Post"&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">=</span><span style="color: #DD0000">"hash"&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">=</span><span style="color: #DD0000">"hash\x22&nbsp;size=\x2232\x22&nbsp;value=\x22(?!Entry.*found.)(?'Result'.*)\x22/\x3e"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">http</span><span style="color: #007700">:</span><span style="color: #FF8000">//www.md5.net/cracker.php&lt;/Website&gt;
  26. <br></span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">Websites</span><span style="color: #007700">&gt;&nbsp;
  27. <br></span><span style="color: #0000BB"></span>
  28. </span>
  29. </code></code></div>
  30. </div><hr><br>
  31. O programa pode utilizado com os seguintes argumentos.<br>
  32. <br>
  33. <b>-?</b> Mostra a ajuda.<br>
  34. <b>-d #</b> decrypt hash.<br>
  35. <b>-e #</b> encrypt string.<br>
  36. <b>-b</b> soar um beep quando uma requisição terminar.<br>
  37. <b>-m #</b> numero maximo de threads simultaneas (Padrão 5).<br>
  38. <b>-t #</b> tempo maximo para aguardar uma requisição em segundos(Padrão 10).<br>
  39. <b>-x#</b> caminho do xml(Padrão Websites.xml).<br>
  40. <b>-a</b> mostrar todos os resultados(Por padrão só são mostrados os que ocorrem com sucesso).<br>
  41. <b>-s</b> mostra os erros caso ocorram invez da mensagem de não encontrado(Implica em -a).<br>
  42. <b>-o</b> mostra toda a saida da Regex.<br>
  43. <b>-r</b> mostra todo o codigo de resposta.<br>
  44. <br>
  45. <hr><br>
  46. <div style="text-align: center;"><a href="http://dl.dropbox.com/u/1227623/Downloads/Invaders/Md5%20cracker.zip" target="_blank" rel="nofollow"><img src="http://dl.dropbox.com/u/1227623/Imagens/download-icone.jpg" alt="" border="0"></a><br>
  47. <a href="http://dl.dropbox.com/u/1227623/Downloads/Invaders/Md5%20cracker.zip" target="_blank" rel="nofollow"><b>Download</b></a></div><br>
  48. <hr><br>
  49. Utilizei o <b>Delphi 7</b> com <b>PCRE</b> do <b>Jedi Vcl</b>.<br>
  50. <br>
  51. <div class="bbcode_container">
  52.     <div class="bbcode_description">Código PHP:</div>
  53.     <div class="bbcode_code" style="height:372px;"><code><code><span style="color: #000000">
  54. <span style="color: #0000BB">program&nbsp;Md5_Cracker</span><span style="color: #007700">;
  55. <br>
  56. <br>{</span><span style="color: #0000BB">$APPTYPE&nbsp;CONSOLE</span><span style="color: #007700">}
  57. <br>
  58. <br></span><span style="color: #0000BB">uses
  59. <br>&nbsp;&nbsp;SysUtils</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">StrUtils</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">Classes</span><span style="color: #007700">,
  60. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">IdHTTP</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">IdException</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">IdHashMessageDigest</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">IdHash</span><span style="color: #007700">,
  61. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">XMLDoc</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">XMLIntf</span><span style="color: #007700">,
  62. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">ComObj</span><span style="color: #007700">,
  63. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">JclPCRE</span><span style="color: #007700">;
  64. <br>
  65. <br></span><span style="color: #0000BB">type
  66. <br>&nbsp;&nbsp;TMethods&nbsp;</span><span style="color: #007700">=&nbsp;(</span><span style="color: #0000BB">mGet</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">mPost</span><span style="color: #007700">);
  67. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">TOptions&nbsp;</span><span style="color: #007700">=&nbsp;(</span><span style="color: #0000BB">oRegEx</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">oShowAll</span><span style="color: #007700">,
  68. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">oShowError</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">oShowHtml</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">oBeep</span><span style="color: #007700">,
  69. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">oDecrypt</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">oEncrypt</span><span style="color: #007700">);
  70. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  71. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">TOptionSet&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">set&nbsp;of&nbsp;TOptions</span><span style="color: #007700">;
  72. <br>
  73. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">TMd5Website&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">record
  74. <br>&nbsp;&nbsp;&nbsp;&nbsp;Url</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  75. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  76. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  77. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Method</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TMethods</span><span style="color: #007700">;
  78. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  79. <br>
  80. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">TMd5WebsiteArray&nbsp;</span><span style="color: #007700">=&nbsp;array&nbsp;</span><span style="color: #0000BB">of&nbsp;TMd5Website</span><span style="color: #007700">;
  81. <br>
  82. <br>var
  83. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Timeout</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">10</span><span style="color: #007700">;
  84. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">MaxThread</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">5</span><span style="color: #007700">;
  85. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">XmlPath</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Websites.xml'</span><span style="color: #007700">;
  86. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Options</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TOptionSet</span><span style="color: #007700">;
  87. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Hash</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  88. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">ToHash</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  89. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Current</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte</span><span style="color: #007700">;
  90. <br>
  91. <br>function&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">Str</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">Size</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">80</span><span style="color: #007700">):&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  92. <br></span><span style="color: #0000BB">begin
  93. <br>&nbsp;&nbsp;Writeln</span><span style="color: #007700">(</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'&nbsp;'</span><span style="color: #007700">,&nbsp;((</span><span style="color: #0000BB">Size&nbsp;</span><span style="color: #007700">-&nbsp;</span><span style="color: #0000BB">Length</span><span style="color: #007700">(</span><span style="color: #0000BB">Str</span><span style="color: #007700">))&nbsp;</span><span style="color: #0000BB">div&nbsp;2</span><span style="color: #007700">))&nbsp;+&nbsp;</span><span style="color: #0000BB">Str</span><span style="color: #007700">);
  94. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">;
  95. <br>
  96. <br>function&nbsp;</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #0000BB">Str</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;&nbsp;</span><span style="color: #0000BB">Size</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Smallint</span><span style="color: #007700">):&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  97. <br></span><span style="color: #0000BB">begin
  98. <br>&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Str&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'&nbsp;'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">Size&nbsp;</span><span style="color: #007700">-&nbsp;</span><span style="color: #0000BB">Length</span><span style="color: #007700">(</span><span style="color: #0000BB">Str</span><span style="color: #007700">));
  99. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">;
  100. <br>
  101. <br></span><span style="color: #0000BB">procedure&nbsp;LoadXml</span><span style="color: #007700">(var&nbsp;</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TMd5WebsiteArray</span><span style="color: #007700">);
  102. <br>var
  103. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Xml</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">IXMLDocument</span><span style="color: #007700">;
  104. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Node</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">IXMLNode</span><span style="color: #007700">;
  105. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte</span><span style="color: #007700">;
  106. <br></span><span style="color: #0000BB">begin
  107. <br>&nbsp;&nbsp;CoInitializeEx</span><span style="color: #007700">(</span><span style="color: #0000BB">nil</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">);
  108. <br>
  109. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Xml</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">LoadXMLDocument</span><span style="color: #007700">(</span><span style="color: #0000BB">XmlPath</span><span style="color: #007700">);
  110. <br>
  111. <br>&nbsp;&nbsp;if(</span><span style="color: #0000BB">Xml</span><span style="color: #007700">.</span><span style="color: #0000BB">DocumentElement</span><span style="color: #007700">.</span><span style="color: #0000BB">NodeName&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Websites'</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  112. <br>&nbsp;&nbsp;begin
  113. <br>&nbsp;&nbsp;&nbsp;&nbsp;SetLength</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">Xml</span><span style="color: #007700">.</span><span style="color: #0000BB">DocumentElement</span><span style="color: #007700">.</span><span style="color: #0000BB">ChildNodes</span><span style="color: #007700">.</span><span style="color: #0000BB">Count</span><span style="color: #007700">);
  114. <br>
  115. <br>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">0&nbsp;to&nbsp;Xml</span><span style="color: #007700">.</span><span style="color: #0000BB">DocumentElement</span><span style="color: #007700">.</span><span style="color: #0000BB">ChildNodes</span><span style="color: #007700">.</span><span style="color: #0000BB">Count&nbsp;</span><span style="color: #007700">-</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">do
  116. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  117. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Node</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Xml</span><span style="color: #007700">.</span><span style="color: #0000BB">DocumentElement</span><span style="color: #007700">.</span><span style="color: #0000BB">ChildNodes</span><span style="color: #007700">[</span><span style="color: #0000BB">I</span><span style="color: #007700">];
  118. <br>
  119. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">with&nbsp;Md5WebList</span><span style="color: #007700">[</span><span style="color: #0000BB">I</span><span style="color: #007700">]&nbsp;do
  120. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  121. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Url</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">AnsiReplaceText</span><span style="color: #007700">(</span><span style="color: #0000BB">Node</span><span style="color: #007700">.</span><span style="color: #0000BB">Text</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'Http://'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">);
  122. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Field</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Node</span><span style="color: #007700">.</span><span style="color: #0000BB">Attributes</span><span style="color: #007700">[</span><span style="color: #DD0000">'Field'</span><span style="color: #007700">];
  123. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Node</span><span style="color: #007700">.</span><span style="color: #0000BB">Attributes</span><span style="color: #007700">[</span><span style="color: #DD0000">'RegEx'</span><span style="color: #007700">];
  124. <br>
  125. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Node</span><span style="color: #007700">.</span><span style="color: #0000BB">Attributes</span><span style="color: #007700">[</span><span style="color: #DD0000">'Method'</span><span style="color: #007700">],&nbsp;</span><span style="color: #DD0000">'Get'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  126. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  127. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">mGet</span><span style="color: #007700">;
  128. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  129. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else
  130. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  131. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Method</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">mPost</span><span style="color: #007700">;
  132. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  133. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  134. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  135. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  136. <br>
  137. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Xml</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">nil</span><span style="color: #007700">;
  138. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">;
  139. <br>
  140. <br>function&nbsp;</span><span style="color: #0000BB">CheckOnWebSite</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5Website</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Pointer</span><span style="color: #007700">):&nbsp;</span><span style="color: #0000BB">Integer</span><span style="color: #007700">;
  141. <br>var
  142. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Http</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TIdHTTP</span><span style="color: #007700">;
  143. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Response</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  144. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TJclRegEx</span><span style="color: #007700">;
  145. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Args</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TStringList</span><span style="color: #007700">;
  146. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">HashResult</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  147. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">UrlSplit</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TStringList</span><span style="color: #007700">;
  148. <br></span><span style="color: #0000BB">begin
  149. <br>
  150. <br>&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">;
  151. <br>
  152. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Http</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">TIdHTTP</span><span style="color: #007700">.</span><span style="color: #0000BB">Create</span><span style="color: #007700">(</span><span style="color: #0000BB">nil</span><span style="color: #007700">);
  153. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">TJclRegEx</span><span style="color: #007700">.</span><span style="color: #0000BB">Create</span><span style="color: #007700">;
  154. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">UrlSplit</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">TStringList</span><span style="color: #007700">.</span><span style="color: #0000BB">Create</span><span style="color: #007700">;
  155. <br>
  156. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Http</span><span style="color: #007700">.</span><span style="color: #0000BB">ReadTimeout</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Timeout&nbsp;</span><span style="color: #007700">*&nbsp;</span><span style="color: #0000BB">1000</span><span style="color: #007700">;
  157. <br>
  158. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">with&nbsp;TMd5Website</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5Website</span><span style="color: #007700">^)&nbsp;do
  159. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  160. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">try
  161. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">Method&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">mGet</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  162. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  163. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Response</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Http</span><span style="color: #007700">.</span><span style="color: #0000BB">Get</span><span style="color: #007700">(</span><span style="color: #DD0000">'Http://'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">Url&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">Field&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #DD0000">'='&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">Hash</span><span style="color: #007700">);
  164. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  165. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else
  166. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  167. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Args</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">TStringList</span><span style="color: #007700">.</span><span style="color: #0000BB">Create</span><span style="color: #007700">;
  168. <br>
  169. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Args</span><span style="color: #007700">.</span><span style="color: #0000BB">Add</span><span style="color: #007700">(</span><span style="color: #0000BB">Field&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #DD0000">'='&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">Hash</span><span style="color: #007700">);
  170. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Response</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Http</span><span style="color: #007700">.</span><span style="color: #0000BB">Post</span><span style="color: #007700">(</span><span style="color: #DD0000">'Http://'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">Url</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">Args</span><span style="color: #007700">);
  171. <br>
  172. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Args</span><span style="color: #007700">.</span><span style="color: #0000BB">Free</span><span style="color: #007700">;
  173. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  174. <br>
  175. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">.</span><span style="color: #0000BB">Options</span><span style="color: #007700">:=&nbsp;[</span><span style="color: #0000BB">roIgnoreCase</span><span style="color: #007700">];
  176. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">.</span><span style="color: #0000BB">Compile</span><span style="color: #007700">(</span><span style="color: #0000BB">RegEx</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">false</span><span style="color: #007700">);
  177. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">.</span><span style="color: #0000BB">Match</span><span style="color: #007700">(</span><span style="color: #0000BB">Response</span><span style="color: #007700">);
  178. <br>
  179. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">Reg</span><span style="color: #007700">.</span><span style="color: #0000BB">CaptureNameCount&nbsp;</span><span style="color: #007700">&gt;&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  180. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  181. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashResult</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Reg</span><span style="color: #007700">.</span><span style="color: #0000BB">NamedCaptures</span><span style="color: #007700">[</span><span style="color: #DD0000">'Result'</span><span style="color: #007700">];
  182. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  183. <br>
  184. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">except
  185. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;on&nbsp;E</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">EIdConnectTimeOut&nbsp;</span><span style="color: #007700">do
  186. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  187. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashResult</span><span style="color: #007700">:=&nbsp;</span><span style="color: #DD0000">'Time&nbsp;out'</span><span style="color: #007700">;
  188. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  189. <br>
  190. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">on&nbsp;E</span><span style="color: #007700">:</span><span style="color: #0000BB">EPCREError&nbsp;</span><span style="color: #007700">do
  191. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  192. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">if(</span><span style="color: #0000BB">E</span><span style="color: #007700">.</span><span style="color: #0000BB">ErrorCode&nbsp;</span><span style="color: #007700">=&nbsp;-</span><span style="color: #0000BB">1</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  193. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  194. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashResult</span><span style="color: #007700">:=&nbsp;</span><span style="color: #DD0000">'Not&nbsp;Found'</span><span style="color: #007700">;
  195. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  196. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  197. <br>
  198. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">on&nbsp;E</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Exception&nbsp;</span><span style="color: #007700">do
  199. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  200. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashResult</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Trim</span><span style="color: #007700">(</span><span style="color: #0000BB">E</span><span style="color: #007700">.</span><span style="color: #0000BB">Message</span><span style="color: #007700">);
  201. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  202. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  203. <br>
  204. <br>&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">HashResult&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">''</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  205. <br>&nbsp;&nbsp;&nbsp;&nbsp;begin
  206. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HashResult</span><span style="color: #007700">:=&nbsp;</span><span style="color: #DD0000">'Not&nbsp;Found'</span><span style="color: #007700">;
  207. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  208. <br>
  209. <br>&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">not</span><span style="color: #007700">((</span><span style="color: #0000BB">HashResult&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #DD0000">'Not&nbsp;Found'</span><span style="color: #007700">)&nbsp;and&nbsp;</span><span style="color: #0000BB">not</span><span style="color: #007700">(</span><span style="color: #0000BB">oShowAll&nbsp;in&nbsp;Options</span><span style="color: #007700">)))</span><span style="color: #0000BB">then
  210. <br>&nbsp;&nbsp;&nbsp;&nbsp;begin
  211. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ExtractStrings</span><span style="color: #007700">(&nbsp;[</span><span style="color: #DD0000">'/'</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'\'],&nbsp;[],&nbsp;PChar(Url),&nbsp;UrlSplit);
  212. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #DD0000">'&nbsp;+&nbsp;FillTo(UrlSplit[0],&nbsp;24)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #DD0000">'&nbsp;+&nbsp;FillTo(HashResult,&nbsp;49)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  213. <br>
  214. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(oBeep&nbsp;in&nbsp;Options)then
  215. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  216. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Beep;
  217. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;
  218. <br>
  219. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(oRegEx&nbsp;in&nbsp;Options)then
  220. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  221. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">Ã</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;25)&nbsp;+&nbsp;'</span><span style="color: #0000BB">Á</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;50)&nbsp;+&nbsp;'</span><span style="color: #0000BB">´</span><span style="color: #DD0000">');
  222. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try
  223. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #DD0000">'&nbsp;+&nbsp;FillTo(Reg.Captures[0],&nbsp;75)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  224. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;except
  225. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;on&nbsp;E:&nbsp;Exception&nbsp;do
  226. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  227. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #DD0000">'&nbsp;+&nbsp;FillTo('</span><span style="color: #0000BB">Error&nbsp;</span><span style="color: #DD0000">'&nbsp;+&nbsp;E.message,&nbsp;75)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  228. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;
  229. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;
  230. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">Ã</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;25)&nbsp;+&nbsp;'</span><span style="color: #0000BB">Â</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;50)&nbsp;+&nbsp;'</span><span style="color: #0000BB">´</span><span style="color: #DD0000">');
  231. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;
  232. <br>
  233. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(oShowHtml&nbsp;in&nbsp;Options)then
  234. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  235. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">Ã</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;25)&nbsp;+&nbsp;'</span><span style="color: #0000BB">Á</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;50)&nbsp;+&nbsp;'</span><span style="color: #0000BB">´</span><span style="color: #DD0000">');
  236. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Writeln(Response);
  237. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">Ã</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;25)&nbsp;+&nbsp;'</span><span style="color: #0000BB">Â</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;50)&nbsp;+&nbsp;'</span><span style="color: #0000BB">´</span><span style="color: #DD0000">');
  238. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;
  239. <br>&nbsp;&nbsp;&nbsp;&nbsp;end;
  240. <br>
  241. <br>&nbsp;&nbsp;&nbsp;&nbsp;Current:=&nbsp;Current&nbsp;+1;
  242. <br>&nbsp;&nbsp;end;
  243. <br>
  244. <br>&nbsp;&nbsp;Http.Free;
  245. <br>&nbsp;&nbsp;Reg.Free;
  246. <br>&nbsp;&nbsp;UrlSplit.Free;
  247. <br>end;
  248. <br>
  249. <br>function&nbsp;GetMd5Hash(Hash:&nbsp;string):&nbsp;string;
  250. <br>var
  251. <br>&nbsp;&nbsp;Md5Digest:&nbsp;TIdHashMessageDigest5;
  252. <br>&nbsp;&nbsp;Hash4x4:&nbsp;T4x4LongWordRecord;
  253. <br>begin
  254. <br>&nbsp;&nbsp;Md5Digest:=&nbsp;TIdHashMessageDigest5.Create;
  255. <br>&nbsp;&nbsp;Hash4x4:=&nbsp;Md5Digest.HashValue(Hash);
  256. <br>&nbsp;&nbsp;Md5Digest.Free;
  257. <br>&nbsp;&nbsp;Result:=&nbsp;Md5Digest.AsHex(Hash4x4);
  258. <br>end;
  259. <br>
  260. <br>procedure&nbsp;ShowHelp;
  261. <br>begin
  262. <br>&nbsp;&nbsp;WriteCenterln('</span><span style="color: #0000BB">Ú</span><span style="color: #DD0000">'&nbsp;+&nbsp;DupeString('</span><span style="color: #0000BB">Ä</span><span style="color: #DD0000">',&nbsp;76)&nbsp;+&nbsp;'</span><span style="color: #0000BB">¿</span><span style="color: #DD0000">');
  263. <br>&nbsp;&nbsp;WriteCenterln(FillTo('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #007700">-?&nbsp;</span><span style="color: #0000BB">display&nbsp;this&nbsp;help</span><span style="color: #DD0000">',&nbsp;77)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  264. <br>&nbsp;&nbsp;WriteCenterln(FillTo('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #007700">-</span><span style="color: #0000BB">d&nbsp;decrypt&nbsp;string</span><span style="color: #DD0000">',&nbsp;77)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  265. <br>&nbsp;&nbsp;WriteCenterln(FillTo('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #007700">-</span><span style="color: #0000BB">e&nbsp;encrypt&nbsp;string</span><span style="color: #DD0000">',&nbsp;77)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  266. <br>&nbsp;&nbsp;WriteCenterln(FillTo('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #007700">-</span><span style="color: #0000BB">b&nbsp;beep</span><span style="color: #DD0000">',&nbsp;77)&nbsp;+&nbsp;'</span><span style="color: #0000BB">³</span><span style="color: #DD0000">');
  267. <br>&nbsp;&nbsp;WriteCenterln(FillTo('</span><span style="color: #0000BB">³&nbsp;</span><span style="color: #007700">-</span><span style="color: #0000BB">m&nbsp;</span><span style="color: #FF8000">#&nbsp;number&nbsp;of&nbsp;threads',&nbsp;77)&nbsp;+&nbsp;'³');
  268. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-t&nbsp;#&nbsp;response&nbsp;timeout'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  269. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-x&nbsp;#&nbsp;xml&nbsp;path'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  270. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-a&nbsp;show&nbsp;all&nbsp;results'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  271. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-s&nbsp;show&nbsp;errors&nbsp;instead&nbsp;"Not&nbsp;Found"&nbsp;message'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  272. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-o&nbsp;show&nbsp;complete&nbsp;Regex&nbsp;output'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  273. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;-r&nbsp;show&nbsp;complete&nbsp;Response&nbsp;output'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">77</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  274. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'À'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">76</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Ù'</span><span style="color: #007700">);
  275. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">;
  276. <br>
  277. <br>function&nbsp;</span><span style="color: #0000BB">ParseArgs</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TOptionSet</span><span style="color: #007700">;
  278. <br>var
  279. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte</span><span style="color: #007700">;
  280. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Param</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">string</span><span style="color: #007700">;
  281. <br></span><span style="color: #0000BB">begin
  282. <br>&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;[];
  283. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;
  284. <br>
  285. <br>&nbsp;&nbsp;while(</span><span style="color: #0000BB">not</span><span style="color: #007700">(</span><span style="color: #0000BB">I&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">ParamCount</span><span style="color: #007700">))&nbsp;do
  286. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  287. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">try
  288. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Param</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">);
  289. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">I&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">1</span><span style="color: #007700">;
  290. <br>
  291. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-m'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  292. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  293. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MaxThread</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">StrToInt</span><span style="color: #007700">(</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">));
  294. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  295. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-t'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  296. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  297. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Timeout</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">StrToInt</span><span style="color: #007700">(</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">));
  298. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  299. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-x'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  300. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  301. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;XmlPath</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">);
  302. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  303. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-d'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  304. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  305. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oDecrypt</span><span style="color: #007700">];
  306. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Hash</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">);
  307. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  308. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-e'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  309. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  310. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oEncrypt</span><span style="color: #007700">];
  311. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">ToHash</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">);
  312. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  313. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-b'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  314. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  315. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oBeep</span><span style="color: #007700">];
  316. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  317. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-a'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  318. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  319. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oShowAll</span><span style="color: #007700">];
  320. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  321. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-s'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  322. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  323. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oShowError</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">oShowAll</span><span style="color: #007700">];
  324. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  325. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-o'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  326. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  327. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oRegEx</span><span style="color: #007700">];
  328. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  329. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-r'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  330. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  331. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">Result&nbsp;</span><span style="color: #007700">+&nbsp;[</span><span style="color: #0000BB">oShowHtml</span><span style="color: #007700">];
  332. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end
  333. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">else&nbsp;if(</span><span style="color: #0000BB">CompareText</span><span style="color: #007700">(</span><span style="color: #0000BB">Param</span><span style="color: #007700">,&nbsp;</span><span style="color: #DD0000">'-?'</span><span style="color: #007700">)&nbsp;=&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  334. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin
  335. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ShowHelp</span><span style="color: #007700">;
  336. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  337. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">except
  338. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Result</span><span style="color: #007700">:=&nbsp;[];
  339. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Writeln</span><span style="color: #007700">(</span><span style="color: #DD0000">'Argument&nbsp;parse&nbsp;error&nbsp;ignored&nbsp;'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">ParamStr</span><span style="color: #007700">(</span><span style="color: #0000BB">I</span><span style="color: #007700">-</span><span style="color: #0000BB">1</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'.'</span><span style="color: #007700">);
  340. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">Writeln</span><span style="color: #007700">;
  341. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  342. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  343. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">;
  344. <br>
  345. <br>var
  346. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">TMd5WebsiteArray</span><span style="color: #007700">;
  347. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Byte</span><span style="color: #007700">;
  348. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Tid</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Cardinal</span><span style="color: #007700">;
  349. <br></span><span style="color: #0000BB">begin
  350. <br>&nbsp;&nbsp;WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»'</span><span style="color: #007700">);
  351. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Md5&nbsp;Hash&nbsp;Cracker&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;º'</span><span style="color: #007700">);
  352. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;º'</span><span style="color: #007700">);
  353. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;By&nbsp;Hacker_wap&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;º'</span><span style="color: #007700">);
  354. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Http://Forum-Invaders.com.br&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;º'</span><span style="color: #007700">);
  355. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ'</span><span style="color: #007700">);
  356. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Writeln</span><span style="color: #007700">;
  357. <br>&nbsp;&nbsp;
  358. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Options</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">ParseArgs</span><span style="color: #007700">;
  359. <br>
  360. <br>&nbsp;&nbsp;try
  361. <br>&nbsp;&nbsp;if(</span><span style="color: #0000BB">oDecrypt&nbsp;in&nbsp;Options</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  362. <br>&nbsp;&nbsp;begin
  363. <br>&nbsp;&nbsp;&nbsp;&nbsp;LoadXml</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">);
  364. <br>
  365. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ú'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">25</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Â'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">50</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'¿'</span><span style="color: #007700">);
  366. <br>
  367. <br>&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;</span><span style="color: #0000BB">I</span><span style="color: #007700">:=&nbsp;</span><span style="color: #0000BB">0&nbsp;to&nbsp;Length</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">)&nbsp;-</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">do
  368. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  369. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #007700">while((</span><span style="color: #0000BB">I&nbsp;</span><span style="color: #007700">-&nbsp;</span><span style="color: #0000BB">Current</span><span style="color: #007700">)&nbsp;&gt;&nbsp;</span><span style="color: #0000BB">MaxThread</span><span style="color: #007700">)&nbsp;do
  370. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  371. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sleep</span><span style="color: #007700">(</span><span style="color: #0000BB">50</span><span style="color: #007700">);
  372. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  373. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">BeginThread</span><span style="color: #007700">(</span><span style="color: #0000BB">nil</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,&nbsp;@</span><span style="color: #0000BB">CheckOnWebSite</span><span style="color: #007700">,&nbsp;@</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">[</span><span style="color: #0000BB">I</span><span style="color: #007700">],&nbsp;</span><span style="color: #0000BB">0</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">Tid</span><span style="color: #007700">);
  374. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  375. <br>
  376. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">repeat
  377. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sleep</span><span style="color: #007700">(</span><span style="color: #0000BB">100</span><span style="color: #007700">);
  378. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">until</span><span style="color: #007700">(</span><span style="color: #0000BB">Current&nbsp;</span><span style="color: #007700">=&nbsp;</span><span style="color: #0000BB">Length</span><span style="color: #007700">(</span><span style="color: #0000BB">Md5WebList</span><span style="color: #007700">));
  379. <br>
  380. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'À'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">25</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Á'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">50</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Ù'</span><span style="color: #007700">);
  381. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  382. <br>&nbsp;&nbsp;
  383. <br>&nbsp;&nbsp;if(</span><span style="color: #0000BB">oEncrypt&nbsp;in&nbsp;Options</span><span style="color: #007700">)</span><span style="color: #0000BB">then
  384. <br>&nbsp;&nbsp;begin
  385. <br>&nbsp;&nbsp;&nbsp;&nbsp;WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ú'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">42</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Â'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">33</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'¿'</span><span style="color: #007700">);
  386. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">&nbsp;'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #DD0000">'Hash&nbsp;of&nbsp;"'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">ToHash&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #DD0000">'"'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">41</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">&nbsp;'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">FillTo</span><span style="color: #007700">(</span><span style="color: #0000BB">GetMd5Hash</span><span style="color: #007700">(</span><span style="color: #0000BB">ToHash</span><span style="color: #007700">),&nbsp;</span><span style="color: #0000BB">32</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'³'</span><span style="color: #007700">);
  387. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">WriteCenterln</span><span style="color: #007700">(</span><span style="color: #DD0000">'À'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">42</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Á'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">DupeString</span><span style="color: #007700">(</span><span style="color: #DD0000">'Ä'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">33</span><span style="color: #007700">)&nbsp;+&nbsp;</span><span style="color: #DD0000">'Ù'</span><span style="color: #007700">);
  388. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  389. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">except
  390. <br>&nbsp;&nbsp;&nbsp;&nbsp;on&nbsp;E</span><span style="color: #007700">:&nbsp;</span><span style="color: #0000BB">Exception&nbsp;</span><span style="color: #007700">do
  391. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">begin
  392. <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Writeln</span><span style="color: #007700">(</span><span style="color: #DD0000">'Error:&nbsp;'&nbsp;</span><span style="color: #007700">+&nbsp;</span><span style="color: #0000BB">E</span><span style="color: #007700">.</span><span style="color: #0000BB">Message</span><span style="color: #007700">);
  393. <br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  394. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">end</span><span style="color: #007700">;
  395. <br>
  396. <br>&nbsp;&nbsp;</span><span style="color: #0000BB">Readln</span><span style="color: #007700">;
  397. <br></span><span style="color: #0000BB">end</span><span style="color: #007700">.&nbsp;
  398. <br></span><span style="color: #0000BB"></span>
  399. </span>
  400. </code></code></div>
  401. </div>O codigo não ficou bom porque tive alguns problemas porem mesmo assim quiz terminar, talvez seja util á alguem <img src="images/smilies/smile.gif" alt="" title="Sorrindo" class="inlineimg" border="0">.<br>
  402. Estou morrendo de sono então não sei se ficou algum bug.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement