Here's another big leak: This stack leaks nearly 1MB (~780K). When is Init_heap supposed to be undone?
+ 787080 ( 787080 - 0) 24 allocs BackTrace9BD000CB + 24 ( 24 - 0) BackTrace9BD000CB allocations ntdll!RtlpCallInterceptRoutine+40 (d:\blue\minkernel\ntos\rtl\heappriv.h, 3625) ntdll!RtlAllocateHeap+79836 (d:\blue\minkernel\ntos\rtl\heap.c, 1892) MSVCR120D!_heap_alloc_base+5D (f:\dd\vctools\crt\crtw32\heap\malloc.c, 58) MSVCR120D!_heap_alloc_dbg_impl+27B (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 431) MSVCR120D!_nh_malloc_dbg_impl+39 (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 239) MSVCR120D!_nh_malloc_dbg+49 (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 302) MSVCR120D!_malloc_dbg+39 (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 160) MSVCR120D!_aligned_offset_malloc_dbg+245 (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 2891) MSVCR120D!_aligned_malloc+2B (f:\dd\vctools\crt\crtw32\misc\dbgheap.c, 2622) rubyprov!aligned_malloc+1E (e:\dev\ruby\gc.c, 7393) rubyprov!heap_page_allocate+2C (e:\dev\ruby\gc.c, 1445) rubyprov!heap_page_create+36 (e:\dev\ruby\gc.c, 1531) rubyprov!heap_assign_page+18 (e:\dev\ruby\gc.c, 1553) rubyprov!heap_add_pages+61 (e:\dev\ruby\gc.c, 1567) rubyprov!Init_heap+5E (e:\dev\ruby\gc.c, 2187) rubyprov!ruby_setup+47 (e:\dev\ruby\eval.c, 57)