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

Disassembly:
push 0x15c
mov eax, 0x475cc3
call fcn.0045f5ce
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x140], eax
mov eax, dword [ebp + 0x10]
mov ebx, ecx
cmp dword [ebx + 0x6c], 0
mov dword [ebp - 0x134], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x150], eax
je 0x41dc54
and dword [ebp - 0x138], 0
lea ecx, [ebx + 0x2e4]
call fcn.00452a93
mov esi, dword [ebp + 8]
test eax, eax
jle 0x41bd4c
push dword [ebp - 0x138]
lea ecx, [ebx + 0x2e4]
mov byte [ebp - 0x139], 0
call fcn.0041f710
mov edx, dword [eax]
lea ecx, [ebp - 0x139]
push ecx
push dword [ebp - 0x134]
mov ecx, eax
push dword [ebp - 0x140]
push esi
call dword [edx]
cmp byte [ebp - 0x139], 0
jne 0x41bde9
inc dword [ebp - 0x138]
lea ecx, [ebx + 0x2e4]
call fcn.00452a93
cmp dword [ebp - 0x138], eax
jl 0x41bcf4
mov eax, 0x133
cmp esi, eax
ja 0x41ccd7
je 0x41d4e0
cmp esi, 0x4e
ja 0x41c8d7
je 0x41c8ab
sub esi, 5
je 0x41c849
dec esi
dec esi
je 0x41c7e6
sub esi, 8
je 0x41bfd5
dec esi
je 0x41bef4
sub esi, 4
je 0x41bee3
sub esi, 0xc
je 0x41bdf8
sub esi, 4
jne 0x41dc54
mov eax, dword [ebx + 0x17c]
mov ecx, dword [ebp - 0x134]
test eax, eax
jle 0x41bdb9
mov dword [ecx + 0x18], eax
mov eax, dword [ebx + 0x180]
test eax, eax
jle 0x41bdc6
mov dword [ecx + 0x1c], eax
mov eax, dword [ebx + 0x184]
test eax, eax
jle 0x41bdd3
mov dword [ecx + 0x20], eax
mov ebx, dword [ebx + 0x188]
test ebx, ebx
jle 0x41dc54
mov dword [ecx + 0x24], ebx
jmp 0x41dc54
mov ecx, dword [ebp - 0x150]
mov dword [ecx], eax
mov al, 1
jmp 0x41dc56
cmp word [ebp - 0x134], 1
jne 0x41dc54
cmp byte [ebx + 0x2b1], 0
jne 0x41bdf1
and dword [ebp - 0x148], 0
xor eax, eax
lea edi, [ebp - 0x144]
stosd dword es:[edi], eax
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x148]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x144]
mov ecx, ebx
push dword [ebp - 0x148]
call fcn.0041b447
mov esi, eax
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x14]
test al, 2
je 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0xb4], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xd0], 0x1a
mov dword [ebp - 0xcc], esi
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x124]
jmp 0x41bdf1
mov eax, dword [ebp - 0x150]
mov dword [eax], 1
jmp 0x41bdf1
and dword [ebp - 0xd0], 0
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x174]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x178]
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x168]
mov dword [ebp - 0xc8], eax
test ecx, ecx
je 0x41bf61
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xd0], 0xa
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
mov ecx, dword [ebx + 0x16c]
test ecx, ecx
je 0x41bf8a
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xd0], 0xe
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
push 0
mov ecx, ebx
call fcn.0041b85f
mov esi, dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, esi
jne 0x41bfb4
push 4
push esi
call dword [sym.imp.USER32.dll_GetWindow]
test eax, eax
je 0x41bfb4
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebx + 0x9c]
test eax, eax
je 0x41dc54
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
and dword [ebx + 0x9c], 0
jmp 0x41dc54
and dword [ebp - 0x20], 0
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor esi, esi
push esi
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x41bdf1
cmp dword [ebx + 0x160], esi
jne 0x41c03e
push 0x3c
lea eax, [ebp - 0x12c]
push esi
push eax
mov dword [ebp - 0x130], esi
call fcn.0045ed40
add esp, 0xc
lea eax, [ebp - 0x130]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x130]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x41bdf1
xor eax, eax
mov dword [ebp - 0x30], esi
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0x6c]
mov byte [ebp - 0x139], 0
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [ebp - 0x28]
mov esi, dword [ebp - 0x24]
sub eax, dword [ebp - 0x30]
sub esi, dword [ebp - 0x2c]
push 1
mov ecx, ebx
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x14c], esi
call fcn.00419214
cmp byte [ebx + 0x1c1], 0
je 0x41c1f6
lea eax, [ebp - 0x30]
push eax
mov byte [ebx + 0x1c1], 0
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x41c1f6
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x41c1f6
mov ecx, dword [ebx + 0x160]
call fcn.00428028
test al, al
je 0x41c10d
mov eax, dword [ebx + 0x74]
test eax, eax
je 0x41c0d2
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0x7c]
test eax, eax
je 0x41c0e0
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ecx, dword [ebx + 0x160]
and dword [ebx + 0x74], 0
and dword [ebx + 0x7c], 0
mov eax, dword [ecx]
push 1
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x30]
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 - 0x139], 1
jmp 0x41c1bb
lea edi, [ebx + 0x320]
mov ecx, edi
call fcn.0041f55c
mov ecx, dword [ebx + 0x160]
mov eax, dword [ecx]
push reloc.OLEAUT32.dll_VariantCopy
push 0
push 0x41a0a6
call dword [eax + 0x118]
and dword [ebp - 0x150], 0
mov ecx, edi
call fcn.00452a93
test eax, eax
jle 0x41c1c1
push dword [ebp - 0x150]
mov ecx, edi
call fcn.0041f710
mov edx, dword [eax]
mov ecx, eax
mov dword [ebp - 0x138], eax
call dword [edx + 0x110]
mov ecx, dword [ebp - 0x138]
test al, al
mov eax, dword [ecx]
mov dword [ebp - 0x134], eax
jne 0x41c17a
call dword [eax + 0x50]
jmp 0x41c184
lea edx, [ebp - 0xb0]
push edx
call dword [eax + 0x48]
mov ecx, dword [ebp - 0x138]
push 1
sub esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x134]
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 [eax + 0x54]
inc dword [ebp - 0x150]
lea edi, [ebx + 0x320]
mov ecx, edi
call fcn.00452a93
cmp dword [ebp - 0x150], eax
jl 0x41c146
mov esi, dword [ebp - 0x14c]
cmp byte [ebx + 0x1c0], 0
je 0x41c1f6
xor eax, eax
push eax
push eax
push eax
push str.windowinit
push dword [ebx + 0x160]
mov ecx, ebx
mov byte [ebx + 0x1c0], 0
call fcn.0041afcb
push dword [ebx + 0x6c]
lea ecx, [ebx + 0xe8]
call fcn.00439de2
cmp byte [ebx + 0x1c2], 0
je 0x41c208
push 1
mov ecx, ebx
call fcn.0041ba26
cmp byte [ebx + 0x1c5], 0
je 0x41c270
push 0xffffffffffffffec
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, eax
or ecx, 0x80000
cmp eax, ecx
je 0x41c234
push ecx
push 0xffffffffffffffec
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SetWindowLongA]
lea edi, [ebx + 0x1dc]
push edi
lea eax, [ebp - 0x20]
push eax
push eax
mov byte [ebx + 0x1c3], 1
call dword [sym.imp.USER32.dll_UnionRect]
mov eax, dword [ebp - 0x28]
cmp dword [ebp - 0x18], eax
jle 0x41c258
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x14], eax
jle 0x41c263
mov dword [ebp - 0x14], eax
push 0x10
push 0
push edi
call fcn.0045ed40
add esp, 0xc
cmp byte [ebx + 0x1c3], 0
je 0x41c2a7
cmp dword [ebx + 0x7c], 0
jne 0x41c2a7
push dword [ebx + 0x70]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebx + 0x74], eax
lea eax, [ebx + 0x80]
push eax
push esi
push dword [ebp - 0x140]
push dword [ebx + 0x70]
call fcn.0043726f
add esp, 0x10
mov dword [ebx + 0x7c], eax
and dword [ebp - 0xf0], 0
push 0x3c
lea eax, [ebp - 0xec]
push 0
push eax
call fcn.0045ed40
add esp, 0xc
lea eax, [ebp - 0xf0]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp byte [ebx + 0x1c3], 0
je 0x41c725
push dword [ebx + 0x7c]
push dword [ebx + 0x74]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebx + 0x74]
mov dword [ebp - 0x144], eax
call dword [sym.imp.GDI32.dll_SaveDC]
cmp byte [ebx + 0x1c5], 0
mov dword [ebp - 0x15c], eax
je 0x41c363
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
sub edx, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
cmp edx, eax
jge 0x41c363
mov ecx, edx
imul ecx, dword [ebp - 0x140]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x138], eax
cmp eax, dword [ebp - 0x18]
jge 0x41c352
add eax, ecx
shl eax, 2
mov esi, dword [ebx + 0x80]
and dword [eax + esi], 0
inc dword [ebp - 0x138]
mov esi, dword [ebp - 0x138]
add eax, 4
cmp esi, dword [ebp - 0x18]
jl 0x41c334
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x140]
inc edx
cmp edx, eax
jl 0x41c321
mov ecx, dword [ebx + 0x160]
mov eax, dword [ecx]
lea edx, [ebp - 0x20]
push edx
push dword [ebx + 0x74]
call dword [eax + 0x134]
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0x74]
mov ecx, ebx
call fcn.0041ad58
lea ecx, [ebx + 0x2f0]
xor esi, esi
call fcn.00452a93
test eax, eax
jle 0x41c3c4
push esi
lea ecx, [ebx + 0x2f0]
call fcn.0041f710
mov edx, dword [eax]
lea ecx, [ebp - 0x20]
push ecx
push dword [ebx + 0x74]
mov ecx, eax
call dword [edx + 0x154]
lea ecx, [ebx + 0x2f0]
inc esi
call fcn.00452a93
cmp esi, eax
jl 0x41c397
cmp byte [ebx + 0x1c5], 0
je 0x41c60d
mov esi, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
sub esi, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
cmp esi, eax
jge 0x41c438
mov edi, dword [ebp - 0x20]
mov edx, esi
imul edx, dword [ebp - 0x140]
cmp edi, dword [ebp - 0x18]
jge 0x41c427
lea ecx, [edx + edi]
shl ecx, 2
mov eax, dword [ebx + 0x80]
add eax, ecx
cmp byte [eax + 3], 0
jne 0x41c41b
cmp byte [eax], 0
jne 0x41c417
cmp byte [eax + 1], 0
jne 0x41c417
cmp byte [eax + 2], 0
je 0x41c41b
mov byte [eax + 3], 0xff
inc edi
add ecx, 4
cmp edi, dword [ebp - 0x18]
jl 0x41c3f8
mov edi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x1c]
add edx, dword [ebp - 0x140]
inc esi
cmp esi, eax
jl 0x41c3ed
and dword [ebp - 0x134], 0
lea edi, [ebx + 0x2fc]
mov ecx, edi
call fcn.00452a93
test eax, eax
jle 0x41c60d
push dword [ebp - 0x134]
mov ecx, edi
call fcn.0041f710
push eax
mov dword [ebp - 0x138], eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x41c484
push dword [ebp - 0x134]
mov ecx, edi
call fcn.0041f693
jmp 0x41c5f4
push dword [ebp - 0x138]
inc dword [ebp - 0x134]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x41c5f4
push dword [ebp - 0x138]
lea esi, [ebp - 0x40]
push dword [ebx + 0x6c]
call fcn.00418788
and dword [ebp - 0x58], 0
xor eax, eax
lea edi, [ebp - 0x54]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop ecx
stosd dword es:[edi], eax
pop ecx
mov eax, esi
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 0x41c5f4
push dword [ebx + 0x74]
and dword [ebp - 0x150], 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, eax
lea eax, [ebp - 0x150]
push eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
push eax
push edi
call fcn.0043726f
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
imul eax, ecx
shl eax, 2
push eax
push 0
push dword [ebp - 0x150]
call fcn.0045ed40
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
add esp, 0x1c
push dword [ebp - 0x154]
push edi
call esi
push 0x35
push edi
push 0x317
push dword [ebp - 0x138]
mov dword [ebp - 0x164], eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x34]
and dword [ebp - 0x138], 0
mov ecx, eax
sub ecx, dword [ebp - 0x3c]
test ecx, ecx
jle 0x41c5b4
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x40]
xor edx, edx
test ecx, ecx
jle 0x41c5a1
imul ecx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x150]
add ecx, edx
lea ecx, [eax + ecx*4]
mov eax, dword [ecx]
test eax, eax
je 0x41c593
or eax, 0xff000000
mov dword [ecx], eax
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x40]
inc edx
cmp edx, ecx
jl 0x41c574
mov eax, dword [ebp - 0x34]
inc dword [ebp - 0x138]
mov ecx, eax
sub ecx, dword [ebp - 0x3c]
cmp dword [ebp - 0x138], ecx
jl 0x41c568
mov ecx, dword [ebp - 0x38]
sub eax, dword [ebp - 0x3c]
sub ecx, dword [ebp - 0x40]
push 0xcc0020
push 0
push 0
push edi
push eax
push ecx
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push dword [ebx + 0x74]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x164]
push edi
call esi
push dword [ebp - 0x154]
call dword [sym.imp.GDI32.dll_DeleteObject]
push edi
call dword [sym.imp.GDI32.dll_DeleteDC]
lea edi, [ebx + 0x2fc]
mov ecx, edi
call fcn.00452a93
cmp dword [ebp - 0x134], eax
jl 0x41c454
push dword [ebp - 0x15c]
push dword [ebx + 0x74]
call dword [sym.imp.GDI32.dll_RestoreDC]
cmp byte [ebx + 0x1c5], 0
je 0x41c6c3
xor eax, eax
xor esi, esi
mov dword [ebp - 0x40], esi
lea edi, [ebp - 0x3c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x40]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov al, byte [ebx + 0x1c4]
mov byte [ebp - 0x136], al
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x154], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x14c]
push 2
mov dword [ebp - 0x164], eax
lea eax, [ebp - 0x138]
push eax
push esi
lea eax, [ebp - 0x160]
push eax
push dword [ebx + 0x74]
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x158]
push eax
push dword [ebx + 0x70]
mov word [ebp - 0x138], si
push dword [ebx + 0x6c]
mov byte [ebp - 0x135], 1
mov dword [ebp - 0x160], esi
mov dword [ebp - 0x15c], esi
call dword [0x499078]
jmp 0x41c6f0
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x1c]
push 0xcc0020
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebx + 0x74]
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 + 0x70]
call dword [sym.imp.GDI32.dll_BitBlt]
xor esi, esi
push dword [ebp - 0x144]
push dword [ebx + 0x74]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp byte [ebx + 0x8c], 0
je 0x41c798
push esi
push 0xffff0000
push 1
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0x70]
call fcn.00434deb
add esp, 0x14
jmp 0x41c798
push dword [ebx + 0x70]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x160]
lea edx, [ebp - 0x20]
push edx
push dword [ebx + 0x70]
mov dword [ebp - 0x144], eax
mov eax, dword [ecx]
call dword [eax + 0x134]
lea ecx, [ebx + 0x2f0]
xor edi, edi
call fcn.00452a93
test eax, eax
jle 0x41c787
push edi
lea ecx, [ebx + 0x2f0]
call fcn.0041f710
mov edx, dword [eax]
lea ecx, [ebp - 0x20]
push ecx
push dword [ebx + 0x70]
mov ecx, eax
call dword [edx + 0x154]
lea ecx, [ebx + 0x2f0]
inc edi
call fcn.00452a93
cmp edi, eax
jl 0x41c75a
push dword [ebp - 0x144]
push dword [ebx + 0x70]
call dword [sym.imp.GDI32.dll_RestoreDC]
xor esi, esi
lea eax, [ebp - 0xf0]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_EndPaint]
cmp byte [ebx + 0x1c1], 0
je 0x41c7b8
mov ecx, ebx
call fcn.00418dba
push esi
mov ecx, ebx
call fcn.00419214
cmp byte [ebp - 0x139], 0
je 0x41bdf1
push 1
push esi
push esi
push str.windowsize
push dword [ebx + 0x160]
call fcn.0041afcb
jmp 0x41bdf1
mov edx, dword [ebx + 0x164]
test edx, edx
je 0x41dc54
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x10c]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x110], 0x18
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0x10c], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x164]
mov dword [ebp - 0x108], eax
lea edx, [ebp - 0x110]
mov eax, dword [ecx]
push edx
jmp 0x41dc4e
mov edx, dword [ebx + 0x164]
test edx, edx
je 0x41c891
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0x19
mov dword [ebp - 0xcc], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x164]
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
mov ebx, dword [ebx + 0x160]
test ebx, ebx
je 0x41bdf1
mov ecx, ebx
call fcn.0042802f
jmp 0x41bdf1
cmp dword [ebp - 0x134], 0
je 0x41bdf1
mov eax, dword [ebp - 0x134]
push eax
push dword [ebp - 0x140]
push 0x204e
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x41bde9
sub esi, 0x7b
je 0x41cc06
sub esi, 0x85
je 0x41cb67
dec esi
je 0x41cacd
dec esi
je 0x41ca4f
sub esi, 0xf
je 0x41ca10
dec esi
dec esi
jne 0x41dc54
mov eax, 0x1999
cmp ax, word [ebp - 0x140]
jne 0x41c93a
lea eax, [ebx + 0xd0]
push eax
mov ecx, ebx
call fcn.00418e14
lea eax, [ebx + 0xe0]
cmp byte [eax], 0
sete cl
mov byte [eax], cl
jmp 0x41dc54
and dword [ebp - 0x138], 0
lea ecx, [ebx + 0x2c0]
call fcn.00452a93
test eax, eax
jle 0x41dc54
push dword [ebp - 0x138]
lea ecx, [ebx + 0x2c0]
call fcn.0041f710
mov esi, eax
mov eax, dword [esi + 8]
cmp eax, dword [ebx + 0x6c]
jne 0x41c981
movzx eax, word [ebp - 0x140]
cmp dword [esi + 0xc], eax
jne 0x41c981
cmp byte [esi + 0x10], 0
je 0x41c99f
inc dword [ebp - 0x138]
lea ecx, [ebx + 0x2c0]
call fcn.00452a93
cmp dword [ebp - 0x138], eax
jl 0x41c954
jmp 0x41dc54
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [esi]
mov dword [ebp - 0xd0], 0x1b
mov dword [ebp - 0xcc], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebx + 0x174]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x178]
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov ecx, dword [esi]
mov word [ebp - 0xba], ax
mov eax, dword [esi + 4]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0xb4], eax
lea edx, [ebp - 0xd0]
jmp 0x41c841
cmp dword [ebp - 0x134], 0
je 0x41dc54
push dword [ebp - 0x134]
push dword [ebp - 0x140]
push 0x2111
push dword [ebp - 0x134]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0x150]
mov dword [ecx], eax
test eax, eax
je 0x41dc54
jmp 0x41bdf1
mov edx, dword [ebx + 0x164]
test edx, edx
je 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0xb8], eax
mov byte [ebp - 0xbc], al
mov eax, dword [ebx + 0x174]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x178]
mov dword [ebp - 0xd0], 5
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [ebx + 0x164]
jmp 0x41dc3d
mov edx, dword [ebx + 0x170]
test edx, edx
je 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0xb8], eax
mov byte [ebp - 0xbc], al
mov eax, dword [ebx + 0x174]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x178]
mov dword [ebp - 0xd0], 4
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x170]
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
and dword [ebx + 0x170], 0
jmp 0x41dc54
mov edx, dword [ebx + 0x164]
test edx, edx
je 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0xb8], eax
mov byte [ebp - 0xbc], al
mov eax, dword [ebx + 0x174]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x178]
mov dword [ebp - 0xd0], 3
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x164]
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
mov eax, dword [ebx + 0x164]
mov dword [ebx + 0x170], eax
jmp 0x41dc54
mov eax, dword [ebp - 0x134]
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x144], eax
lea eax, [ebp - 0x148]
push eax
push dword [ebx + 0x6c]
mov dword [ebp - 0x148], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp dword [ebx + 0x16c], 0
mov eax, dword [ebp - 0x148]
mov dword [ebx + 0x174], eax
mov eax, dword [ebp - 0x144]
mov dword [ebx + 0x178], eax
je 0x41dc54
mov ecx, ebx
call fcn.004191f4
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x148]
mov eax, dword [ebx + 0x16c]
mov dword [ebp - 0xc4], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0xc0], ecx
mov cx, word [ebp - 0x140]
mov dword [ebp - 0xd0], 0x14
mov dword [ebp - 0xcc], eax
mov word [ebp - 0xba], cx
mov dword [ebp - 0xb4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x16c]
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
and dword [ebx + 0x16c], 0
jmp 0x41dc54
mov eax, 0x207
cmp esi, eax
ja 0x41d58e
je 0x41d50b
mov eax, esi
sub eax, 0x138
je 0x41d4e0
sub eax, 0xc8
je 0x41d0d2
dec eax
je 0x41cf94
dec eax
je 0x41cef5
dec eax
je 0x41ce33
dec eax
je 0x41cd80
dec eax
jne 0x41dc54
mov ecx, ebx
call fcn.004191f4
mov eax, dword [ebp - 0x134]
movsx esi, word [ebp - 0x134]
shr eax, 0x10
cwde
push eax
push esi
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x174], esi
mov dword [ebx + 0x178], eax
call fcn.0041b447
mov edx, eax
mov dword [ebx + 0x16c], edx
test edx, edx
je 0x41dc54
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0x10
jmp 0x41dbfa
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x134]
movsx eax, word [ebp - 0x134]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x144], ecx
mov dword [ebx + 0x178], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x148], eax
mov dword [ebx + 0x174], eax
call fcn.0041b447
mov esi, eax
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10c]
mov ecx, ebx
call fcn.004191df
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0xf
mov ecx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0xc4], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xc0], ecx
jmp 0x41cec0
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, ebx
call fcn.004191df
mov eax, dword [ebp - 0x134]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x148], ecx
mov dword [ebx + 0x174], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x178], eax
call fcn.0041b447
mov esi, eax
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xc0], eax
mov ax, word [ebp - 0x140]
mov dword [ebp - 0xd0], 0x13
mov dword [ebp - 0xcc], esi
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x124]
mov dword [ebx + 0x16c], esi
jmp 0x41dc54
mov ecx, ebx
call fcn.004191f4
mov eax, dword [ebp - 0x134]
movsx edx, word [ebp - 0x134]
shr eax, 0x10
cmp dword [ebx + 0x16c], 0
movsx esi, ax
mov dword [ebx + 0x174], edx
mov dword [ebx + 0x178], esi
je 0x41dc54
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x16c]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xd0], 0xe
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], ecx
mov dword [ebp - 0xc4], edx
mov dword [ebp - 0xc0], esi
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x16c]
and dword [ebx + 0x16c], 0
mov dword [ebp - 0xc8], eax
jmp 0x41ca05
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x134]
movsx eax, word [ebp - 0x134]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x144], ecx
mov dword [ebx + 0x178], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x148], eax
mov dword [ebx + 0x174], eax
call fcn.0041b447
mov esi, eax
mov dword [ebp - 0x14c], esi
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x38]
test al, al
je 0x41d04b
mov eax, dword [ebx + 0x424]
mov byte [ebx + 0x420], 1
test eax, eax
je 0x41d01a
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [ebx + 0x424], 0
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ecx]
call dword [eax + 0x50]
sub esp, 0x10
mov edi, esp
push dword [ebp - 0x14c]
mov esi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
call fcn.00437104
mov esi, dword [ebp - 0x14c]
add esp, 0x18
mov dword [ebx + 0x424], eax
mov ecx, ebx
call fcn.004191df
mov dword [ebx + 0x16c], esi
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10c]
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0xc4], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0xd0], 0xd
mov dword [ebp - 0xcc], esi
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xc0], ecx
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc8], eax
mov eax, dword [esi]
lea ecx, [ebp - 0xd0]
push ecx
mov ecx, esi
jmp 0x41dc4e
cmp byte [ebx + 0x2b0], 0
push 3
pop ecx
jne 0x41d12c
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 + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0x9c]
mov dword [ebp - 0x30], 0x10
mov dword [ebp - 0x2c], ecx
test eax, eax
jne 0x41d109
mov dword [ebp - 0x24], 0x190
jmp 0x41d11b
push 0
push ecx
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [ebx + 0x2b0], 1
mov eax, dword [ebp - 0x134]
movsx esi, ax
shr eax, 0x10
movsx ecx, ax
mov dword [ebp - 0x144], ecx
mov byte [ebp - 0x139], 1
cmp dword [ebx + 0x174], esi
jne 0x41d15f
cmp dword [ebx + 0x178], ecx
jne 0x41d15f
mov byte [ebp - 0x139], 0
push ecx
mov dword [ebx + 0x178], ecx
push esi
mov ecx, ebx
mov dword [ebx + 0x174], esi
call fcn.0041b447
mov dword [ebp - 0x154], eax
test eax, eax
je 0x41d18d
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x41dc54
cmp byte [ebp - 0x139], 0
je 0x41d3e2
cmp byte [ebx + 0x420], 0
je 0x41d3e2
xor edi, edi
inc edi
cmp dword [ebp - 0x140], edi
jne 0x41d3e2
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0xc
call fcn.0045cf44
pop ecx
test eax, eax
je 0x41d1d8
and dword [eax + 4], 0
mov dword [eax], vtable.DuiLib::CIDropSource.0
mov byte [eax + 8], 0
jmp 0x41d1da
xor eax, eax
mov dword [ebp - 0x150], eax
test eax, eax
je 0x41dc54
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
push 0x2c
call fcn.0045cf44
pop ecx
mov dword [ebp - 0x144], eax
mov dword [ebp - 4], edi
test eax, eax
je 0x41d214
push dword [ebp - 0x150]
mov ecx, eax
call fcn.0043b3d6
mov esi, eax
jmp 0x41d216
xor esi, esi
or dword [ebp - 4], 0xffffffff
test esi, esi
je 0x41dc54
mov eax, dword [esi]
push esi
call dword [eax + 4]
xor eax, eax
lea edi, [ebp - 0x58]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
or dword [ebp - 0x50], 0xffffffff
xor eax, eax
push 2
lea edi, [ebp - 0x18]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
pop eax
push 0x10
mov word [ebp - 0x5c], ax
pop eax
xor edi, edi
push edi
push 2
push dword [ebx + 0x424]
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x1c], eax
call dword [sym.imp.ole32.dll_OleDuplicateData]
push edi
lea ecx, [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x5c]
push ecx
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x18], eax
mov eax, dword [esi]
push esi
call dword [eax + 0x1c]
lea eax, [ebp - 0x48]
push eax
push 0x18
push dword [ebp - 0x138]
call dword [sym.imp.GDI32.dll_GetObjectA]
mov eax, dword [ebp - 0x44]
push 0xe
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x24], eax
pop eax
push edi
push edi
push edi
push dword [ebx + 0x70]
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x2c], edi
mov word [ebp - 0x5c], ax
mov dword [ebp - 0x4c], 0x40
call dword [sym.imp.GDI32.dll_CreateEnhMetaFileA]
push dword [ebx + 0x70]
mov dword [ebp - 0x154], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [ebp - 0x138]
mov dword [ebp - 0x14c], eax
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 0xcc0020
push edi
push edi
push dword [ebp - 0x14c]
mov dword [ebp - 0x144], eax
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push edi
push edi
push dword [ebp - 0x154]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x144]
push dword [ebp - 0x14c]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x154]
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
mov dword [ebp - 0x18], eax
push dword [ebp - 0x14c]
call dword [sym.imp.GDI32.dll_DeleteDC]
push 1
lea ecx, [ebp - 0x1c]
push ecx
lea ecx, [ebp - 0x5c]
push ecx
mov dword [ebp - 0x1c], 0x40
mov eax, dword [esi]
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x168]
call fcn.0041a5af
xor eax, eax
lea edi, [ebp - 0x144]
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x44]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x40]
cdq
sub eax, edx
sar eax, 1
push 5
mov dword [ebp - 4], 2
mov dword [ebp - 0x144], eax
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push esi
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x148]
push eax
push dword [ebp - 0x138]
lea ecx, [ebp - 0x168]
call fcn.0041a5f9
mov edi, dword [ebp - 0x150]
lea eax, [ebp - 0x15c]
push eax
push 3
push edi
push esi
call dword [sym.imp.ole32.dll_DoDragDrop]
mov eax, dword [edi]
push edi
call dword [eax + 8]
mov eax, dword [esi]
push esi
call dword [eax + 8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x168]
mov byte [ebx + 0x420], 0
call fcn.0041a5dd
jmp 0x41dc54
and dword [ebp - 0xd0], 0
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xc0], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x168]
mov dword [ebp - 0xc8], eax
cmp dword [ebp - 0x154], ecx
je 0x41d46b
test ecx, ecx
je 0x41d46b
lea edx, [ebp - 0xd0]
mov dword [ebp - 0xd0], 0xa
mov dword [ebp - 0xcc], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
mov eax, dword [ebx + 0x9c]
and dword [ebx + 0x168], 0
test eax, eax
je 0x41d46b
lea ecx, [ebx + 0xa0]
push ecx
push 0
push 0x411
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov esi, dword [ebp - 0x154]
cmp esi, dword [ebx + 0x168]
je 0x41d4a4
test esi, esi
je 0x41d4a4
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xd0], 0xb
mov dword [ebp - 0xcc], esi
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x124]
mov dword [ebx + 0x168], esi
mov ebx, dword [ebx + 0x16c]
test ebx, ebx
je 0x41d4c3
mov dword [ebp - 0xd0], 9
mov dword [ebp - 0xcc], ebx
jmp 0x41dc43
test esi, esi
je 0x41dc54
mov dword [ebp - 0xd0], 9
mov dword [ebp - 0xcc], esi
jmp 0x41d0c2
cmp dword [ebp - 0x134], 0
je 0x41dc54
push dword [ebp - 0x134]
add esi, 0x2000
push dword [ebp - 0x140]
push esi
push dword [ebp - 0x134]
jmp 0x41c8cc
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x134]
movsx eax, word [ebp - 0x134]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x144], ecx
mov dword [ebx + 0x178], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x148], eax
mov dword [ebx + 0x174], eax
call fcn.0041b447
mov esi, eax
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10c]
mov ecx, ebx
call fcn.004191df
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0x11
jmp 0x41cdfe
sub esi, 0x208
je 0x41dba4
dec esi
dec esi
je 0x41daab
sub esi, 0x97
je 0x41d8a7
dec esi
dec esi
je 0x41d7a9
sub esi, 0x75
je 0x41d6b8
sub esi, 0x7ce9
jne 0x41dc54
lea ecx, [ebx + 0x308]
xor edi, edi
call fcn.00452a93
test eax, eax
jle 0x41d604
push edi
lea ecx, [ebx + 0x308]
call fcn.0041f710
test eax, eax
je 0x41d5f4
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx]
lea ecx, [ebx + 0x308]
inc edi
call fcn.00452a93
cmp edi, eax
jl 0x41d5dc
lea ecx, [ebx + 0x308]
call fcn.0041f55c
lea edi, [ebx + 0x314]
push 0
mov ecx, edi
call fcn.0041f6f4
mov esi, eax
test esi, esi
je 0x41dc54
add ebx, 0x2b4
mov dword [ebp - 0x14c], ebx
push 0
mov ecx, edi
call fcn.0041f693
mov eax, dword [esi + 0x88]
test eax, eax
je 0x41d662
lea ecx, [eax + 0x38]
call fcn.0042778d
test al, al
je 0x41d662
mov ecx, dword [esi + 0x88]
push esi
add ecx, 0x38
call fcn.004277ea
mov ecx, dword [ebp - 0x14c]
xor ebx, ebx
call fcn.00452a93
test eax, eax
jle 0x41d696
mov ecx, dword [ebp - 0x14c]
push ebx
call fcn.0041f710
mov edx, dword [eax]
push esi
mov ecx, eax
call dword [edx]
mov ecx, dword [ebp - 0x14c]
inc ebx
call fcn.00452a93
cmp ebx, eax
jl 0x41d673
mov ecx, esi
call fcn.0041888e
push esi
call fcn.0045cc0f
pop ecx
push 0
mov ecx, edi
call fcn.0041f6f4
mov esi, eax
test esi, esi
jne 0x41d634
jmp 0x41dc54
cmp dword [ebx + 0x160], 0
je 0x41dc54
lea eax, [ebp - 0x58]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetClientRect]
push dword [ebp - 0x140]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x160]
lea edx, [ebp - 0x58]
push edx
push dword [ebp - 0x140]
mov dword [ebp - 0x15c], eax
mov eax, dword [ecx]
call dword [eax + 0x134]
test byte [ebp - 0x134], 0x10
je 0x41d792
push 5
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
je 0x41d792
mov eax, dword [ebp - 0x134]
or eax, 2
mov dword [ebp - 0x144], eax
and dword [ebp - 0x30], 0
xor eax, eax
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x30]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0x6c]
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 dword [ebp - 0x140]
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
push dword [ebp - 0x144]
push dword [ebp - 0x140]
push 0x317
push esi
call dword [sym.imp.USER32.dll_SendMessageA]
push 2
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
jne 0x41d729
push dword [ebp - 0x15c]
push dword [ebp - 0x140]
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp 0x41dc54
mov eax, dword [ebx + 0x9c]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
test eax, eax
je 0x41d7ca
lea ecx, [ebx + 0xa0]
push ecx
push 0
push 0x411
push eax
call esi
cmp byte [ebx + 0x2b0], 0
je 0x41d89b
and dword [ebp - 0x148], 0
xor eax, eax
and dword [ebp - 0x30], eax
lea edi, [ebp - 0x144]
stosd dword es:[edi], eax
lea edi, [ebp - 0x2c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_GetWindowRect]
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x41d88d
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, dword [ebx + 0x6c]
jne 0x41d88d
push dword [ebp - 0x144]
lea eax, [ebp - 0x30]
push dword [ebp - 0x148]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x41d88d
movzx eax, word [ebp - 0x144]
movzx ecx, word [ebp - 0x148]
shl eax, 0x10
or eax, ecx
push eax
xor edi, edi
push edi
push 0x84
push dword [ebx + 0x6c]
call esi
cmp eax, 1
jne 0x41d889
lea eax, [ebp - 0x148]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_ScreenToClient]
movzx eax, word [ebp - 0x144]
movzx ecx, word [ebp - 0x148]
shl eax, 0x10
or eax, ecx
push eax
push edi
jmp 0x41d891
push 0xffffffffffffffff
jmp 0x41d886
push 0xffffffffffffffff
push 0
push 0x200
push dword [ebx + 0x6c]
call esi
mov byte [ebx + 0x2b0], 0
jmp 0x41dc54
mov eax, dword [ebp - 0x134]
movsx esi, word [ebp - 0x134]
shr eax, 0x10
cwde
push eax
push esi
mov ecx, ebx
mov byte [ebx + 0x2b0], 0
mov dword [ebp - 0x144], eax
call fcn.0041b447
mov dword [ebp - 0x14c], eax
test eax, eax
je 0x41dc54
mov edx, dword [ebx + 0x168]
test edx, edx
je 0x41d95a
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0xd0], 0xc
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xb4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xc0], eax
call fcn.004187e1
mov ecx, dword [ebx + 0x168]
lea edx, [ebp - 0xd0]
mov word [ebp - 0xba], ax
mov eax, dword [ecx]
push edx
call dword [eax + 0x124]
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ecx]
lea edx, [ebp - 0xa0]
push edx
call dword [eax + 0xb4]
and dword [ebp - 4], 0
lea ecx, [ebp - 0xa0]
call fcn.0041f7dc
test al, al
je 0x41d996
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xa0]
call fcn.0041f741
jmp 0x41bdf1
push 0x30
pop edi
push edi
lea esi, [ebx + 0xa0]
push 0
push esi
call fcn.0045ed40
mov eax, dword [ebx + 0x6c]
mov dword [esi], edi
mov dword [ebx + 0xa4], 1
mov dword [ebx + 0xa8], eax
mov dword [ebx + 0xac], eax
mov eax, dword [0x499088]
add esp, 0xc
lea ecx, [ebp - 0xa0]
mov dword [ebx + 0xc0], eax
call fcn.0041f802
mov ecx, dword [ebp - 0x14c]
mov dword [ebx + 0xc4], eax
mov eax, dword [ecx]
call dword [eax + 0x50]
cmp dword [ebx + 0x9c], 0
lea edi, [ebx + 0xb0]
mov esi, 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 esi, dword [sym.imp.USER32.dll_SendMessageA]
jne 0x41da65
xor edi, edi
push edi
push dword [0x499088]
mov eax, SysReAllocString
push edi
push dword [ebx + 0x6c]
push eax
push eax
push eax
push eax
push SysStringLen
push edi
push str.tooltips_class32
push edi
call dword [sym.imp.USER32.dll_CreateWindowExA]
lea ecx, [ebx + 0xa0]
push ecx
push edi
push 0x404
push eax
mov dword [ebx + 0x9c], eax
call esi
mov ecx, dword [ebp - 0x14c]
mov eax, dword [ecx]
call dword [eax + 0xc0]
push eax
push edi
push 0x418
push dword [ebx + 0x9c]
call esi
jmp 0x41da67
xor edi, edi
push dword [ebx + 0x9c]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x41d982
lea eax, [ebx + 0xa0]
push eax
push edi
push 0x409
push dword [ebx + 0x9c]
call esi
lea eax, [ebx + 0xa0]
push eax
push 1
push 0x411
push dword [ebx + 0x9c]
call esi
jmp 0x41d982
movsx eax, word [ebp - 0x134]
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x134]
shr eax, 0x10
cwde
mov dword [ebp - 0x144], eax
lea eax, [ebp - 0x148]
push eax
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x148]
push ecx
mov dword [ebx + 0x178], ecx
push eax
mov ecx, ebx
mov dword [ebx + 0x174], eax
call fcn.0041b447
mov esi, eax
test esi, esi
je 0x41dc54
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41dc54
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x140]
shr eax, 0x10
xor ecx, ecx
test ax, ax
mov eax, dword [ebp - 0x134]
sets cl
mov dword [ebp - 0xd0], 0x15
mov dword [ebp - 0xcc], esi
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb8], ecx
call fcn.004187e1
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xc8], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x124]
movzx eax, word [ebx + 0x178]
movzx ecx, word [ebx + 0x174]
shl eax, 0x10
or eax, ecx
push eax
push 0
push 0x200
push dword [ebx + 0x6c]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x41dc54
mov ecx, ebx
call fcn.004191f4
mov eax, dword [ebp - 0x134]
movsx esi, word [ebp - 0x134]
shr eax, 0x10
cwde
push eax
push esi
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x174], esi
mov dword [ebx + 0x178], eax
call fcn.0041b447
mov edx, eax
mov dword [ebx + 0x16c], edx
test edx, edx
je 0x41dc54
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0xcc]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xd0], 0x12
mov ecx, dword [ebp - 0x134]
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0xb4], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xc4], esi
mov dword [ebp - 0xc0], ecx
mov word [ebp - 0xba], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [ebx + 0x16c]
mov dword [ebp - 0xc8], eax
mov eax, dword [ebx]
lea ecx, [ebp - 0xd0]
push ecx
mov ecx, ebx
call dword [eax + 0x124]
xor al, al
call fcn.0045f618
ret 0x10