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

Disassembly:
push 0x1e4
mov eax, 0x4a53b1
call fcn.00441168
mov eax, dword [ebp + 0x10]
mov esi, dword [ebp + 0xc]
mov ebx, ecx
cmp dword [ebx + 0xac], 0
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1c0], eax
je 0x45c170
and dword [ebp - 0x1c4], 0
lea ecx, [ebx + 0x4a8]
call fcn.00491a5b
mov edi, dword [ebp + 8]
test eax, eax
jle 0x459a1f
push dword [ebp - 0x1c4]
lea ecx, [ebx + 0x4a8]
mov byte [ebp - 0x1b5], 0
call fcn.00453b7e
mov edx, dword [eax]
lea ecx, [ebp - 0x1b5]
push ecx
push dword [ebp - 0x1ac]
mov ecx, eax
push esi
push edi
call dword [edx]
cmp byte [ebp - 0x1b5], 0
jne 0x459a6e
inc dword [ebp - 0x1c4]
lea ecx, [ebx + 0x4a8]
call fcn.00491a5b
cmp dword [ebp - 0x1c4], eax
jl 0x4599d0
cmp byte [ebx + 0x171], 0
push 2
pop ecx
je 0x459afe
mov eax, edi
sub eax, 0x83
je 0x459af3
sub eax, ecx
je 0x459af3
dec eax
jne 0x459afe
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x45ab85
test esi, esi
sete al
mov ecx, dword [ebp - 0x1c0]
mov dword [ecx], eax
jmp 0x459ad7
mov ecx, dword [ebp - 0x1c0]
mov dword [ecx], eax
cmp edi, 0x7b
je 0x459a93
cmp edi, 0x1ff
jbe 0x459ad7
cmp edi, 0x203
jbe 0x459ade
cmp edi, 0x20a
jne 0x459ad7
mov eax, dword [ebp - 0x1ac]
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x1b0], eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx + 0xac]
mov dword [ebp - 0x1b4], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0x1b4]
mov dword [ebx + 0x120], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebx + 0x124], eax
mov al, 1
jmp 0x45c172
mov eax, dword [ebp - 0x1ac]
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebx + 0x120], ecx
jmp 0x459ad1
mov eax, dword [ebp - 0x1c0]
and dword [eax], 0
jmp 0x459ad7
mov eax, 0x133
cmp edi, eax
ja 0x45afb3
je 0x45b97f
cmp edi, 0x24
ja 0x45ab85
je 0x45aacf
sub edi, 5
je 0x45aa6d
sub edi, ecx
je 0x45aa28
dec edi
je 0x45aa0f
sub edi, 7
je 0x459d45
dec edi
je 0x459c62
sub edi, 4
je 0x459c51
sub edi, 0xc
jne 0x45c170
cmp dword [ebx + 0x108], edi
je 0x45c170
cmp word [ebp - 0x1ac], 1
jne 0x45c170
cmp byte [ebx + 0x471], 0
jne 0x459ad7
and dword [ebp - 0x1b4], edi
xor eax, eax
lea edi, [ebp - 0x1b0]
stosd dword es:[edi], eax
lea eax, [ebp - 0x1b4]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x1b0]
mov ecx, ebx
push dword [ebp - 0x1b4]
call fcn.00458f67
mov ebx, eax
test ebx, ebx
je 0x45c170
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x14]
test al, 2
je 0x45c170
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x138], 0x1a
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ebx]
push ecx
mov ecx, ebx
call dword [eax + 0x134]
jmp 0x459ad7
mov eax, dword [ebp - 0x1c0]
mov dword [eax], 1
jmp 0x459ad7
xor eax, eax
push 7
xor esi, esi
pop ecx
mov dword [ebp - 0x138], esi
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x120]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0x124]
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x110]
mov dword [ebp - 0x130], eax
cmp ecx, esi
je 0x459cd0
lea edx, [ebp - 0x138]
mov dword [ebp - 0x138], 0xa
mov dword [ebp - 0x134], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
mov ecx, dword [ebx + 0x114]
cmp ecx, esi
je 0x459cf9
lea edx, [ebp - 0x138]
mov dword [ebp - 0x138], 0xe
mov dword [ebp - 0x134], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
push esi
mov ecx, ebx
call fcn.004594e6
mov edi, dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, edi
jne 0x459d25
push 4
push edi
call dword [sym.imp.USER32.dll_GetWindow]
cmp eax, esi
je 0x459d25
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebx + 0xcc]
cmp eax, esi
je 0x45c170
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
mov dword [ebx + 0xcc], esi
jmp 0x45c170
cmp dword [ebx + 0x108], 0
jne 0x459dad
and dword [ebp - 0x158], 0
push 0x3c
lea eax, [ebp - 0x154]
push 0
push eax
call fcn.0043e050
add esp, 0xc
lea eax, [ebp - 0x158]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_BeginPaint]
push 0xff000000
lea eax, [ebp - 0x150]
push eax
push dword [ebx + 0xb0]
call fcn.0046e416
add esp, 0xc
lea eax, [ebp - 0x158]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_EndPaint]
jmp 0x459ad7
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 + 0xac]
call dword [sym.imp.USER32.dll_GetClientRect]
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
push esi
lea eax, [ebp - 0x30]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
je 0x459ad7
cmp byte [ebx + 0x16e], 0
je 0x459e00
push 1
mov ecx, ebx
call fcn.004596b3
push 1
mov ecx, ebx
call fcn.00456068
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
push 1
mov dword [ebp - 0x1ac], eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
mov byte [ebp - 0x1b5], 0
mov dword [ebp - 0x1d0], eax
call fcn.00456068
cmp byte [ebx + 0x16d], 0
je 0x45a048
lea eax, [ebp - 0x40]
push eax
mov byte [ebx + 0x16d], 0
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x45a0cb
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x45a0cb
mov ecx, dword [ebx + 0x108]
call fcn.0046f91d
test al, al
je 0x459f2e
mov eax, dword [ebx + 0xb4]
lea esi, [ebp - 0x40]
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
test eax, eax
je 0x459e97
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0xb8]
test eax, eax
je 0x459ea8
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebx + 0xbc]
test eax, eax
je 0x459eb9
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [ebx + 0xc4]
test eax, eax
je 0x459eca
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
xor eax, eax
mov dword [ebx + 0xb4], eax
mov dword [ebx + 0xb8], eax
mov dword [ebx + 0xbc], eax
mov dword [ebx + 0xc4], eax
cmp byte [ebx + 0x171], al
je 0x459f10
mov eax, dword [ebx + 0x174]
add dword [ebp - 0x20], eax
mov eax, dword [ebx + 0x178]
add dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x17c]
sub dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x180]
sub dword [ebp - 0x14], eax
mov ecx, dword [ebx + 0x108]
mov eax, dword [ecx]
push 1
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x20]
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]
jmp 0x459fda
lea edi, [ebx + 0x4f0]
mov ecx, edi
call fcn.004539a9
mov ecx, dword [ebx + 0x108]
mov eax, dword [ecx]
push reloc.WS2_32.dll_htons
push esi
push 0x457123
call dword [eax + 0x128]
mov ecx, edi
mov dword [ebp - 0x1c0], esi
call fcn.00491a5b
test eax, eax
jle 0x459fda
push dword [ebp - 0x1c0]
mov ecx, edi
call fcn.00453b7e
mov edx, dword [eax]
mov ecx, eax
mov dword [ebp - 0x1c4], eax
call dword [edx + 0x120]
mov ecx, dword [ebp - 0x1c4]
test al, al
mov eax, dword [ecx]
mov dword [ebp - 0x1bc], eax
jne 0x459f99
call dword [eax + 0x50]
jmp 0x459fa3
lea edx, [ebp - 0x94]
push edx
call dword [eax + 0x48]
mov ecx, dword [ebp - 0x1c4]
push 1
sub esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x1bc]
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 - 0x1c0]
lea edi, [ebx + 0x4f0]
mov ecx, edi
call fcn.00491a5b
cmp dword [ebp - 0x1c0], eax
jl 0x459f65
cmp byte [ebx + 0x16c], 0
mov byte [ebp - 0x1b5], 1
je 0x45a0cb
xor esi, esi
push esi
push esi
push esi
push str.windowinit
push dword [ebx + 0x108]
mov ecx, ebx
mov byte [ebx + 0x16c], 0
call fcn.00459446
cmp byte [ebx + 0x171], 0
je 0x45a032
cmp byte [ebx + 0x184], 0
je 0x45a032
mov ecx, ebx
call fcn.00455b9c
push esi
mov ecx, ebx
call fcn.00456068
jmp 0x459ad7
push dword [ebx + 0xac]
lea ecx, [ebx + 0x658]
call fcn.004725e1
jmp 0x45a0cb
cmp byte [ebx + 0x171], 0
je 0x45a139
cmp byte [ebx + 0x184], 0
je 0x45a0cb
mov eax, dword [ebx + 0xc0]
lea esi, [ebp - 0x40]
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
test eax, eax
je 0x45a08e
mov ecx, dword [ebp - 0x1d0]
imul ecx, dword [ebp - 0x1ac]
shl ecx, 2
push ecx
push 0
push eax
call fcn.0043e050
add esp, 0xc
mov eax, dword [ebx + 0x174]
add dword [ebp - 0x20], eax
mov eax, dword [ebx + 0x178]
add dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x17c]
sub dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x180]
sub dword [ebp - 0x14], eax
mov ecx, dword [ebx + 0x108]
mov eax, dword [ecx]
push 1
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x20]
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]
cmp byte [ebx + 0x171], 0
je 0x45a139
push 0xffffffffffffffec
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, eax
or ecx, 0x80000
cmp eax, ecx
je 0x45a0fd
push ecx
push 0xffffffffffffffec
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SetWindowLongW]
lea esi, [ebx + 0x188]
push esi
lea eax, [ebp - 0x30]
push eax
push eax
mov byte [ebx + 0x16f], 1
call dword [sym.imp.USER32.dll_UnionRect]
mov eax, dword [ebp - 0x38]
cmp dword [ebp - 0x28], eax
jle 0x45a121
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x24], eax
jle 0x45a12c
mov dword [ebp - 0x24], eax
push 0x10
push 0
push esi
call fcn.0043e050
add esp, 0xc
cmp byte [ebx + 0x16f], 0
je 0x45a184
cmp dword [ebx + 0xbc], 0
jne 0x45a184
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov dword [ebx + 0xb4], eax
lea eax, [ebx + 0xc0]
push eax
push dword [ebp - 0x1d0]
push dword [ebp - 0x1ac]
push dword [ebx + 0xb0]
call fcn.0046c5de
add esp, 0x10
mov dword [ebx + 0xbc], eax
xor edi, edi
push 0x3c
lea eax, [ebp - 0x1a4]
push edi
push eax
mov dword [ebp - 0x1a8], edi
call fcn.0043e050
add esp, 0xc
lea eax, [ebp - 0x1a8]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp byte [ebx + 0x16f], 0
je 0x45a939
push dword [ebx + 0xbc]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebx + 0xb4]
call esi
push dword [ebx + 0xb4]
mov dword [ebp - 0x1b0], eax
call dword [sym.imp.GDI32.dll_SaveDC]
cmp byte [ebx + 0x171], 0
mov dword [ebp - 0x1dc], eax
je 0x45a24e
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
sub edx, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
cmp edx, eax
jge 0x45a24e
mov ecx, edx
imul ecx, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1bc], eax
cmp eax, dword [ebp - 0x28]
jge 0x45a23d
add eax, ecx
shl eax, 2
mov edi, dword [ebx + 0xc0]
and dword [eax + edi], 0
inc dword [ebp - 0x1bc]
mov edi, dword [ebp - 0x1bc]
add eax, 4
cmp edi, dword [ebp - 0x28]
jl 0x45a21f
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x1ac]
inc edx
cmp edx, eax
jl 0x45a20c
mov ecx, dword [ebx + 0x108]
mov eax, dword [ecx]
push 0
lea edx, [ebp - 0x30]
push edx
push dword [ebx + 0xb4]
call dword [eax + 0x144]
cmp byte [ebx + 0x171], 0
je 0x45a4a1
and dword [ebp - 0x1c0], 0
lea edi, [ebx + 0x4c0]
mov ecx, edi
call fcn.00491a5b
test eax, eax
jle 0x45a4a1
push dword [ebp - 0x1c0]
mov ecx, edi
call fcn.00453b7e
push eax
mov dword [ebp - 0x1bc], eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x45a2d2
push dword [ebp - 0x1c0]
mov ecx, edi
call fcn.00453b01
push dword [ebp - 0x1c0]
lea ecx, [ebx + 0x4cc]
call fcn.00453b01
jmp 0x45a488
push dword [ebp - 0x1bc]
inc dword [ebp - 0x1c0]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x45a488
push dword [ebp - 0x1bc]
lea eax, [ebp - 0x168]
push eax
mov ecx, ebx
call fcn.00456215
and dword [ebp - 0x58], 0
xor eax, eax
lea edi, [ebp - 0x54]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x168]
push eax
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp - 0x58]
push eax
call dword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x45a488
push dword [ebx + 0xb4]
and dword [ebp - 0x1d4], 0
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, eax
lea eax, [ebp - 0x1d4]
push eax
mov eax, dword [ebp - 0x15c]
sub eax, dword [ebp - 0x164]
push eax
mov eax, dword [ebp - 0x160]
sub eax, dword [ebp - 0x168]
push eax
push edi
call fcn.0046c5de
mov ecx, dword [ebp - 0x15c]
sub ecx, dword [ebp - 0x164]
mov dword [ebp - 0x1d8], eax
mov eax, dword [ebp - 0x160]
sub eax, dword [ebp - 0x168]
imul eax, ecx
shl eax, 2
push eax
push 0
push dword [ebp - 0x1d4]
call fcn.0043e050
add esp, 0x1c
push dword [ebp - 0x1d8]
push edi
call esi
push 0x35
push edi
push 0x317
push dword [ebp - 0x1bc]
mov dword [ebp - 0x1c8], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x15c]
and dword [ebp - 0x1c4], 0
mov ecx, eax
sub ecx, dword [ebp - 0x164]
test ecx, ecx
jle 0x45a436
mov ecx, dword [ebp - 0x160]
sub ecx, dword [ebp - 0x168]
xor edx, edx
test ecx, ecx
jle 0x45a420
mov eax, dword [ebp - 0x1c4]
imul eax, ecx
mov ecx, dword [ebp - 0x1d4]
add eax, edx
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
test eax, eax
je 0x45a409
or eax, 0xff000000
mov dword [ecx], eax
mov ecx, dword [ebp - 0x160]
sub ecx, dword [ebp - 0x168]
inc edx
cmp edx, ecx
jl 0x45a3e8
mov eax, dword [ebp - 0x15c]
inc dword [ebp - 0x1c4]
mov ecx, eax
sub ecx, dword [ebp - 0x164]
cmp dword [ebp - 0x1c4], ecx
jl 0x45a3d6
mov ecx, dword [ebp - 0x160]
sub eax, dword [ebp - 0x164]
sub ecx, dword [ebp - 0x168]
push 0xcc0020
push 0
push 0
push edi
push eax
push ecx
push dword [ebp - 0x164]
push dword [ebp - 0x168]
push dword [ebx + 0xb4]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x1c8]
push edi
call esi
push dword [ebp - 0x1d8]
call dword [sym.imp.GDI32.dll_DeleteObject]
push edi
call dword [sym.imp.GDI32.dll_DeleteDC]
lea edi, [ebx + 0x4c0]
mov ecx, edi
call fcn.00491a5b
cmp dword [ebp - 0x1c0], eax
jl 0x45a291
and dword [ebp - 0x1c4], 0
lea ecx, [ebx + 0x4b4]
call fcn.00491a5b
test eax, eax
jle 0x45a4f5
push dword [ebp - 0x1c4]
lea ecx, [ebx + 0x4b4]
call fcn.00453b7e
mov edx, dword [eax]
lea ecx, [ebp - 0x30]
push ecx
push dword [ebx + 0xb4]
mov ecx, eax
call dword [edx + 0x168]
inc dword [ebp - 0x1c4]
lea ecx, [ebx + 0x4b4]
call fcn.00491a5b
cmp dword [ebp - 0x1c4], eax
jl 0x45a4b7
push dword [ebp - 0x1dc]
push dword [ebx + 0xb4]
call dword [sym.imp.GDI32.dll_RestoreDC]
cmp byte [ebx + 0x171], 0
je 0x45a89c
and dword [ebp - 0x58], 0
xor eax, eax
lea edi, [ebp - 0x54]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x58]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [ebx + 0x198]
call fcn.00453ce3
test al, al
jne 0x45a7a2
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
lea esi, [ebp - 0x40]
mov dword [ebp - 0x1c0], eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
lea edi, [ebp - 0x20]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebx + 0x174]
add eax, dword [ebp - 0x40]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x20], eax
mov eax, dword [ebx + 0x178]
add dword [ebp - 0x1c], eax
mov eax, dword [ebx + 0x17c]
sub dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x180]
sub dword [ebp - 0x14], eax
lea ecx, [ebx + 0x198]
call fcn.00453ce3
test al, al
jne 0x45a809
cmp dword [ebx + 0xc4], 0
jne 0x45a613
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
lea edi, [ebx + 0xc8]
push edi
push dword [ebp - 0x1d4]
mov dword [ebx + 0xb8], eax
push dword [ebp - 0x1c0]
push dword [ebx + 0xb0]
call fcn.0046c5de
mov dword [ebx + 0xc4], eax
mov eax, dword [ebp - 0x1d4]
imul eax, dword [ebp - 0x1c0]
shl eax, 2
push eax
push 0
push dword [edi]
call fcn.0043e050
add esp, 0x1c
push dword [ebx + 0xc4]
push dword [ebx + 0xb8]
call dword [sym.imp.GDI32.dll_SelectObject]
and dword [ebp - 4], 0
jmp 0x45a644
cmp byte [ebx + 0x184], 0
je 0x45a68e
mov eax, dword [ebp - 0x1d4]
imul eax, dword [ebp - 0x1c0]
shl eax, 2
push eax
push 0
push dword [ebx + 0xc8]
call fcn.0043e050
add esp, 0xc
mov dword [ebp - 4], 1
lea eax, [ebp - 0x134]
push eax
sub esp, 0x10
mov edi, esp
push dword [ebx + 0xb8]
lea esi, [ebp - 0x20]
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 fcn.0046836a
push 0
lea eax, [ebx + 0x198]
push eax
lea eax, [ebp - 0x20]
push eax
push eax
push ebx
push dword [ebx + 0xb8]
call fcn.0046d45c
or dword [ebp - 4], 0xffffffff
add esp, 0x30
lea ecx, [ebp - 0x134]
call fcn.00468347
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
mov dword [ebp - 0x1c8], ecx
cmp ecx, eax
jge 0x45a809
mov eax, ecx
imul eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1d8], eax
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x1c4], edx
cmp edx, dword [ebp - 0x28]
jge 0x45a77f
lea esi, [eax + edx]
shl esi, 2
mov dword [ebp - 0x1dc], esi
mov ecx, dword [ebp - 0x1c4]
add ecx, eax
add ecx, dword [ebx + 0xc0]
mov eax, dword [ebx + 0xc8]
mov al, byte [eax + esi + 3]
mov esi, dword [ecx]
movzx edi, al
mov eax, esi
shr eax, 0x10
movzx eax, al
imul eax, edi
cdq
mov dword [ebp - 0x1d4], edi
mov edi, 0xff
idiv edi
movzx edi, al
mov eax, esi
shr eax, 8
movzx eax, al
imul eax, dword [ebp - 0x1d4]
cdq
mov esi, 0xff
idiv esi
shl edi, 8
movzx eax, al
or edi, eax
movzx eax, byte [ecx]
imul eax, dword [ebp - 0x1d4]
cdq
idiv esi
mov esi, dword [ebp - 0x1dc]
shl edi, 8
add esi, 4
mov dword [ebp - 0x1dc], esi
movzx eax, al
or edi, eax
mov eax, dword [ebp - 0x1d4]
shl eax, 0x18
add edi, eax
inc dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x1c4]
mov dword [ecx], edi
cmp eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1d8]
jl 0x45a6d5
mov ecx, dword [ebp - 0x1c8]
mov edx, dword [ebp - 0x34]
add eax, dword [ebp - 0x1c0]
sub edx, dword [ebp - 0x2c]
inc ecx
mov dword [ebp - 0x1c8], ecx
mov dword [ebp - 0x1d8], eax
cmp ecx, edx
jl 0x45a6b7
jmp 0x45a809
mov esi, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
sub esi, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
cmp esi, eax
jge 0x45a809
mov edi, dword [ebp - 0x30]
mov edx, esi
imul edx, dword [ebp - 0x1ac]
cmp edi, dword [ebp - 0x28]
jge 0x45a7f8
lea ecx, [edx + edi]
shl ecx, 2
mov eax, dword [ebx + 0xc0]
add eax, ecx
cmp byte [eax + 3], 0
jne 0x45a7ec
cmp byte [eax], 0
jne 0x45a7e8
cmp byte [eax + 1], 0
jne 0x45a7e8
cmp byte [eax + 2], 0
je 0x45a7ec
mov byte [eax + 3], 0xff
inc edi
add ecx, 4
cmp edi, dword [ebp - 0x28]
jl 0x45a7c9
mov edi, dword [ebp - 0x30]
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x2c]
add edx, dword [ebp - 0x1ac]
inc esi
cmp esi, eax
jl 0x45a7be
mov al, byte [ebx + 0x170]
mov byte [ebp - 0x1ba], al
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x160], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x1ac]
push 2
mov dword [ebp - 0x1e4], eax
mov eax, dword [ebp - 0x1d0]
mov dword [ebp - 0x1e0], eax
xor eax, eax
lea ecx, [ebp - 0x1bc]
push ecx
push eax
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x1ec], eax
lea eax, [ebp - 0x1f0]
push eax
push dword [ebx + 0xb4]
lea eax, [ebp - 0x1e4]
push eax
lea eax, [ebp - 0x160]
push eax
push dword [ebx + 0xb0]
mov word [ebp - 0x1bc], 0
push dword [ebx + 0xac]
mov byte [ebp - 0x1b9], 1
call dword [0x4d2330]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
jmp 0x45a8cd
mov eax, dword [ebp - 0x24]
sub eax, dword [ebp - 0x2c]
push 0xcc0020
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebx + 0xb4]
push eax
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x30]
push eax
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x1b0]
push dword [ebx + 0xb4]
call esi
cmp byte [ebx + 0x105], 0
je 0x45a9b5
cmp byte [ebx + 0x171], 0
jne 0x45a9b5
push dword [0x4d2334]
push dword [ebx + 0xb0]
call esi
push 5
mov edi, eax
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
push dword [ebx + 0xb0]
call esi
push dword [ebp - 0x24]
push dword [ebp - 0x28]
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_Rectangle]
push edi
push dword [ebx + 0xb0]
call esi
jmp 0x45a9b5
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x108]
push edi
lea edx, [ebp - 0x30]
push edx
push dword [ebx + 0xb0]
mov dword [ebp - 0x1b0], eax
mov eax, dword [ecx]
call dword [eax + 0x144]
lea ecx, [ebx + 0x4b4]
call fcn.00491a5b
test eax, eax
jle 0x45a9a3
push edi
lea ecx, [ebx + 0x4b4]
call fcn.00453b7e
mov edx, dword [eax]
lea ecx, [ebp - 0x30]
push ecx
push dword [ebx + 0xb0]
mov ecx, eax
call dword [edx + 0x168]
lea ecx, [ebx + 0x4b4]
inc edi
call fcn.00491a5b
cmp edi, eax
jl 0x45a973
push dword [ebp - 0x1b0]
push dword [ebx + 0xb0]
call dword [sym.imp.GDI32.dll_RestoreDC]
lea eax, [ebp - 0x1a8]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_EndPaint]
xor esi, esi
push esi
mov ecx, ebx
call fcn.00456068
cmp byte [ebx + 0x16d], 0
mov byte [ebx + 0x184], 0
je 0x45a9e7
call fcn.00455b9c
cmp byte [ebp - 0x1b5], 0
je 0x459ad7
push 1
push esi
push esi
push str.windowsize
push dword [ebx + 0x108]
mov ecx, ebx
call fcn.00459446
jmp 0x459ad7
mov ecx, ebx
call fcn.00456061
test al, al
je 0x45c170
call fcn.00456048
jmp 0x45c170
mov edx, dword [ebx + 0x10c]
test edx, edx
je 0x45c170
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x78]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x7c], 0x18
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x78], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [ebx + 0x10c]
mov dword [ebp - 0x74], eax
lea ecx, [ebp - 0x7c]
jmp 0x45c165
mov edx, dword [ebx + 0x10c]
test edx, edx
je 0x45aab5
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x138], 0x19
mov dword [ebp - 0x134], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x10c]
lea edx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
mov ebx, dword [ebx + 0x108]
test ebx, ebx
je 0x459ad7
mov ecx, ebx
call fcn.0046f924
jmp 0x459ad7
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0x84]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x84]
push eax
push 1
push dword [ebx + 0xac]
mov dword [ebp - 0x84], 0x28
call dword [sym.imp.USER32.dll_MonitorFromWindow]
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
cmp dword [ebp - 0x60], 1
lea esi, [ebp - 0x70]
lea edi, [ebp - 0x58]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
je 0x45ab28
mov eax, dword [ebp - 0x6c]
neg eax
push eax
mov eax, dword [ebp - 0x70]
neg eax
push eax
lea eax, [ebp - 0x58]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
mov eax, dword [ebx + 0x128]
mov edx, dword [ebp - 0x1ac]
test eax, eax
jle 0x45ab3b
mov dword [edx + 0x18], eax
mov eax, dword [ebx + 0x12c]
test eax, eax
jle 0x45ab48
mov dword [edx + 0x1c], eax
mov ecx, dword [ebx + 0x130]
test ecx, ecx
jle 0x45ab55
mov dword [edx + 0x20], ecx
mov ecx, dword [ebx + 0x134]
test ecx, ecx
jle 0x45ab62
mov dword [edx + 0x24], ecx
mov eax, dword [ebx + 0x130]
test eax, eax
jle 0x45ab6f
mov dword [edx + 8], eax
mov ebx, dword [ebx + 0x134]
test ebx, ebx
jle 0x45c170
mov dword [edx + 0xc], ebx
jmp 0x45c170
sub edi, 0x4e
je 0x45af8c
sub edi, 0x2d
je 0x45aeac
sub edi, 0x85
je 0x45ae05
dec edi
je 0x45ad63
dec edi
je 0x45acdd
sub edi, 0xf
je 0x45aca3
dec edi
dec edi
jne 0x45c170
and dword [ebp - 0x1bc], edi
lea ecx, [ebx + 0x484]
call fcn.00491a5b
test eax, eax
jle 0x45c170
push dword [ebp - 0x1bc]
lea ecx, [ebx + 0x484]
call fcn.00453b7e
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1b0], eax
cmp ecx, dword [ebx + 0xac]
jne 0x45ac0b
movzx ecx, si
cmp dword [eax + 0xc], ecx
jne 0x45ac0b
cmp byte [eax + 0x10], 0
je 0x45ac29
inc dword [ebp - 0x1bc]
lea ecx, [ebx + 0x484]
call fcn.00491a5b
cmp dword [ebp - 0x1bc], eax
jl 0x45abdb
jmp 0x45c170
mov esi, dword [ebp - 0x1b0]
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [esi]
mov dword [ebp - 0x138], 0x1b
mov dword [ebp - 0x134], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x130], eax
mov eax, dword [ebx + 0x120]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0x124]
mov dword [ebp - 0x128], eax
call fcn.00455645
mov ecx, dword [esi]
mov word [ebp - 0x122], ax
mov eax, dword [esi + 4]
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ecx]
lea edx, [ebp - 0x138]
push edx
jmp 0x45c16a
cmp dword [ebp - 0x1ac], 0
je 0x45c170
push dword [ebp - 0x1ac]
push esi
push 0x2111
push dword [ebp - 0x1ac]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x1c0]
mov dword [ecx], eax
test eax, eax
je 0x45c170
jmp 0x459ad7
cmp dword [ebx + 0x108], 0
je 0x45c170
mov edx, dword [ebx + 0x10c]
test edx, edx
je 0x45c170
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebx + 0x120]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0x124]
mov dword [ebp - 0x138], 5
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x120], esi
mov word [ebp - 0x124], si
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [ebx + 0x10c]
jmp 0x45c159
cmp dword [ebx + 0x108], 0
je 0x45c170
mov edx, dword [ebx + 0x118]
test edx, edx
je 0x45c170
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebx + 0x120]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0x124]
mov dword [ebp - 0x138], 4
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x120], esi
mov word [ebp - 0x124], si
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x118]
lea edx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
and dword [ebx + 0x118], 0
jmp 0x45c170
cmp dword [ebx + 0x108], 0
je 0x45c170
mov edx, dword [ebx + 0x10c]
test edx, edx
je 0x45c170
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebx + 0x120]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebx + 0x124]
mov dword [ebp - 0x138], 3
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x120], esi
mov word [ebp - 0x124], si
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x10c]
lea edx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
mov eax, dword [ebx + 0x10c]
mov dword [ebx + 0x118], eax
jmp 0x45c170
cmp dword [ebx + 0x108], 0
je 0x45c170
mov eax, dword [ebp - 0x1ac]
movsx ecx, ax
shr eax, 0x10
cwde
mov dword [ebp - 0x1b0], eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx + 0xac]
mov dword [ebp - 0x1b4], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
cmp dword [ebx + 0x114], 0
mov eax, dword [ebp - 0x1b4]
mov dword [ebx + 0x120], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebx + 0x124], eax
je 0x45c170
mov ecx, ebx
call fcn.00456048
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x1b4]
mov eax, dword [ebx + 0x114]
mov dword [ebp - 0x12c], ecx
mov ecx, dword [ebp - 0x1b0]
mov dword [ebp - 0x138], 0x14
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x128], ecx
mov word [ebp - 0x122], si
mov dword [ebp - 0x11c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x114]
lea edx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
and dword [ebx + 0x114], 0
jmp 0x45c170
cmp dword [ebp - 0x1ac], 0
je 0x45c170
mov eax, dword [ebp - 0x1ac]
push eax
push esi
push 0x204e
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x459a64
mov eax, 0x207
cmp edi, eax
ja 0x45ba36
je 0x45b99f
mov eax, edi
sub eax, 0x138
je 0x45b97f
sub eax, 0xc8
je 0x45b41a
dec eax
je 0x45b2bd
dec eax
je 0x45b20c
dec eax
je 0x45b123
dec eax
je 0x45b062
dec eax
jne 0x45c170
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1b0], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1b4], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebx + 0x114], eax
test eax, eax
je 0x45c170
mov ecx, ebx
call fcn.00456048
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x138], 0x10
jmp 0x45c110
cmp byte [ebx + 0x104], 0
jne 0x45b077
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1b0], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1b4], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebp - 0x1c8], eax
test eax, eax
je 0x45c170
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x45c170
mov ecx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
call dword [eax + 0x11c]
mov ecx, ebx
call fcn.00456030
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x138], 0xf
mov eax, dword [ebp - 0x1ac]
mov edi, dword [ebp - 0x1c8]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x128], eax
jmp 0x45b1d1
cmp byte [ebx + 0x104], 0
jne 0x45b138
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1c8], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1cc], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x45c170
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x45c170
mov ecx, ebx
call fcn.00456030
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1cc]
mov edi, dword [ebp - 0x1b0]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x138], 0x13
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x134], edi
mov dword [ebp - 0x120], esi
mov word [ebp - 0x122], si
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x134]
mov dword [ebx + 0x114], edi
jmp 0x45c170
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
cmp dword [ebx + 0x114], 0
movsx ecx, cx
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 0x1b0], ecx
mov dword [ebx + 0x120], eax
mov dword [ebx + 0x124], ecx
je 0x45c170
mov ecx, ebx
call fcn.00456048
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebx + 0x114]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x138], 0xe
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x128], eax
mov word [ebp - 0x122], si
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x114]
and dword [ebx + 0x114], 0
mov dword [ebp - 0x130], eax
jmp 0x45ac95
cmp byte [ebx + 0x104], 0
jne 0x45b2d2
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SetFocus]
cmp dword [ebx + 0x108], 0
je 0x45c170
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1c8], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1cc], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov edi, eax
mov dword [ebp - 0x1bc], edi
test edi, edi
je 0x45c170
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x45c170
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x38]
test al, al
je 0x45b38f
mov eax, dword [ebx + 0x72c]
mov byte [ebx + 0x728], 1
test eax, eax
je 0x45b35c
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
and dword [ebx + 0x72c], 0
mov ecx, dword [ebp - 0x1bc]
mov eax, dword [ecx]
call dword [eax + 0x50]
push 0
sub esp, 0x10
mov edi, esp
push dword [ebp - 0x1bc]
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.0046efb8
mov esi, dword [ebp - 0x1b0]
add esp, 0x1c
mov dword [ebx + 0x72c], eax
mov ecx, ebx
call fcn.00456030
mov ecx, dword [ebp - 0x1bc]
mov dword [ebx + 0x114], ecx
mov eax, dword [ecx]
call dword [eax + 0x11c]
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov edi, dword [ebp - 0x1bc]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x138], 0xd
mov dword [ebp - 0x134], edi
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x128], eax
mov word [ebp - 0x122], si
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x130], eax
mov eax, dword [edi]
lea ecx, [ebp - 0x138]
push ecx
mov ecx, edi
jmp 0x45c16a
cmp byte [ebx + 0x470], 0
jne 0x45b478
xor eax, eax
lea edi, [ebp - 0x1c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov eax, dword [ebx + 0xac]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0xcc]
mov dword [ebp - 0x20], 0x10
mov dword [ebp - 0x1c], 3
test eax, eax
jne 0x45b454
mov eax, dword [ebx + 0x100]
jmp 0x45b464
push 0
push 3
push 0x415
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x20]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [ebx + 0x470], 1
mov eax, dword [ebp - 0x1ac]
movsx ecx, word [ebp - 0x1ac]
shr eax, 0x10
movsx edx, ax
mov dword [ebp - 0x1cc], ecx
mov dword [ebp - 0x1c8], edx
mov byte [ebp - 0x1b5], 1
cmp dword [ebx + 0x120], ecx
jne 0x45b4b5
cmp dword [ebx + 0x124], edx
jne 0x45b4b5
mov byte [ebp - 0x1b5], 0
push edx
mov dword [ebx + 0x120], ecx
push ecx
mov ecx, ebx
mov dword [ebx + 0x124], edx
call fcn.00458f67
mov dword [ebp - 0x1b0], eax
test eax, eax
je 0x45b4e3
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x45c170
cmp byte [ebp - 0x1b5], 0
je 0x45b76b
cmp byte [ebx + 0x728], 0
je 0x45b76b
cmp esi, 1
jne 0x45b76b
call dword [sym.imp.USER32.dll_ReleaseCapture]
push 0xc
call fcn.0043cf15
pop ecx
test eax, eax
je 0x45b528
and dword [eax + 4], 0
mov dword [eax], vtable.DuiLib::CIDropSource.0
mov byte [eax + 8], 0
jmp 0x45b52a
xor eax, eax
mov dword [ebp - 0x1c0], eax
test eax, eax
je 0x45c170
mov ecx, dword [eax]
push eax
call dword [ecx + 4]
push 0x2c
call fcn.0043cf15
pop ecx
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 4], 3
test eax, eax
je 0x45b568
push dword [ebp - 0x1c0]
mov ecx, eax
call fcn.00473d70
mov esi, eax
jmp 0x45b56a
xor esi, esi
or dword [ebp - 4], 0xffffffff
test esi, esi
je 0x45c170
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 - 0x1e4]
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 + 0x72c]
mov dword [ebp - 0x54], 1
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x1e8], eax
call dword [sym.imp.ole32.dll_OleDuplicateData]
push edi
lea ecx, [ebp - 0x1e8]
push ecx
lea ecx, [ebp - 0x5c]
push ecx
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1e4], eax
mov eax, dword [esi]
push esi
call dword [eax + 0x1c]
lea eax, [ebp - 0x48]
push eax
push 0x18
push dword [ebp - 0x1d8]
call dword [sym.imp.GDI32.dll_GetObjectW]
mov eax, dword [ebp - 0x44]
push 0xe
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x14], eax
pop eax
push edi
push edi
push edi
push dword [ebx + 0xb0]
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
mov word [ebp - 0x5c], ax
mov dword [ebp - 0x4c], 0x40
call dword [sym.imp.GDI32.dll_CreateEnhMetaFileW]
push dword [ebx + 0xb0]
mov dword [ebp - 0x1c8], eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [ebp - 0x1d8]
mov dword [ebp - 0x1d0], eax
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 0xcc0020
push edi
push edi
push dword [ebp - 0x1d0]
mov dword [ebp - 0x1b0], eax
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push edi
push edi
push dword [ebp - 0x1c8]
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x1b0]
push dword [ebp - 0x1d0]
call dword [sym.imp.GDI32.dll_SelectObject]
push dword [ebp - 0x1c8]
call dword [sym.imp.GDI32.dll_CloseEnhMetaFile]
mov dword [ebp - 0x1e4], eax
push dword [ebp - 0x1d0]
call dword [sym.imp.GDI32.dll_DeleteDC]
push 1
lea ecx, [ebp - 0x1e8]
push ecx
lea ecx, [ebp - 0x5c]
push ecx
mov dword [ebp - 0x1e8], 0x40
mov eax, dword [esi]
push esi
call dword [eax + 0x1c]
lea ecx, [ebp - 0x160]
call fcn.0045762c
xor eax, eax
lea edi, [ebp - 0x1b0]
stosd dword es:[edi], eax
mov eax, dword [ebp - 0x44]
cdq
sub eax, edx
sar eax, 1
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x40]
cdq
sub eax, edx
sar eax, 1
push 5
mov dword [ebp - 4], 4
mov dword [ebp - 0x1b0], eax
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push esi
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebp - 0x1d8]
lea ecx, [ebp - 0x160]
call fcn.00457676
lea eax, [ebp - 0x1dc]
push eax
push 3
push dword [ebp - 0x1c0]
push esi
call dword [sym.imp.ole32.dll_DoDragDrop]
cmp dword [ebp - 0x1dc], 0
je 0x45b73e
mov eax, dword [ebp - 0x1c0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push dword [ebp - 0x1c0]
call fcn.0043bad2
mov eax, dword [esi]
pop ecx
push esi
call dword [eax + 8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x160]
mov byte [ebx + 0x728], 0
call fcn.0045765a
jmp 0x45c170
and dword [ebp - 0x138], 0
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x128], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x11c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x130], eax
call fcn.00455645
mov ecx, ebx
mov word [ebp - 0x122], ax
call fcn.00456061
test al, al
jne 0x45b93d
push dword [ebp - 0x1c8]
push dword [ebp - 0x1cc]
call fcn.00458f67
mov edi, eax
test edi, edi
je 0x45b7f6
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x1c]
cmp eax, ebx
jne 0x45c170
mov eax, dword [ebx + 0x110]
cmp edi, eax
je 0x45b908
test eax, eax
je 0x45b908
lea ecx, [ebx + 0x508]
mov dword [ebp - 0x138], 0xa
mov dword [ebp - 0x134], eax
call fcn.00491a5b
push eax
lea ecx, [ebp - 0x164]
call fcn.00453971
lea ecx, [ebx + 0x508]
mov dword [ebp - 4], 5
call fcn.00491a5b
push eax
lea ecx, [ebp - 0x164]
call fcn.004539c6
lea ecx, [ebx + 0x508]
call fcn.00491a5b
shl eax, 2
push eax
lea ecx, [ebx + 0x508]
call fcn.00453bcf
push eax
lea ecx, [ebp - 0x164]
call fcn.00453bcf
push eax
call fcn.0043e7f0
add esp, 0xc
lea ecx, [ebp - 0x164]
xor esi, esi
call fcn.00491a5b
test eax, eax
jle 0x45b8be
push esi
lea ecx, [ebp - 0x164]
call fcn.00453b7e
mov edx, dword [eax]
lea ecx, [ebp - 0x138]
push ecx
mov ecx, eax
call dword [edx + 0x134]
lea ecx, [ebp - 0x164]
inc esi
call fcn.00491a5b
cmp esi, eax
jl 0x45b891
mov ecx, dword [ebx + 0x110]
mov eax, dword [ecx]
lea edx, [ebp - 0x138]
push edx
call dword [eax + 0x134]
mov eax, dword [ebx + 0xcc]
and dword [ebx + 0x110], 0
test eax, eax
je 0x45b8f9
lea ecx, [ebx + 0xd0]
push ecx
push 0
push 0x411
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x164]
call fcn.0045399b
cmp edi, dword [ebx + 0x110]
je 0x45b943
test edi, edi
je 0x45b943
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x138], 0xb
mov dword [ebp - 0x134], edi
mov eax, dword [edi]
push ecx
mov ecx, edi
call dword [eax + 0x134]
mov dword [ebx + 0x110], edi
jmp 0x45b943
mov edi, dword [ebp - 0x1b0]
mov ebx, dword [ebx + 0x114]
test ebx, ebx
je 0x45b962
mov dword [ebp - 0x138], 9
mov dword [ebp - 0x134], ebx
jmp 0x45c15f
test edi, edi
je 0x45c170
mov dword [ebp - 0x138], 9
mov dword [ebp - 0x134], edi
jmp 0x45b40a
cmp dword [ebp - 0x1ac], 0
je 0x45c170
push dword [ebp - 0x1ac]
add edi, 0x2000
push esi
push edi
jmp 0x45acbc
cmp byte [ebx + 0x104], 0
jne 0x45b9b4
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1b0], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1b4], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebp - 0x1c8], eax
test eax, eax
je 0x45c170
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x45c170
mov ecx, dword [ebp - 0x1c8]
mov eax, dword [ecx]
call dword [eax + 0x11c]
mov ecx, ebx
call fcn.00456030
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x138], 0x11
jmp 0x45b0f4
sub edi, 0x208
je 0x45c0b4
sub edi, ecx
je 0x45bf88
sub edi, 0x97
je 0x45bd73
sub edi, ecx
je 0x45bc63
sub edi, 0x75
je 0x45bb65
sub edi, 0x7ce9
jne 0x45c170
lea ecx, [ebx + 0x4d8]
call fcn.00491a5b
test eax, eax
jle 0x45baaa
push edi
lea ecx, [ebx + 0x4d8]
call fcn.00453b7e
test eax, eax
je 0x45ba9a
mov edx, dword [eax]
push 1
mov ecx, eax
call dword [edx]
lea ecx, [ebx + 0x4d8]
inc edi
call fcn.00491a5b
cmp edi, eax
jl 0x45ba82
lea ecx, [ebx + 0x4d8]
call fcn.004539a9
lea edi, [ebx + 0x4e4]
push 0
mov ecx, edi
mov byte [ebx + 0x474], 0
call fcn.00453b62
mov esi, eax
test esi, esi
je 0x45c170
add ebx, 0x478
mov dword [ebp - 0x1d0], ebx
push 0
mov ecx, edi
call fcn.00453b01
mov eax, dword [esi + 0x108]
test eax, eax
je 0x45bb0f
lea ecx, [eax + 0x38]
call fcn.004780cb
test al, al
je 0x45bb0f
mov ecx, dword [esi + 0x108]
push esi
add ecx, 0x38
call fcn.00478128
mov ecx, dword [ebp - 0x1d0]
xor ebx, ebx
call fcn.00491a5b
test eax, eax
jle 0x45bb43
mov ecx, dword [ebp - 0x1d0]
push ebx
call fcn.00453b7e
mov edx, dword [eax]
push esi
mov ecx, eax
call dword [edx]
mov ecx, dword [ebp - 0x1d0]
inc ebx
call fcn.00491a5b
cmp ebx, eax
jl 0x45bb20
mov ecx, esi
call fcn.00453180
push esi
call fcn.0043bad2
pop ecx
push 0
mov ecx, edi
call fcn.00453b62
mov esi, eax
test esi, esi
jne 0x45bae1
jmp 0x45c170
cmp dword [ebx + 0x108], 0
je 0x45c170
lea eax, [ebp - 0x58]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetClientRect]
push esi
call dword [sym.imp.GDI32.dll_SaveDC]
mov ecx, dword [ebx + 0x108]
push 0
lea edx, [ebp - 0x58]
push edx
mov dword [ebp - 0x1c8], eax
mov eax, dword [ecx]
push esi
call dword [eax + 0x144]
test byte [ebp - 0x1ac], 0x10
je 0x45bc51
push 5
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [ebp - 0x1bc], eax
test eax, eax
je 0x45bc51
mov eax, dword [ebp - 0x1ac]
or eax, 2
mov dword [ebp - 0x1b0], eax
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
lea eax, [ebp - 0x20]
push eax
push dword [ebp - 0x1bc]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 0xac]
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
mov eax, dword [ebp - 0x1c]
push 0
neg eax
push eax
mov eax, dword [ebp - 0x20]
neg eax
push eax
push esi
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
push dword [ebp - 0x1b0]
push esi
push 0x317
push dword [ebp - 0x1bc]
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
push dword [ebp - 0x1bc]
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [ebp - 0x1bc], eax
test eax, eax
jne 0x45bbdc
push dword [ebp - 0x1c8]
push esi
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp 0x45c170
mov eax, dword [ebx + 0xcc]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x45bc84
lea ecx, [ebx + 0xd0]
push ecx
push 0
push 0x411
push eax
call esi
cmp byte [ebx + 0x470], 0
je 0x45bd67
and dword [ebp - 0x1b4], 0
xor eax, eax
and dword [ebp - 0x58], eax
lea edi, [ebp - 0x1b0]
stosd dword es:[edi], eax
lea edi, [ebp - 0x54]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x1b4]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x58]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_GetWindowRect]
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x45bd56
call dword [sym.imp.USER32.dll_GetActiveWindow]
cmp eax, dword [ebx + 0xac]
jne 0x45bd56
push dword [ebp - 0x1b0]
lea eax, [ebp - 0x58]
push dword [ebp - 0x1b4]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x45bd56
movzx eax, word [ebp - 0x1b0]
movzx ecx, word [ebp - 0x1b4]
shl eax, 0x10
or eax, ecx
push eax
xor edi, edi
push edi
push 0x84
push dword [ebx + 0xac]
call esi
cmp eax, 1
jne 0x45bd52
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_ScreenToClient]
movzx eax, word [ebp - 0x1b0]
movzx ecx, word [ebp - 0x1b4]
shl eax, 0x10
or eax, ecx
push eax
push edi
jmp 0x45bd5a
push 0xffffffffffffffff
jmp 0x45bd4f
push 0xffffffffffffffff
push 0
push 0x200
push dword [ebx + 0xac]
call esi
mov byte [ebx + 0x470], 0
jmp 0x45c170
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1b0], ecx
push eax
mov ecx, ebx
mov byte [ebx + 0x470], 0
mov dword [ebp - 0x1b4], eax
call fcn.00458f67
mov dword [ebp - 0x1d0], eax
test eax, eax
je 0x45c170
mov edx, dword [ebx + 0x110]
test edx, edx
je 0x45be2e
push 7
xor eax, eax
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x138], 0xc
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x11c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x128], eax
call fcn.00455645
mov ecx, dword [ebx + 0x110]
lea edx, [ebp - 0x138]
mov word [ebp - 0x122], ax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [ecx]
lea edx, [ebp - 0x118]
push edx
call dword [eax + 0xbc]
lea ecx, [ebp - 0x118]
mov dword [ebp - 4], 2
call fcn.00453ce3
test al, al
je 0x45be6d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x118]
call fcn.00453bb5
jmp 0x459ad7
push 0x30
pop edi
push edi
lea esi, [ebx + 0xd0]
push 0
push esi
call fcn.0043e050
mov eax, dword [ebx + 0xac]
mov dword [esi], edi
mov dword [ebx + 0xd4], 1
mov dword [ebx + 0xd8], eax
mov dword [ebx + 0xdc], eax
mov eax, dword [0x4d2340]
add esp, 0xc
lea ecx, [ebp - 0x118]
mov dword [ebx + 0xf0], eax
call fcn.00453bcf
mov ecx, dword [ebp - 0x1d0]
mov dword [ebx + 0xf4], eax
mov eax, dword [ecx]
call dword [eax + 0x50]
cmp dword [ebx + 0xcc], 0
lea edi, [ebx + 0xe0]
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 0x45bf42
xor edi, edi
push edi
push dword [0x4d2340]
mov eax, bind
push edi
push dword [ebx + 0xac]
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 + 0xd0]
push ecx
push edi
push 0x432
push eax
mov dword [ebx + 0xcc], eax
call esi
mov ecx, dword [ebp - 0x1d0]
mov eax, dword [ecx]
call dword [eax + 0xc8]
push eax
push edi
push 0x418
push dword [ebx + 0xcc]
call esi
jmp 0x45bf44
xor edi, edi
push dword [ebx + 0xcc]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x45be59
lea eax, [ebx + 0xd0]
push eax
push edi
push 0x436
push dword [ebx + 0xcc]
call esi
lea eax, [ebx + 0xd0]
push eax
push 1
push 0x411
push dword [ebx + 0xcc]
call esi
jmp 0x45be59
cmp dword [ebx + 0x108], 0
je 0x45c170
movsx eax, word [ebp - 0x1ac]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x1ac]
shr eax, 0x10
cwde
mov dword [ebp - 0x1b0], eax
lea eax, [ebp - 0x1b4]
push eax
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebp - 0x1b0]
mov eax, dword [ebp - 0x1b4]
push ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebp - 0x1c8], eax
test eax, eax
je 0x45c170
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x45c170
xor eax, eax
push 7
pop ecx
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x134], eax
xor eax, eax
shr esi, 0x10
test si, si
sets al
mov dword [ebp - 0x138], 0x15
mov dword [ebp - 0x120], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x128], eax
call fcn.00455645
mov word [ebp - 0x122], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebp - 0x1c8]
lea edx, [ebp - 0x138]
mov dword [ebp - 0x130], eax
mov eax, dword [ecx]
push edx
call dword [eax + 0x134]
movzx eax, word [ebx + 0x124]
movzx ecx, word [ebx + 0x120]
shl eax, 0x10
or eax, ecx
push eax
push 0
push 0x200
push dword [ebx + 0xac]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x45c170
mov ecx, dword [ebp - 0x1ac]
movsx eax, word [ebp - 0x1ac]
shr ecx, 0x10
movsx ecx, cx
push ecx
mov dword [ebp - 0x1b0], ecx
mov dword [ebx + 0x124], ecx
push eax
mov ecx, ebx
mov dword [ebp - 0x1b4], eax
mov dword [ebx + 0x120], eax
call fcn.00458f67
mov dword [ebx + 0x114], eax
test eax, eax
je 0x45c170
mov ecx, ebx
call fcn.00456048
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x134]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x138], 0x12
mov eax, dword [ebx + 0x114]
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x120], esi
mov dword [ebp - 0x128], eax
mov word [ebp - 0x122], si
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ebx, dword [ebx + 0x114]
mov dword [ebp - 0x130], eax
lea ecx, [ebp - 0x138]
mov eax, dword [ebx]
push ecx
mov ecx, ebx
call dword [eax + 0x134]
xor al, al
call fcn.004411b2
ret 0x10