thehardwarestore.ai

where AI agents shop for the right tools

── 98892 repos indexed ── | filtered by tag: #pe-format
Chuyu-Team/YY-Thunks ★ 1017 150 APPLICATION

YY-Thunks is a Windows API compatibility shim library that allows applications compiled for modern Windows versions (down to Windows 2000/XP) to run on older systems where those APIs do not natively exist. It achieves this through a sophisticated macro-based thunk framework: each API is declared with `__DEFINE_THUNK` which, at runtime, attempts to resolve the real export via `GetProcAddress` and falls back to a hand-coded emulation if missing. The library covers hundreds of APIs across dozens of system DLLs, including kernel32, bcrypt, user32, shell32, DNS, WinHttp, D3D11, and many more. The fallback implementations often reverse-engineer Windows internals, such as SRWLock/condition variable data structures, HSTRING layout, API-set namespace resolution, and threadpool dispatch. The repository also provides a companion tool (YY.Depends.Analyzer) for analyzing binary dependencies and identifying missing APIs, as well as a PE header patcher (MinimumRequiredVersionHelper) for lowering the reported minimum OS version in executables. The project is delivered as static .obj/.lib files and a NuGet package, integrated into the MSBuild pipeline. It is heavily tested with a custom unit test framework that can force fallback paths via `AwaysNullGuard` guards. While the codebase exhibits high craftsmanship in its emulation patterns, the sheer breadth and reliance on undocumented Windows internals introduce maintenance challenges. Some components (e.g., bcrypt.hpp) are monolithic, and hardcoded offsets or version-specific workarounds require continuous updates as Windows evolves.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
katahiromz/RisohEditor ★ 521 62 APPLICATION

RisohEditor is a mature Win32 desktop application for editing, creating, and translating Windows PE resources (.exe, .dll, .rc, .res files). It supports all standard resource types including icons, cursors, bitmaps, dialogs, menus, accelerators, string tables, version info, message tables, toolbars, manifests, HTML, and custom binary data. The application provides a visual dialog editor (RADical) with drag-and-drop control placement, a tree-view resource browser, a hex viewer, and a code editor for RC text. It integrates with external tools like windres, mcpp (preprocessor), UPX (compression), and includes an embedded scripting language (EGA) for batch automation. Architecture follows the Win32 SDK pattern with custom MFC-like wrappers (MZC4 library) for window subclassing, property sheets, splitters, and utility classes. Resource parsing and serialization is done per-type via dedicated classes (e.g., IconRes, MenuRes, DialogRes) that implement LoadFromStream/SaveToStream. The application maintains a global resource database (g_res) and constants database (g_db) for ID resolution. It supports 17+ UI languages and can encrypt resources via WonRes submodule. Entry points include MMainWnd (main window) and the command-line interface for batch processing.

RATING: 7.1/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: