Function at 0x41361e
Capabilities:
Check for time delay via gettickcount
Hide graphical window

Disassembly:
push 0x2a0
mov eax, 0x59fb5b
call fcn.00493819
mov eax, dword [ebp + 0xc]
mov ebx, edx
cmp dword [ebx], 0
mov dword [ebp - 0x288], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x290], ebx
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x278], ecx
je 0x414aa6
lea ecx, [ebx + 0x134]
mov dword [ebp - 0x294], ecx
cmp dword [ecx + 4], 0
jle 0x4136c6
mov edx, dword [ecx]
mov edi, dword [edx]
test edi, edi
je 0x4136c6
xor edx, edx
call fcn.00415e06
mov eax, dword [edi + 0x298]
test eax, eax
je 0x413690
cmp dword [eax + 0x38], 0
jle 0x413690
push edi
lea esi, [eax + 0x34]
call fcn.0042c2e3
xor esi, esi
cmp dword [ebx + 0xf0], esi
jle 0x4136b1
mov eax, dword [ebx + 0xec]
mov ecx, dword [eax + esi*4]
mov eax, dword [ecx]
push edi
call dword [eax]
inc esi
cmp esi, dword [ebx + 0xf0]
jl 0x41369a
mov esi, edi
call fcn.004130ce
mov eax, dword [ebp - 0x280]
mov ecx, dword [ebp - 0x294]
jmp 0x413662
xor esi, esi
cmp dword [ebx + 0x114], esi
jle 0x413711
mov ecx, dword [ebx + 0x110]
lea edi, [ebp - 0x281]
push edi
push eax
push dword [ebp - 0x288]
mov byte [ebp - 0x281], 0
mov ecx, dword [ecx + esi*4]
push dword [ebp + 8]
mov edx, dword [ecx]
call dword [edx]
cmp byte [ebp - 0x281], 0
jne 0x41379c
mov eax, dword [ebp - 0x280]
inc esi
cmp esi, dword [ebx + 0x114]
jl 0x4136d0
mov ecx, dword [ebp + 8]
mov edx, 0x113
cmp ecx, edx
ja 0x4142bf
je 0x414247
cmp ecx, 0x4e
ja 0x414089
je 0x414068
sub ecx, 5
je 0x41401e
push 0xa
pop esi
sub ecx, esi
je 0x413980
dec ecx
je 0x41389b
sub ecx, 4
je 0x41388b
sub ecx, 0xc
je 0x4137ab
sub ecx, 4
jne 0x41391a
mov ecx, dword [ebx + 0x74]
test ecx, ecx
jle 0x413772
mov dword [eax + 0x18], ecx
mov ecx, dword [ebx + 0x78]
test ecx, ecx
jle 0x41377c
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebx + 0x7c]
test ecx, ecx
jle 0x413786
mov dword [eax + 0x20], ecx
mov ecx, dword [ebx + 0x80]
test ecx, ecx
jle 0x41391a
mov dword [eax + 0x24], ecx
jmp 0x41391a
mov ecx, dword [ebp - 0x278]
mov dword [ecx], eax
mov al, 1
jmp 0x414aa8
cmp ax, 1
jne 0x41391a
cmp byte [ebx + 0xce], 0
jne 0x4137a4
and dword [ebp - 0x2a4], 0
xor eax, eax
lea edi, [ebp - 0x2a0]
stosd dword es:[edi], eax
lea eax, [ebp - 0x2a4]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x2a4]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x2a0]
mov eax, ebx
push dword [ebp - 0x2a4]
call fcn.00415997
mov esi, eax
test esi, esi
je 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x14]
test al, 2
je 0x41391a
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x210]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x1fc], eax
mov eax, dword [ebp - 0x280]
mov dword [ebp - 0x1f8], eax
mov eax, dword [ebp - 0x2a4]
mov dword [ebp - 0x208], eax
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x214], 0x17
mov dword [ebp - 0x204], eax
call fcn.004129c4
mov word [ebp - 0x1fe], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x20c], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
jmp 0x4137a4
mov ecx, dword [ebp - 0x278]
xor eax, eax
inc eax
mov dword [ecx], eax
jmp 0x414aa8
and dword [ebp - 0x34], 0
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x24], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x60]
mov dword [ebp - 0x2c], eax
test ecx, ecx
je 0x4138d7
lea edx, [ebp - 0x34]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov ebx, dword [ebx + 0x64]
test ebx, ebx
je 0x4138f6
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x34], 0xe
mov dword [ebp - 0x30], ebx
mov eax, dword [ebx]
push ecx
mov ecx, ebx
call dword [eax + 0x10c]
mov esi, dword [ebp - 0x290]
xor ebx, ebx
call fcn.00414d9f
push 4
push dword [esi]
call dword [sym.imp.USER32.dll_GetWindow]
test eax, eax
je 0x413918
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov ebx, esi
mov ecx, dword [ebp - 0x294]
cmp dword [ecx + 4], 0
jle 0x414aa6
mov eax, dword [ecx]
mov edi, dword [eax]
test edi, edi
je 0x414aa6
xor edx, edx
call fcn.00415e06
mov eax, dword [edi + 0x298]
test eax, eax
je 0x413956
cmp dword [eax + 0x38], 0
jle 0x413956
push edi
lea esi, [eax + 0x34]
call fcn.0042c2e3
xor esi, esi
cmp dword [ebx + 0xf0], esi
jle 0x413977
mov eax, dword [ebx + 0xec]
mov ecx, dword [eax + esi*4]
mov eax, dword [ecx]
push edi
call dword [eax]
inc esi
cmp esi, dword [ebx + 0xf0]
jl 0x413960
mov esi, edi
call fcn.004130ce
jmp 0x41391a
xor eax, eax
xor esi, esi
mov dword [ebp - 0x44], esi
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push esi
lea eax, [ebp - 0x44]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x4137a4
cmp dword [ebx + 0x58], esi
jne 0x4139e2
push 0x3c
lea eax, [ebp - 0x230]
push esi
push eax
mov dword [ebp - 0x234], esi
call fcn.0048b3f0
add esp, 0xc
lea eax, [ebp - 0x234]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_BeginPaint]
lea eax, [ebp - 0x234]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x4137a4
cmp byte [ebx + 0xcc], 0
je 0x413cdb
push 0xffffffffffffffec
push dword [ebx]
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, 0x80000
test ecx, eax
jne 0x413a0f
xor eax, ecx
push eax
push 0xffffffffffffffec
push dword [ebx]
call dword [sym.imp.USER32.dll_SetWindowLongW]
xor eax, eax
mov dword [ebp - 0x1b4], esi
lea edi, [ebp - 0x1b0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x3c
lea eax, [ebp - 0x270]
push esi
push eax
mov dword [ebp - 0x274], esi
call fcn.0048b3f0
add esp, 0xc
lea eax, [ebp - 0x274]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_BeginPaint]
mov eax, dword [ebx + 0x10]
cmp eax, esi
je 0x413a64
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0x18]
mov edi, dword [sym.imp.GDI32.dll_DeleteObject]
cmp eax, esi
je 0x413a74
push eax
call edi
cmp byte [ebx + 0xc9], 0
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x18], esi
je 0x413b54
lea eax, [ebp - 0x1b4]
push eax
mov byte [ebx + 0xc9], 0
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x413b54
mov ecx, dword [ebx + 0x58]
cmp byte [ecx + 0x2e0], al
je 0x413b13
mov eax, dword [ebx + 0x10]
test eax, eax
je 0x413abc
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0x18]
test eax, eax
je 0x413ac6
push eax
call edi
and dword [ebx + 0x10], esi
and dword [ebx + 0x18], esi
mov ecx, dword [ebx + 0x58]
mov eax, dword [ecx]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x1b4]
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 + 0x34]
jmp 0x413b31
mov ecx, dword [ebp - 0x280]
mov eax, dword [ecx]
mov dword [ebp - 0x294], eax
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x280]
sub esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x294]
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 + 0x34]
mov ecx, dword [ebx + 0x58]
mov eax, dword [ecx]
push reloc.WS2_32.dll_accept
push 0
push 0x415afe
call dword [eax + 0xfc]
mov dword [ebp - 0x280], eax
test eax, eax
jne 0x413ae5
cmp byte [ebx + 0xc8], 0
je 0x413b54
push 0
push 0
push dword [ebx + 0x58]
mov ecx, str.windowinit
mov edx, ebx
mov byte [ebx + 0xc8], 0
call fcn.004151df
xor esi, esi
cmp byte [ebx + 0xca], 0
je 0x413b76
cmp dword [ebx + 0x5c], esi
jne 0x413b6f
push 1
mov eax, ebx
call fcn.00415080
jmp 0x413b76
mov byte [ebx + 0xca], 0
cmp byte [ebx + 0xcb], 0
je 0x413bb6
cmp dword [ebx + 0x18], esi
jne 0x413bb6
push dword [ebx + 8]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebx + 0x10], eax
mov eax, dword [ebp - 0x1a8]
sub eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [ebp - 0x1ac]
sub eax, dword [ebp - 0x1b4]
push eax
push dword [ebx + 8]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [ebx + 0x18], eax
push dword [ebx + 0x18]
push dword [ebx + 0x10]
call dword [sym.imp.GDI32.dll_SelectObject]
cmp byte [ebx + 0xcf], 0
je 0x413c1a
and dword [ebp - 0x54], 0
xor eax, eax
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
push 0x10
lea eax, [ebp - 0x1b4]
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00489dd0
mov ebx, dword [ebx + 0x10]
mov esi, dword [ebp - 0x290]
add esp, 0xc
lea edi, [ebp - 0x54]
call fcn.00415bf8
mov eax, esi
mov ecx, dword [eax + 0x58]
mov edx, dword [ecx]
mov esi, edi
push esi
push dword [eax + 0x10]
call dword [edx + 0x11c]
mov ebx, dword [ebp - 0x290]
xor esi, esi
jmp 0x413c2f
mov ecx, dword [ebx + 0x58]
mov eax, dword [ecx]
lea edx, [ebp - 0x1b4]
push edx
push dword [ebx + 0x10]
call dword [eax + 0x11c]
xor eax, eax
mov dword [ebp - 0x24], esi
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x24]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x29c], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x298], eax
mov eax, dword [ebp - 0x1ac]
sub eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x28c], esi
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x1a8]
sub eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x288], esi
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebx + 0x168]
mov dword [ebp - 0x278], 0x1ff0000
cmp eax, esi
je 0x413ca5
cmp byte [eax + 0xd2], 0
je 0x413cd0
push 2
lea eax, [ebp - 0x278]
push eax
push esi
lea eax, [ebp - 0x28c]
push eax
push dword [ebx + 0x10]
lea eax, [ebp - 0x2ac]
push eax
lea eax, [ebp - 0x29c]
push eax
push esi
push dword [ebx]
call dword [sym.imp.USER32.dll_UpdateLayeredWindow]
lea eax, [ebp - 0x274]
jmp 0x4139d4
cmp byte [ebx + 0xc9], 0
je 0x413dca
and dword [ebp - 0x24], esi
xor eax, eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x24]
push eax
push dword [ebx]
mov byte [ebx + 0xc9], 0
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x413dca
mov ecx, dword [ebx + 0x58]
cmp byte [ecx + 0x2e0], 0
mov eax, dword [ecx]
je 0x413d8b
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x24]
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 + 0x34]
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x413d43
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0x14]
test eax, eax
je 0x413d51
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [ebx + 0xc], 0
and dword [ebx + 0x14], 0
jmp 0x413da7
mov ecx, dword [ebp - 0x278]
mov eax, dword [ecx]
mov dword [ebp - 0x294], eax
call dword [eax + 0x30]
mov ecx, dword [ebp - 0x278]
sub esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x294]
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 + 0x34]
mov ecx, dword [ebx + 0x58]
mov eax, dword [ecx]
push reloc.WS2_32.dll_accept
push 0
push 0x415afe
call dword [eax + 0xfc]
mov dword [ebp - 0x278], eax
test eax, eax
jne 0x413d5b
cmp byte [ebx + 0xc8], 0
je 0x413dca
push 0
push 0
push dword [ebx + 0x58]
mov ecx, str.windowinit
mov edx, ebx
mov byte [ebx + 0xc8], 0
call fcn.004151df
cmp byte [ebx + 0xca], 0
je 0x413deb
cmp dword [ebx + 0x5c], 0
jne 0x413de4
push 1
mov eax, ebx
call fcn.00415080
jmp 0x413deb
mov byte [ebx + 0xca], 0
cmp byte [ebx + 0xcb], 0
je 0x413e4d
cmp dword [ebx + 0x14], 0
jne 0x413e4d
and dword [ebp - 0x1b4], 0
xor eax, eax
lea edi, [ebp - 0x1b0]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetClientRect]
push dword [ebx + 8]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebx + 0xc], eax
mov eax, dword [ebp - 0x1a8]
sub eax, dword [ebp - 0x1b0]
push eax
mov eax, dword [ebp - 0x1ac]
sub eax, dword [ebp - 0x1b4]
push eax
push dword [ebx + 8]
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov dword [ebx + 0x14], eax
and dword [ebp - 0x1f4], 0
push 0x3c
lea eax, [ebp - 0x1f0]
push 0
push eax
call fcn.0048b3f0
add esp, 0xc
lea eax, [ebp - 0x1f4]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp byte [ebx + 0xcb], 0
je 0x413f93
push dword [ebx + 0x14]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebx + 0xc]
call edi
push dword [ebx + 0xc]
mov dword [ebp - 0x278], eax
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x58]
lea edx, [ebp - 0x1ec]
push edx
push dword [ebx + 0xc]
mov dword [ebp - 0x294], eax
mov eax, dword [ecx]
call dword [eax + 0x11c]
xor esi, esi
cmp dword [ebx + 0x120], esi
jle 0x413ee9
mov eax, dword [ebx + 0x11c]
mov ecx, dword [eax + esi*4]
mov eax, dword [ecx]
lea edx, [ebp - 0x1ec]
push edx
push dword [ebx + 0xc]
call dword [eax + 0x134]
inc esi
cmp esi, dword [ebx + 0x120]
jl 0x413ec5
push dword [ebp - 0x294]
push dword [ebx + 0xc]
call dword [sym.imp.GDI32.dll_RestoreDC]
mov eax, dword [ebp - 0x1e0]
sub eax, dword [ebp - 0x1e8]
push 0xcc0020
push dword [ebp - 0x1e8]
push dword [ebp - 0x1ec]
push dword [ebx + 0xc]
push eax
mov eax, dword [ebp - 0x1e4]
sub eax, dword [ebp - 0x1ec]
push eax
push dword [ebp - 0x1e8]
push dword [ebp - 0x1ec]
push dword [ebp - 0x1f4]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x278]
push dword [ebx + 0xc]
call edi
cmp byte [ebx + 0x50], 0
je 0x413fc6
push dword [0x6324cc]
push dword [ebp - 0x1f4]
call edi
push 5
mov esi, eax
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push dword [ebp - 0x1f4]
call edi
push dword [ebp - 0x38]
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push dword [ebp - 0x44]
push dword [ebp - 0x1f4]
call dword [sym.imp.GDI32.dll_Rectangle]
push esi
push dword [ebp - 0x1f4]
call edi
jmp 0x413fc6
push dword [ebp - 0x1f4]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x58]
lea edx, [ebp - 0x1ec]
push edx
push dword [ebp - 0x1f4]
mov esi, eax
mov eax, dword [ecx]
call dword [eax + 0x11c]
push esi
push dword [ebp - 0x1f4]
call dword [sym.imp.GDI32.dll_RestoreDC]
lea eax, [ebp - 0x1f4]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_EndPaint]
mov eax, dword [ebx + 0x16c]
mov esi, dword [sym.imp.USER32.dll_InvalidateRect]
mov byte [ebx + 0xd2], 1
test eax, eax
je 0x414004
push 5
push dword [eax]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebx + 0x16c]
push 0
push 0
push dword [eax]
call esi
cmp byte [ebx + 0xc9], 0
je 0x4137a4
push 0
push 0
push dword [ebx]
call esi
jmp 0x4137a4
mov edx, dword [ebx + 0x5c]
test edx, edx
je 0x414051
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x34], 0x16
mov dword [ebp - 0x30], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x5c]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov ebx, dword [ebx + 0x58]
test ebx, ebx
je 0x4137a4
mov eax, ebx
call fcn.00417273
jmp 0x4137a4
test eax, eax
je 0x4137a4
push eax
push dword [ebp - 0x288]
push 0x204e
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x41379c
sub ecx, 0x7b
je 0x4141c7
sub ecx, 0x85
je 0x414169
dec ecx
je 0x41410d
dec ecx
je 0x4140c4
sub ecx, 0xf
jne 0x41391a
test eax, eax
je 0x41391a
push eax
push dword [ebp - 0x288]
push 0x2111
push eax
jmp 0x41407e
cmp dword [ebx + 0x5c], 0
je 0x41391a
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ax, word [ebp - 0x288]
mov word [ebp - 0x20], ax
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x34], 5
mov dword [ebp - 0x24], eax
call fcn.004129c4
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x5c]
jmp 0x4142ab
cmp dword [ebx + 0x68], 0
je 0x41391a
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ax, word [ebp - 0x288]
mov word [ebp - 0x20], ax
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x34], 4
mov dword [ebp - 0x24], eax
call fcn.004129c4
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x68]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
and dword [ebx + 0x68], 0
jmp 0x41391a
cmp dword [ebx + 0x5c], 0
je 0x41391a
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ax, word [ebp - 0x288]
mov word [ebp - 0x20], ax
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x34], 3
mov dword [ebp - 0x24], eax
call fcn.004129c4
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x5c]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov eax, dword [ebx + 0x5c]
mov dword [ebx + 0x68], eax
jmp 0x41391a
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x27c]
push eax
push dword [ebx]
mov dword [ebp - 0x27c], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp dword [ebx + 0x64], 0
mov eax, dword [ebp - 0x27c]
mov dword [ebx + 0x6c], eax
mov eax, dword [ebp - 0x278]
mov dword [ebx + 0x70], eax
je 0x41391a
push ebx
call fcn.00415069
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x27c]
mov eax, dword [ebx + 0x64]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x278]
mov dword [ebp - 0x24], ecx
mov cx, word [ebp - 0x288]
mov dword [ebp - 0x34], 0x11
mov dword [ebp - 0x30], eax
mov word [ebp - 0x1e], cx
mov dword [ebp - 0x18], eax
jmp 0x41440e
xor edx, edx
cmp dword [ebx + 0xfc], edx
jle 0x41391a
mov ecx, dword [ebx]
mov eax, dword [ebx + 0xf8]
mov esi, dword [eax]
cmp dword [esi + 8], ecx
jne 0x414276
movzx edi, word [ebp - 0x288]
cmp dword [esi + 0xc], edi
jne 0x414276
cmp byte [esi + 0x10], 0
je 0x414287
inc edx
add eax, 4
cmp edx, dword [ebx + 0xfc]
jl 0x41425d
jmp 0x41391a
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [esi]
mov dword [ebp - 0x30], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x34], 0x18
mov dword [ebp - 0x1c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
lea edx, [ebp - 0x34]
push edx
call dword [eax + 0x10c]
jmp 0x41391a
mov edx, 0x204
cmp ecx, edx
ja 0x4146ef
je 0x414654
mov edx, ecx
sub edx, 0x133
je 0x414639
sub edx, 5
je 0x414639
sub edx, 0xc8
je 0x4144e4
dec edx
je 0x41442f
dec edx
je 0x4143b2
dec edx
jne 0x41391a
push dword [ebx]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x280]
movsx ecx, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x278], eax
mov dword [ebx + 0x70], eax
push ecx
mov eax, ebx
mov dword [ebp - 0x27c], ecx
mov dword [ebx + 0x6c], ecx
call fcn.00415997
mov esi, eax
test esi, esi
je 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41391a
push dword [ebx]
call dword [sym.imp.USER32.dll_SetCapture]
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x24], eax
mov ax, word [ebp - 0x288]
mov dword [ebp - 0x34], 0x10
mov dword [ebp - 0x30], esi
mov byte [ebx + 0xce], 1
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
mov dword [ebx + 0x64], esi
jmp 0x41391a
movsx esi, ax
shr eax, 0x10
cmp dword [ebx + 0x64], 0
cwde
mov dword [ebp - 0x298], eax
mov dword [ebx + 0x6c], esi
mov dword [ebx + 0x70], eax
je 0x41391a
push ebx
call fcn.00415069
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x64]
mov ecx, dword [ebp - 0x280]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x298]
mov dword [ebp - 0x34], 0xe
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], ecx
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x64]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
and dword [ebx + 0x64], 0
jmp 0x41391a
push dword [ebx]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x280]
movsx eax, word [ebp - 0x280]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x27c], eax
mov dword [ebx + 0x6c], eax
push eax
mov eax, ebx
mov dword [ebp - 0x278], ecx
mov dword [ebx + 0x70], ecx
call fcn.00415997
mov esi, eax
test esi, esi
je 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41391a
mov dword [ebx + 0x64], esi
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xf0]
push dword [ebx]
call dword [sym.imp.USER32.dll_SetCapture]
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x280]
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x27c]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x278]
mov byte [ebx + 0xce], 1
mov dword [ebp - 0x34], 0xd
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], ecx
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x2c], eax
jmp 0x41462c
cmp byte [ebx + 0xcd], 0
jne 0x414540
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebx]
push 3
mov dword [ebp - 0x3c], eax
mov eax, dword [ebx + 0x1c]
pop ecx
mov dword [ebp - 0x44], 0x10
mov dword [ebp - 0x40], ecx
test eax, eax
jne 0x414517
mov dword [ebp - 0x38], 0x190
jmp 0x414529
push 0
push ecx
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x38], eax
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov eax, dword [ebp - 0x280]
mov byte [ebx + 0xcd], 1
movsx esi, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x298], eax
mov dword [ebx + 0x70], eax
push esi
mov eax, ebx
mov dword [ebx + 0x6c], esi
call fcn.00415997
mov dword [ebp - 0x278], eax
test eax, eax
je 0x414575
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x41391a
and dword [ebp - 0x34], 0
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x60]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x278], ecx
je 0x4145da
test ecx, ecx
je 0x4145da
lea edx, [ebp - 0x34]
mov dword [ebp - 0x34], 0xa
mov dword [ebp - 0x30], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov eax, dword [ebx + 0x1c]
and dword [ebx + 0x60], 0
test eax, eax
je 0x4145da
lea ecx, [ebx + 0x20]
push ecx
push 0
push 0x411
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [ebp - 0x278]
cmp esi, dword [ebx + 0x60]
je 0x414604
test esi, esi
je 0x414604
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x34], 0xb
mov dword [ebp - 0x30], esi
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
mov dword [ebx + 0x60], esi
mov ecx, dword [ebx + 0x64]
test ecx, ecx
je 0x41461a
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x30], ecx
jmp 0x4142ae
test esi, esi
je 0x41391a
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x30], esi
mov eax, dword [esi]
lea ecx, [ebp - 0x34]
push ecx
mov ecx, esi
jmp 0x4142b4
test eax, eax
je 0x41391a
push eax
push dword [ebp - 0x288]
add ecx, 0x2000
push ecx
jmp 0x4140c1
push dword [ebx]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x280]
movsx eax, word [ebp - 0x280]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x27c], eax
mov dword [ebx + 0x6c], eax
push eax
mov eax, ebx
mov dword [ebp - 0x278], ecx
mov dword [ebx + 0x70], ecx
call fcn.00415997
mov esi, eax
test esi, esi
je 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xf0]
push dword [ebx]
call dword [sym.imp.USER32.dll_SetCapture]
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x280]
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x18], ecx
mov ecx, dword [ebp - 0x27c]
mov dword [ebp - 0x28], ecx
mov ecx, dword [ebp - 0x278]
mov dword [ebp - 0x34], 0xf
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x24], ecx
jmp 0x414385
sub ecx, 0x20a
je 0x4149dd
sub ecx, 0x97
je 0x414871
dec ecx
dec ecx
je 0x414834
sub ecx, 0x75
je 0x414756
sub ecx, 0x7ce9
jne 0x41391a
xor esi, esi
cmp dword [ebx + 0x12c], esi
jle 0x414746
mov eax, dword [ebx + 0x128]
mov ecx, dword [eax + esi*4]
test ecx, ecx
je 0x41473d
mov eax, dword [ecx]
push 1
call dword [eax]
inc esi
cmp esi, dword [ebx + 0x12c]
jl 0x41472a
lea esi, [ebx + 0x128]
call fcn.00415cf0
jmp 0x41391a
lea eax, [ebp - 0x24]
push eax
push dword [ebx]
call dword [sym.imp.USER32.dll_GetClientRect]
push dword [ebp - 0x288]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x58]
lea edx, [ebp - 0x24]
push edx
push dword [ebp - 0x288]
mov dword [ebp - 0x290], eax
mov eax, dword [ecx]
call dword [eax + 0x11c]
test byte [ebp - 0x280], 0x10
je 0x41481d
push 5
push dword [ebx]
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
je 0x41481d
mov eax, dword [ebp - 0x280]
or eax, 2
mov dword [ebp - 0x278], eax
and dword [ebp - 0x44], 0
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x44]
push eax
push esi
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x44]
push eax
push dword [ebx]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [ebp - 0x40]
push 0
neg eax
push eax
mov eax, dword [ebp - 0x44]
neg eax
push eax
push dword [ebp - 0x288]
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
push dword [ebp - 0x278]
push dword [ebp - 0x288]
push 0x317
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
push esi
call dword [sym.imp.USER32.dll_GetWindow]
mov esi, eax
test esi, esi
jne 0x4147b5
push dword [ebp - 0x290]
push dword [ebp - 0x288]
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp 0x41391a
mov eax, dword [ebx + 0x1c]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x41484f
lea ecx, [ebx + 0x20]
push ecx
push 0
push 0x411
push eax
call esi
cmp byte [ebx + 0xcd], 0
je 0x414865
push 0xffffffffffffffff
push 0
push 0x200
push dword [ebx]
call esi
mov byte [ebx + 0xcd], 0
jmp 0x41391a
movsx esi, ax
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x298], eax
push esi
mov eax, ebx
mov byte [ebx + 0xcd], 0
call fcn.00415997
mov dword [ebp - 0x278], eax
test eax, eax
je 0x41391a
mov edx, dword [ebx + 0x60]
test edx, edx
je 0x4148db
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x298]
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], 0xc
mov dword [ebp - 0x30], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x60]
lea edx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov ecx, dword [ebp - 0x278]
mov eax, dword [ecx]
lea edx, [ebp - 0x1a4]
push edx
call dword [eax + 0x98]
and dword [ebp - 4], 0
mov eax, dword [ebp - 0x1a4]
cmp word [eax], 0
jne 0x414910
lea ecx, [ebp - 0x1a4]
call fcn.00415eac
jmp 0x4137a4
push 0x30
pop edi
push edi
lea esi, [ebx + 0x20]
push 0
push esi
call fcn.0048b3f0
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x278]
mov dword [ebx + 0x28], eax
mov dword [ebx + 0x2c], eax
mov eax, dword [0x6324d0]
mov dword [ebx + 0x40], eax
mov eax, dword [ebp - 0x1a4]
mov dword [esi], edi
mov dword [ebx + 0x24], 1
mov dword [ebx + 0x44], eax
mov eax, dword [ecx]
add esp, 0xc
call dword [eax + 0x30]
cmp dword [ebx + 0x1c], 0
lea edi, [ebx + 0x30]
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_SendMessageW]
jne 0x41499d
xor edi, edi
push edi
push dword [0x6324d0]
mov eax, SysReAllocString
push edi
push dword [ebx]
push eax
push eax
push eax
push eax
push reloc.WS2_32.dll_closesocket
push edi
push str.tooltips_class32
push edi
call dword [sym.imp.USER32.dll_CreateWindowExW]
lea ecx, [ebx + 0x20]
push ecx
push edi
push 0x432
push eax
mov dword [ebx + 0x1c], eax
call esi
jmp 0x41499f
xor edi, edi
mov ecx, dword [ebp - 0x278]
mov eax, dword [ecx]
call dword [eax + 0xa4]
push eax
push edi
push 0x418
push dword [ebx + 0x1c]
call esi
lea eax, [ebx + 0x20]
push eax
push edi
push 0x436
push dword [ebx + 0x1c]
call esi
lea eax, [ebx + 0x20]
push eax
push 1
push 0x411
push dword [ebx + 0x1c]
call esi
jmp 0x414900
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x278], eax
lea eax, [ebp - 0x27c]
push eax
push dword [ebx]
mov dword [ebp - 0x27c], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebp - 0x278]
mov eax, dword [ebp - 0x27c]
push ecx
mov dword [ebx + 0x6c], eax
push eax
mov eax, ebx
mov dword [ebx + 0x70], ecx
call fcn.00415997
mov esi, eax
test esi, esi
je 0x41391a
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x41391a
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x30]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x288]
shr eax, 0x10
xor ecx, ecx
test ax, ax
mov eax, dword [ebp - 0x280]
sets cl
mov dword [ebp - 0x34], 0x12
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], ecx
call fcn.004129c4
mov word [ebp - 0x1e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x2c], eax
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
movzx eax, word [ebx + 0x70]
movzx ecx, word [ebx + 0x6c]
shl eax, 0x10
or eax, ecx
push eax
push 0
push 0x200
push dword [ebx]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x41391a
xor al, al
call fcn.00493863
ret 0xc