Skip to content

Instantly share code, notes, and snippets.

#include <iostream>
#include <sys/stat.h>
int main (int /*argc*/, char* argv[])
{
struct stat fileInfo;
if (stat (argv[1], &fileInfo) == 0) {
std::cout << "The file's size is: " << fileInfo.st_size <<
" bytes" << std::endl;
} else {
#include <iostream>
#include <process.h>
#include <windows.h>
CRITICAL_SECTION g_cs;
static unsigned int ThreadMain (void* /*context*/)
{
EnterCriticalSection (&g_cs);
@Donpedro13
Donpedro13 / winlogos.gif
Last active May 27, 2020 07:41
winlogos
winlogos.gif
#include <ntifs.h>
#include <ntddk.h>
#include <ntstrsafe.h>
#define MFTPF_DEV_SYMLINK_NAME L"MFTPrefetch"
#define MFTPF_DEVICE 0x8000
#define IOCTL_MFTPF_PREFETCH_MFT CTL_CODE (MFTPF_DEVICE, 0x800, METHOD_NEITHER, FILE_ANY_ACCESS)
// Compile with MSVC. Target x86, then target x64.
// See what happens (run without a debugger attached).
#include <cstdint>
#include <iostream>
#include <windows.h>
LONG WINAPI MyUEF (PEXCEPTION_POINTERS pExp)
{
std::cout << "Unhandled exception with code " << std::hex <<
pExp->ExceptionRecord->ExceptionCode << std::endl;
#include <windows.h>
#include <werapi.h>
extern "C" {
__declspec(dllexport) HRESULT WINAPI OutOfProcessExceptionEventCallback (
PVOID /*pContext*/,
const PWER_RUNTIME_EXCEPTION_INFORMATION /*pExceptionInformation*/,
BOOL* pbOwnershipClaimed,
PWSTR pwszEventName,
// Compile with MSVC.
#include <windows.h>
#include <winnt.h>
#include <cstdio>
#pragma warning(disable:4717)
LONG WINAPI StackOverflowHandler (PEXCEPTION_POINTERS pExp)
{
size_t __chkstk (size_t stackSpaceSize)
{
// Calculate what the stack pointer would be, if the caller of
// __chkstk simply made its stack allocation instead of
// calling __chkstk.
//
// 0x18: 0x10 for 2 saved registers (used by __chkstk), plus
// 0x8 for the saved return address (__chkstk was call'd)
uintptr_t adjustedSP = __rsp + 0x18 - stackSpaceSize;
/* ... */
PEXCEPTION_RECORDS pExc = __rax;
if (pExc->ExceptionCode == EXCEPTION_STACK_OVERFLOW ||
(pExc->ExceptionCode == EXCEPTION_ACCESS_VIOLATION &&
pExc.ExceptionInformation[0] == EXCEPTION_EXECUTE_FAULT))
{
return E_NOTIMPL;
}
/* ... */
// Compile with MSVC, *Release* configuration
#include <iostream>
#include <new>
#include <windows.h>
LONG WINAPI MyUEF (PEXCEPTION_POINTERS pExp)
{
if (pExp->ExceptionRecord->ExceptionCode == STATUS_HEAP_CORRUPTION) {
std::cout << "Heap corruption detected!" << std::endl;