Category: Source

Source code availability

ATL’s CenterWindow

It appears that ATL does not center window correctly on multi-monitor systems. ATL code checks screen work area coordinates in CWindow::CenterWindow to ensure new position is within visible area, however since SystemParametersInfo/SPI_GETWORKAREA is used target rectangle is always on a primary monitor. This hotfix works the problem around:

Semaphores

Semaphore objects are specific synchronization objects that maintain a counter that lock/unlock the object on reaching specific predefined count. The counter make the object specific and different from other synchronization objects such as critical sections, mutexes, events. After years of software development with a horde of threads and events it is the first time I…

Read the full article

Reversing MD5 using CryptoAPI

Improving MD5 cracking application: with the use of MS Windows CryptoAPI subsystem, cracking speed increased by over 25%. I am looking forward to getting evaluation version of Intel IPP Cryptography library to compare results to obtained using CryptoAPI. See Also: CryptAcquireContext, CryptCreateHash, CALG_MD5, CryptHashData, CCryptProv, CCryptMD5Hash. Partial (some header files are excluded) Visual C++.NET 2005…

Read the full article

Reversing MD5

This utility will attempt to brute force reverse/crack a hash value created by Message-Digest algorithm 5 (MD5) one-way function. You feed hashes in, it tries to find the argument. Possibly this is not the fastest implementation but we have what we have. There is support for multiple processors though and here source code go as…

Read the full article

UPnP Scanner

Universal Plug and Play framework offers capabilities to discover and control various network devices. Microsoft Windows operating systems (Windows Millenium Edition, Windows XP, Windows Vista) offer UPnP APIs: Control Point API and Device Host API. These are useful to communicate to network appliances. The UPnP Scanner utility scans for available devices and show device details…

Read the full article

Managing security desciptors in registry

As it is well known, COM/DCOM per-class launch and access permissions are stored in registry under HKEY_CLASSES_ROOT\AppID key. However the permissions are stored in binary form (as a named REG_BINARY value) and thus not easy to read. DCOMCNFG (or MMC snap-in) is used to modify the values interactively but once one needs to update the…

Read the full article