Function at 0x5cbae8
Capabilities:
Check for time delay via gettickcount
Check for unmoving mouse cursor

Disassembly:
push 0x1b0
mov eax, 0x63b95b
call fcn.004d59c2
mov ebx, ecx
mov dword [ebp - 0x1a0], ebx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x180], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x174], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x194], eax
xor eax, eax
mov dword [ebp - 0x18c], eax
cmp dword [ebx + 0xa8], eax
je 0x5cdbde
lea ecx, [ebx + 0x2a4]
mov dword [ebp - 0x188], eax
call fcn.00613360
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x174]
test eax, eax
jle 0x5cbba2
mov ecx, dword [ebp - 0x188]
push ecx
lea ecx, [ebx + 0x2a4]
mov byte [ebp - 0x181], 0
call fcn.005d142e
lea ecx, [ebp - 0x181]
push ecx
push esi
push dword [ebp - 0x180]
mov edx, dword [eax]
mov ecx, eax
push edi
call dword [edx]
cmp byte [ebp - 0x181], 0
jne 0x5cbc59
inc dword [ebp - 0x188]
lea ecx, [ebx + 0x2a4]
call fcn.00613360
mov ecx, dword [ebp - 0x188]
cmp ecx, eax
jl 0x5cbb52
mov eax, 0x133
cmp edi, eax
ja 0x5ccbe2
je 0x5cd45e
cmp edi, 0x4e
ja 0x5cc7f4
je 0x5cc7cd
sub edi, 5
je 0x5cc76d
dec edi
dec edi
je 0x5cc713
sub edi, 8
je 0x5cbe44
dec edi
je 0x5cbd60
sub edi, 4
je 0x5cbd50
sub edi, 0xc
je 0x5cbc68
sub edi, 4
jne 0x5cdbde
mov ecx, dword [ebx + 0x200]
mov eax, dword [ebp - 0x174]
test ecx, ecx
jle 0x5cbc0f
mov dword [eax + 0x18], ecx
mov ecx, dword [ebx + 0x204]
test ecx, ecx
jle 0x5cbc1c
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebx + 0x208]
test ecx, ecx
jle 0x5cbc29
mov dword [eax + 0x20], ecx
mov ecx, dword [ebx + 0x20c]
test ecx, ecx
jle 0x5cbc36
mov dword [eax + 0x24], ecx
mov ecx, dword [ebx + 0x208]
test ecx, ecx
jle 0x5cbc43
mov dword [eax + 8], ecx
mov ecx, dword [ebx + 0x20c]
test ecx, ecx
jle 0x5cdbde
mov dword [eax + 0xc], ecx
jmp 0x5cdbde
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
mov al, 1
jmp 0x5cdbe0
xor eax, eax
inc eax
cmp si, ax
jne 0x5cdbde
cmp byte [ebx + 0x271], 0
jne 0x5cdbe0
xor eax, eax
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x17c]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x17c]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x178]
mov ecx, ebx
push dword [ebp - 0x17c]
call fcn.005cada3
mov ebx, eax
test ebx, ebx
je 0x5cdbde
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 0x14]
test al, 2
je 0x5cdbde
xor eax, eax
lea edi, [ebp - 0x10c]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x110], 0x1a
mov dword [ebp - 0x10c], ebx
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x108], eax
lea ecx, [ebp - 0x110]
mov eax, dword [ebx]
push ecx
mov ecx, ebx
call dword [eax + 0x12c]
jmp 0x5cbc61
mov ecx, dword [ebp - 0x194]
xor eax, eax
inc eax
mov dword [ecx], eax
jmp 0x5cdbe0
and dword [ebp - 0x110], 0
lea edi, [ebp - 0x10c]
xor eax, eax
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x1f8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebx + 0x1fc]
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1ec]
mov dword [ebp - 0x108], eax
test ecx, ecx
je 0x5cbdcd
mov dword [ebp - 0x110], 0xa
lea edx, [ebp - 0x110]
mov dword [ebp - 0x10c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x12c]
mov ecx, dword [ebx + 0x1f0]
test ecx, ecx
je 0x5cbdf6
mov dword [ebp - 0x110], 0xe
lea edx, [ebp - 0x110]
mov dword [ebp - 0x10c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x12c]
push 0
mov ecx, ebx
call fcn.005cf525
mov esi, dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, esi
jne 0x5cbe23
push 4
push esi
call dword [sym.imp.USER32.dll_GetWindow]
test eax, eax
je 0x5cbe23
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebx + 0xdc]
test eax, eax
je 0x5cdbde
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
and dword [ebx + 0xdc], 0
jmp 0x5cdbde
push 0
lea eax, [ebp - 0x20]
xorps xmm0, xmm0
push eax
push dword [ebx + 0xa8]
movdqu xmmword [ebp - 0x20], xmm0
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x5cbc61
xor eax, eax
cmp dword [ebx + 0x1e4], eax
jne 0x5cbeb3
push 0x3c
push eax
mov dword [ebp - 0x170], eax
lea eax, [ebp - 0x16c]
push eax
call fcn.004cf9d0
add esp, 0xc
lea eax, [ebp - 0x170]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x170]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x5cbc61
mov byte [ebp - 0x181], al
xorps xmm0, xmm0
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0xa8]
movdqu xmmword [ebp - 0x30], xmm0
call dword [sym.imp.USER32.dll_GetClientRect]
mov edi, dword [ebp - 0x28]
mov ecx, ebx
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
sub edi, dword [ebp - 0x30]
push 1
mov dword [ebp - 0x180], edi
mov dword [ebp - 0x190], eax
call fcn.005cf970
cmp byte [ebx + 0x245], 0
je 0x5cc076
lea eax, [ebp - 0x30]
mov byte [ebx + 0x245], 0
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x5cc076
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x5cc076
mov ecx, dword [ebx + 0x1e4]
call fcn.005d91f8
test al, al
je 0x5cbf90
mov eax, dword [ebx + 0xb0]
test eax, eax
je 0x5cbf4c
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x5cbf5d
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ecx, dword [ebx + 0x1e4]
lea esi, [ebp - 0x30]
push 1
sub esp, 0x10
xor eax, eax
mov edi, esp
mov dword [ebx + 0xb0], eax
mov dword [ebx + 0xb8], eax
mov eax, dword [ecx]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x54]
mov byte [ebp - 0x181], 1
jmp 0x5cc039
lea edi, [ebx + 0x2e0]
mov ecx, edi
mov dword [ebp - 0x194], edi
call fcn.005d16f0
mov ecx, dword [ebx + 0x1e4]
xor edx, edx
push reloc.OLEAUT32.dll_VariantCopy
push edx
push 0x5d00e1
mov eax, dword [ecx]
call dword [eax + 0x120]
xor esi, esi
mov ecx, edi
mov dword [ebp - 0x188], esi
call fcn.00613360
test eax, eax
jle 0x5cc039
push esi
mov ecx, edi
call fcn.005d142e
mov esi, eax
mov ecx, esi
mov dword [ebp - 0x18c], esi
mov edx, dword [esi]
call dword [edx + 0x118]
mov ebx, dword [esi]
mov ecx, esi
test al, al
jne 0x5cbff8
call dword [ebx + 0x50]
jmp 0x5cbfff
lea eax, [ebp - 0x6c]
push eax
call dword [ebx + 0x48]
mov ecx, dword [ebp - 0x18c]
mov esi, eax
push 1
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ebx + 0x54]
mov esi, dword [ebp - 0x188]
mov edi, dword [ebp - 0x194]
inc esi
mov ecx, edi
mov dword [ebp - 0x188], esi
call fcn.00613360
cmp esi, eax
jl 0x5cbfd1
mov ebx, dword [ebp - 0x1a0]
cmp byte [ebx + 0x244], 0
je 0x5cc070
xor eax, eax
mov ecx, ebx
push eax
push eax
push eax
push str.windowinit
push dword [ebx + 0x1e4]
mov byte [ebx + 0x244], al
call fcn.005cf0d3
push dword [ebx + 0xa8]
lea ecx, [ebx + 0x128]
call fcn.005de3d3
mov edi, dword [ebp - 0x180]
cmp byte [ebx + 0x246], 0
je 0x5cc088
push 1
mov ecx, ebx
call fcn.005cf82a
cmp byte [ebx + 0x249], 0
je 0x5cc0fa
push 0xffffffffffffffec
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, eax
or ecx, 0x80000
cmp eax, ecx
je 0x5cc0ba
push ecx
push 0xffffffffffffffec
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SetWindowLongW]
lea esi, [ebx + 0x260]
mov byte [ebx + 0x247], 1
push esi
lea eax, [ebp - 0x20]
push eax
push eax
call dword [sym.imp.USER32.dll_UnionRect]
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x28]
push 0x10
cmovg eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 0x24]
push 0
cmovg eax, dword [ebp - 0x24]
push esi
mov dword [ebp - 0x14], eax
call fcn.004cf9d0
add esp, 0xc
cmp byte [ebx + 0x247], 0
je 0x5cc140
cmp dword [ebx + 0xb8], 0
jne 0x5cc140
push dword [ebx + 0xac]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebx + 0xb0], eax
lea eax, [ebx + 0xbc]
push eax
push dword [ebp - 0x190]
push edi
push dword [ebx + 0xac]
call fcn.005dff2f
add esp, 0x10
mov dword [ebx + 0xb8], eax
and dword [ebp - 0x130], 0
lea eax, [ebp - 0x12c]
push 0x3c
push 0
push eax
call fcn.004cf9d0
add esp, 0xc
lea eax, [ebp - 0x130]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp byte [ebx + 0x247], 0
je 0x5cc646
push dword [ebx + 0xb8]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebx + 0xb0]
mov dword [ebp - 0x178], eax
call dword [sym.imp.GDI32.dll_SaveDC]
cmp byte [ebx + 0x249], 0
mov dword [ebp - 0x198], eax
je 0x5cc229
mov edi, dword [ebp - 0x24]
mov esi, edi
sub esi, dword [ebp - 0x14]
mov ecx, edi
sub ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x188], esi
cmp esi, ecx
jge 0x5cc229
mov ecx, dword [ebp - 0x20]
mov eax, esi
imul eax, dword [ebp - 0x180]
xor edx, edx
mov dword [ebp - 0x18c], eax
cmp ecx, dword [ebp - 0x18]
jge 0x5cc207
lea edi, [eax + ecx]
shl edi, 2
mov eax, dword [ebx + 0xbc]
inc ecx
mov dword [edi + eax], edx
lea edi, [edi + 4]
cmp ecx, dword [ebp - 0x18]
jl 0x5cc1e3
mov ecx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x24]
mov esi, dword [ebp - 0x188]
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x180]
inc esi
mov dword [ebp - 0x18c], eax
mov eax, edi
sub eax, dword [ebp - 0x1c]
cmp esi, eax
mov dword [ebp - 0x188], esi
mov eax, dword [ebp - 0x18c]
jl 0x5cc1d8
mov ecx, dword [ebx + 0x1e4]
lea edx, [ebp - 0x20]
push edx
push dword [ebx + 0xb0]
mov eax, dword [ecx]
call dword [eax + 0x13c]
lea eax, [ebp - 0x20]
mov ecx, ebx
push eax
push dword [ebx + 0xb0]
call fcn.005caca6
lea edi, [ebx + 0x2b0]
xor esi, esi
mov ecx, edi
call fcn.00613360
test eax, eax
jle 0x5cc28d
push esi
mov ecx, edi
call fcn.005d142e
lea ecx, [ebp - 0x20]
push ecx
push dword [ebx + 0xb0]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x15c]
mov ecx, edi
inc esi
call fcn.00613360
cmp esi, eax
jl 0x5cc265
cmp byte [ebx + 0x249], 0
je 0x5cc515
mov esi, dword [ebp - 0x24]
mov ecx, esi
sub ecx, dword [ebp - 0x14]
mov eax, esi
sub eax, dword [ebp - 0x1c]
mov dword [ebp - 0x18c], ecx
cmp ecx, eax
jge 0x5cc328
mov eax, dword [ebp - 0x180]
mov edi, ecx
mov edx, dword [ebp - 0x20]
imul edi, eax
cmp edx, dword [ebp - 0x18]
jge 0x5cc310
mov ecx, dword [ebp - 0x18]
lea eax, [edi + edx]
shl eax, 2
mov esi, dword [ebx + 0xbc]
cmp byte [eax + esi + 3], 0
jne 0x5cc2f6
cmp byte [eax + esi], 0
jne 0x5cc2ee
cmp byte [eax + esi + 1], 0
jne 0x5cc2ee
cmp byte [eax + esi + 2], 0
je 0x5cc2f6
mov byte [eax + esi + 3], 0xff
mov ecx, dword [ebp - 0x18]
inc edx
add eax, 4
cmp edx, ecx
jl 0x5cc2cd
mov edx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x180]
add edi, eax
inc ecx
mov eax, esi
mov dword [ebp - 0x18c], ecx
sub eax, dword [ebp - 0x1c]
cmp ecx, eax
mov eax, dword [ebp - 0x180]
jl 0x5cc2bf
lea ecx, [ebx + 0x2bc]
xor edi, edi
call fcn.00613360
test eax, eax
jle 0x5cc515
push edi
lea ecx, [ebx + 0x2bc]
call fcn.005d142e
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x5cc367
push edi
lea ecx, [ebx + 0x2bc]
call fcn.005d1b93
jmp 0x5cc502
inc edi
push esi
mov dword [ebp - 0x1a4], edi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x5cc502
lea eax, [ebp - 0x40]
push eax
push esi
push dword [ebx + 0xa8]
call fcn.005cadf1
add esp, 0xc
lea eax, [ebp - 0x40]
xorps xmm0, xmm0
movdqu xmmword [ebp - 0x58], xmm0
push eax
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x58]
push eax
call dword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x5cc502
push dword [ebx + 0xb0]
and dword [ebp - 0x18c], 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov ecx, dword [ebp - 0x34]
mov edi, eax
sub ecx, dword [ebp - 0x3c]
lea eax, [ebp - 0x18c]
push eax
push ecx
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x40]
push ecx
push edi
mov dword [ebp - 0x194], edi
call fcn.005dff2f
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
sub edx, dword [ebp - 0x40]
sub ecx, dword [ebp - 0x3c]
imul edx, ecx
mov dword [ebp - 0x174], eax
shl edx, 2
push edx
push 0
push dword [ebp - 0x18c]
call fcn.004cf9d0
add esp, 0x1c
push dword [ebp - 0x174]
push edi
call dword [sym.imp.GDI32.dll_SelectObject]
push 0x35
push edi
push 0x317
push esi
mov dword [ebp - 0x1b0], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, dword [ebp - 0x34]
xor edx, edx
mov eax, dword [ebp - 0x3c]
mov ecx, edi
mov esi, dword [ebp - 0x40]
sub ecx, eax
test ecx, ecx
mov dword [ebp - 0x188], edx
mov ecx, dword [ebp - 0x38]
jle 0x5cc4b5
mov ebx, edx
mov eax, ecx
sub eax, esi
test eax, eax
jle 0x5cc49c
mov edi, edx
imul eax, ebx
mov ebx, dword [ebp - 0x18c]
add eax, edi
mov ebx, dword [ebx + eax*4]
mov dword [ebp - 0x1ac], ebx
test ebx, ebx
je 0x5cc48a
mov esi, dword [ebp - 0x18c]
mov ecx, ebx
or ecx, 0xff000000
mov dword [esi + eax*4], ecx
mov ecx, dword [ebp - 0x38]
mov esi, dword [ebp - 0x40]
mov ebx, dword [ebp - 0x188]
mov eax, ecx
inc edi
sub eax, esi
cmp edi, eax
jl 0x5cc45b
mov edi, dword [ebp - 0x34]
mov eax, edi
inc ebx
sub eax, dword [ebp - 0x3c]
mov dword [ebp - 0x188], ebx
cmp ebx, eax
jl 0x5cc451
mov ebx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x3c]
push 0xcc0020
push edx
push edx
push dword [ebp - 0x194]
sub edi, eax
sub ecx, esi
push edi
push ecx
push eax
push esi
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x1b0]
mov esi, dword [ebp - 0x194]
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x174]
call dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edi, dword [ebp - 0x1a4]
lea ecx, [ebx + 0x2bc]
call fcn.00613360
cmp edi, eax
jl 0x5cc33d
push dword [ebp - 0x198]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_RestoreDC]
cmp byte [ebx + 0x249], 0
je 0x5cc5d9
lea eax, [ebp - 0x40]
xorps xmm0, xmm0
push eax
push dword [ebx + 0xa8]
movdqu xmmword [ebp - 0x40], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
mov al, byte [ebx + 0x248]
xor ecx, ecx
mov byte [ebp - 0x186], al
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x180]
push 2
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0x190]
mov dword [ebp - 0x1a4], eax
pop eax
push eax
lea eax, [ebp - 0x188]
mov word [ebp - 0x188], cx
push eax
push ecx
lea eax, [ebp - 0x19c]
mov byte [ebp - 0x185], 1
push eax
push dword [ebx + 0xb0]
lea eax, [ebp - 0x1a8]
mov dword [ebp - 0x19c], ecx
push eax
lea eax, [ebp - 0x1b4]
mov dword [ebp - 0x198], ecx
push eax
push dword [ebx + 0xac]
push dword [ebx + 0xa8]
call dword [0x6f5848]
jmp 0x5cc60a
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push 0xcc0020
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebx + 0xb0]
push eax
mov eax, dword [ebp - 0x18]
sub eax, dword [ebp - 0x20]
push eax
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebx + 0xac]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x178]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp byte [ebx + 0xcc], 0
je 0x5cc6bd
push 0
push 0xffff0000
push 1
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0xac]
call fcn.005e3d64
add esp, 0x14
jmp 0x5cc6bd
push dword [ebx + 0xac]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x1e4]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0xac]
mov edx, dword [ecx]
call dword [edx + 0x13c]
lea edi, [ebx + 0x2b0]
xor esi, esi
mov ecx, edi
call fcn.00613360
test eax, eax
jle 0x5cc6ab
push esi
mov ecx, edi
call fcn.005d142e
lea ecx, [ebp - 0x20]
push ecx
push dword [ebx + 0xac]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x15c]
mov ecx, edi
inc esi
call fcn.00613360
cmp esi, eax
jl 0x5cc683
push dword [ebp - 0x178]
push dword [ebx + 0xac]
call dword [sym.imp.GDI32.dll_RestoreDC]
lea eax, [ebp - 0x130]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_EndPaint]
cmp byte [ebx + 0x245], 0
je 0x5cc6e0
mov ecx, ebx
call fcn.005cb919
push 0
mov ecx, ebx
call fcn.005cf970
cmp byte [ebp - 0x181], 0
je 0x5cbc61
push 1
xor eax, eax
mov ecx, ebx
push eax
push eax
push str.windowsize
push dword [ebx + 0x1e4]
call fcn.005cf0d3
jmp 0x5cbc61
mov edx, dword [ebx + 0x1e8]
test edx, edx
je 0x5cdbde
push 7
xor eax, eax
lea edi, [ebp - 0x14c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x150], 0x18
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], esi
mov dword [ebp - 0x14c], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1e8]
lea edx, [ebp - 0x150]
mov dword [ebp - 0x148], eax
jmp 0x5cdbd5
mov edx, dword [ebx + 0x1e8]
test edx, edx
je 0x5cc7b5
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x10c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x110], 0x19
mov dword [ebp - 0x10c], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1e8]
lea edx, [ebp - 0x110]
mov dword [ebp - 0x108], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x12c]
mov ecx, dword [ebx + 0x1e4]
test ecx, ecx
je 0x5cbc61
call fcn.005d9288
jmp 0x5cbc61
mov eax, dword [ebp - 0x174]
test eax, eax
je 0x5cbc61
push eax
push dword [ebp - 0x180]
push 0x204e
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x5cbc59
sub edi, 0x7b
je 0x5ccb07
sub edi, 0x85
je 0x5cca6d
dec edi
je 0x5cc9d8
dec edi
je 0x5cc95f
sub edi, 0xf
je 0x5cc929
dec edi
dec edi
jne 0x5cdbde
mov edi, dword [ebp - 0x180]
mov eax, 0x1999
cmp ax, di
jne 0x5cc85b
lea eax, [ebx + 0x110]
mov ecx, ebx
push eax
call fcn.005cb8c5
cmp byte [ebx + 0x120], 0
sete al
mov byte [ebx + 0x120], al
jmp 0x5cdbde
lea ecx, [ebx + 0x280]
call fcn.00613360
test eax, eax
jle 0x5cdbde
push dword [ebp - 0x18c]
lea ecx, [ebx + 0x280]
call fcn.005d142e
mov edx, eax
mov dword [ebp - 0x178], edx
mov ecx, dword [edx + 8]
cmp ecx, dword [ebx + 0xa8]
jne 0x5cc8a0
movzx ecx, di
cmp dword [edx + 0xc], ecx
jne 0x5cc8a0
cmp byte [edx + 0x10], 0
je 0x5cc8be
inc dword [ebp - 0x18c]
lea ecx, [ebx + 0x280]
call fcn.00613360
cmp dword [ebp - 0x18c], eax
jl 0x5cc86e
jmp 0x5cdbde
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [edx]
mov dword [ebp - 0x110], 0x1b
mov dword [ebp - 0x10c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x108], eax
mov eax, dword [ebx + 0x1f8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebx + 0x1fc]
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov ecx, dword [ebp - 0x178]
mov word [ebp - 0xfa], ax
mov dword [ebp - 0xf4], esi
mov eax, dword [ecx + 4]
mov ecx, dword [ecx]
mov dword [ebp - 0xf8], eax
jmp 0x5cdbcf
mov eax, dword [ebp - 0x174]
test eax, eax
je 0x5cdbde
push eax
push dword [ebp - 0x180]
push 0x2111
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x194]
mov dword [ecx], eax
test eax, eax
je 0x5cdbde
jmp 0x5cbc61
mov edx, dword [ebx + 0x1e8]
test edx, edx
je 0x5cdbde
xor eax, eax
lea edi, [ebp - 0x10c]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xf8], eax
mov word [ebp - 0xfc], ax
mov eax, dword [ebx + 0x1f8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebx + 0x1fc]
mov dword [ebp - 0x110], 5
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1e8]
jmp 0x5cdbc9
mov edx, dword [ebx + 0x1f4]
test edx, edx
je 0x5cdbde
xor eax, eax
lea edi, [ebp - 0x10c]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xf8], eax
mov word [ebp - 0xfc], ax
mov eax, dword [ebx + 0x1f8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebx + 0x1fc]
mov dword [ebp - 0x110], 4
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1f4]
lea edx, [ebp - 0x110]
mov dword [ebp - 0x108], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x12c]
and dword [ebx + 0x1f4], 0
jmp 0x5cdbde
mov edx, dword [ebx + 0x1e8]
test edx, edx
je 0x5cdbde
xor eax, eax
lea edi, [ebp - 0x10c]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xf8], eax
mov word [ebp - 0xfc], ax
mov eax, dword [ebx + 0x1f8]
mov dword [ebp - 0x104], eax
mov eax, dword [ebx + 0x1fc]
mov dword [ebp - 0x110], 3
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1e8]
lea edx, [ebp - 0x110]
mov dword [ebp - 0x108], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x12c]
mov eax, dword [ebx + 0x1e8]
mov dword [ebx + 0x1f4], eax
jmp 0x5cdbde
mov ecx, dword [ebp - 0x174]
movsx eax, cx
mov dword [ebp - 0x17c], eax
shr ecx, 0x10
movsx eax, cx
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x17c]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp dword [ebx + 0x1f0], 0
mov eax, dword [ebp - 0x17c]
mov dword [ebx + 0x1f8], eax
mov eax, dword [ebp - 0x178]
mov dword [ebx + 0x1fc], eax
je 0x5cdbde
mov ecx, ebx
call fcn.005ce8bd
mov edx, dword [ebp - 0x180]
lea edi, [ebp - 0x10c]
push 7
xor eax, eax
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x17c]
mov ecx, dword [ebx + 0x1f0]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x110], 0x14
mov dword [ebp - 0x10c], ecx
mov dword [ebp - 0xf8], edx
mov dword [ebp - 0x100], eax
mov word [ebp - 0xfa], dx
mov dword [ebp - 0xf4], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1f0]
lea edx, [ebp - 0x110]
mov dword [ebp - 0x108], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x12c]
and dword [ebx + 0x1f0], 0
jmp 0x5cdbde
mov eax, 0x207
cmp edi, eax
ja 0x5cd506
je 0x5cd480
mov eax, edi
sub eax, 0x138
je 0x5cd45e
sub eax, 0xc8
je 0x5cd00b
dec eax
je 0x5ccee4
dec eax
je 0x5cce48
dec eax
je 0x5ccd66
dec eax
je 0x5cccc8
dec eax
jne 0x5cdbde
mov ecx, ebx
call fcn.005ce8bd
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x198], eax
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov edx, eax
mov dword [ebx + 0x1f0], edx
test edx, edx
je 0x5cdbde
mov esi, dword [ebp - 0x174]
lea edi, [ebp - 0x10c]
push 7
xor eax, eax
pop ecx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x104], ecx
mov ecx, dword [ebp - 0x198]
mov dword [ebp - 0x110], 0x10
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], ecx
mov word [ebp - 0xfa], ax
jmp 0x5cdbb7
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x198], eax
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov esi, eax
mov dword [ebp - 0x1a4], esi
test esi, esi
je 0x5cdbde
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x114]
mov ecx, ebx
call fcn.005cf154
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x10c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x110], 0xf
mov ecx, dword [ebp - 0x178]
mov dword [ebp - 0x104], ecx
mov ecx, dword [ebp - 0x198]
mov dword [ebp - 0x100], ecx
jmp 0x5ccdf5
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, ebx
call fcn.005cf154
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x198], eax
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov esi, eax
mov dword [ebp - 0x1a4], esi
test esi, esi
je 0x5cdbde
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x110], 0x13
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x10c], esi
mov esi, dword [ebp - 0x174]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], esi
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebp - 0x1a4]
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x108], eax
push ecx
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x12c]
mov dword [ebx + 0x1f0], esi
jmp 0x5cdbde
mov ecx, ebx
call fcn.005ce8bd
mov edx, dword [ebp - 0x174]
mov eax, edx
shr eax, 0x10
cwde
mov dword [ebp - 0x178], eax
mov dword [ebx + 0x1fc], eax
mov eax, dword [ebx + 0x1f0]
movsx esi, dx
mov dword [ebx + 0x1f8], esi
test eax, eax
je 0x5cdbde
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x1f0]
mov ecx, dword [ebp - 0x178]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x110], 0xe
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], edx
mov dword [ebp - 0x104], esi
mov dword [ebp - 0x100], ecx
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1f0]
and dword [ebx + 0x1f0], 0
jmp 0x5cdbc9
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x198], eax
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov esi, eax
mov dword [ebp - 0x190], esi
test esi, esi
je 0x5cdbde
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x38]
test al, al
je 0x5ccf8f
mov eax, dword [ebx + 0x434]
mov byte [ebx + 0x430], 1
test eax, eax
je 0x5ccf67
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [ebx + 0x434], 0
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x50]
sub esp, 0x10
mov esi, eax
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x190]
push esi
push ebx
call fcn.005e42e8
add esp, 0x18
mov dword [ebx + 0x434], eax
mov ecx, ebx
call fcn.005cf154
mov dword [ebx + 0x1f0], esi
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x114]
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x178]
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x10c], esi
mov esi, dword [ebp - 0x174]
mov dword [ebp - 0x104], ecx
mov ecx, dword [ebp - 0x198]
mov dword [ebp - 0x110], 0xd
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], esi
mov dword [ebp - 0x100], ecx
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x190]
jmp 0x5cdbc9
cmp byte [ebx + 0x270], 0
push 3
pop ecx
jne 0x5cd068
xor eax, eax
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0xdc]
mov dword [ebp - 0x30], 0x10
mov dword [ebp - 0x2c], ecx
test eax, eax
jne 0x5cd045
mov dword [ebp - 0x24], 0x190
jmp 0x5cd057
push 0
push ecx
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [ebx + 0x270], 1
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
movsx esi, ax
xor eax, eax
inc eax
mov dword [ebp - 0x178], ecx
mov dword [ebp - 0x190], eax
cmp dword [ebx + 0x1f8], ecx
jne 0x5cd0a2
xor edx, edx
movzx eax, al
cmp dword [ebx + 0x1fc], esi
cmove eax, edx
mov dword [ebp - 0x190], eax
push esi
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebx + 0x1fc], esi
call fcn.005cada3
mov dword [ebp - 0x198], eax
test eax, eax
je 0x5cd0d0
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
cmp byte [ebp - 0x190], 0
je 0x5cd341
cmp byte [ebx + 0x430], 0
je 0x5cd341
cmp dword [ebp - 0x180], 1
jne 0x5cd341
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0xc
call fcn.004c4200
mov esi, eax
mov dword [ebp - 0x188], eax
pop ecx
test esi, esi
je 0x5cd121
xor eax, eax
mov dword [esi], vtable.DuiLib::CIDropSource.0
mov dword [esi + 4], eax
mov byte [esi + 8], al
jmp 0x5cd129
xor esi, esi
mov dword [ebp - 0x188], esi
test esi, esi
je 0x5cdbde
mov eax, dword [esi]
push esi
call dword [eax + 4]
push 0x24
call fcn.004c4200
pop ecx
mov dword [ebp - 0x178], eax
mov dword [ebp - 4], 1
test eax, eax
je 0x5cd162
push esi
mov ecx, eax
call fcn.005ded11
mov ecx, eax
mov dword [ebp - 0x18c], eax
jmp 0x5cd16a
xor ecx, ecx
mov dword [ebp - 0x18c], ecx
or dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x5cdbde
mov eax, dword [ecx]
push ecx
call dword [eax + 4]
xor eax, eax
lea edi, [ebp - 0x58]
stosd dword es:[edi], eax
push 2
pop ecx
push 0x10
stosd dword es:[edi], eax
pop edx
mov dword [ebp - 0x1c], edx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
or dword [ebp - 0x50], 0xffffffff
push eax
push ecx
push dword [ebx + 0x434]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x54], 1
mov word [ebp - 0x5c], cx
mov dword [ebp - 0x4c], edx
call dword [sym.imp.ole32.dll_OleDuplicateData]
mov esi, eax
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x18c]
push 0
push edx
mov dword [ebp - 0x18], esi
lea edx, [ebp - 0x5c]
mov ecx, dword [eax]
push edx
push eax
mov dword [ebp - 0x1a4], esi
call dword [ecx + 0x1c]
lea eax, [ebp - 0x48]
push eax
push 0x18
push esi
call dword [sym.imp.GDI32.dll_GetObjectW]
mov eax, dword [ebp - 0x44]
xor ecx, ecx
push 0xe
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x24], eax
pop eax
push ecx
push ecx
push ecx
push dword [ebx + 0xac]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ecx
mov word [ebp - 0x5c], ax
mov dword [ebp - 0x4c], 0x40
call dword [sym.imp.GDI32.dll_CreateEnhMetaFileW]
mov ebx, eax
mov eax, dword [ebp - 0x1a0]
push dword [eax + 0xac]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push esi
push eax
mov dword [ebp - 0x190], eax
call edi
push 0xcc0020
mov esi, eax
xor eax, eax
push eax
push eax
push dword [ebp - 0x190]
push dword [ebp - 0x178]
push dword [ebp - 0x198]
push eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_BitBlt]
push esi
mov esi, dword [ebp - 0x190]
push esi
call edi
push ebx
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
push esi
mov dword [ebp - 0x18], eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edi, dword [ebp - 0x18c]
lea ecx, [ebp - 0x1c]
push 1
push ecx
mov dword [ebp - 0x1c], 0x40
lea ecx, [ebp - 0x5c]
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x1bc]
call fcn.005c9b38
push 2
pop eax
mov dword [ebp - 4], eax
xor ebx, ebx
mov eax, dword [ebp - 0x44]
cdq
sub eax, edx
mov dword [ebp - 0x178], ebx
sar eax, 1
mov dword [ebp - 0x17c], eax
mov eax, dword [ebp - 0x40]
cdq
sub eax, edx
sar eax, 1
push 5
mov dword [ebp - 0x178], eax
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push edi
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x17c]
push eax
push dword [ebp - 0x1a4]
lea ecx, [ebp - 0x1bc]
call fcn.005cb85b
mov esi, dword [ebp - 0x188]
lea eax, [ebp - 0x1b0]
push eax
push 3
push esi
push edi
call dword [sym.imp.ole32.dll_DoDragDrop]
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov eax, dword [edi]
push edi
call dword [eax + 8]
mov eax, dword [ebp - 0x1a0]
lea ecx, [ebp - 0x1bc]
or dword [ebp - 4], 0xffffffff
mov byte [eax + 0x430], bl
call fcn.005ca01f
jmp 0x5cdbde
and dword [ebp - 0x110], 0
lea edi, [ebp - 0x10c]
push 7
xor eax, eax
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x100], esi
mov esi, dword [ebp - 0x174]
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1ec]
mov esi, dword [ebp - 0x198]
mov dword [ebp - 0x108], eax
cmp esi, ecx
je 0x5cd3e4
test ecx, ecx
je 0x5cd3e4
mov dword [ebp - 0x110], 0xa
lea edx, [ebp - 0x110]
mov dword [ebp - 0x10c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x12c]
mov edx, dword [ebx + 0xdc]
xor ecx, ecx
mov dword [ebx + 0x1ec], ecx
test edx, edx
je 0x5cd3e4
lea eax, [ebx + 0xe0]
push eax
push ecx
push 0x411
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp esi, dword [ebx + 0x1ec]
je 0x5cd417
test esi, esi
je 0x5cd417
mov dword [ebp - 0x110], 0xb
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x10c], esi
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x12c]
mov dword [ebx + 0x1ec], esi
mov ecx, dword [ebx + 0x1f0]
test ecx, ecx
je 0x5cd436
mov dword [ebp - 0x110], 9
mov dword [ebp - 0x10c], ecx
jmp 0x5cdbcf
test esi, esi
je 0x5cdbde
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x110], 9
mov dword [ebp - 0x10c], esi
mov eax, dword [esi]
push ecx
mov ecx, esi
jmp 0x5cdbd8
mov ecx, dword [ebp - 0x174]
test ecx, ecx
je 0x5cdbde
push ecx
push dword [ebp - 0x180]
lea eax, [edi + 0x2000]
push eax
push ecx
jmp 0x5cc7e9
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x198], eax
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov esi, eax
mov dword [ebp - 0x1a4], esi
test esi, esi
je 0x5cdbde
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x114]
mov ecx, ebx
call fcn.005cf154
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x10c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x110], 0x11
jmp 0x5ccd49
sub edi, 0x208
je 0x5cdb34
push 2
pop eax
sub edi, eax
je 0x5cda21
sub edi, 0x97
je 0x5cd819
sub edi, eax
je 0x5cd712
sub edi, 0x75
je 0x5cd639
sub edi, 0x7ce9
jne 0x5cdbde
lea edi, [ebx + 0x2c8]
xor esi, esi
mov ecx, edi
call fcn.00613360
test eax, eax
jle 0x5cd579
push esi
mov ecx, edi
call fcn.005d142e
test eax, eax
je 0x5cd56d
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
mov ecx, edi
inc esi
call fcn.00613360
cmp esi, eax
jl 0x5cd559
mov ecx, edi
call fcn.005d16f0
lea edi, [ebx + 0x2d4]
push 0
mov ecx, edi
mov dword [ebp - 0x178], edi
call fcn.005d187b
mov esi, eax
test esi, esi
je 0x5cdbde
lea eax, [ebx + 0x274]
xor ebx, ebx
mov dword [ebp - 0x1a0], eax
push ebx
mov ecx, edi
call fcn.005d1b93
mov ecx, dword [esi + 0x108]
test ecx, ecx
je 0x5cd5da
add ecx, 0x38
call fcn.005deb13
test al, al
je 0x5cd5da
mov ecx, dword [esi + 0x108]
push esi
add ecx, 0x38
call fcn.005deb29
mov ecx, dword [ebp - 0x1a0]
mov edi, ebx
call fcn.00613360
test eax, eax
jle 0x5cd60e
mov ecx, dword [ebp - 0x1a0]
push edi
call fcn.005d142e
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx]
mov ecx, dword [ebp - 0x1a0]
inc edi
call fcn.00613360
cmp edi, eax
jl 0x5cd5eb
mov ecx, esi
call fcn.005ca336
push esi
call fcn.004c41b0
mov edi, dword [ebp - 0x178]
pop ecx
push ebx
mov ecx, edi
call fcn.005d187b
mov esi, eax
test esi, esi
jne 0x5cd5ad
jmp 0x5cdbde
cmp dword [ebx + 0x1e4], 0
je 0x5cdbde
lea eax, [ebp - 0x58]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_GetClientRect]
mov esi, dword [ebp - 0x180]
push esi
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x1e4]
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x58]
push eax
push esi
mov edx, dword [ecx]
call dword [edx + 0x13c]
test byte [ebp - 0x174], 0x10
je 0x5cd700
push 5
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_GetWindow]
mov edi, eax
test edi, edi
je 0x5cd700
push 2
pop eax
or dword [ebp - 0x174], eax
lea eax, [ebp - 0x30]
xorps xmm0, xmm0
push eax
push edi
movdqu xmmword [ebp - 0x30], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0xa8]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [ebp - 0x2c]
push 0
neg eax
push eax
mov eax, dword [ebp - 0x30]
neg eax
push eax
push esi
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
push dword [ebp - 0x174]
push esi
push 0x317
push edi
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
push edi
call dword [sym.imp.USER32.dll_GetWindow]
mov edi, eax
test edi, edi
jne 0x5cd6a2
push dword [ebp - 0x178]
push esi
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp 0x5cdbde
mov ecx, dword [ebx + 0xdc]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
test ecx, ecx
je 0x5cd733
lea eax, [ebx + 0xe0]
push eax
push 0
push 0x411
push ecx
call esi
cmp byte [ebx + 0x270], 0
je 0x5cd80d
xor eax, eax
xorps xmm0, xmm0
mov dword [ebp - 0x17c], eax
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x17c]
push eax
movdqu xmmword [ebp - 0x30], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_GetWindowRect]
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x5cd7fc
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, dword [ebx + 0xa8]
jne 0x5cd7fc
push dword [ebp - 0x178]
lea eax, [ebp - 0x30]
push dword [ebp - 0x17c]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x5cd7fc
movzx ecx, word [ebp - 0x178]
movzx eax, word [ebp - 0x17c]
shl ecx, 0x10
or ecx, eax
push ecx
push 0
push 0x84
push dword [ebx + 0xa8]
call esi
cmp eax, 1
jne 0x5cd7fc
lea eax, [ebp - 0x17c]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_ScreenToClient]
movzx ecx, word [ebp - 0x178]
movzx eax, word [ebp - 0x17c]
shl ecx, 0x10
or ecx, eax
push ecx
jmp 0x5cd7fe
push 0xffffffffffffffff
push 0
push 0x200
push dword [ebx + 0xa8]
call esi
mov byte [ebx + 0x270], 0
jmp 0x5cdbde
mov eax, dword [ebp - 0x174]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x178], ecx
push ecx
mov ecx, ebx
mov byte [ebx + 0x270], 0
mov dword [ebp - 0x198], eax
call fcn.005cada3
mov esi, eax
mov dword [ebp - 0x1a4], esi
test esi, esi
je 0x5cdbde
mov edx, dword [ebx + 0x1ec]
test edx, edx
je 0x5cd8d6
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x110], 0xc
mov dword [ebp - 0x10c], edx
mov dword [ebp - 0xf4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x198]
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov ecx, dword [ebx + 0x1ec]
lea edx, [ebp - 0x110]
mov word [ebp - 0xfa], ax
push edx
mov eax, dword [ecx]
call dword [eax + 0x12c]
mov eax, dword [esi]
lea ecx, [ebp - 0xf0]
push ecx
mov ecx, esi
call dword [eax + 0xb4]
and dword [ebp - 4], 0
lea ecx, [ebp - 0xf0]
call fcn.005d1a92
test al, al
je 0x5cd90e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xf0]
call fcn.005d1349
jmp 0x5cbc61
push 0x30
lea edi, [ebx + 0xe0]
push 0
push edi
call fcn.004cf9d0
mov eax, dword [ebx + 0xa8]
lea ecx, [ebp - 0xf0]
add esp, 0xc
mov dword [edi], 0x30
mov dword [ebx + 0xe4], 1
mov dword [ebx + 0xe8], eax
mov dword [ebx + 0xec], eax
mov eax, dword [0x6f5850]
mov dword [ebx + 0x100], eax
call fcn.00417110
mov dword [ebx + 0x104], eax
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x50]
mov esi, eax
lea edi, [ebx + 0xf0]
xor eax, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebx + 0xdc], eax
jne 0x5cd9e3
push eax
push dword [0x6f5850]
mov ecx, SysReAllocString
push eax
push dword [ebx + 0xa8]
push ecx
push ecx
push ecx
push ecx
push reloc.WS2_32.dll_closesocket
push eax
push str.tooltips_class32
push eax
call dword [sym.imp.USER32.dll_CreateWindowExW]
lea esi, [ebx + 0xe0]
mov dword [ebx + 0xdc], eax
push esi
xor edx, edx
push edx
push 0x432
push eax
call edi
mov ecx, dword [ebp - 0x1a4]
mov eax, dword [ecx]
call dword [eax + 0xc0]
push eax
push 0
push 0x418
push dword [ebx + 0xdc]
call edi
jmp 0x5cd9e9
lea esi, [ebx + 0xe0]
push dword [ebx + 0xdc]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x5cd8fa
push esi
push eax
push 0x436
push dword [ebx + 0xdc]
call edi
push esi
push 1
push 0x411
push dword [ebx + 0xdc]
call edi
jmp 0x5cd8fa
mov ecx, dword [ebp - 0x174]
movsx eax, cx
mov dword [ebp - 0x17c], eax
mov eax, ecx
shr eax, 0x10
cwde
mov dword [ebp - 0x178], eax
lea eax, [ebp - 0x17c]
push eax
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x17c]
push eax
mov dword [ebx + 0x1f8], ecx
push ecx
mov ecx, ebx
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov esi, eax
test esi, esi
je 0x5cdbde
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x5cdbde
xor eax, eax
lea edi, [ebp - 0x10c]
push 7
pop ecx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x180]
shr ecx, 0x10
test cx, cx
mov dword [ebp - 0x110], 0x15
mov dword [ebp - 0x10c], esi
sets al
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x17c]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x100], eax
call fcn.005cba9c
mov word [ebp - 0xfa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x108], eax
lea ecx, [ebp - 0x110]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x12c]
movzx ecx, word [ebx + 0x1fc]
movzx eax, word [ebx + 0x1f8]
shl ecx, 0x10
or ecx, eax
push ecx
push 0
push 0x200
push dword [ebx + 0xa8]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x5cdbde
mov ecx, ebx
call fcn.005ce8bd
mov eax, dword [ebp - 0x174]
mov ecx, ebx
movsx esi, ax
shr eax, 0x10
cwde
push eax
push esi
mov dword [ebp - 0x178], eax
mov dword [ebx + 0x1f8], esi
mov dword [ebx + 0x1fc], eax
call fcn.005cada3
mov edx, eax
mov dword [ebx + 0x1f0], edx
test edx, edx
je 0x5cdbde
push 7
xor eax, eax
lea edi, [ebp - 0x10c]
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0x180]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0x178]
mov dword [ebp - 0x110], 0x12
mov dword [ebp - 0xf8], ecx
mov dword [ebp - 0x104], esi
mov dword [ebp - 0x100], eax
mov word [ebp - 0xfa], cx
mov dword [ebp - 0x10c], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x1f0]
mov dword [ebp - 0x108], eax
lea edx, [ebp - 0x110]
mov eax, dword [ecx]
push edx
call dword [eax + 0x12c]
xor al, al
call fcn.004d5971
ret 0x10