ollydbg radasm.exe view windows (W Icon) sort class and look for Mdi class like mdiEditChild / dialog etc
example
Windows, item 96 Handle=000704EE Title=C:\testrad\Html\Projects\testrad\testradinc3.html Parent=000203E4 ID=0000FDEA (65002.) Style=56CF0001 WS_CHILD|WS_GROUP|WS_TABSTOP|WS_CLIPSIBLINGS|WS_CLIPCHILDREN|WS_VISIBLE|WS_SYSMENU|WS_THICKFRAME|WS_CAPTION|1 ExtStyle=00000340 WS_EX_MDICHILD|WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE Thread=Main ClsProc=00xxxxxx RadASM.00xxxxxx Class=MdiEditChild
right click message breakpoint on class proc
in the dialog
choose window creation and destruction never pause radio button log winproc args always
you should be able to capture the WM_CLOSE sent by ctrl+f4
Log data Address Message 00XXXXXX CALL to Assumed WinProc from USER32.7E418731 hWnd = 000704EE ('C:\testrad\Html\Projects\test...',class='MdiEditChild',parent=000203E4) Message = WM_CLOSE wParam = 0 lParam = 0
The patch below should pop up a Messagebox when you hit Middle Mouse Button on the SysTabControl
004071A7 |> \90 NOP ; Default case of switch 004070B6 004071A8 |. 90 NOP 004071A9 |. 90 NOP 004071AA |. E8 5D1F0400 CALL RadASMWM.0044910C 00449100 <STRING> . 57 4D 5F 4D 42 5>ASCII "WM_MB_CLICK",0 0044910C <WM_MB_CLICK_HANDLER> /$ 60 PUSHAD ; CALL FROM 4071AA 0044910D |. 9C PUSHFD 0044910E |. 3D 07020000 CMP EAX, 207 ; WM_MB 00449113 |. 75 13 JNZ SHORT <RadASMWM.RETTOORIGHANDLER> 00449115 |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL 00449117 |. 68 00914400 PUSH <RadASMWM.STRING> ; |Title = "WM_MB_CLICK" 0044911C |. 68 00914400 PUSH <RadASMWM.STRING> ; |Text = "WM_MB_CLICK" 00449121 |. 6A 00 PUSH 0 ; |hOwner = NULL 00449123 |. E8 A2FBFFFF CALL <JMP.&user32.MessageBoxA> ; \MessageBoxA 00449128 <RETTOORIGHANDLER> |> 9D POPFD 00449129 |. 61 POPAD 0044912A |. 8B45 08 MOV EAX, DWORD PTR SS:[EBP+8] ; RadASMWM.<ModuleEntryPoint> 0044912D |. E8 F7B8FBFF CALL <RadASMWM.ORIGINAL HANDLER> 00449132 \. C3 RETN