{"id":215225,"date":"2014-03-10T13:48:03","date_gmt":"2014-03-10T09:48:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=215225"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=215225","title":{"rendered":"<span class=\"post_title\">\u0412\u0437\u043b\u043e\u043c\u0430\u0439 \u043c\u0435\u043d\u044f \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e (ZeroNightsCrackme, \u0427\u0430\u0441\u0442\u044c 2)<\/span>"},"content":{"rendered":"<div class=\"content html_format\">   \t\u0418 \u0441\u043d\u043e\u0432\u0430 \u0432\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437 \u044f \u0440\u0430\u0441\u043a\u0440\u044b\u043b \u0440\u0435\u0448\u0435\u043d\u0438\u0435 <b><a href=\"http:\/\/habrahabr.ru\/post\/204432\/\">ZeroNightsCrackMe<\/a><\/b>. \u0412\u0441\u0435 \u043a\u0442\u043e \u0443\u0441\u043f\u0435\u043b \u0435\u0433\u043e \u0432\u043e\u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0438\u0442\u044c, \u043c\u043e\u0433 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 \u044d\u043a\u0441\u043a\u0443\u0440\u0441\u0438\u044e \u0432 \u043e\u0434\u0438\u043d \u0438\u0437 \u043e\u0444\u0438\u0441\u043e\u0432 \u041b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u0438\u0438 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u043e\u0433\u043e, \u0430 \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u0434\u0430\u0440\u043e\u043a, \u0432 \u0432\u0438\u0434\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043d\u0430 \u0442\u0440\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041d\u043e, \u043f\u043e\u043c\u0438\u043c\u043e \u0432\u0441\u0435\u0433\u043e \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u0432 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438, \u0447\u0442\u043e \u043a\u0440\u044f\u043a\u043c\u0438 \u0431\u044b\u043b \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u043d\u044b\u043c, \u0442.\u0435. \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u0430\u044f \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u044f \u0438 \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u043e\u0441\u043b\u0430\u043d\u0430 \u0442\u0435\u043c, \u043a\u0442\u043e \u043f\u043e\u0436\u0435\u043b\u0430\u0435\u0442 \u0435\u0451 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c (\u043d\u043e \u0431\u0435\u0437 \u043f\u043e\u0434\u0430\u0440\u043a\u043e\u0432, \u0432 \u0441\u0432\u043e\u0451 \u0443\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u0438\u0435, \u0442\u0430\u043a \u0441\u043a\u0430\u0437\u0430\u0442\u044c). \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u044f \u043d\u0435 \u043c\u043e\u0433 \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u0435\u0431\u0435 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043f\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c \u044d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b \u0441\u0432\u043e\u0435 \u0436\u0435\u043b\u0430\u043d\u0438\u0435 \u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u0438\u0435.<\/p>\n<p>  17 \u0444\u0435\u0432\u0440\u0430\u043b\u044f \u043f\u0440\u0438\u0448\u043b\u043e \u043f\u0438\u0441\u044c\u043c\u043e \u0441 \u043d\u043e\u0432\u044b\u043c \u043a\u0440\u044f\u043a\u043c\u0438. \u0418\u043c\u0435\u043d\u043d\u043e \u043e \u0435\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0438 (\u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e) \u044f \u0438 \u043f\u043e\u0432\u0435\u0434\u0430\u044e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<a name=\"habracut\"><\/a><\/p>\n<p>  \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u043a\u0440\u044f\u043a\u043c\u0438 \u0442\u0435 \u0436\u0435:  <\/p>\n<ul>\n<li><b>\u0424\u0430\u0439\u043b:<\/b> ZeroNightsCrackMe.exe<\/li>\n<li><b>\u041f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430:<\/b> Windows 7 (64 bit)<\/li>\n<li><b>\u0423\u043f\u0430\u043a\u043e\u0432\u0449\u0438\u043a:<\/b> \u041e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442<\/li>\n<li><b>\u0410\u043d\u0442\u0438\u043e\u0442\u043b\u0430\u0434\u043a\u0430:<\/b> \u041d\u0435 \u043d\u0430\u0442\u044b\u043a\u0430\u043b\u0441\u044f<\/li>\n<li><b>\u0420\u0435\u0448\u0435\u043d\u0438\u0435:<\/b> \u0412\u0430\u043b\u0438\u0434\u043d\u0430\u044f \u043f\u0430\u0440\u0430 Mail \/ Serial<\/li>\n<\/ul>\n<p>  \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b:  <\/p>\n<ul>\n<li>OllyDbg 2.01<\/li>\n<li>\u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u043e\u0433\u043e \u0432\u0435\u0449\u0435\u0441\u0442\u0432\u0430<\/li>\n<\/ul>\n<p>  \u041f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e\u2026<\/p>\n<h4>\u0412\u044b\u0445\u043e\u0434\u0438\u043c \u043d\u0430 \u043e\u0445\u043e\u0442\u0443<\/h4>\n<p>  \u041a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043f\u043e\u0434\u043e\u043f\u044b\u0442\u043d\u043e\u0433\u043e \u0438 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043c \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437. \u0420\u0435\u0430\u043a\u0446\u0438\u044f \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u043c\u0443 \u043a\u0440\u044f\u043a\u043c\u0438.<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/bf8\/384\/2bf\/bf83842bfa1aa9e0a327f299a3798a9b.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 1<\/p>\n<p>  \u0417\u043d\u0430\u044f \u043f\u0440\u0438\u043d\u0446\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043c \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u043c\u043e\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043d\u0430\u0439\u0434\u0435\u043c:  <\/p>\n<ol>\n<li>\u0424\u0443\u043d\u043a\u0446\u0438\u044e \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0449\u0443\u044e\u0441\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u043e\u0439 \u0432\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u044b\u0445.<\/li>\n<li>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<li>\u0422\u0430\u0431\u043b\u0438\u0446\u0443 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<li>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<li>\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0430\u043b\u0433\u043e\u0440\u0442\u0438\u043c\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<li>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435.<\/li>\n<li>\u0422\u0430\u0431\u043b\u0438\u0446\u0443 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f.<\/li>\n<li>\u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432.<\/li>\n<\/ol>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0441\u0440\u0430\u0432\u043d\u0438\u043c \u0432\u0441\u0435 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u043c\u043e\u043c\u0435\u043d\u0442\u044b \u0441 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0438 \u043d\u0430\u0439\u0434\u0435\u043c \u043e\u0442\u043b\u0438\u0447\u0438\u044f.<\/p>\n<h4>\u041f\u043e \u0437\u0432\u0435\u0440\u0438\u043d\u044b\u043c \u0442\u0440\u043e\u043f\u0430\u043c<\/h4>\n<p>  <\/p>\n<h5>\u0424\u0443\u043d\u043a\u0446\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445<\/h5>\n<p>  \u041f\u0435\u0440\u0432\u044b\u043c \u0434\u0435\u043b\u043e\u043c \u043d\u0430\u0439\u0434\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e. \u0416\u043c\u0435\u043c \u043f\u0440\u0430\u0432\u043e\u0439 \u043a\u043d\u043e\u043f\u043a\u043e\u0439 \u043c\u044b\u0448\u0438 \u0432 \u043e\u043a\u043d\u0435 \u0434\u0438\u0437\u0430\u0441\u0441\u0435\u043c\u0431\u043b\u0435\u0440\u0430 \u0438 \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c <b>\u00abSearch for =&gt; All referenced strings\u00bb<\/b>:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/089\/89c\/e15\/08989ce156216e7b002aeb34be3b303a.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 2<\/p>\n<p>  \u0414\u0430\u043b\u0435\u0435 \u0436\u043c\u0435\u043c \u043f\u043e \u0441\u0442\u0440\u043e\u043a\u0435 <b>\u00abGood work, Serial is valid !!!\u00bb<\/b> \u0438 \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u043c \u0441\u044e\u0434\u0430:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/73d\/400\/220\/73d400220b7a238e67703a2e9e062a77.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 3<\/p>\n<p>  \u0412\u044b\u0448\u0435 \u0438 \u0431\u0443\u0434\u0435\u0442 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u044c\u0441\u044f \u0438\u0441\u043a\u043e\u043c\u0430\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044f <b>CALL 0x9b12b0<\/b>. \u0415\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u0440\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430. \u0412 <b>Arg2<\/b>, <b>Arg1<\/b> \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 \u0441\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043a\u043e\u0434 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0430 \u0432 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0435 <b>ECX<\/b> \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430 email.<\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u0417\u0430\u0445\u043e\u0434\u0438\u043c \u0432\u043d\u0443\u0442\u0440\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043a\u0440\u0443\u0442\u0438\u043c \u0432 \u0441\u0430\u043c\u044b\u0439 \u043d\u0438\u0437, \u0442\u0430\u043c \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 (\u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b\u0439 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438):<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/ce5\/5ba\/78d\/ce55ba78dd10e1fdb3f78ec70994fcda.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 4<\/p>\n<h5>\u0410\u0434\u0440\u0435\u0441 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u0421\u0442\u0430\u0432\u0438\u043c \u0431\u0440\u0435\u0439\u043a\u043f\u043e\u0439\u043d\u0442 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043a\u0440\u044f\u043a\u043c\u0438 \u043d\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 (\u0440\u0430\u0437\u0443\u043c\u0435\u0435\u0442\u0441\u044f, \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u0432\u0435\u0434\u044f \u043b\u044e\u0431\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043d\u0430\u0436\u0430\u0432 \u043a\u043d\u043e\u043f\u043a\u0443 <b>Check<\/b>).<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/d9f\/00b\/3c4\/d9f00b3c4c042ead2c7186443b29b6a0.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 5. \u0412\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u0441\u0442\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/59c\/42d\/23c\/59c42d23c0f63b19ad99267f93f21fef.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 6. \u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/p>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043c \u0430\u0434\u0440\u0435\u0441 \u0441\u0430\u043c\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b. \u0421\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u0439\u0434\u044f \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 <b>\u00abCMP DWORD PTR SS:[ECX*4+EBP-28],1\u00bb<\/b> \u0438 \u043f\u043e\u0434\u0441\u043c\u043e\u0442\u0440\u0435\u0432 \u0446\u0435\u043b\u0435\u0432\u043e\u0439 \u0430\u0434\u0440\u0435\u0441.<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/4d6\/a0e\/4e8\/4d6a0e4e853f96c019e4b98ac30f0edc.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 7. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0430\u0434\u0440\u0435\u0441\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/p>\n<p>  \u0412 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <b>0x36f308<\/b> (\u0432\u044b\u0434\u0435\u043b\u0435\u043d\u043e \u043a\u0440\u0430\u0441\u043d\u044b\u043c).<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/891\/7fc\/9b3\/8917fc9b32b595f52f89b590fba01651.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 8. \u0414\u0430\u043c\u043f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u041f\u043e\u0438\u0441\u043a \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043c \u0442\u0435\u043c \u0436\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b \u043f\u0440\u043e\u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e:  <\/p>\n<ul>\n<li>\u041f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u043c \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u043a\u0440\u044f\u043a\u043c\u0438 (\u0436\u043c\u0435\u043c F9 \u0432 \u041e\u043b\u044c\u043a\u0435);<\/li>\n<li>\u0421\u0442\u0430\u0432\u0438\u043c \u0431\u0440\u044f\u043a \u043d\u0430 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e CALL 9b12b0 (\u0440\u0438\u0441. 3);<\/li>\n<li>\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043d\u0430 \u043a\u0440\u044f\u043a\u043c\u0438 \u0438 \u0432\u043e \u0432\u0441\u043f\u043b\u044b\u0432\u0448\u0435\u043c \u043e\u043a\u043d\u0435 (\u0433\u043e\u0432\u043e\u0440\u044f\u0449\u0435\u043c \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0441\u0442\u0438 \u0438\u043b\u0438 \u043d\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0441\u0442\u0438) \u043d\u0430\u0436\u0438\u043c\u0430\u0435\u043c \u00ab\u041e\u043a\u00bb (\u0442\u0435\u043c \u0441\u0430\u043c\u044b\u043c \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0443 \u043a\u0440\u044f\u043a\u043c\u0438);<\/li>\n<li>\u0414\u0430\u043b\u0435\u0435 \u0436\u043c\u0435\u043c \u043a\u043d\u043e\u043f\u043a\u0443 \u00abCheck\u00bb \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0430 \u0441\u0435\u0440\u0438\u0439\u043d\u0438\u043a\u0430, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u0432\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u043d\u0430 \u0432\u044b\u0437\u043e\u0432\u0435 CALL 0x9b12b0;<\/li>\n<li>\u0421\u0442\u043e\u044f \u043d\u0430 \u0432\u044b\u0437\u043e\u0432\u0435 CALL 0x9b12b0, \u043f\u043e\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u0431\u0440\u044f\u043a \u043d\u0430 \u0437\u0430\u043f\u0438\u0441\u044c, \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 0x36f308;<\/li>\n<li>\u0418 \u0441\u043d\u043e\u0432\u0430 \u0436\u043c\u0438\u0442\u0435 F9.<\/li>\n<\/ul>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0441\u0435 \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u043e\u043a\u0430\u0436\u0435\u0442\u0435\u0441\u044c \u0437\u0434\u0435\u0441\u044c:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/311\/b7d\/64c\/311b7d64ce97b30ac3ca9da13ab220f1.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 9. \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u0435 \u043d\u043e\u0432\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0441\u043e \u0441\u0442\u0430\u0440\u044b\u043c, \u0442\u043e \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u0435, \u0447\u0442\u043e \u043e\u043d\u0438 \u043e\u0442\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habr.habrastorage.org\/post_images\/16f\/757\/e2c\/16f757e2c3581e86e686437aeb7076dd.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 10. \u0421\u0442\u0430\u0440\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c (\u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442 \u0438\u0437 <a href=\"http:\/\/habrahabr.ru\/post\/204432\/\">\u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0438<\/a>)<\/p>\n<p>  \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 <b>\u00ab\u043d\u043e\u0432\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430\u00bb<\/b> \u043d\u0430 \u041f\u0438\u0442\u043e\u043d\u0435 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<pre><code class=\"python\">def create_table(first_part, second_part):          result = []          curr_second = 0     out_index = 0     while(out_index &lt; 3):                  inner_index = 0         while(inner_index &lt; 3):                          curr_first = 0             accumulator = 0             index = 0             while(index &lt; 3):                              first = first_part[inner_index + curr_first]                 second = second_part[index + curr_second]                 hash = 0                                  if (first != 0):                     while (first != 0):                         if (first & 1):                             hash ^= second                                                  second += second                         first = first &gt;&gt; 1                                  accumulator ^= hash                 index += 1                 curr_first += 3                          result.append(accumulator & 0xff)             inner_index += 1                      out_index += 1         curr_second += 3      return result<\/code><\/pre>\n<p>  \u041f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u044d\u0442\u0438\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c.<\/p>\n<h5>\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0432 \u043a\u043e\u0434 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0431\u044b\u043b\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0434\u0432\u0430 \u043c\u0435\u0441\u0442\u0430, \u043e\u0442\u043a\u0443\u0434\u0430 \u0431\u0435\u0440\u0443\u0442\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/261\/af0\/52c\/261af052c412e507de833d1a7302a209.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 11. \u041c\u0430\u0441\u0441\u0438\u0432\u044b \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u043e\u043f\u0435\u0440\u0438\u0440\u0443\u0435\u0442 \u043d\u043e\u0432\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c<\/p>\n<p>  \u0412\u044b\u0448\u0435 \u043e\u043d\u0438 \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u044b \u0441\u0435\u0440\u044b\u043c \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u043e\u043c. \u0412 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0430\u043c <b>0x9b11b0<\/b> \u0438 <b>0x9b11b2<\/b>, \u0438\u0434\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0430\u043c:  <\/p>\n<ul>\n<li>0x00758628 (\u0440\u0438\u0441. 12)<\/li>\n<li>0x00758908 (\u0440\u0438\u0441. 13)<\/li>\n<\/ul>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/bf7\/dff\/c5b\/bf7dffc5b799ff6d9346afeb9a2fe050.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 12<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/afa\/c86\/e58\/afac86e5891b1d26d05497e3404930f4.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 13<\/p>\n<p>  \u0412 \u043a\u0430\u0436\u0434\u043e\u043c \u043c\u0430\u0441\u0441\u0438\u0432\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f <b>9 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432<\/b> \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u0431\u0430\u0439\u0442\u0443. <\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0431\u044b \u043c\u044b \u0440\u0435\u0448\u0430\u043b\u0438 \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u0440\u044f\u043a\u043c\u0438, \u0442\u043e \u043c\u044b \u0431\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u0435\u0440\u0435\u0448\u043b\u0438 \u043a \u043f\u043e\u0438\u0441\u043a\u0443 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u043d\u043e \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u0440\u044f\u043a\u043c\u0438 \u0431\u044b\u043b\u043e \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u0440\u043e\u0433\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0438\u0436\u0435 \u0434\u0430\u043d\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e\u0431 \u043e\u0442\u043b\u0438\u0447\u0438\u044f\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u043e\u0442 \u0432 \u0447\u0451\u043c.<\/p>\n<h5>\u041e\u0442\u043b\u0438\u0447\u0438\u0435 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043e\u0442 \u043d\u043e\u0432\u043e\u0439<\/h5>\n<p>  \u0412 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u0440\u044f\u043a\u043c\u0438 \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0441\u0435\u0440\u0438\u0439\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u043b\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:  <\/p>\n<ol>\n<li>\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043a\u043e\u0434 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u043b\u0441\u044f \u043d\u0430 \u0434\u0432\u0435 \u0447\u0430\u0441\u0442\u0438.<\/li>\n<li>\u041a\u0430\u0436\u0434\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u043b\u0430\u0441\u044c \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435.<\/li>\n<li>\u0417\u0430\u0442\u0435\u043c \u043a\u0430\u0436\u0434\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043c\u0438\u043a\u0448\u0438\u0440\u043e\u0432\u0430\u043b\u0430\u0441\u044c (\u043f\u0435\u0440\u0435\u043c\u0435\u0448\u0438\u0432\u0430\u043b\u0430\u0441\u044c).<\/li>\n<li>\u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043e\u0431\u0435 \u0447\u0430\u0441\u0442\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0443 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<\/ol>\n<p>  \u0412 \u0438\u0442\u043e\u0433\u0435 \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0430\u043b\u043e\u0441\u044c \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u044d\u0442\u043e\u0433\u043e:<\/p>\n<pre><code class=\"python\">Serial |- part_1 |- part_2  part_1 = intermediate_view(part_1) part_2 = intermediate_view(part_1)  part_1 = mix(part_1) part_2 = mix(part_2)  valid_table  = algo(part_1, part_2)<\/code><\/pre>\n<p>  \u0412 \u043d\u043e\u0432\u043e\u0439 \u0436\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u0432\u0441\u0451 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0443\u0441\u043b\u043e\u0436\u043d\u0438\u043b\u043e\u0441\u044c:  <\/p>\n<ol>\n<li>\u0421\u0435\u0440\u0438\u0439\u043d\u044b\u0439 \u043a\u043e\u0434 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u0434\u0432\u0435 \u0447\u0430\u0441\u0442\u0438.<\/li>\n<li>\u041a\u0430\u0436\u0434\u0430\u044f \u0435\u0433\u043e \u0447\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435.<\/li>\n<li>\u041f\u0435\u0440\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c + \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 (3, 5, 7, 5, 7, 3, 7, 3, 5) \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c.<\/li>\n<li>\u0412\u0442\u043e\u0440\u0430\u044f \u0447\u0430\u0441\u0442\u044c + \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043c\u0430\u0441\u0441\u0438\u0432 (3, 5, 7, 5, 7, 3, 7, 3, 5) \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u043b\u0433\u043e\u0440\u0442\u0438\u043c.<\/li>\n<li>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043f\u0443\u043d\u043a\u0442\u043e\u0432 3-4 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438.<\/li>\n<\/ol>\n<p>  \u0412 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u044d\u0442\u043e\u0433\u043e:<\/p>\n<pre><code class=\"python\">Serial |- part_1 |- part_2  part_1 = intermediate_view(part_1) part_2 = intermediate_view(part_1)  part_1 = mix(part_1) part_2 = mix(part_2)  salt = [3, 5, 7, 5, 7, 3, 7, 3, 5]  part_a  = algo(part_1, salt) part_b  = algo(part_2, salt)  valid_table  = algo(part_a, part_b)<\/code><\/pre>\n<p>  \u041e\u0442\u043a\u0443\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e \u0443 \u043d\u0430\u0441 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f <b>\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430<\/b>.<\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435<\/h5>\n<p>  \u041f\u043e\u0438\u0441\u043a \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0435\u0440\u0430 \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u044f \u043e\u0441\u0442\u0430\u0432\u043b\u044e \u0437\u0430 \u0432\u0430\u043c\u0438 \u0438 \u0437\u0434\u0435\u0441\u044c \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443. \u041f\u043e\u0438\u0441\u043a \u043c\u043e\u0436\u043d\u043e \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0442\u044c \u0442\u0435\u043c \u0436\u0435 \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c, \u0447\u0442\u043e \u0438 \u0432 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<h5>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d<\/h5>\n<p>  \u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0438 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u044b \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438.<\/p>\n<h4>\u0413\u043e\u0442\u043e\u0432\u0438\u043c \u043b\u0435\u0436\u0431\u0438\u0449\u0435 \u0434\u043b\u044f \u0437\u0430\u0441\u0430\u0434\u044b<\/h4>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u043e\u0433\u0434\u0430 \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0431\u044b\u043b\u0438 \u0441\u043e\u0431\u0440\u0430\u043d\u044b \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u043a \u0440\u0435\u0448\u0435\u043d\u0438\u044e. <\/p>\n<p>  \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u0430\u0448\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439:  <\/p>\n<ol>\n<li>\u0414\u043b\u044f <b>algo(part_a, part_b)<\/b>, \u043d\u0430\u0439\u0442\u0438 \u0442\u0430\u043a\u0438\u0435 <b>part_a<\/b> \u0438 <b>part_b<\/b>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0430\u044e\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 <b>[1, 0, 0, 0, 1, 0, 0, 0, 1]<\/b><\/li>\n<li>\u0414\u043b\u044f <b>part_a = algo(part_1, salt)<\/b>, \u043d\u0430\u0439\u0442\u0438 \u0442\u0430\u043a\u043e\u0439 <b>part_1<\/b>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0432\u043d\u044b\u0439 <b>part_a<\/b>.<\/li>\n<li>\u0414\u043b\u044f <b>part_b = algo(part_2, salt)<\/b>, \u043d\u0430\u0439\u0442\u0438 \u0442\u0430\u043a\u043e\u0439 <b>part_2<\/b>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u0430\u0441\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0432\u043d\u044b\u0439 <b>part_b<\/b>.<\/li>\n<\/ol>\n<p>  <\/p>\n<h5>\u041d\u0430\u0447\u043d\u0435\u043c \u0441 algo(part_a, part_b)<\/h5>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u044b \u0447\u0438\u0442\u0430\u043b\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/204432\/\">\u043f\u0435\u0440\u0432\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e<\/a>, \u0442\u043e \u043d\u0430\u0432\u0435\u0440\u043d\u043e\u0435 \u043f\u043e\u043c\u043d\u0438\u0442\u0435, \u0447\u0442\u043e \u0434\u043b\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b <b>[1, 0, 0, 0, 1, 0, 0, 0, 1]<\/b>, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u043c\u0435\u0442\u044c \u0442\u0430\u043a\u0438\u0435 \u0431\u0430\u0439\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b \u043f\u0440\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0438 \u0434\u0440\u0443\u0433 \u0441 \u0434\u0440\u0443\u0433\u043e\u043c \u0434\u0430\u0432\u0430\u043b\u0438 \u043b\u0438\u0431\u043e <b>\u00ab\u043d\u0443\u043b\u0438\u00bb<\/b>, \u043b\u0438\u0431\u043e <b>\u00ab\u0435\u0434\u0438\u043d\u0438\u0446\u044b\u00bb<\/b>. <\/p>\n<p>  \u0412 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u0440\u044f\u043a\u043c\u0438 \u043d\u0430\u0439\u0442\u0438 \u044d\u0442\u0438 \u0431\u0430\u0439\u0442\u044b \u0431\u044b\u043b\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u043e\u0441\u0442\u043e. \u0412\u0441\u0451 \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u0431\u0440\u0430\u0442\u044c \u0432\u0435\u0441\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0439 \u0430\u043b\u0444\u0430\u0432\u0438\u0442 \u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u0438\u0442\u044c \u043a \u043d\u0435\u043c\u0443 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439.<\/p>\n<p>  \u0412 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u0435\u0435 (\u043d\u043e \u044d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434 \u0438 \u043d\u0438\u0436\u0435 \u044f \u043e\u0431\u044a\u044f\u0441\u043d\u044e \u043f\u043e\u0447\u0435\u043c\u0443). \u0412 \u0441\u0442\u0430\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0443. \u0412 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043c\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u043f\u0435\u0440\u0435\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u043e \u0442\u0440\u0438 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430, \u0442\u0430\u043a \u043a\u0430\u043a \u0432\u0441\u0435 \u043e\u043d\u0438 \u0432\u0437\u0430\u0438\u043c\u043d\u043e \u0441\u0432\u044f\u0437\u0430\u043d\u044b.<\/p>\n<h5>\u0418 \u0442\u0430\u043a, \u043f\u043e\u0447\u0435\u043c\u0443 \u0436\u0435 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0441\u043b\u043e\u0436\u043d\u043e\u0439, \u043d\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0437\u0433\u043b\u044f\u0434?<\/h5>\n<p>  \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432 \u043f\u0435\u0440\u0432\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u043d\u0435 \u0440\u0430\u0441\u043a\u0440\u044b\u043b \u0442\u0443 \u00ab\u043c\u0430\u0433\u0438\u044e\u00bb, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0431\u044b\u043b\u0430 \u0441\u043a\u0440\u044b\u0442\u0430 \u0437\u0430 \u043f\u043e\u0438\u0441\u043a\u043e\u043c \u00ab\u043d\u0443\u043b\u0435\u0439\u00bb \u0438 \u00ab\u0435\u0434\u0438\u043d\u0438\u0446\u00bb (\u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0435\u0451 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044c, \u0445\u043e\u0442\u044f \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u044d\u0442\u043e\u0433\u043e \u043d\u0435 \u0434\u0435\u043b\u0430\u0442\u044c). \u0412 \u0441\u0432\u043e\u0451\u043c \u043a\u0435\u0439\u0433\u0435\u043d\u0435 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0444\u0443\u043d\u043a\u0446\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0438\u0449\u0435\u0442 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0435 \u00ab\u043d\u0443\u043b\u0438\u00bb \u0438 \u00ab\u0435\u0434\u0438\u043d\u0438\u0446\u044b\u00bb, \u043d\u043e \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u043e\u0447\u0435\u0432\u0438\u0434\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c. \u042d\u0442\u043e \u043f\u043e\u043c\u043e\u0433\u043b\u043e \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0442\u0432\u043b\u0435\u0447\u044c \u0441\u0430\u043c\u044b\u0445 \u043b\u044e\u0431\u043e\u0437\u043d\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0438 \u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0438\u0445 \u043f\u043e \u043f\u0443\u0442\u0438 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u0433\u043e \u0441\u043b\u0443\u0447\u0430\u044f (\u043a\u043e\u0438\u043c \u0438 \u044f\u0432\u043b\u044f\u043b\u043e\u0441\u044c \u043f\u0435\u0440\u0432\u043e\u0435 \u043a\u0440\u044f\u043a\u043c\u0438), \u0442.\u0435. \u0435\u0441\u043b\u0438 \u0431\u044b \u0438\u043c \u0434\u0430\u043b\u0438 (\u043a\u0430\u043a \u0441\u0435\u0439\u0447\u0430\u0441) \u0435\u0449\u0435 \u043e\u0434\u043d\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u043d\u043e \u0441 \u0434\u0440\u0443\u0433\u0438\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u043c, \u0438\u043c \u0431\u044b \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043f\u0440\u0438\u0434\u0443\u043c\u044b\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043f\u043e\u0438\u0441\u043a\u0430 \u00ab\u043d\u0443\u043b\u0435\u0439\u00bb \u0438 \u00ab\u0435\u0434\u0438\u043d\u0438\u0446\u00bb, \u0447\u0442\u043e \u043f\u043e\u0445\u043e\u0436\u0435 \u0441\u043e \u043c\u043d\u043e\u0433\u0438\u043c\u0438 \u0438 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e \ud83d\ude09<\/p>\n<p>  \u041d\u0443 \u0434\u0430 \u043b\u0430\u0434\u043d\u043e, \u043c\u0435\u043d\u044c\u0448\u0435 \u0441\u043b\u043e\u0432 \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0435\u043b\u0430.<\/p>\n<p>  \u0412\u043e\u0442 \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435\u00bb, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043d\u0430\u0439\u0442\u0438 \u0432\u0441\u0435 \u043d\u0443\u043b\u0435\u0432\u044b\u0435 \u0438 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b:<\/p>\n<pre><code class=\"python\">data_zero, data_ones = [], []  for a in range(0, 256):     part_a = [a, a, a, a, a, a, a, a, a]     part_b = [a, a, a, a, a, a, a, a, a]     result = create_table(part_a, part_b)      if result == [0, 0, 0, 0, 0, 0, 0, 0, 0]:         data_zero.append(a)      elif result == [1, 1, 1, 1, 1, 1, 1, 1, 1]:         data_ones.append(a)  print(&quot;ZERO:&quot;, data_zero) print(&quot;ONES:&quot;, data_ones)<\/code><\/pre>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/064\/394\/c77\/064394c77d38106fd46151e56897cecb.png\" alt=\"image\"\/> <br \/>  \u0420\u0438\u0441. 14<\/p>\n<p>  \u0425\u043e\u0440\u043e\u0448\u043e \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0430 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u0430\u044e\u0449\u0438\u0445 \u00ab\u043d\u0443\u043b\u0438\u00bb \u0438 \u00ab\u0435\u0434\u0438\u043d\u0438\u0446\u044b\u00bb. \u041a\u0430\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0438\u0441\u043a\u043e\u043c\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 [1, 0, 0, 0, 1, 0, 0, 0, 1]?<\/p>\n<p>  \u0421\u0430\u043c\u044b\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435\/\u0434\u043e\u0433\u0430\u0434\u043b\u0438\u0432\u044b\u0435 \u043c\u043e\u0433\u043b\u0438 \u0437\u0430\u043c\u0435\u0442\u0438\u0442\u044c (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u043c \u043a <a href=\"http:\/\/habrahabr.ru\/post\/204432\/#comment_7052182\">\u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435<\/a>), \u0447\u0442\u043e \u043c\u044b \u0438\u043c\u0435\u0435\u043c \u0434\u0435\u043b\u043e \u0441 \u043c\u0430\u0442\u0440\u0438\u0446\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0438 \u0434\u0440\u0443\u0433 \u043d\u0430 \u0434\u0440\u0443\u0433\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0434\u0430\u0432\u0430\u0442\u044c \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u0443\u044e \u043c\u0430\u0442\u0440\u0438\u0446\u0443 [1, 0, 0, 0, 1, 0, 0, 0, 1]. \u0421\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043b\u0438\u0431\u043e \u0434\u0432\u0435 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u044b\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u043b\u0438\u0431\u043e \u0434\u0432\u0435 \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0435.<\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u0443\u044e \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u0443\u044e \u043c\u0430\u0442\u0440\u0438\u0446\u0443, \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u0430\u0442\u0442\u0435\u0440\u043d:<\/p>\n<pre><code class=\"python\"># \u041f\u0430\u0442\u0442\u0435\u0440\u043d part_a = [y, x, x, x, y, x, x, x, y] part_b = [y, x, x, x, y, x, x, x, y]  result = algo(part_a, part_b)<\/code><\/pre>\n<p>  \u0413\u0434\u0435 \u0432 \u043c\u0435\u0441\u0442\u043e <b>x<\/b> \u2013 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u044c\u0442\u0435 \u043b\u044e\u0431\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u044b\u0439 \u0441\u0438\u043c\u0432\u043e\u043b, \u0430 \u0432\u043c\u0435\u0441\u0442\u043e <b>y<\/b> \u2013 \u043b\u044e\u0431\u043e\u0439 \u043d\u0443\u043b\u0435\u0432\u043e\u0439. <\/p>\n<p>  \u041c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b, \u043d\u0430\u0439\u0442\u0438 \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u044f\u00bb:<\/p>\n<pre><code class=\"python\">happy = [1,32] for byte_1 in happy[:]:     for byte_2 in happy[:]:         for byte_3 in happy[:]:             for byte_4 in happy[:]:                                        for byte_5 in happy[:]:                     for byte_6 in happy[:]:                         for byte_7 in happy[:]:                             for byte_8 in happy[:]:                                 for byte_9 in happy[:]:                                          part_1 = [byte_1, byte_2, byte_3, byte_4, byte_5, byte_6, byte_7, byte_8, byte_9]                                     part_2 = [byte_1, byte_2, byte_3, byte_4, byte_5, byte_6, byte_7, byte_8, byte_9]                                                                          result = create_table(part_1, part_2)                                                                         if result == [1, 0, 0, 0, 1, 0, 0, 0, 1]:                                         print(&quot;%s | %s &quot; % (part_2, part_1))<\/code><\/pre>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/5fc\/c08\/794\/5fcc087942ece32ef9a34fa46bcf044d.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 15<\/p>\n<p>  \u041f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u044f \u0437\u0430\u043c\u0435\u043d\u0443, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0442\u0430\u043a\u0438\u0435 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b:<\/p>\n<pre><code class=\"python\">patterns = [         # Pattern 0         [             [y1, x1, x1, x1, y2, x1, x1, x1, y3],             [y1, x1, x1, x1, y2, x1, x1, x1, y3]         ],          # Pattern 1a         [             [y1, x1, x1, x1, x1, y1, x1, y1, x1],             [y1, x1, x1, x1, x1, y1, x1, y1, x1]         ],          # Pattern 1b         [             [y1, x1, x2, x3, x4, y1, x5, y1, x6],             [y1, x2, x1, x5, x6, y1, x3, y1, x4]         ],          # Pattern 2a         [             [y1, x1, x1, x1, y1, x1, x1, x1, y1],             [y1, x1, x1, x1, y1, x1, x1, x1, y1]         ],          # Pattern 2b         [             [y1, x1, x2, x3, y2, x4, x5, x6, y3],             [y1, x1, x2, x3, y2, x4, x5, x6, y3]         ],          # Pattern 3a         [             [x1, x1, y1, x1, y1, x1, y1, x1, x1],             [x1, x1, y1, x1, y1, x1, y1, x1, x1]         ],          # Pattern 3b         [             [x1, x2, y1, x3, y2, x4, y3, x5, x6],             [x6, x5, y3, x4, y2, x3, y1, x2, x1]         ],          # Pattern 4a         [             [x1, y1, x1, y1, x1, x1, x1, x1, y1],             [x1, y1, x1, y1, x1, x1, x1, x1, y1]         ],          # Pattern 4b         [             [x1, y1, x2, y2, x3, x4, x5, x6, y3],             [x3, y2, x4, y1, x1, x2, x6, x5, y3]         ],          # Pattern 5         [             [x1, x2, y1, y2, x3, x4, x5, y3, x6],             [x4, y2, x3, x6, x5, y3, y1, x1, x2]         ]     ]<\/code><\/pre>\n<p>  \u0422\u0435\u043f\u0435\u0440\u044c, \u043a\u043e\u0433\u0434\u0430 \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438\u0441\u044c \u0441 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435\u043c \u0438\u0441\u043a\u043e\u043c\u043e\u0439 \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u043e\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b (\u0442.\u0435. \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438), \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0434\u0440\u0443\u0433\u0438\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u043c.<\/p>\n<h5>\u041a\u0430\u043a \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0435 part_a \u0438 part_b?<\/h5>\n<p>  \u041c\u044b \u0437\u043d\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435:<\/p>\n<pre><code class=\"python\">part_a  = algo(part_1, salt) part_b  = algo(part_2, salt)  valid_table  = algo(part_a, part_b)<\/code><\/pre>\n<p>  \u041e\u0442\u043a\u0443\u0434\u0430 \u0441\u043b\u0435\u0434\u0443\u0435\u0442, \u0447\u0442\u043e, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <b>part_a<\/b> \u0437\u0430\u0432\u0438\u0441\u0438\u0442 \u043e\u0442 <b>part_1<\/b> \u0438 <b>salt<\/b>. \u0427\u0442\u043e \u0432 \u0441\u0432\u043e\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u0441\u0443\u0436\u0430\u0435\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0438 \u0434\u043b\u044f <b>part_a<\/b>. \u0412\u043e\u0437\u043d\u0438\u043a\u0430\u0435\u0442 \u0437\u0430\u043a\u043e\u043d\u043e\u043c\u0435\u0440\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441.<\/p>\n<h5>\u041a\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0438 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c?<\/h5>\n<p>  \u0414\u0443\u043c\u0430\u044e \u043c\u043d\u043e\u0433\u0438\u0435 \u0443\u0436\u0435 \u0434\u043e\u0433\u0430\u0434\u0430\u043b\u0438\u0441\u044c \u0447\u0442\u043e \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c? \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0435 \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435\u00bb! <\/p>\n<p>  \u0412\u043e\u0442 \u043e\u0434\u043d\u043e \u0438\u0437 \u043d\u0438\u0445: <\/p>\n<pre><code class=\"python\"># serial_data \u0434\u043b\u044f email \u201csupport@reverse4you.org\u201d serial_data = [52, 233, 91, 105, 65, 15, 50, 176, 90, 40, 225, 81, 207, 79, 34, 19]  def get_items(first_part, second_part):          result = []     inner_index = 0     while(inner_index &lt; 3):                  curr_first = 0         accumulator = 0         index = 0         while(index &lt; 3):                      first = first_part[inner_index + curr_first]             second = second_part[index]             hash = 0                         if (first != 0):                 while (first != 0):                     if (first & 1):                         hash ^= second                                          second += second                     first = first &gt;&gt; 1                          accumulator ^= hash             index += 1             curr_first += 3                  result.append(accumulator & 0xff)         inner_index += 1              return result  a = 0x3 b = 0x5 c = 0x7  first_part = [a, b, c, b, c, a, c, a, b]  second_part_new = [0, 0, 0] count = 0 result_table = []  for byte_1 in serial_data:     second_part_new[0] = byte_1          for byte_2 in serial_data:         second_part_new[1] = byte_2                  for byte_3 in serial_data:             second_part_new[2] = byte_3                          res = get_items(first_part, second_part_new)             print(&quot;index: %s, table: %s&quot; % (count, res))                          count += 1  print(&quot;Count: %s&quot; % count)<\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0430\u0448\u0435 \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435\u00bb \u0443\u0441\u043f\u0435\u0448\u043d\u043e \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0432\u044b \u0443\u0432\u0438\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0434\u043b\u044f <b>part_a<\/b> \u0438 <b>part_b<\/b> \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0432\u0441\u0435\u0433\u043e <b>4096 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432<\/b> (\u0442\u043e\u0447\u043d\u0435\u0435 \u0433\u043e\u0432\u043e\u0440\u044f \u00ab\u043f\u043e\u0434 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432\u00bb).<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/21f\/765\/5f1\/21f7655f1b4e355e3ffada5c24d66316.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 16<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u0442\u0435\u043f\u0435\u0440\u044c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0430\u043b\u0438\u0434\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430. \u041a\u043e\u043d\u0435\u0447\u043d\u043e, \u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u0431\u044b\u0432\u0430\u0442\u044c, \u0447\u0442\u043e \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u0441 \u0431\u0430\u0439\u0442\u0430\u043c\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u043c\u0435\u044e\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u0430 \u0437\u043d\u0430\u0447\u0438\u0442 \u043f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u0438\u0445 \u0432 \u043e\u043a\u043d\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u0438\u0445 \u0435\u0449\u0435 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443. <\/p>\n<h4>\u041f\u0435\u0440\u0432\u0430\u044f \u0436\u0435\u0440\u0442\u0432\u0430 (\u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0430\u043b\u0438\u0434\u043d\u044b\u0439 \u043a\u043b\u044e\u0447)<\/h4>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u044b \u0431\u044b\u043b\u0438 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b, \u0442\u043e \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0432\u0441\u0435 4096 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043d\u0430 \u0434\u0432\u0435 \u0433\u0440\u0443\u043f\u043f\u044b, \u0442\u0435 \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 <b>\u00ab\u0432\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0447\u0435\u0442\u043d\u044b\u0435\u00bb<\/b> \u0438 \u0442\u0435 \u0443 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 <b>\u00ab\u0432\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435\u00bb<\/b>.<\/p>\n<p>  index: 0035, table: <b>[116, 222, 172]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  index: 0560, table: <b>[172, 116, 222]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  index: 0770, table: <b>[222, 172, 116]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u0447\u0435\u0442\u043d\u044b\u0435<\/p>\n<p>  index: 0117, table: <b>[1, 229, 111]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  index: 1287, table: <b>[229, 111, 1]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  index: 1872, table: <b>[111, 1, 229]<\/b> &lt;= \u0412\u0441\u0435 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<\/p>\n<p>  \u041e\u0434\u043d\u0430\u043a\u043e, \u0435\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u043d\u0430\u043c \u00ab\u043f\u0430\u0442\u0442\u0435\u0440\u043d\u044b\u00bb, \u0442\u043e \u0443\u0432\u0438\u0434\u0438\u0442\u0435, \u0447\u0442\u043e \u0432\u0441\u0435 \u043e\u043d\u0438 \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437 \u00ab\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432\u00bb \u0431\u044b\u043b\u0438 \u043a\u0430\u043a \u00ab\u0447\u0435\u0442\u043d\u044b\u0435\u00bb, \u0442\u0430\u043a \u0438 \u00ab\u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435\u00bb \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u044b, \u0442.\u0435:<\/p>\n<p>  \u0412\u043e\u0442 \u0434\u0432\u0435 \u043c\u0430\u0442\u0440\u0438\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0430\u044e\u0442 \u043d\u0430\u043c \u0435\u0434\u0438\u043d\u0438\u0447\u043d\u0443\u044e:<\/p>\n<p>  <b>part_a<\/b><br \/>  [176, 176, 65] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  [176, 65, 176] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  [65, 176, 176] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<\/p>\n<p>  <b>part_b<\/b><br \/>  [176, 176, 65] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  [176, 65, 176] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<br \/>  [65, 176, 176] &lt;= \u0415\u0441\u0442\u044c \u0447\u0435\u0442\u043d\u044b\u0435 \u0438 \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0435<\/p>\n<p>  <b>valid_table = part_a * part_a<\/b><br \/>  [ 1, 0, 0 ]<br \/>  [ 0, 1, 0 ]<br \/>  [ 0, 0, 1 ]<\/p>\n<p>  \u0422\u0430\u043a \u043a\u0430\u043a \u00ab\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b\u00bb \u0441 \u00ab\u0447\u0435\u0442\u043d\u044b\u043c\u0438\u00bb \u0438 \u00ab\u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u043c\u0438\u00bb \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u2013 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043c \u043a \u0432\u044b\u0432\u043e\u0434\u0443, \u0447\u0442\u043e \u0432 \u043a\u0440\u044f\u043a\u043c\u0438 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043e\u0448\u0438\u0431\u043a\u0430. \u0412 \u0441\u0442\u0430\u0435\u0442 \u0437\u0430\u043a\u043e\u043d\u043e\u043c\u0435\u0440\u043d\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441.<\/p>\n<h5>\u0412 \u0447\u0435\u043c \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0448\u0438\u0431\u043a\u0430?<\/h5>\n<p>  \u041f\u043e\u0441\u043b\u0435 \u0431\u044b\u0441\u0442\u0440\u044b\u0445 \u0440\u0430\u0437\u043c\u044b\u0448\u043b\u0435\u043d\u0438\u0439 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043c \u043a \u0432\u044b\u0432\u043e\u0434\u0443, \u0447\u0442\u043e \u043e\u0448\u0438\u0431\u043a\u0430 \u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0432 \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u0435 <b>[0x3, 0x5, 0x7, 0x5, 0x7, 0x3, 0x7, 0x3, 0x5]<\/b>. \u0414\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u0447\u0435\u0442\u043d\u044b\u0445 \u0438 \u043d\u0435\u0447\u0435\u0442\u043d\u044b\u0445 \u00ab\u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432\u00bb \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c <b>\u00ab0x3\u00bb<\/b>, <b>\u00ab0x5\u00bb<\/b> \u0438 <b>\u00ab0x7\u00bb<\/b> \u043d\u0430 <b>\u00ab0x2\u00bb<\/b>, <b>\u00ab0x3\u00bb<\/b> \u0438 <b>\u00ab0x8\u00bb<\/b> \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043b\u0438\u0431\u043e \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442, \u0433\u0434\u0435 \u0431\u0443\u0434\u0435\u0442 \u0434\u0432\u0430 \u0447\u0435\u0442\u043d\u044b\u0445 \u0438 \u043e\u0434\u0438\u043d \u043d\u0435 \u0447\u0435\u0442\u043d\u044b\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430 \u0442\u0430\u043a\u0438\u0435 <b>\u00ab0x4\u00bb<\/b>, <b>\u00ab0x7\u00bb<\/b> \u0438 <b>\u00ab0x8\u00bb<\/b> (\u043a\u0430\u043a \u0432\u0430\u0440\u0438\u0430\u043d\u0442). <\/p>\n<p>  \u041e\u0431 \u044d\u0442\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u0435 \u0431\u044b\u043b\u043e \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u043e \u0432 \u041b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u0438\u044e \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u043e\u0433\u043e. \u0422\u0430\u043c \u0441\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044f (\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043c\u044b \u0441\u0435\u0439\u0447\u0430\u0441 \u0438\u0441\u0441\u043b\u0435\u0434\u0443\u0435\u043c) \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u043d\u043e\u0432\u043e\u0439. \u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e, \u0432 \u0442\u043e\u0442 \u0436\u0435 \u0434\u0435\u043d\u044c, \u0432\u0441\u0435\u043c \u0431\u044b\u043b\u0430 \u0440\u0430\u0437\u043e\u0441\u043b\u0430\u043d\u0430 \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u0435\u0437 \u043e\u0448\u0438\u0431\u043a\u0438. \u041f\u0440\u0430\u0432\u0434\u0430, \u0432 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438, \u0443\u0436\u0435 \u043d\u0435 \u0431\u044b\u043b\u043e \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0442\u0430\u0431\u043b\u0438\u0446 \u0438 \u0440\u0435\u0448\u0430\u043b\u0430\u0441\u044c \u043e\u043d\u0430 \u0435\u0449\u0435 \u043f\u0440\u043e\u0449\u0435 \u0447\u0435\u043c \u044d\u0442\u0430, \u043d\u043e \u043e\u0431 \u044d\u0442\u043e\u043c \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0447\u0443\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0432 \u0431\u043e\u043d\u0443\u0441\u043d\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \ud83d\ude42<\/p>\n<p>  \u0427\u0442\u043e\u0431\u044b \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u044b \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u043b\u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0443\u044e \u0437\u0430\u043c\u0435\u043d\u0443 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u0432\u044b \u0440\u0435\u0448\u0438\u043b\u0438 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0435 \u043e\u0442 <b>\u00ab0x2\u00bb<\/b>, <b>\u00ab0x3\u00bb<\/b> \u0438 <b>\u00ab0x8\u00bb<\/b>), \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435\u00bb:<\/p>\n<pre><code class=\"python\">serial_data = [52, 233, 91, 105, 65, 15, 50, 176, 90, 40, 225, 81, 207, 79, 34, 19]  a = 0x2 b = 0x3 c = 0x8  first_part = [a, b, c, b, c, a, c, a, b]  second_part_new = [0, 0, 0] count = 0 result_table = []  for byte_1 in serial_data:     second_part_new[0] = byte_1          for byte_2 in serial_data:         second_part_new[1] = byte_2                  for byte_3 in serial_data:             second_part_new[2] = byte_3                          res = get_items(first_part, second_part_new)             print(&quot;index: %s, table: %s&quot; % (count, res))                          if (res[0] % 16 == 0 and res[1] % 16 == 0 and res[2] % 16 == 1) or\\                (res[0] % 16 == 1 and res[1] % 16 == 0 and res[2] % 16 == 0) or\\                (res[0] % 16 == 0 and res[1] % 16 == 1 and res[2] % 16 == 0):                     result_table.append(res)             count += 1  print(&quot;Count:&quot;, count) print(&quot;Good:&quot;, result_table)<\/code><\/pre>\n<p>  \u0415\u0441\u043b\u0438 \u043f\u0440\u0438\u043c\u0430\u043d\u043a\u0430 \u0431\u044b\u043b\u0430 \u043f\u043e\u0434\u043e\u0431\u0440\u0430\u043d\u0430 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e (\u043a\u0430\u043a \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u00ab0x2, 0x3, 0x8\u00bb), \u0442\u043e \u0432 \u0432\u0430\u0448\u0438\u0445 \u043b\u043e\u0432\u0443\u0448\u043a\u0430\u0445 (\u0432 \u043f\u043e\u043b\u0435 \u00abGood\u00bb) \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f, \u043a\u0430\u043a \u043c\u0438\u043d\u0438\u043c\u0443\u043c, \u043e\u0434\u0438\u043d \u0437\u0432\u0435\u0440\u044c (\u0433\u0440\u0443\u043f\u043f\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0438\u0437 \u0442\u0440\u0451\u0445 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432). \u041f\u0440\u0438\u043c\u0435\u0440 \u0432\u044b\u0432\u043e\u0434\u0430 \u0434\u043b\u044f \u0444\u0438\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043c\u0430\u0442\u0440\u0438\u0446\u044b (\u0441 \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u043c\u0438 \u00ab0x2\u00bb, \u00ab0x3\u00bb \u0438 \u00ab0x8\u00bb) \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u043d\u0438\u0436\u0435:<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/fe2\/8c6\/2db\/fe28c62dbfb616ff5c3665c2b186998f.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 17<\/p>\n<p>  \u041a\u0430\u043a \u0432\u0438\u0434\u0438\u0442\u0435, \u043d\u0430\u043c \u0443\u043b\u044b\u0431\u043d\u0443\u043b\u0430\u0441\u044c \u0443\u0434\u0430\u0447\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043d\u0430\u0448\u0438 \u043a\u0430\u043f\u043a\u0430\u043d\u044b \u043f\u043e\u043f\u0430\u043b\u043e \u0446\u0435\u043b\u044b\u0445 \u0442\u0440\u0438 \u0434\u0438\u043a\u0438\u0445 \u0437\u0432\u0435\u0440\u044f, \u0447\u0442\u043e \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043f\u043e\u0441\u043e\u0431\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u043a\u0435 \u043f\u0440\u0430\u0437\u0434\u043d\u0438\u0447\u043d\u043e\u0433\u043e \u0441\u0442\u043e\u043b\u0430 (\u0442.\u0435. \u043c\u043e\u0436\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043b\u044f \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f <b>part_a<\/b> \u0438 <b>part_b<\/b>). <\/p>\n<p>  \u0421\u0430\u043c\u044b\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u0443\u0436\u0435 \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0432\u044b\u0432\u043e\u0434 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 <b>\u00abGood\u00bb<\/b> \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0442\u044c \u043d\u0430 \u0433\u0440\u0443\u043f\u043f\u044b, \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e \u0442\u0440\u0438 \u0441\u0442\u0440\u043e\u043a\u0438. <\/p>\n<p>  [0, 144, 81] <br \/>  [81, 0, 144]<br \/>  [144, 81, 0]<\/p>\n<p>  [144, 145, 0] <br \/>  [0, 144, 145]<br \/>  [145, 0, 144]<\/p>\n<p>  [0, 144, 209]<br \/>  [209, 0, 144]<br \/>  [144, 209, 0]<\/p>\n<p>  \u0415\u0449\u0435 \u0431\u043e\u043b\u0435\u0435 \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0435 \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u0437\u0430\u043c\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0432\u0441\u0435 \u044d\u0442\u0438 \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0432\u0445\u043e\u0434\u044f\u0442 \u0432 \u043d\u0430\u0431\u043e\u0440\u044b \u00ab\u043d\u0443\u043b\u0435\u0432\u044b\u0445\u00bb \u0438 \u00ab\u0435\u0434\u0438\u043d\u0438\u0447\u043d\u044b\u0445\u00bb \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 \ud83d\ude09<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/064\/394\/c77\/064394c77d38106fd46151e56897cecb.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 18<\/p>\n<p>  \u041d\u0443, \u0430 \u0441\u0430\u043c\u044b\u0435 \u0434\u043e\u0433\u0430\u0434\u043b\u0438\u0432\u044b\u0435 (\u044f \u043d\u0430\u0434\u0435\u044e\u0441\u044c) \u0443\u0436\u0435 \u0432\u043e \u0432\u0441\u044e \u043f\u0438\u0440\u0443\u044e\u0442 \u0437\u0430 \u0431\u043e\u043b\u044c\u0448\u0438\u043c \u0441\u0442\u043e\u043b\u043e\u043c, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d\u0438 \u0441\u043c\u043e\u0433\u043b\u0438 \u0432\u044b\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0437\u0432\u0435\u0440\u044f, \u043f\u0440\u0438\u043c\u0430\u043d\u0438\u0432 \u0435\u0433\u043e \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u043c \u00ab\u0437\u0430\u043a\u043b\u0438\u043d\u0430\u043d\u0438\u0435\u043c\u00bb:<\/p>\n<pre><code class=\"python\"># \u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0430 \u0437\u0432\u0435\u0440\u044f # [0, 144, 209] # [209, 0, 144] # [144, 209, 0]  a = 144 b = 209 c = 0  # \u041f\u0440\u0438\u043c\u0435\u043d\u044f\u0435\u043c \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u0430\u0442\u0442\u0435\u0440\u043d\u043e\u0432 part_a = [c, a, b, b, c, a, a, b, c] part_b = [a, b, c, c, a, b, b, c, a]  # part_a1 = [0, 144, 209] # part_a2 = [209, 0, 144] # part_a3 = [144, 209, 0] # part_a = part_a1 + part_a2 + part_a3  # part_b1 = [144, 209, 0] # part_b2 = [0, 144, 209] # part_b3 = [209, 0, 144] # part_b = part_b1 + part_b2 + part_b3  result = create_table(part_a, part_b) print(result)<\/code><\/pre>\n<p>  \u041d\u0430 \u044d\u0442\u043e\u043c \u043c\u044b \u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043c \u0440\u0435\u0448\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u043a\u0440\u044f\u043a\u043c\u0438\u2026 \u041a\u0430\u043a \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0431\u0430\u0439\u0442\u044b \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u044b\u0439 \u0432\u0438\u0434, \u0447\u0442\u043e\u0431\u044b \u0438\u0445 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u0432 \u043e\u043a\u043d\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u044f \u0434\u0443\u043c\u0430\u044e \u0440\u0430\u0437\u0431\u0435\u0440\u0435\u0442\u0435\u0441\u044c \u0441\u0430\u043c\u0438. <\/p>\n<p>  \u0410 \u043f\u043e\u043a\u0430 \u0432\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u0442\u0435\u0441\u044c \u043c\u044b \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044e \u043d\u043e\u0432\u043e\u0433\u043e (\u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e) \u043a\u0440\u044f\u043a\u043c\u0438. \u0421\u0440\u0430\u0437\u0443 \u0445\u043e\u0447\u0443 \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e \u0432\u0441\u0435 \u0447\u0442\u043e \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u0434\u043b\u044f \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u0440\u044f\u043a\u043c\u0438, \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e \u0438 \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0433\u043e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u043c\u0441\u044f \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u043d\u044b\u043c \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430 \u0435\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u044b \u0438 \u0434\u0430\u0434\u0438\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043a\u0435\u0439\u0433\u0435\u043d (\u0434\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u043b\u044e\u0431\u043e\u0437\u043d\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0438\u043b\u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442 \u043b\u0435\u043d\u0438\u0432\u044b\u0445).<\/p>\n<h4>\u0411\u043e\u043d\u0443\u0441 (\u043a\u0435\u0439\u0433\u0435\u043d + \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u043e\u0432\u043e\u0433\u043e \u043a\u0440\u044f\u043a\u043c\u0438)<\/h4>\n<p>  \u0414\u0430\u0431\u044b \u043d\u0435 \u0437\u0430\u043f\u0443\u0442\u0430\u0442\u044c\u0441\u044f \u0441 \u0438\u043c\u0435\u044e\u0449\u0438\u043c\u0438\u0441\u044f \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 \u2013 \u0432\u043d\u0435\u0441\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u044f\u0441\u043d\u043e\u0441\u0442\u044c \u0432 \u0438\u0445 \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e:  <\/p>\n<ul>\n<li><b>ZeroNightsCrackMe_v1<\/b> \u2013 \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d <a href=\"http:\/\/habrahabr.ru\/post\/204432\/\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/li>\n<li><b>ZeroNightsCrackMe_v2<\/b> \u2013 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0438 \u043e\u043f\u0438\u0441\u0430\u043d \u0432\u044b\u0448\u0435 \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<\/li>\n<li><b>ZeroNightsCrackMe_v3<\/b> \u2013 \u043f\u043e\u0432\u0435\u0440\u0445\u043d\u043e\u0441\u0442\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d \u043d\u0438\u0436\u0435 + \u0434\u0430\u0435\u0442\u0441\u044f \u043a\u0435\u0439\u0433\u0435\u043d.<\/li>\n<\/ul>\n<p>  <\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438 \u0438 \u0441\u0430\u043c\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u041a\u0430\u043a \u0438 \u0432\u043e \u0432\u0441\u0435\u0445 \u043f\u0440\u0435\u0434\u0448\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 <b>v1<\/b> \u0438 <b>v2<\/b>.<\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u041a\u0430\u043a \u0438 \u0432 \u0447\u0435\u0440\u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 <b>v2<\/b> (\u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0441\u044f \u0432\u044b\u0448\u0435 \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435).<\/p>\n<h5>\u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0430\u043b\u0433\u043e\u0440\u0442\u0438\u043c\u0430 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0432\u0430\u043b\u0438\u0434\u0430\u0446\u0438\u0438<\/h5>\n<p>  \u041f\u0440\u0438\u043d\u0446\u0438\u043f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0438 \u0432 \u0441\u0430\u043c\u043e\u0439 \u043f\u0435\u0440\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 <b>v1<\/b>, \u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u0434\u0440\u0443\u0433\u0438\u0435 \u043c\u0438\u043a\u0448\u0435\u0440\u044b.<\/p>\n<h5>\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0438\u0439\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0435\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435, \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d<\/h5>\n<p>  \u041a\u0430\u043a \u0438 \u0432\u043e \u0432\u0441\u0435\u0445 \u043f\u0440\u0435\u0434\u0448\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 <b>v1<\/b> \u0438 <b>v2<\/b>.<\/p>\n<h5>\u041a\u0435\u0433\u0435\u043d \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438<\/h5>\n<p>  \u041a\u0440\u044f\u043a\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u0439 <b>v2<\/b> \u0438 <b>v3<\/b> \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0439\u0442\u0438 <a href=\"http:\/\/forum.reverse4you.org\/showthread.php?t=1653\">\u0432 \u044d\u0442\u043e\u0439 \u0442\u0435\u043c\u0435<\/a>. \u0422\u0430\u043c \u0436\u0435 \u043d\u0430\u0439\u0434\u0435\u0442\u0435 \u043a\u0435\u0439\u0433\u0435\u043d \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 <b>v3<\/b> \u043e\u0442 \u043c\u0435\u043d\u044f <b>\u0414\u0430\u0440\u0432\u0438\u043d\u0430<\/b>. <\/p>\n<p>  <b>\u041f\u0430\u0440\u043e\u043b\u044c \u043d\u0430 \u0430\u0440\u0445\u0438\u0432 \u043e\u0442 \u043a\u0435\u0439\u0433\u0435\u043d\u0430:<\/b> Darwin_1iOi7q7IQ1wqWiiIIw<\/p>\n<p>  \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043a\u0435\u0439\u0433\u0435\u043d\u0430 \u0434\u043b\u044f \u0442\u0440\u0435\u0442\u044c\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u043a\u0440\u044f\u043a\u043c\u0438:<\/p>\n<p>  &gt; keygen_v3.py habrahabr.ru &gt; result.txt<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/a0c\/797\/c61\/a0c797c61323293bdd8249bd9776f684.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 19<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habrastorage.org\/getpro\/habr\/post_images\/a06\/e31\/3ca\/a06e313ca889e0110323a20c78380e55.png\" alt=\"image\"\/><br \/>  \u0420\u0438\u0441. 20<\/p>\n<p>  \u0412\u0441\u0435\u043c \u0434\u043e\u0447\u0438\u0442\u0430\u0432\u0448\u0438\u043c \u0434\u043e \u043a\u043e\u043d\u0446\u0430 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u0441\u043f\u0430\u0441\u0438\u0431\u043e! \u0414\u043e \u0441\u043a\u043e\u0440\u044b\u0445 \u0432\u0441\u0442\u0440\u0435\u0447!    \t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/215225\/\"> http:\/\/habrahabr.ru\/post\/215225\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">   \t\u0418 \u0441\u043d\u043e\u0432\u0430 \u0432\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0412 \u043f\u0440\u043e\u0448\u043b\u044b\u0439 \u0440\u0430\u0437 \u044f \u0440\u0430\u0441\u043a\u0440\u044b\u043b \u0440\u0435\u0448\u0435\u043d\u0438\u0435 <b><a href=\"http:\/\/habrahabr.ru\/post\/204432\/\">ZeroNightsCrackMe<\/a><\/b>. \u0412\u0441\u0435 \u043a\u0442\u043e \u0443\u0441\u043f\u0435\u043b \u0435\u0433\u043e \u0432\u043e\u0432\u0440\u0435\u043c\u044f \u0440\u0435\u0448\u0438\u0442\u044c, \u043c\u043e\u0433 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0435\u043d\u0438\u0435 \u043d\u0430 \u044d\u043a\u0441\u043a\u0443\u0440\u0441\u0438\u044e \u0432 \u043e\u0434\u0438\u043d \u0438\u0437 \u043e\u0444\u0438\u0441\u043e\u0432 \u041b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u0438\u0438 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u043e\u0433\u043e, \u0430 \u0442\u0430\u043a \u0436\u0435 \u043f\u043e\u0434\u0430\u0440\u043e\u043a, \u0432 \u0432\u0438\u0434\u0435 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043d\u0430 \u0442\u0440\u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041d\u043e, \u043f\u043e\u043c\u0438\u043c\u043e \u0432\u0441\u0435\u0433\u043e \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u0432 \u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u043e\u043c \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0438, \u0447\u0442\u043e \u043a\u0440\u044f\u043a\u043c\u0438 \u0431\u044b\u043b \u043e\u0431\u043b\u0435\u0433\u0447\u0435\u043d\u043d\u044b\u043c, \u0442.\u0435. \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u0430\u044f \u0435\u0433\u043e \u0432\u0435\u0440\u0441\u0438\u044f \u0438 \u043e\u043d\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u043e\u0441\u043b\u0430\u043d\u0430 \u0442\u0435\u043c, \u043a\u0442\u043e \u043f\u043e\u0436\u0435\u043b\u0430\u0435\u0442 \u0435\u0451 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c (\u043d\u043e \u0431\u0435\u0437 \u043f\u043e\u0434\u0430\u0440\u043a\u043e\u0432, \u0432 \u0441\u0432\u043e\u0451 \u0443\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u0438\u0435, \u0442\u0430\u043a \u0441\u043a\u0430\u0437\u0430\u0442\u044c). \u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 \u044f \u043d\u0435 \u043c\u043e\u0433 \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c \u0441\u0435\u0431\u0435 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u043f\u043e\u043a\u0440\u0443\u0442\u0438\u0442\u044c \u044d\u0442\u0443 \u0432\u0435\u0440\u0441\u0438\u044e, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b \u0441\u0432\u043e\u0435 \u0436\u0435\u043b\u0430\u043d\u0438\u0435 \u043d\u0430 \u0443\u0447\u0430\u0441\u0442\u0438\u0435.<\/p>\n<p>  17 \u0444\u0435\u0432\u0440\u0430\u043b\u044f \u043f\u0440\u0438\u0448\u043b\u043e \u043f\u0438\u0441\u044c\u043c\u043e \u0441 \u043d\u043e\u0432\u044b\u043c \u043a\u0440\u044f\u043a\u043c\u0438. \u0418\u043c\u0435\u043d\u043d\u043e \u043e \u0435\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0438 (\u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e) \u044f \u0438 \u043f\u043e\u0432\u0435\u0434\u0430\u044e \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-215225","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/215225","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=215225"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/215225\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=215225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=215225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=215225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}