flat assembler
Message board for the users of flat assembler.

Index > Windows > flat assembler not responding

Author
Thread Post new topic Reply to topic
martinfejes



Joined: 02 Sep 2014
Posts: 4
Location: Hungary
martinfejes
Hello

I got interested in assembly and decided to play with it a little. I heard that flat assembler is the best out there so I wanted to use it.

The problem is that I can't do anything with the editor (FASMW), because it always hangs, except using a loaded file.
Opening one of the examples works just fine, but when I want to create a new one, it stops responding.
The following cases causes it to stop:
- trying to save a new file
- compile (new file)
- run (new file)
- build symbols (new file).

This looks like a persmission problem, but running the exe as administrator doesn't help, neither does compatibility mode.

My OS is Windows 8.1 64-bit.

Thanks in advance!

P.S.: Sorry if this is the wrong topic.
Post 02 Sep 2014, 17:43
View user's profile Send private message Visit poster's website Reply with quote
comrade



Joined: 16 Jun 2003
Posts: 1137
Location: Russian Federation
comrade
Please share out a dump file. Instructions are below.

To get a dump of the hanging process:

  1. Install the Standalone Debugging Tools for Windows from http://msdn.microsoft.com/en-us/windows/hardware/hh852365.aspx
  2. From the command line:
  3. cdb.exe -pv -pn fasmw.exe
  4. .dump /mFfhutp C:\somewhere\fasmhang.dmp
  5. qd


Then compress it (with 7zip/RAR at maximum settings), upload it to a cloud service (Google Drive, MSFT OneDrive, etc), and share out the link here.

Thank you.
Post 02 Sep 2014, 18:29
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
martinfejes



Joined: 02 Sep 2014
Posts: 4
Location: Hungary
martinfejes
comrade wrote:
Please share out a dump file. Instructions are below.

To get a dump of the hanging process:

  1. Install the Standalone Debugging Tools for Windows from http://msdn.microsoft.com/en-us/windows/hardware/hh852365.aspx
  2. From the command line:
  3. cdb.exe -pv -pn fasmw.exe
  4. .dump /mFfhutp C:\somewhere\fasmhang.dmp
  5. qd


Then compress it (with 7zip/RAR at maximum settings), upload it to a cloud service (Google Drive, MSFT OneDrive, etc), and share out the link here.

Thank you.


Thank you for your answer. I have done as you told and here is the dump file: Google Drive Link

If I can provide any more info, please tell me. Smile
Post 02 Sep 2014, 22:29
View user's profile Send private message Visit poster's website Reply with quote
shutdownall



Joined: 02 Apr 2010
Posts: 518
Location: Munich
shutdownall
What happens if you try to save one of the example files before compiling it ?
Couldn't it be a security issue depending on your antivirus kit / sandbox ?
Maybe you try to switch it off temporarily. Wink
Post 03 Sep 2014, 06:57
View user's profile Send private message Send e-mail Reply with quote
martinfejes



Joined: 02 Sep 2014
Posts: 4
Location: Hungary
martinfejes
shutdownall wrote:
What happens if you try to save one of the example files before compiling it ?
Couldn't it be a security issue depending on your antivirus kit / sandbox ?
Maybe you try to switch it off temporarily. Wink


When I tried to open a file from inside the editor to check what you said (file/open) it hangs. The only way I can open a file is double clicking it and letting windows open it with fasmw.exe.
Once opened, I can edit and save the file though.

Edit: Oh, and I don't have anti-virus or firewall software.
Post 03 Sep 2014, 07:09
View user's profile Send private message Visit poster's website Reply with quote
comrade



Joined: 16 Jun 2003
Posts: 1137
Location: Russian Federation
comrade
FASM doesn't seem to be doing anything wrong here. The code is hanging in a shell32 routine that is waiting to acquire a critical section (a mutex), which is currently owned by thread ID 0x3b0. This thread is not in the FASMW process (weird).

Code:
0:000> .effmach x86
Effective machine: x86 compatible (x86)
0:000:x86> .symfix+
0:000:x86> .load wow64exts
0:000:x86> kbn400
 # ChildEBP RetAddr  Args to Child
00 000cd94c 772aeca5 000003b0 00000000 00000000 ntdll_77290000!ZwWaitForSingleObject+0xc
01 000cd9c0 772aeb9f 00000002 75884df0 000cda34 ntdll_77290000!RtlpWaitOnCriticalSection+0xd0
02 000cd9ec 772aebcd 000cda10 75260f3d 75884df0 ntdll_77290000!RtlpEnterCriticalSectionContended+0xa0
03 000cd9f4 75260f3d 75884df0 7526dddc 000cde90 ntdll_77290000!RtlEnterCriticalSection+0x42
04 000cda10 752f23bb 000ce0d0 7526ddec 04657ef8 shell32!CMountPoint::GetMountPoint+0x40
05 000cde50 752f228f 000cde80 04668fc8 000ce574 shell32!GetFolderType+0xf4
06 000ce0a4 752f2655 000ce0c0 000ce574 00000000 shell32!CFSFolder::_GetFolderType+0x65
07 000ce0d0 752f260d 000ce564 000ce564 000ce574 shell32!CFSFolderViewCB::OnGetFolderType+0x3e
08 000ce51c 7535c9ca 04ab4e78 0000005e 00000000 shell32!CFSFolderViewCB::RealMessage+0xab
09 000ce540 752f3397 04ab4e78 0000005e 00000000 shell32!CBaseShellFolderViewCB::MessageSFVCB+0x1b
0a 000ce5b0 7526ef14 000004ae 00000002 046af7a0 shell32!CDefView::_ApplySniffedFolderType+0xea
0b 000ce5c0 7526f087 046af7a0 046af898 00010798 shell32!CDefView::_OnItemCountChanged+0x33
0c 000ce63c 752557a2 00010798 000004ae 04b70ee8 shell32!CDefView::WndProc+0x2c1
0d 000ce660 76667834 00010798 000004ae 04b70ee8 shell32!CDefView::s_WndProc+0x48
0e 000ce68c 76667a9a 75255756 00010798 000004ae user32!_InternalCallWinProc+0x23
0f 000ce71c 7666ce71 75255756 00000000 000004ae user32!UserCallWinProcCheckWow+0x184
10 000ce754 6c8c402b 75255756 00010798 000004ae user32!CallWindowProcW+0x83
11 000ce788 76667834 00000000 000004ae 04b70ee8 duser!WndBridge::RawWndProc+0xa9
12 000ce7b4 76667a9a 049d0f80 00010798 000004ae user32!_InternalCallWinProc+0x23
13 000ce844 7666988e 049d0f80 00000000 000004ae user32!UserCallWinProcCheckWow+0x184
14 000ce8b0 76682626 000d04da 00000000 00110724 user32!DispatchMessageWorker+0x208
15 000ce8e0 766826a8 00110724 000ce8fc 00000001 user32!IsDialogMessageW+0x107
16 000ce928 76682f93 00000000 00000001 000d04da user32!DialogBox2+0x176
17 000ce958 76683036 000d04da 74cd2c64 00354268 user32!InternalDialogBox+0x107
18 000ce970 76682ffb 74cd0000 003558d0 000d04da user32!DialogBoxIndirectParamAorW+0x32
19 000ce990 74cd3af4 74cd0000 003558d0 000d04da user32!DialogBoxIndirectParamW+0x1b
1a 000ce9d8 74cef6a0 00000001 00000000 00000000 comdlg32!CFileOpenSave::Show+0x179
1b 000cea04 74cef5f4 000d04da 000cea44 00000000 comdlg32!_InvokeNewFileOpenSave+0x80
1c 000cea2c 74cef54c 0035426c 000ceae4 00343720 comdlg32!_CreateNewFileOpenSaveInProc+0x6b
1d 000cea60 74cef441 00000000 0040b8a0 00343720 comdlg32!NewGetFileName+0xe5
1e 000cea8c 74d08f8e 3591692c 00000000 00410b2b comdlg32!GetFileName+0x97
1f 000cfb68 74d09443 000cfb88 004123a7 0040b8a0 comdlg32!GenericGetFileNameA+0x51f
20 000cfb70 004123a7 0040b8a0 00000000 00410b2b comdlg32!GetSaveFileNameA+0x12
WARNING: Stack unwind information not available. Following frames may be wrong.
21 000cfb88 76667834 000d04da 00000111 00000450 FASMW+0x123a7
22 000cfbb4 76667a9a 00410b2b 000d04da 00000111 user32!_InternalCallWinProc+0x23
23 000cfc44 76699cfe 00410b2b 00000000 00000111 user32!UserCallWinProcCheckWow+0x184
24 000cfcac 766803fc 00ac9fd0 00000000 00000000 user32!SendMessageWorker+0x2cb4e
25 000cfcc8 00411970 000d04da 00000111 00000450 user32!SendMessageA+0x45
26 000cfcf0 76667834 000d04da 00000403 00000000 FASMW+0x11970
27 000cfd1c 76667a9a 00410b2b 000d04da 00000403 user32!_InternalCallWinProc+0x23
28 000cfdac 76699cfe 00410b2b 00000000 00000403 user32!UserCallWinProcCheckWow+0x184
29 000cfe14 766803fc 00ac9fd0 00000000 00000000 user32!SendMessageWorker+0x2cb4e
2a 000cfe30 00412b65 000d04da 00000403 00000000 user32!SendMessageA+0x45
2b 000cfe54 76667834 000d04da 00000111 00000579 FASMW+0x12b65
2c 000cfe80 76667a9a 00410b2b 000d04da 00000111 user32!_InternalCallWinProc+0x23
2d 000cff10 7666988e 00410b2b 00000000 00000111 user32!UserCallWinProcCheckWow+0x184
2e 000cff7c 76678857 000cff98 00410ac2 0040b788 user32!DispatchMessageWorker+0x208
2f 000cff84 00410ac2 0040b788 7636919f fffd8000 user32!DispatchMessageA+0x10
30 000cff98 772da22b fffd8000 367cee3e 00000000 FASMW+0x10ac2
31 000cffdc 772da201 ffffffff 772cf22f 00000000 ntdll_77290000!__RtlUserThreadStart+0x20
32 000cffec 00000000 004106c5 fffd8000 00000000 ntdll_77290000!_RtlUserThreadStart+0x1b

0:000:x86> !cs 75884df0
-----------------------------------------
Critical section   = 0x0000000075884df0 (shell32!CMountPoint::_csDL+0x0)
DebugInfo          = 0x000000000456a160
LOCKED
LockCount          = 0xFFFFFFFF
WaiterWoken        = Yes
OwningThread       = 0x00000000000003b0
RecursionCount     = 0x80C
LockSemaphore      = 0x2
SpinCount          = 0xffffffffffffffff

0:000:x86> ~
.  0  Id: 174c.340 Suspend: 1 Teb: fffdb000 Unfrozen
   1  Id: 174c.984 Suspend: 1 Teb: fffd5000 Unfrozen
   2  Id: 174c.11e4 Suspend: 1 Teb: ffead000 Unfrozen
   3  Id: 174c.14f0 Suspend: 1 Teb: ffeaa000 Unfrozen
   4  Id: 174c.f24 Suspend: 1 Teb: ffea7000 Unfrozen
   5  Id: 174c.17f4 Suspend: 1 Teb: ffea4000 Unfrozen
   6  Id: 174c.80c Suspend: 1 Teb: ffea1000 Unfrozen
   7  Id: 174c.358 Suspend: 1 Teb: ffe9e000 Unfrozen
   8  Id: 174c.83c Suspend: 1 Teb: ffe9b000 Unfrozen
   9  Id: 174c.1328 Suspend: 1 Teb: ffe98000 Unfrozen
  10  Id: 174c.6e8 Suspend: 1 Teb: ffe95000 Unfrozen
  11  Id: 174c.c0 Suspend: 1 Teb: ffe92000 Unfrozen    


Perhaps we missed a thread here because this dump was generated from a 64-bit process.

martinfejes, any chance you could generate a dump again, but this time use a 32-bit version of cdb.exe? (You can get a 32-bit version of cdb.exe from under .\x86 or .\32 directory (forget which it is), or by installing the 32-bit debuggers).

_________________
comrade (comrade64@live.com; http://comrade.ownz.com/)


Last edited by comrade on 03 Sep 2014, 09:12; edited 1 time in total
Post 03 Sep 2014, 09:09
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
comrade



Joined: 16 Jun 2003
Posts: 1137
Location: Russian Federation
comrade
If I had to guess, this hang was due to a misbehaving 3rd-party shell extension.
Post 03 Sep 2014, 09:09
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
martinfejes



Joined: 02 Sep 2014
Posts: 4
Location: Hungary
martinfejes
comrade wrote:

martinfejes, any chance you could generate a dump again, but this time use a 32-bit version of cdb.exe? (You can get a 32-bit version of cdb.exe from under .\x86 or .\32 directory (forget which it is), or by installing the 32-bit debuggers).


Here is the dump file made with the 32-bit cdb.exe: drive link

By the way, am I doing it the right way?
I start fasmw.exe, make it hang and then run cdb.exe from the cmd as you suggested and make a dump file.
Post 03 Sep 2014, 13:28
View user's profile Send private message Visit poster's website Reply with quote
joebo



Joined: 03 Sep 2014
Posts: 1
joebo
I also started playing with fasm this morning. My virus scanned interrupted fasmw, which appeared to disappear and stall, and then quarantined some items. It might be a similar issue. I excluded fasm from the scanner and all is well.
Post 03 Sep 2014, 15:14
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 16850
Location: In your JS exploiting you and your system
revolution
It seems like it is time to delete your AV. It's more of a hindrance than a help.
Post 03 Sep 2014, 22:54
View user's profile Send private message Visit poster's website Reply with quote
comrade



Joined: 16 Jun 2003
Posts: 1137
Location: Russian Federation
comrade
In this dump, the UI thread is hung with the same stack. The critical section information is:
Code:
0:000> !cs 75884df0
-----------------------------------------
Critical section   = 0x75884df0 (shell32!CMountPoint::_csDL+0x0)
DebugInfo          = 0x029d9760
LOCKED
LockCount          = 0x1
WaiterWoken        = No
OwningThread       = 0x0000035c
RecursionCount     = 0x1
LockSemaphore      = 0x5F4
SpinCount          = 0x020007d0    


Thread 35c is in the dump:
Code:
0:000> ~
.  0  Id: 6e0.123c Suspend: 1 Teb: fffde000 Unfrozen
   1  Id: 6e0.bcc Suspend: 1 Teb: fffdb000 Unfrozen
   2  Id: 6e0.dec Suspend: 1 Teb: fffd8000 Unfrozen
   3  Id: 6e0.9d0 Suspend: 1 Teb: ffeac000 Unfrozen
   4  Id: 6e0.1698 Suspend: 1 Teb: ffea9000 Unfrozen
   5  Id: 6e0.d68 Suspend: 1 Teb: ffea6000 Unfrozen
   6  Id: 6e0.10c0 Suspend: 1 Teb: ffea3000 Unfrozen
   7  Id: 6e0.f64 Suspend: 1 Teb: ffea0000 Unfrozen
   8  Id: 6e0.16fc Suspend: 1 Teb: ffe9d000 Unfrozen
   9  Id: 6e0.560 Suspend: 1 Teb: ffe9a000 Unfrozen
  10  Id: 6e0.35c Suspend: 1 Teb: ffe97000 Unfrozen
  11  Id: 6e0.7c8 Suspend: 1 Teb: ffe94000 Unfrozen
  12  Id: 6e0.bb8 Suspend: 1 Teb: ffe91000 Unfrozen    


Code:
0:000> ~10s
eax=00000000 ebx=04d512e8 ecx=00000000 edx=00000000 esi=04d51128 edi=001b40c0
eip=772ce82c esp=04fafdec ebp=04faff8c iopl=0         nv up ei pl nz na po nc
cs=0023  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00000202
ntdll!NtWaitForWorkViaWorkerFactory+0xc:
772ce82c c21400          ret     14h
0:010> kcn400
 #
00 ntdll!NtWaitForWorkViaWorkerFactory
01 ntdll!TppWorkerThread
02 kernel32!BaseThreadInitThunk
03 ntdll!__RtlUserThreadStart
04 ntdll!_RtlUserThreadStart    


This is a threadpool worker thread. Likely something ran on this thread, acquired the critical section, but did not release before exiting. It could be a 3rd-party shell extension.

I see the following non-MSFT DLLs loaded in the fasmw.exe process:

  1. libsasl32.dll
  2. libaprutil_tsvn32.dll
  3. intl3_tsvn32.dll
  4. libapr_tsvn32.dll
  5. libsvn_tsvn32.dll
  6. TortoiseSVN32.dll
  7. TortoiseOverlays.dll
  8. TortoiseStub32.dll
  9. nd2np.dll


Try uninstalling TortoiseSVN and see if it fixes the hang. Before you do that, note down the version number of TortoiseSVN. If this is indeed caused by it, then I would want to check the diff between the version of TortoiseSVN you had installed and the latest version, and see what the bug was.
Post 04 Sep 2014, 03:13
View user's profile Send private message Visit poster's website AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2019, Tomasz Grysztar.

Powered by rwasa.