Keywords v1.2

web-searchKolejna część z nowego miesiąca najbardziej oryginalnych keywordów wpisywanych w wyszukiwarki, które doprowadziły do Security News.

  • gulczas klub — u mnie w piwnicy, zbiórka codziennie o 8.30
  • tablica kodow ascii — for (int i = 0; i <= 255; i++) printf(„%c”, i);
  • amatorskie stosunki seksualne — NK + fake photo
  • buffer 0% – przerywa radio co zrobic — włączyć TV tempy…
  • cena generatora liczb losowych — bezcenne
  • co daje trial reset 2.9a.rar — urodę 16 latki
  • co powiecie o truecrypt — NSA maczała tam swoje paluchy
  • dlaczego mczat nie dziala — bo nikt tego nie obsługuje, proste
  • hasla zwiazane z lasem — zupa grzybowa o smaku bigosu
  • jak zabic terminatora — świetlnym mieczem
  • jak zalatwic upierdliwego sasiada — terminatorem
  • najlepszy system do hakerstwa — C64 + joystick
  • podejrzane wiadomosci na fotka.pl — sorry, to było do kogoś innego
  • poznam hakera — witam, jestem Paweł Jabłoński, w czym mogę pomóc?
  • riwersing — tylko dla zaawansowanych!
  • stare babcie slap — pimp slap dla emerytek!
  • starforce spryciarze — pure pro
  • ulotki burdeli — na priva napisz 😉
  • wizyta w eset — trauma na resztę życia
  • zakaz kitesurfingu — na pobliskim basenie
  • biurowe jebanie — tylko na Aeronie
  • gole babki nie do zdecydowania — what, what, what?
  • pudliszki — najlepsze do pomidorówy
  • wzor binarny wirusa — 0111010101110111001110010101… itd.
  • co zrobic zeby podlaczyc t1000 do komputera — wsadzić mu wtyczke USB do tyłka
  • fale moga zabic — zwłaszcza po pijaku!
  • gnije w jelitach — fuj!
  • hakerski system kombajn — Ursus
  • ilu jest ochroniarzy w protektorze — a ty co, robisz w GUSie?
  • jak zrobic bijace sie ludziki na pulpicie — plastelina + pare godzin pracy
  • jak zrobic newsy z flaga pl — ?
  • jak zwalczyc security tool — innym security toolem dummy!
  • jebanie na wsi — na słomie albo w lesie
  • kobieta koder — J.R.
  • kombajn przy pracy — kolejny URSUS?
  • kody wirusuw eset — nom je kitrają, żeby nikt się nie kapł
  • lubicie chodzic w drewniakach — wole w japonkach
  • maczeta cacko — Ontario Military Jungle Machete
  • porzadne jebanie — …
  • praca w firmach — nużąca z biegiem czasu
  • tic tac biegunka — patrz składniki -> aspartam
  • twoja stara robi strone w excelu — a twoja w kalkulatorze
  • zbudowali robota do wojny terminator — kaj?
  • jak zablokowac internet przed sasiadem — schować go w szafie
  • jak zarobic na huja sasiadowi — po cichu
  • jak zrobic zeby muza chodzila haker — trza crackera zatrudnić
  • dzieki czemu nauczyc sie hakerstwa — dzięki własnej głupocie
  • „error occurred during reverse engineering — lol u lame” — so true
  • jak wnerwiac ludzi — nasikać im na wycieraczkę
  • stukanie mlotkiem w sciane-decybele — kolejny pojeb?
  • szkola hakerow zapomnialem nicku — L4m3P0w3rH4ck3r
  • wnerwianie faceta — grozi pimp slapem!
  • zlodziej hipnotyzer — twój stary

    Alpha blending dla Delphi (MMX)

    Alpha blending dla Delphi w assemblerze z wykorzystaniem MMX:

    function AlphaBlend(Pixel: dword; Background: dword; Alpha: byte): dword;
    begin
    
      asm
    
      movzx       eax,Alpha       // kanal alfa 0-255
      imul        eax,01010101h   // 000000xx = xx xx xx xx
      movd        mm6,eax         //
      pxor        mm7,mm7         //
      punpcklbw   mm6,mm7         // rozpakuj do bajtow
    
      mov         edx,00FFFFFFh
      movd        mm2,edx
    
      movd        mm0,Background  // pixel z tla
      pand        mm0,mm2         // usun kanal alfa z tla
    
      movd        mm1,Pixel       // pixel obrazu
      pand        mm1,mm2         // usun kanal alfa z pixela
    
      punpcklbw   mm0,mm7         // rozpakuj pixel obrazu do bajtow
      punpcklbw   mm1,mm7         // oraz pixel litery do bajtow
    
      psubw       mm0,mm1         // src - pix
      pmullw      mm0,mm6         // *alpha
      psrlw       mm0,8           // >> 8
      paddb       mm0,mm1         // +
    
      packuswb    mm0,mm7         // spakuj ponownie do pixela
      movd        eax,mm0         // zapisz do eax
    
      mov         Result,eax
    
      end;
    
    end;

    To tylko przykład, można to zoptymalizować pod względem konwencji regcall, ale już mi się nie chcę, z dedykacją dla jednego geniusza, który twierdził, że to niemożliwe…

    Optymalizacja kodu

    binaryArtykuł prezentujący różnice w optymalizacji kodu przez najpopularniejsze kompilatory HLL, cała masa ciekawych snippetów i trików używanych do wyprodukowania optymalnego kodu (również odpowiada na odwieczne pytanie czym zerować rejestry sub-em, xor-em czy inaczej), polecam prawdziwym fanatykom assemblera 🙂

    linux-kongress.org/…/compiler_survey_felix_von_leitner.pdf

    Przy okazji polecam również ciekawy artykuł autorstwa Gynvaela Coldwinda o branchless code, czyli w skrócie jak pozbyć się z kodu skoków i zastąpić je inną serią instrukcji:

    http://gynvael.coldwind.pl/?id=247

    Gynvael opisał wszystko na poziomie HLL, więcej przykładów w assemblerze zaprezentował kilka lat temu virii writer z0mbie w artykule Polymorphic Games:

    http://vx.netlux.org/lib/vzo43.html

    Przy okazji na blogu Gynvaela znalazłem odnośniki do podobnego artykułu:

    http://fanael.wordpress.com/…/jak-pisac-branchless-code-czesc-1/

    http://fanael.wordpress.com/…/branchless-clamp-to-0-255/