http://bugs.winehq.org/show_bug.cgi?id=15265
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net Summary|mdcrack 1.83 doesn't work |MDCrack v1.8(3) reports | |'Unable to allocate enough | |memory' when | |'--algorithm=NTLM1' is used
--- Comment #27 from Anastasius Focht focht@gmx.net --- Hello folks,
this might be a multi-threading application bug that just works in some cases by pure luck.
Although you can limit the 'cruncher' threads ('--threads=1') it will still fail when '--algorithm=NTLM1' is supplied via command line. All 'secondary' cruncher threads work the same way. Each thread gets its own instance data located in .data section.
The outcome is that an invalid memory block is passed to HeapReAlloc() which fails the heap manager validation (expected).
--- snip --- $ WINEDEBUG=+tid,+seh,+heap wine ./MDCrack-sse.exe --threads=1 --charset=TEStes --algorithm=NTLM1 D280553F0103F2E643406517296E7582 >>log2.txt 2>&1 ... 0011:Call KERNEL32.CreateThread(00000000,00000000,004011b3,00738440,00000000,0033fca0) ret=00568514 0011:Ret KERNEL32.CreateThread() retval=00000064 ret=00568514 0011:Call KERNEL32.WaitForMultipleObjects(00000001,0073b870,00000001,ffffffff) ret=00568626 ... 0031:Starting thread proc 0x4011b3 (arg=0x738440) ... 0031:Call ntdll.RtlReAllocateHeap(00110000,00000008,007384a4,00000001) ret=005bf826 0031:Ret ntdll.RtlReAllocateHeap() retval=00000000 ret=005bf826 0031:Call KERNEL32.GetLastError() ret=005c3c6a 0031:Ret KERNEL32.GetLastError() retval=00000057 ret=005c3c6a ... 0031:Call KERNEL32.WriteFile(00000004,00a5d35c,0000002b,00a5d33c,00000000) ret=005c0d24
Error / Unable to allocate enough memory ... --- snip ---
Comment #24 says it doesn't work on Windows 7 with following command line which indicates this might be indeed an application bug.
--- snip --- MDCrack-sse.exe --threads=1 --charset=TEStes --algorithm=NTLM1 D280553F0103F2E643406517296E7582 --- snip ---
Regards