Function at 0x53f6f0
Capabilities:
Resume thread

Disassembly:
push ebx
push esi
push edi
add esp, 0xffffffdc
mov byte [esp], cl
mov ebx, edx
mov esi, eax
xor eax, eax
call fcn.0053f684
xor eax, eax
mov dword [esp + 1], eax
xor eax, eax
mov dword [esp + 5], eax
call fcn.00407874
inc dword [eax + 0xb4]
call fcn.00407874
lea eax, [eax + 0x64]
xor ecx, ecx
mov edx, 0x50
call fcn.00403830
call fcn.00407874
lea edi, [eax + 0x64]
call fcn.00407874
mov eax, dword [eax + 0xb4]
mov dword [edi], eax
mov dword [edi + 4], esi
test bl, bl
je 0x53f75a
cmp dword [0x60bc1c], 0
jne 0x53f75e
xor eax, eax
jmp 0x53f760
mov al, 1
mov byte [edi + 0xc], al
movzx eax, byte [esp]
mov byte [edi + 0x40], al
lea eax, [edi + 0x38]
push eax
call sub.user32.dll_GetCursorPos
lea eax, [edi + 0x20]
push eax
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_GetClientRect
push 2
lea eax, [edi + 0x20]
push eax
push 0
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_MapWindowPoints
lea eax, [esp + 0x14]
push eax
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_GetWindowRect
push 3
push 0
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_GetDCEx
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x14]
mov dword [edi + 0x30], eax
mov esi, dword [esp + 0x20]
sub esi, dword [esp + 0x18]
mov dword [edi + 0x34], esi
push esi
mov eax, dword [edi + 0x30]
push eax
mov eax, dword [edi + 0x14]
push eax
call sub.gdi32.dll_CreateCompatibleBitmap
mov dword [edi + 0x1c], eax
mov eax, dword [edi + 0x14]
push eax
call sub.gdi32.dll_CreateCompatibleDC
mov esi, eax
mov dword [edi + 0x18], esi
mov eax, dword [edi + 0x1c]
push eax
push esi
call sub.gdi32.dll_SelectObject
push 0x1e
mov eax, dword [edi + 0x18]
push eax
push 0x317
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_SendMessageA
cmp byte [edi + 0xc], 0
je 0x53f86b
push 0xffffffffffffffec
mov ebx, dword [edi + 4]
push ebx
call sub.user32.dll_GetWindowLongA
or eax, 0x80000
push eax
push 0xffffffffffffffec
push ebx
call sub.user32.dll_SetWindowLongA
mov dword [edi + 8], 0xaf
mov dword [edi + 0x10], 0x28
xor eax, eax
mov dword [esp + 0x10], eax
mov byte [esp + 0x10], 0
movzx eax, byte [edi + 0x10]
mov byte [esp + 0x12], al
push 2
lea eax, [esp + 0x14]
push eax
push 0
lea eax, [esp + 0xd]
push eax
mov eax, dword [edi + 0x18]
push eax
lea eax, [edi + 0x30]
push eax
lea eax, [esp + 0x2c]
push eax
push 0
mov eax, dword [edi + 4]
push eax
call dword [0x60bc1c]
jmp 0x53f89c
mov dword [edi + 8], 0x96
xor eax, eax
mov dword [edi + 0x10], eax
push 0
push 0
push 0
push 0
call sub.gdi32.dll_CreateRectRgn
mov ebx, eax
push 0
push ebx
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_SetWindowRgn
test eax, eax
jne 0x53f89c
push ebx
call sub.gdi32.dll_DeleteObject
push 0x425f
push 0
push 0
push 0
push 0
push 0
mov eax, dword [edi + 4]
push eax
call sub.user32.dll_SetWindowPos
call fcn.00407874
lea eax, [eax + 0x64]
push eax
push 4
lea eax, [esp + 0x14]
push eax
mov ecx, 0x53f4c0
xor edx, edx
xor eax, eax
call fcn.00404ee0
mov ebx, eax
call fcn.00407874
mov dword [eax + 0x60], ebx
call fcn.00407874
cmp dword [eax + 0x60], 0
jne 0x53f8f7
call fcn.0053f5f0
jmp 0x53f908
call fcn.00407874
mov eax, dword [eax + 0x60]
push eax
call sub.kernel32.dll_ResumeThread
add esp, 0x24
pop edi
pop esi
pop ebx
ret