Function at 0x4f93f8
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff94
push ebx
push esi
push edi
mov ebx, edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x5c]
test esi, esi
je 0x4f941d
mov eax, esi
xor edx, edx
call fcn.00528168
test al, al
jne 0x4f942c
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
jmp 0x4fa084
mov esi, dword [ebx]
mov eax, dword [0x6604e8]
cmp esi, dword [eax]
jne 0x4f968e
movzx eax, word [ebx + 6]
cmp eax, 0x1a
jg 0x4f9469
je 0x4f954e
sub eax, 3
je 0x4f9561
sub eax, 3
je 0x4f94a7
dec eax
je 0x4f948c
sub eax, 0x10
je 0x4f94f5
jmp 0x4f9ec5
sub eax, 0x22
je 0x4f9629
sub eax, 0x11
je 0x4f9599
dec eax
je 0x4f95d9
sub eax, 8
je 0x4f9498
jmp 0x4f9ec5
mov dword [ebx + 0xc], 1
jmp 0x4fa084
mov eax, dword [0x660674]
mov eax, dword [eax]
mov dword [ebx + 0xc], eax
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x5c]
cmp byte [esi + 0x1c], 0
je 0x4f9ec5
mov byte [esi + 0x1c], 0
mov eax, esi
call fcn.00527c48
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
mov byte [edx + 0x1c], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x1c], 0
jne 0x4f9ec5
push 0x585
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_RedrawWindow
jmp 0x4f9ec5
mov eax, dword [ebp - 4]
add eax, 0x2c
push eax
mov eax, dword [ebp - 4]
add eax, 0x1c
push eax
mov eax, dword [ebp - 4]
add eax, 0x24
push eax
mov eax, dword [ebp - 4]
lea ecx, [eax + 0xc]
mov eax, dword [ebp - 4]
lea edx, [eax + 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
call fcn.004f3388
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 4]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004f4114
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov ecx, dword [ebp - 4]
xor edx, edx
call fcn.004f3a90
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x28]
mov edx, dword [ebx + 8]
mov dword [edx], eax
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00527c34
cmp eax, dword [ebx + 8]
jne 0x4f9ec5
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je 0x4fa084
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
jmp 0x4fa084
push 0xffffffffffffffec
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x4000
cmp eax, 0x4000
jne 0x4f95ca
push 0
push 0
push 0xb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fa084
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
jmp 0x4fa084
push 0xffffffffffffffec
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_GetWindowLongA
and eax, 0x4000
cmp eax, 0x4000
jne 0x4f961a
push 0
push 1
push 0xb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
push 0xffffffffffffffff
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_InvalidateRect
jmp 0x4fa084
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
jmp 0x4fa084
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je 0x4f9ec5
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
call fcn.0050172c
mov dword [ebx + 0xc], eax
mov eax, dword [ebx + 8]
cmp byte [eax + 0x20], 0
jne 0x4fa084
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
cmp byte [edx + 9], 0
je 0x4f967f
mov byte [eax + 0x20], 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xb4]
mov dword [eax + 4], edx
jmp 0x4fa084
push 0
xor ecx, ecx
xchg edx, eax
call fcn.005264d4
jmp 0x4fa084
mov eax, esi
cmp eax, 0x14
jg 0x4f96b9
je 0x4f9931
sub eax, 7
je 0x4f9d7f
dec eax
je 0x4f9e22
sub eax, 7
je 0x4f9a0b
jmp 0x4f9ec5
sub eax, 0x85
je 0x4f9bbc
sub eax, 0x292
je 0x4f96db
sub eax, 0xacf7
je 0x4f9907
jmp 0x4f9ec5
mov eax, dword [ebx + 4]
push eax
lea eax, [ebx + 8]
push eax
mov ecx, esi
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
call fcn.0050172c
mov edi, eax
mov dword [ebx + 0xc], edi
cmp edi, 2
je 0x4fa084
mov eax, dword [ebp - 4]
add eax, 0x2c
push eax
mov eax, dword [ebp - 4]
add eax, 0x1c
push eax
mov eax, dword [ebp - 4]
add eax, 0x24
push eax
mov eax, dword [ebp - 4]
lea ecx, [eax + 0xc]
mov eax, dword [ebp - 4]
lea edx, [eax + 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
call fcn.004f3388
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov byte [eax + 0x1c], 0
mov byte [eax + 0x39], 1
mov eax, dword [ebx + 4]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x4f9752
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
test eax, eax
je 0x4fa084
mov edx, dword [ebp - 4]
movzx ecx, byte [edx + 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
call fcn.004f4114
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
jne 0x4f978b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov ecx, dword [ebp - 4]
xor edx, edx
call fcn.004f3a90
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
call fcn.00436458
call fcn.00431e40
push eax
push 0
push 0
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
call fcn.004fa08c
mov eax, dword [ebp - 0x68]
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.0051edcc
mov eax, dword [ebx + 8]
push eax
push 0xffffffffffffffff
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
call fcn.004f4f10
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_SaveDC
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x88]
mov ecx, eax
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.0045be18
mov eax, dword [ebp - 4]
cmp dword [eax + 0x80], 0
je 0x4f98bc
mov eax, dword [ebp - 4]
cmp dword [eax + 0x7c], 0
je 0x4f98bc
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x7c]
mov eax, edi
xor ecx, ecx
mov edx, 1
call fcn.004f4bc8
movzx edx, byte [edi + 6]
imul edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x88]
add edx, edx
sub eax, edx
pop edx
sub eax, edx
push eax
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x80]
mov eax, esi
xor ecx, ecx
mov edx, 1
call fcn.004f4bc8
movzx edx, byte [esi + 6]
imul edx
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x88]
add edx, edx
sub eax, edx
pop edx
sub eax, edx
push eax
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_IntersectClipRect
push 0
mov esi, dword [ebp - 8]
push esi
push 0x14
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
push 0
push esi
push 0xf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
push 0x24
push esi
push 0x318
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_RestoreDC
jmp 0x4f9ec5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x1c], 0
jne 0x4f9ec5
push 0x405
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_RedrawWindow
jmp 0x4f9ec5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4f9ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne 0x4f9ec5
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp esi, dword [eax + 0x58]
je 0x4f9974
lea eax, [ebp - 0x5c]
push eax
push esi
call sub.gdi32.dll_GetClipBox
dec eax
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00527c48
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
mov byte [edx + 0x1c], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x1c], 0
jne 0x4fa084
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x4f99a9
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb0], 0
je 0x4f99d1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
jne 0x4f99d1
mov dword [ebx + 0xc], 1
jmp 0x4fa084
mov eax, dword [0x6602c0]
cmp dword [eax], 6
jl 0x4f9ec5
mov eax, dword [0x66011c]
cmp byte [eax], 0
je 0x4f9ec5
mov eax, dword [ebx + 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
cmp eax, dword [edx + 0x58]
je 0x4f9ec5
mov dword [ebx + 0xc], 1
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4f9ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne 0x4f9ec5
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp esi, dword [eax + 0x58]
je 0x4f9a4e
lea eax, [ebp - 0x5c]
push eax
push esi
call sub.gdi32.dll_GetClipBox
dec eax
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00527c48
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
mov byte [edx + 0x1c], al
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb0], 0
je 0x4f9b3e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
jne 0x4f9b3e
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_BeginPaint
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_GetWindowDC
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_SaveDC
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x4f9b22
push dword fs:[eax]
mov dword fs:[eax], esp
push 0xcc0020
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
call fcn.00436458
call fcn.00431e40
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x20]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x1c]
push eax
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_BitBlt
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4f9b29
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_RestoreDC
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_ReleaseDC
ret
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x1c], 0
jne 0x4f9b60
mov eax, dword [0x66011c]
cmp byte [eax], 0
je 0x4f9b85
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x58], 0
jne 0x4f9b85
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_BeginPaint
lea eax, [ebp - 0x4c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_EndPaint
jmp 0x4fa084
mov eax, dword [ebx + 8]
push eax
push 0xffffffffffffffff
mov esi, dword [ebx + 4]
push esi
mov ecx, esi
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
call fcn.004f4f10
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x4f9ec5
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
jmp 0x4f9ec5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4f9ec5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne 0x4f9ec5
mov eax, dword [0x66011c]
cmp byte [eax], 0
jne 0x4fa084
mov eax, dword [ebp - 4]
add eax, 0x2c
push eax
mov eax, dword [ebp - 4]
add eax, 0x1c
push eax
mov eax, dword [ebp - 4]
add eax, 0x24
push eax
mov eax, dword [ebp - 4]
lea ecx, [eax + 0xc]
mov eax, dword [ebp - 4]
lea edx, [eax + 0x3c]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
call fcn.004f3388
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00527c48
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
mov byte [edx + 0x1c], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x1c], 0
jne 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_GetWindowDC
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x58]
cmp eax, dword [ebp - 8]
je 0x4f9c80
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_GetClipBox
dec eax
jne 0x4f9c80
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_ReleaseDC
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x39], 0
je 0x4f9cb5
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x4f9c9d
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 4]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004f4114
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_SaveDC
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x4f9d78
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebx + 8]
push eax
push 0xffffffffffffffff
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 4]
call fcn.004f4f10
mov dword [ebx + 0xc], eax
cmp dword [ebp - 8], 0
je 0x4f9d4d
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je 0x4f9d4d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x2c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x44]
call fcn.00436458
call fcn.00431e40
push eax
push 0
push 0
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
call fcn.004fa08c
mov eax, dword [ebp - 0x68]
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.0051edcc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4fa084
mov eax, dword [ebp - 0xc]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_RestoreDC
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_ReleaseDC
ret
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004f32c8
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x3c], 0
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov edx, dword [0x459074]
call fcn.004046f4
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov si, 0xffb6
call fcn.00404764
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
cmp byte [eax + 0x1d8], 0
je 0x4fa084
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x5c]
mov byte [ebx + 0x39], 1
mov byte [ebx + 0x50], 1
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x3c]
call fcn.00465948
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fa084
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004f32c8
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x3c], 0
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov edx, dword [0x459074]
call fcn.004046f4
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov si, 0xffb6
call fcn.00404764
test al, al
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
cmp byte [eax + 0x1d8], 0
je 0x4fa084
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x5c]
mov byte [ebx + 0x39], 1
mov byte [ebx + 0x50], 0
push 0
push 0
push 0x85
mov eax, dword [ebx + 0x3c]
call fcn.00465948
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fa084
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.004ff0f8
mov eax, dword [ebx]
cmp eax, 0x186
jg 0x4f9f21
je 0x4f9fb5
cmp eax, 0xc2
jg 0x4f9f02
je 0x4f9fc4
sub eax, 5
je 0x4f9fef
sub eax, 0x2b
je 0x4f9fd3
jmp 0x4fa084
add eax, 0xffffff00
sub eax, 2
jb 0x4f9fd3
add eax, 0xffffff82
sub eax, 2
jb 0x4f9fc4
jmp 0x4fa084
cmp eax, 0x200
jg 0x4f9f43
je 0x4fa01a
sub eax, 0x18e
je 0x4f9f5d
sub eax, 9
je 0x4f9fc4
jmp 0x4fa084
sub eax, 0x201
je 0x4f9fd3
add eax, 0xffff4501
sub eax, 2
jb 0x4f9fd3
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov esi, dword [eax + 0x3c]
test esi, esi
je 0x4fa084
mov eax, esi
mov edx, dword [0x473994]
call fcn.004046f4
test al, al
je 0x4fa084
cmp dword [ebx + 0xc], 0
jne 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x260]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x4fa084
mov dword [ebx + 0xc], 0xffffffff
jmp 0x4fa084
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004f4044
jmp 0x4fa084
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004f4044
jmp 0x4fa084
mov eax, dword [ebp - 4]
cmp byte [eax + 0x60], 0
jne 0x4fa084
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004f4044
jmp 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x4fa084
push 0
push 0
push 0x85
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
jmp 0x4fa084
mov eax, dword [0x6604ec]
cmp dword [eax], 0
je 0x4fa084
mov eax, dword [0x6604ec]
mov eax, dword [eax]
test byte [eax + 0x1c], 0x10
jne 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
je 0x4fa084
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
mov edx, dword [0x6604ec]
mov edx, dword [edx]
cmp eax, dword [edx + 0x78]
je 0x4fa062
mov edx, eax
mov eax, dword [0x6604ec]
mov eax, dword [eax]
call fcn.00536508
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00527c48
test al, al
jne 0x4fa084
call sub.user32.dll_GetCapture
test eax, eax
je 0x4fa084
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004f4044
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret