Function at 0x503cdf
Capabilities:
Capture screenshot

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
push 0x68
push ebx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x504002
push 0x68
push ebx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_IsWindowEnabled
test eax, eax
je 0x504002
push ebx
call sub.USER32.dll_GetDC
mov dword [0x589f4c], eax
cmp dword [0x589f4c], 0
je 0x504002
push dword [0x589f4c]
call fcn.005032d8
push 0x589f58
push 0x69
push ebx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_GetWindowRect
push 2
push 0x589f58
push ebx
push 0
call sub.USER32.dll_MapWindowPoints
mov eax, dword [0x589f5c]
mov dword [0x589f7c], eax
push 0x589f68
push ebx
call sub.USER32.dll_GetClientRect
mov edx, dword [0x589f7c]
add edx, 7
mov dword [0x589f74], edx
push dword [0x589f4c]
call sub.GDI32.dll_CreateCompatibleDC
mov dword [0x589f50], eax
push dword [0x589f74]
push dword [0x589f70]
push dword [0x589f4c]
call sub.GDI32.dll_CreateCompatibleBitmap
mov dword [0x589f44], eax
push dword [0x589f44]
push dword [0x589f50]
call sub.GDI32.dll_SelectObject
mov dword [0x589f48], eax
push 1
push dword [0x589f50]
call sub.GDI32.dll_SetMapMode
cmp dword [0x556164], 0
jne 0x503de4
cmp dword [0x55616c], 0
je 0x503df8
push 0xf
call sub.USER32.dll_GetSysColor
push eax
call sub.GDI32.dll_CreateSolidBrush
mov dword [0x589f54], eax
jmp 0x503e0a
push 5
call sub.USER32.dll_GetSysColor
push eax
call sub.GDI32.dll_CreateSolidBrush
mov dword [0x589f54], eax
push dword [0x589f54]
push 0x589f68
push dword [0x589f50]
call sub.USER32.dll_FillRect
push dword [0x589f54]
call sub.GDI32.dll_DeleteObject
xor ecx, ecx
mov dword [0x589f80], ecx
jmp 0x503e5f
cmp edi, eax
je 0x503e59
imul edx, dword [0x589f80], 0x17
cmp dword [esi + edx*4 + 0x34], 0
je 0x503e69
push 0
push 0
push eax
push esi
push dword [0x589f50]
push ebx
call fcn.005037cc
inc dword [0x589f80]
mov eax, dword [0x589f80]
cmp eax, 0x28
jl 0x503e35
imul ecx, edi, 0x17
push dword [esi + ecx*4 + 0x44]
push 1
push edi
push esi
push dword [0x589f50]
push ebx
call fcn.005037cc
push 0x589f68
push dword [esi + 0x34]
call sub.USER32.dll_GetWindowRect
mov eax, dword [0x589f6c]
add eax, 0xfffffff9
mov dword [0x589f7c], eax
push 0x589f78
push ebx
call sub.USER32.dll_ScreenToClient
push 0x426
push ebx
call sub.USER32.dll_GetDlgItem
mov esi, eax
mov dword [0x589f84], esi
test esi, esi
je 0x503f2f
push dword [0x589f64]
push dword [0x589f60]
push dword [0x589f7c]
push dword [0x589f58]
call sub.GDI32.dll_CreateRectRgn
mov esi, eax
mov dword [0x589f88], esi
push esi
push dword [0x589f4c]
call sub.GDI32.dll_SelectClipRgn
push 0x589f8c
push dword [0x589f84]
call sub.USER32.dll_GetWindowRect
push 2
push 0x589f8c
push ebx
push 0
call sub.USER32.dll_MapWindowPoints
push dword [0x589f98]
push dword [0x589f94]
push dword [0x589f90]
push dword [0x589f8c]
push dword [0x589f4c]
call sub.GDI32.dll_ExcludeClipRect
push 0xcc0020
mov edx, dword [0x589f7c]
push edx
mov eax, dword [0x589f58]
push eax
push dword [0x589f50]
push dword [0x589f64]
push dword [0x589f60]
push edx
push eax
push dword [0x589f4c]
call sub.GDI32.dll_BitBlt
cmp dword [0x589f84], 0
je 0x503f81
push 0
push dword [0x589f4c]
call sub.GDI32.dll_SelectClipRgn
push dword [0x589f88]
call sub.GDI32.dll_DeleteObject
push dword [0x589f48]
push dword [0x589f50]
call sub.GDI32.dll_SelectObject
push dword [0x589f44]
call sub.GDI32.dll_DeleteObject
push dword [0x589f50]
call sub.GDI32.dll_DeleteDC
push dword [0x589f4c]
push ebx
call sub.USER32.dll_ReleaseDC
mov ecx, dword [0x589f74]
mov dword [0x589f7c], ecx
push 0x589f78
push ebx
call sub.USER32.dll_ScreenToClient
mov eax, dword [0x589f7c]
mov dword [0x589f74], eax
xor edx, edx
mov dword [0x589f68], edx
push dword [0x589f74]
push dword [0x589f70]
push dword [0x589f6c]
push dword [0x589f68]
push 0
push ebx
call fcn.0050340c
call fcn.00503398
pop edi
pop esi
pop ebx
pop ebp
ret 0xc