hello, roticv

the problem was blocked me about 2 months. I'v already asked it for the advanced coder(like f0dder,Ultrano). it seems they didn't find the way to figure out.

i described the problem in the follow thread.
http://www.asmcommunity.net/board/index.php?topic=20849.msg158689#msg158689
i don't know whether you have some interest to figure it out. if you do, I'll send the source code to you.

regards
Posted on 2005-05-04 04:23:31 by dcskm4200
Hello,

Just send the code (I would prefer if you attach the exe - would save me the trouble from assembling it). I will take a look.

PS: Please post in the correct forum (I do read most of the forums ;))

Regards,
Victor
Posted on 2005-05-04 07:39:18 by roticv
hello, roticv
thanks you frist.

I'v send the source code to you with a email. if you didn't recv it. let me know.

regards.

Posted on 2005-05-04 08:11:44 by dcskm4200
Change

pushad
invoke CreateThread,NULL,0,OFFSET Arp_IP2MAC,eax,THREAD_PRIORITY_NORMAL,NULL
popad ;invoke Arp_IP2MAC,eax

to

invoke CreateThread,NULL,0,OFFSET Arp_IP2MAC,eax,THREAD_PRIORITY_NORMAL,NULL
invoke CloseHandle, eax

and

pushad
invoke CreateThread,NULL,0,addr getMAC,phwnd,THREAD_PRIORITY_NORMAL,NULL
popad

to

invoke CreateThread,NULL,0,addr getMAC,phwnd,THREAD_PRIORITY_NORMAL,NULL
invoke CloseHandle,eax


Comments: Those pushad/popad are not needed. Always close the handles that you create. It seems to work fine for me (No huge process id now). Does the rest of the problems still persist?

PS: The number of threads created is really scary.

Regards,
Victor
Posted on 2005-05-04 09:39:34 by roticv
Hey,roticv
ok!
:lol:
you are a Code Warrior as sharp as a razor.

thanks you very much.
Posted on 2005-05-04 09:55:56 by dcskm4200
hello,roticv
i can't get the memory dump of the file dwwin.exe created.
here is a screen of dump
Attachments:
Posted on 2005-05-06 09:25:13 by dcskm4200
Doh!

I completely forgot about this, *blush*.
Anyway, I guess your crash is in kernel code (because of the EIP), and that it's probably a register preservation bug. You should btw upload source and exe here in a .zip, will allow more people to test...
Posted on 2005-05-06 09:37:08 by f0dder
hey, fodder
thanks you guiding.
the code may get some privacy msg in localnet if i opened to everyone.

I can't breaked the messageboard rule.

regards
Posted on 2005-05-06 09:48:24 by dcskm4200
Hello,

I realised that I have made a mistake. Yes, CloseHandle is neccessary, but it is located at the wrong place. The handle of the thread should not be closed right after creation, but after call to WaitForMultipleObjects using a loop.

If I am not wrong, the crash is inside ntdll, one of the small functions called by WaitForMultipleObjects. Hope this helps.
Posted on 2005-05-06 10:57:23 by roticv