Function at 0x47f934
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 0x47f959
mov eax, esi
xor edx, edx
call fcn.004d1b34
test al, al
jne 0x47f968
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
jmp 0x480727
mov esi, dword [ebx]
cmp esi, dword [0x526090]
jne 0x47fbc9
movzx eax, word [ebx + 6]
cmp eax, 0x1a
jg 0x47f9a0
je 0x47fa71
sub eax, 3
je 0x47fa84
sub eax, 3
je 0x47f9de
dec eax
je 0x47f9c3
sub eax, 0x10
je 0x47fa19
jmp case.0x47fbe2.9
sub eax, 0x22
je 0x47fb4c
sub eax, 0x11
je 0x47fabc
dec eax
je 0x47fafc
sub eax, 8
je 0x47f9cf
jmp case.0x47fbe2.9
mov dword [ebx + 0xc], 1
jmp 0x480727
mov eax, dword [0x524414]
mov eax, dword [eax]
mov dword [ebx + 0xc], eax
jmp 0x480727
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x5c]
cmp byte [esi + 0x1c], 0
je case.0x47fbe2.9
mov eax, esi
mov dl, 1
call fcn.004cf944
test al, al
jne case.0x47fbe2.9
push 0x585
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x47fbe2.9
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.0047981c
mov eax, dword [ebp - 4]
mov cl, 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.0047a5a4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov ecx, dword [ebp - 4]
xor edx, edx
call fcn.00479f08
jmp 0x480727
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 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004d15b4
cmp eax, dword [ebx + 8]
jne case.0x47fbe2.9
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je 0x480727
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
jmp 0x480727
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 0x47faed
push 0
push 0
push 0xb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
jmp 0x480727
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
jmp 0x480727
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 0x47fb3d
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 0x480727
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
jmp 0x480727
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je case.0x47fbe2.9
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.00488188
mov dword [ebx + 0xc], eax
mov eax, dword [ebx + 8]
cmp byte [eax + 0x30], 0
jne 0x480727
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
cmp byte [edx + 9], 0
je 0x47fbba
mov byte [eax + 0x30], 1
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
mov edx, dword [edx + 0x3c]
test edx, edx
je 0x47fba9
mov edx, dword [edx + 0x70]
mov dword [eax + 4], edx
jmp 0x480727
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0xb4]
mov dword [eax + 4], edx
jmp 0x480727
push 0
xor ecx, ecx
xchg edx, eax
call fcn.004cfcd8
jmp 0x480727
mov eax, esi
cmp eax, 0x14
jg 0x47fc0d
je 0x47ff74
add eax, 0xfffffff9
cmp eax, 8
ja case.0x47fbe2.9
jmp dword [eax*4 + 0x47fbe9]
sub eax, 0x85
je 0x480216
sub eax, 0x292
je 0x47fc38
sub eax, 0xacf5
je case.0x47fbe2.12
sub eax, 2
je case.0x47fbe2.12
jmp case.0x47fbe2.9
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.00488188
mov edi, eax
mov dword [ebx + 0xc], edi
cmp edi, 2
je 0x480727
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.0047981c
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 0x47fcaf
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 0x480727
mov edx, dword [ebp - 4]
mov cl, byte [edx + 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
call fcn.0047a5a4
mov eax, dword [ebp - 4]
cmp byte [eax + 4], 0
jne 0x47fce7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov ecx, dword [ebp - 4]
xor edx, edx
call fcn.00479f08
mov eax, dword [ebx + 8]
and eax, 4
cmp eax, 4
jne 0x47fd53
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x88]
neg eax
mov ecx, eax
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x88]
neg edx
mov edx, eax
mov eax, dword [ebp - 8]
call fcn.004425e4
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]
sub eax, dword [edx + 0x88]
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]
sub eax, dword [edx + 0x88]
push eax
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_IntersectClipRect
jmp 0x47fdc2
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.00427b88
call fcn.004236bc
push eax
push 0
push 0
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
call fcn.00480730
mov eax, dword [ebp - 0x68]
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.004ba38c
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.0047b410
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.004425e4
mov eax, dword [ebp - 4]
cmp dword [eax + 0x80], 0
je 0x47fe86
mov eax, dword [ebp - 4]
cmp dword [eax + 0x7c], 0
je 0x47fe86
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x7c]
mov eax, edi
xor ecx, ecx
mov edx, 1
call fcn.0047b0d4
xor edx, edx
mov dl, 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.0047b0d4
xor edx, edx
mov dl, 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
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x20]
push eax
lea eax, [ebp - 0x6c]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x1c]
xor edx, edx
xor eax, eax
call fcn.00406b6c
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0xb4]
mov eax, dword [ebx + 4]
call fcn.004ba1b8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov esi, dword [eax + 0x3c]
test esi, esi
je 0x47fef7
mov eax, esi
mov edx, dword [0x51e0a4]
call fcn.00403b38
test al, al
je 0x47fef7
mov eax, dword [esi + 0x218]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
je 0x47ff0b
push 0
mov eax, dword [ebp - 8]
push eax
push 0xf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
jmp 0x47ff0b
push 0
mov eax, dword [ebp - 8]
push eax
push 0xf
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
push 0x24
mov eax, dword [ebp - 8]
push eax
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
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x4c]
sub eax, 0xa
jne 0x480727
jmp case.0x47fbe2.9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov byte [eax + 0x39], 1
cmp byte [eax + 0x1c], 0
jne case.0x47fbe2.9
push 0x405
push 0
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_RedrawWindow
jmp case.0x47fbe2.9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je case.0x47fbe2.9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne case.0x47fbe2.9
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp esi, dword [eax + 0x58]
je 0x47ffb7
lea eax, [ebp - 0x5c]
push eax
push esi
call sub.gdi32.dll_GetClipBox
dec eax
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
xor edx, edx
call fcn.004cf944
test al, al
jne 0x480727
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x47ffdd
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb0], 0
je 0x480005
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
jne 0x480005
mov dword [ebx + 0xc], 1
jmp 0x480727
mov eax, dword [0x524258]
cmp dword [eax], 6
jl case.0x47fbe2.9
cmp byte [0x521eb4], 0
je case.0x47fbe2.9
mov eax, dword [ebx + 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x5c]
cmp eax, dword [edx + 0x58]
je case.0x47fbe2.9
mov dword [ebx + 0xc], 1
jmp 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je case.0x47fbe2.9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne case.0x47fbe2.9
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp esi, dword [eax + 0x58]
je 0x480081
lea eax, [ebp - 0x5c]
push eax
push esi
call sub.gdi32.dll_GetClipBox
dec eax
je 0x480727
mov eax, dword [ebp - 4]
cmp byte [eax + 0xb0], 0
je 0x48015d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
jne 0x48015d
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 0x480141
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.00427b88
call fcn.004236bc
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 0x480148
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]
xor edx, edx
call fcn.004cf944
test al, al
jne 0x480183
cmp byte [0x521eb4], 0
je 0x4801a8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x58], 0
jne 0x4801a8
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 0x480727
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.0047b410
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne case.0x47fbe2.9
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
jmp case.0x47fbe2.9
cmp dword [ebx + 4], 1
jne case.0x47fbe2.9
mov eax, dword [ebp - 4]
cmp byte [eax + 0xc4], 0
je case.0x47fbe2.9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
call fcn.004b15c0
mov eax, dword [ebp - 4]
mov byte [eax + 0xc4], 0
jmp case.0x47fbe2.9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je case.0x47fbe2.9
mov eax, dword [ebp - 4]
cmp byte [eax + 0x98], 0
jne case.0x47fbe2.9
cmp byte [0x521eb4], 0
jne 0x480727
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.0047981c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
xor edx, edx
call fcn.004cf944
test al, al
jne 0x480727
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 0x4802ca
lea eax, [ebp - 0x5c]
push eax
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_GetClipBox
dec eax
jne 0x4802ca
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 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp byte [eax + 0x39], 0
je 0x4802fe
mov eax, dword [ebp - 4]
cmp byte [eax + 0x61], 0
jne 0x4802e7
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc]
mov eax, dword [ebp - 4]
mov cl, 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.0047a5a4
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_SaveDC
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x4803c1
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.0047b410
mov dword [ebx + 0xc], eax
cmp dword [ebp - 8], 0
je 0x480396
mov eax, dword [ebp - 4]
cmp dword [eax + 0x5c], 0
je 0x480396
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.00427b88
call fcn.004236bc
push eax
push 0
push 0
lea edx, [ebp - 0x6c]
mov eax, dword [ebp - 4]
call fcn.00480730
mov eax, dword [ebp - 0x68]
push eax
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.004ba38c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x480727
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.00485aa0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00479738
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x3c], 0
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov edx, dword [0x43fc24]
call fcn.00403b38
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov si, 0xffb8
call fcn.00403ba8
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
cmp byte [eax + 0x1a4], 0
je 0x480727
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.0044a4a8
push eax
call sub.user32.dll_SendMessageA
jmp 0x480727
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.00479738
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
cmp dword [eax + 0x3c], 0
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov edx, dword [0x43fc24]
call fcn.00403b38
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov si, 0xffb8
call fcn.00403ba8
test al, al
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
cmp byte [eax + 0x1a4], 0
je 0x480727
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.0044a4a8
push eax
call sub.user32.dll_SendMessageA
jmp 0x480727
mov edx, ebx
mov eax, dword [ebp - 4]
call fcn.00485aa0
mov eax, dword [ebx]
cmp eax, 0x18e
jg 0x480578
je 0x48060b
cmp eax, 0x100
jge 0x480550
sub eax, 5
je 0x48069d
sub eax, 0x2b
je 0x480681
sub eax, 0x92
je 0x480672
jmp 0x480727
add eax, 0xffffff00
sub eax, 2
jb 0x480681
add eax, 0xffffff82
sub eax, 2
jb 0x480672
sub eax, 4
je 0x480663
jmp 0x480727
cmp eax, 0x210
jg 0x4805a1
je 0x4805ca
sub eax, 0x197
je 0x480672
sub eax, 0x69
je 0x4806c4
dec eax
je 0x480681
jmp 0x480727
sub eax, 0xb02c
je 0x4805bb
add eax, 0xfffff32c
sub eax, 2
jb 0x480681
jmp 0x480727
mov eax, dword [ebp - 4]
mov byte [eax + 0xc4], 1
jmp 0x480727
mov eax, dword [ebx + 4]
and eax, 0xffff
dec eax
sub eax, 2
jae 0x480727
cmp word [ebx + 4], 1
jne 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004d15b4
test byte [eax + 0x7d], 4
je 0x480727
mov eax, dword [ebp - 4]
mov byte [eax + 0xc4], 1
jmp 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov esi, dword [eax + 0x3c]
test esi, esi
je 0x480727
mov eax, esi
mov edx, dword [0x51e0a4]
call fcn.00403b38
test al, al
je 0x480727
cmp dword [ebx + 0xc], 0
jne 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + 0x218]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x480727
mov dword [ebx + 0xc], 0xffffffff
jmp 0x480727
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0047a4d4
jmp 0x480727
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0047a4d4
jmp 0x480727
mov eax, dword [ebp - 4]
cmp byte [eax + 0x60], 0
jne 0x480727
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0047a4d4
jmp 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x480727
push 0
push 0
push 0x85
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_SendMessageA
jmp 0x480727
cmp dword [0x525f24], 0
je 0x480727
mov eax, dword [0x525f24]
test byte [eax + 0x1c], 0x10
jne 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
push eax
call sub.user32.dll_IsWindowEnabled
test eax, eax
je 0x480727
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x54]
mov edx, dword [0x525f24]
cmp eax, dword [edx + 0x78]
je 0x480705
mov edx, eax
mov eax, dword [0x525f24]
call fcn.004cdfa8
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
call fcn.004d15c4
test al, al
jne 0x480727
call sub.user32.dll_GetCapture
test eax, eax
je 0x480727
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0047a4d4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret