Function at 0x4220e0
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50af56
mov eax, dword fs:[0]
push eax
sub esp, 0x77c
mov eax, dword [0x546330]
xor eax, ebp
mov dword [ebp - 0x10], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3e0], ecx
mov eax, dword [ebp - 0x3e0]
cmp dword [eax], 0
jne 0x422123
xor al, al
jmp 0x424fd8
mov dword [ebp - 0x3e8], 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x2a4
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00429e00
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.0042a410
mov edx, dword [ebp - 0x3e0]
add edx, 0x2a4
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x4222ad
mov byte [ebp - 0x3f1], 0
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x4221e6
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.00444b40
movzx edx, al
test edx, edx
je 0x4221e6
mov eax, dword [ebp - 0x3e8]
push eax
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.00444b90
movzx edx, al
test edx, edx
je 0x4221e6
mov byte [ebp - 0x3f1], 1
movzx eax, byte [ebp - 0x3f1]
test eax, eax
jne 0x42226d
mov dword [ebp - 0x420], 0
jmp 0x42220c
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00429f10
cmp dword [ebp - 0x420], eax
jge 0x42226d
mov edx, dword [ebp - 0x3e8]
cmp dword [edx + 0x108], 0
je 0x42226d
mov eax, dword [ebp - 0x420]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00429610
mov dword [ebp - 0x4b8], eax
mov ecx, dword [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x4b8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x4b8]
mov edx, dword [eax]
call edx
jmp 0x4221fd
mov eax, dword [ebp - 0x3e8]
mov dword [ebp - 0x5bc], eax
mov ecx, dword [ebp - 0x5bc]
mov dword [ebp - 0x49c], ecx
cmp dword [ebp - 0x49c], 0
je 0x4222a3
push 1
mov ecx, dword [ebp - 0x49c]
call fcn.00420270
mov dword [ebp - 0x5b8], eax
jmp 0x4222ad
mov dword [ebp - 0x5b8], 0
cmp dword [ebp - 0x3e8], 0
jne 0x42212d
mov dword [ebp - 0x424], 0
jmp 0x4222d5
mov edx, dword [ebp - 0x424]
add edx, 1
mov dword [ebp - 0x424], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.00429f10
cmp dword [ebp - 0x424], eax
jge 0x422360
mov byte [ebp - 0x3f2], 0
mov eax, dword [ebp - 0x424]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.00429610
mov dword [ebp - 0x4a4], eax
lea ecx, [ebp - 0x3f2]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 0x4a4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x4a4]
mov edx, dword [eax]
call edx
mov dword [ebp - 0x5b4], eax
movzx eax, byte [ebp - 0x3f2]
test eax, eax
je 0x42235b
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x5b4]
mov dword [ecx], edx
mov al, 1
jmp 0x424fd8
jmp 0x4222c6
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0x111
ja 0x4223b8
cmp dword [ebp - 0x3e4], 0x111
je 0x424dc6
mov ecx, dword [ebp - 0x3e4]
sub ecx, 5
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 0xfd
ja case.default.0x42244a
mov edx, dword [ebp - 0x3e4]
movzx eax, byte [edx + 0x425024]
jmp dword [eax*4 + 0x424ff4]
cmp dword [ebp - 0x3e4], 0x200
ja 0x422409
cmp dword [ebp - 0x3e4], 0x200
je 0x423cfe
cmp dword [ebp - 0x3e4], 0x113
je 0x423731
cmp dword [ebp - 0x3e4], 0x133
je 0x424e04
cmp dword [ebp - 0x3e4], 0x138
je 0x424e04
jmp case.default.0x42244a
cmp dword [ebp - 0x3e4], 0x20a
ja 0x422451
cmp dword [ebp - 0x3e4], 0x20a
je 0x424764
mov ecx, dword [ebp - 0x3e4]
sub ecx, 0x201
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 3
ja case.default.0x42244a
mov edx, dword [ebp - 0x3e4]
jmp dword [edx*4 + 0x425124]
cmp dword [ebp - 0x3e4], 0x318
ja 0x4224a2
cmp dword [ebp - 0x3e4], 0x318
je 0x4234b3
cmp dword [ebp - 0x3e4], 0x215
je 0x424300
cmp dword [ebp - 0x3e4], 0x2a1
je 0x4238d3
cmp dword [ebp - 0x3e4], 0x2a3
je 0x423c96
jmp case.default.0x42244a
cmp dword [ebp - 0x3e4], 0x31e
je 0x4226dc
cmp dword [ebp - 0x3e4], 0x8001
je 0x4224c3
jmp case.default.0x42244a
mov eax, dword [ebp - 0x3e0]
add eax, 0x104
push eax
lea ecx, [ebp - 0x710]
call fcn.00429270
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x104
call fcn.00429af0
mov dword [ebp - 0x428], 0
jmp 0x42250d
mov ecx, dword [ebp - 0x428]
add ecx, 1
mov dword [ebp - 0x428], ecx
lea ecx, [ebp - 0x710]
call fcn.00429f10
cmp dword [ebp - 0x428], eax
jge 0x422556
mov edx, dword [ebp - 0x428]
push edx
lea ecx, [ebp - 0x710]
call fcn.00429610
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
je 0x422554
mov eax, dword [ebp - 0x458]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x458]
mov eax, dword [edx + 4]
call eax
jmp 0x4224fe
lea ecx, [ebp - 0x710]
call fcn.00429af0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x710]
call fcn.00429410
jmp case.default.0x42244a
xor ecx, ecx
mov dword [ebp - 0x57c], ecx
mov dword [ebp - 0x578], ecx
mov dword [ebp - 0x574], ecx
mov dword [ebp - 0x570], ecx
mov dword [ebp - 0x56c], ecx
mov dword [ebp - 0x568], ecx
mov dword [ebp - 0x564], ecx
mov dword [ebp - 0x560], ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x70]
mov ecx, dword [edx + 0x74]
mov dword [ebp - 0x570], eax
mov dword [ebp - 0x56c], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x574], eax
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x64], 0
je 0x422616
mov dword [ebp - 0x57c], 0xa
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x64]
mov dword [ebp - 0x578], ecx
lea edx, [ebp - 0x57c]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x64]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x64]
mov edx, dword [eax + 0x158]
call edx
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x68], 0
je 0x42265e
mov dword [ebp - 0x57c], 0xe
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x68]
mov dword [ebp - 0x578], edx
lea eax, [ebp - 0x57c]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x68]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x68]
mov eax, dword [edx + 0x158]
call eax
push 0
mov ecx, dword [ebp - 0x3e0]
call fcn.00427720
push 4
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [ebp - 0x4a8], eax
cmp dword [ebp - 0x4a8], 0
je 0x422698
mov eax, dword [ebp - 0x4a8]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x2a0], 0
jne 0x4226cc
mov edx, dword [ebp - 0x3e0]
mov byte [edx + 0xbd], 1
push 0
push 0
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov edx, dword [ebp + 0x14]
mov dword [edx], 1
mov al, 1
jmp 0x424fd8
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a0
push eax
call fcn.00421160
add esp, 4
jmp case.default.0x42244a
xor ecx, ecx
mov dword [ebp - 0x238], ecx
mov dword [ebp - 0x234], ecx
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x22c], ecx
push 0
lea edx, [ebp - 0x238]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_GetUpdateRect]
test eax, eax
jne 0x422732
mov al, 1
jmp 0x424fd8
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x58], 0
jne 0x422784
push 0x40
push 0
lea eax, [ebp - 0x308]
push eax
call fcn.004e2580
add esp, 0xc
lea ecx, [ebp - 0x308]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_BeginPaint]
lea ecx, [ebp - 0x308]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x424fd8
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc0]
test edx, edx
je 0x422ef1
push 0xffffffffffffffec
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [ebp - 0x4b0], eax
mov edx, dword [ebp - 0x4b0]
and edx, 0x80000
jne 0x4227db
mov eax, dword [ebp - 0x4b0]
or eax, 0x80000
push eax
push 0xffffffffffffffec
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_SetWindowLongW]
xor eax, eax
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], eax
lea ecx, [ebp - 0x228]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
push 0x40
push 0
lea ecx, [ebp - 0x2c8]
push ecx
call fcn.004e2580
add esp, 0xc
lea edx, [ebp - 0x2c8]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_BeginPaint]
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x10], 0
je 0x422850
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x10]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x18], 0
je 0x42286c
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x18]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 0x10], 0
mov eax, dword [ebp - 0x3e0]
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbd]
test edx, edx
je 0x422a7f
mov eax, dword [ebp - 0x3e0]
mov byte [eax + 0xbd], 0
lea ecx, [ebp - 0x228]
push ecx
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x422a7f
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0042ef20
movzx eax, al
test eax, eax
je 0x42296e
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x10], 0
je 0x4228f2
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x10]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x18], 0
je 0x42290e
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x18]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x10], 0
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 0x18], 0
sub esp, 0x10
mov eax, esp
mov ecx, dword [ebp - 0x228]
mov dword [eax], ecx
mov edx, dword [ebp - 0x224]
mov dword [eax + 4], edx
mov ecx, dword [ebp - 0x220]
mov dword [eax + 8], ecx
mov edx, dword [ebp - 0x21c]
mov dword [eax + 0xc], edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x58]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x58]
mov edx, dword [eax + 0x38]
call edx
jmp 0x4229f2
mov dword [ebp - 0x414], 0
push SysReAllocString
push 0
push 0x428740
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x58]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x58]
mov edx, dword [eax + 0x14c]
call edx
mov dword [ebp - 0x414], eax
cmp dword [ebp - 0x414], 0
je 0x4229f2
mov eax, dword [ebp - 0x414]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x414]
mov eax, dword [edx + 0x34]
call eax
sub esp, 0x10
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x414]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x414]
mov eax, dword [edx + 0x38]
call eax
jmp 0x422978
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x290
mov edx, dword [ebp - 0x228]
mov dword [ecx], edx
mov eax, dword [ebp - 0x224]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x220]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x21c]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbc]
test edx, edx
je 0x422a5f
mov eax, dword [ebp - 0x3e0]
mov byte [eax + 0xbc], 0
push 0
push 0
push 0
push str.windowinit
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x58]
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427040
push 0
push 0
push 0
push str.windowresized
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x58]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427040
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x422a9d
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.00427b30
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x290
push ecx
lea edx, [ebp - 0x228]
push edx
lea eax, [ebp - 0x238]
push eax
call dword [sym.imp.USER32.dll_UnionRect]
push 0x10
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x290
push ecx
call fcn.004e2580
add esp, 0xc
mov edx, dword [ebp - 0x220]
sub edx, dword [ebp - 0x228]
mov dword [ebp - 0x45c], edx
mov eax, dword [ebp - 0x21c]
sub eax, dword [ebp - 0x224]
mov dword [ebp - 0x5ac], eax
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbf]
test edx, edx
je 0x422b64
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x18], 0
jne 0x422b64
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x10], eax
mov edx, dword [ebp - 0x3e0]
add edx, 0x1c
push edx
mov eax, dword [ebp - 0x5ac]
push eax
mov ecx, dword [ebp - 0x45c]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 8]
push eax
call fcn.00433c60
add esp, 0x10
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x18], eax
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x1c], 0
jne 0x422b8d
lea eax, [ebp - 0x2c8]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x424fd8
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x18]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x10]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x10]
push edx
call dword [sym.imp.GDI32.dll_SaveDC]
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x224]
mov dword [ebp - 0x42c], eax
jmp 0x422be0
mov ecx, dword [ebp - 0x42c]
add ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x42c]
cmp edx, dword [ebp - 0x21c]
jge 0x422c24
mov eax, dword [ebp - 0x220]
sub eax, dword [ebp - 0x228]
shl eax, 2
push eax
push 0
mov ecx, dword [ebp - 0x42c]
imul ecx, dword [ebp - 0x45c]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x1c]
lea ecx, [eax + ecx*4]
push ecx
call fcn.004e2580
add esp, 0xc
jmp 0x422bd1
lea edx, [ebp - 0x238]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x10]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x58]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x58]
mov eax, dword [edx + 0x168]
call eax
lea ecx, [ebp - 0x238]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x10]
push eax
mov ecx, dword [ebp - 0x3e0]
call fcn.00420e40
mov dword [ebp - 0x430], 0
jmp 0x422c88
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.00429f10
cmp dword [ebp - 0x430], eax
jge 0x422dcf
mov edx, dword [ebp - 0x430]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.00429610
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x422cce
jmp 0x422c79
mov eax, dword [ebp - 0x434]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x434]
mov eax, dword [edx + 0x34]
call eax
mov ecx, dword [eax]
mov dword [ebp - 0x248], ecx
mov edx, dword [eax + 4]
mov dword [ebp - 0x244], edx
mov ecx, dword [eax + 8]
mov dword [ebp - 0x240], ecx
mov edx, dword [eax + 0xc]
mov dword [ebp - 0x23c], edx
mov ecx, dword [ebp - 0x434]
call fcn.00449990
mov dword [ebp - 0x5a4], eax
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x248]
push ecx
lea edx, [ebp - 0x248]
push edx
call dword [sym.imp.USER32.dll_IntersectRect]
test eax, eax
je 0x422dca
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x438], eax
jmp 0x422d55
mov ecx, dword [ebp - 0x438]
add ecx, 1
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x438]
cmp edx, dword [ebp - 0x23c]
jge 0x422dca
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x43c], eax
jmp 0x422d80
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x43c]
cmp edx, dword [ebp - 0x240]
jge 0x422dc5
mov eax, dword [ebp - 0x438]
imul eax, dword [ebp - 0x45c]
add eax, dword [ebp - 0x43c]
shl eax, 2
mov dword [ebp - 0x5a8], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x1c]
mov eax, dword [ebp - 0x5a8]
mov cl, byte [ebp - 0x5a4]
mov byte [edx + eax + 3], cl
jmp 0x422d71
jmp 0x422d46
jmp 0x422c79
mov edx, dword [ebp - 0x5a0]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x10]
push ecx
call dword [sym.imp.GDI32.dll_RestoreDC]
xor edx, edx
mov dword [ebp - 0x278], edx
mov dword [ebp - 0x274], edx
mov dword [ebp - 0x270], edx
mov dword [ebp - 0x26c], edx
lea eax, [ebp - 0x278]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x278]
mov dword [ebp - 0x780], eax
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x77c], ecx
mov edx, dword [ebp - 0x220]
sub edx, dword [ebp - 0x228]
mov dword [ebp - 0x778], edx
mov eax, dword [ebp - 0x21c]
sub eax, dword [ebp - 0x224]
mov dword [ebp - 0x774], eax
mov dword [ebp - 0x788], 0
mov dword [ebp - 0x784], 0
mov byte [ebp - 0x440], 0
mov byte [ebp - 0x43f], 0
mov byte [ebp - 0x43e], 0xff
mov byte [ebp - 0x43d], 1
push 2
lea ecx, [ebp - 0x440]
push ecx
push 0
lea edx, [ebp - 0x788]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x10]
push ecx
lea edx, [ebp - 0x778]
push edx
lea eax, [ebp - 0x780]
push eax
push 0
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_UpdateLayeredWindow]
mov eax, dword [ebp - 0x624]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x10]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
lea eax, [ebp - 0x2c8]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_EndPaint]
mov al, 1
jmp 0x424fd8
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xbd]
test ecx, ecx
je 0x42314e
mov edx, dword [ebp - 0x3e0]
mov byte [edx + 0xbd], 0
xor eax, eax
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], eax
lea ecx, [ebp - 0x258]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
lea ecx, [ebp - 0x258]
push ecx
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x42314e
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0042ef20
movzx eax, al
test eax, eax
je 0x42306c
sub esp, 0x10
mov ecx, esp
mov edx, dword [ebp - 0x258]
mov dword [ecx], edx
mov eax, dword [ebp - 0x254]
mov dword [ecx + 4], eax
mov edx, dword [ebp - 0x250]
mov dword [ecx + 8], edx
mov eax, dword [ebp - 0x24c]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x58]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x58]
mov eax, dword [edx + 0x38]
call eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0xc], 0
je 0x422fce
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x14], 0
je 0x422fea
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x14]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0xc], 0
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 0x14], 0
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xc0]
test ecx, ecx
jne 0x423067
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x10], 0
je 0x423031
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x10]
push ecx
call dword [sym.imp.GDI32.dll_DeleteDC]
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x18], 0
je 0x42304d
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x18]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 0x10], 0
mov eax, dword [ebp - 0x3e0]
mov dword [eax + 0x18], 0
jmp 0x4230f0
mov dword [ebp - 0x410], 0
push SysReAllocString
push 0
push 0x428740
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x58]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x58]
mov eax, dword [edx + 0x14c]
call eax
mov dword [ebp - 0x410], eax
cmp dword [ebp - 0x410], 0
je 0x4230f0
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x410]
mov eax, dword [edx + 0x34]
call eax
sub esp, 0x10
mov ecx, esp
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x410]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x410]
mov eax, dword [edx + 0x38]
call eax
jmp 0x423076
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbc]
test edx, edx
je 0x42312e
mov eax, dword [ebp - 0x3e0]
mov byte [eax + 0xbc], 0
push 0
push 0
push 0
push str.windowinit
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x58]
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427040
push 0
push 0
push 0
push str.windowresized
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x58]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427040
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x42316c
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.00427b30
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbf]
test edx, edx
je 0x423209
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x14], 0
jne 0x423209
xor ecx, ecx
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x398], ecx
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x390], ecx
lea edx, [ebp - 0x39c]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0xc], eax
mov edx, dword [ebp - 0x390]
sub edx, dword [ebp - 0x398]
push edx
mov eax, dword [ebp - 0x394]
sub eax, dword [ebp - 0x39c]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x14], eax
push 0x40
push 0
lea edx, [ebp - 0x3dc]
push edx
call fcn.004e2580
add esp, 0xc
lea eax, [ebp - 0x3dc]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_BeginPaint]
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xbf]
test ecx, ecx
je 0x423421
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x14]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0xc]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x5cc], eax
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0xc]
push ecx
call dword [sym.imp.GDI32.dll_SaveDC]
mov dword [ebp - 0x5c8], eax
lea edx, [ebp - 0x3d4]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x58]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x58]
mov eax, dword [edx + 0x168]
call eax
mov dword [ebp - 0x444], 0
jmp 0x4232c5
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.00429f10
cmp dword [ebp - 0x444], eax
jge 0x423325
mov edx, dword [ebp - 0x444]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.00429610
mov dword [ebp - 0x4b4], eax
lea eax, [ebp - 0x3d4]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp - 0x4b4]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x4b4]
mov eax, dword [edx + 0x180]
call eax
jmp 0x4232b6
mov ecx, dword [ebp - 0x5c8]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
push 0xcc0020
mov ecx, dword [ebp - 0x3d0]
push ecx
mov edx, dword [ebp - 0x3d4]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [ebp - 0x3c8]
sub edx, dword [ebp - 0x3d0]
push edx
mov eax, dword [ebp - 0x3cc]
sub eax, dword [ebp - 0x3d4]
push eax
mov ecx, dword [ebp - 0x3d0]
push ecx
mov edx, dword [ebp - 0x3d4]
push edx
mov eax, dword [ebp - 0x3dc]
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
mov ecx, dword [ebp - 0x5cc]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0xc]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0x54]
test edx, edx
je 0x42341f
mov eax, dword [0x54e098]
push eax
mov ecx, dword [ebp - 0x3dc]
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x5d0], eax
push 5
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
mov edx, dword [ebp - 0x3dc]
push edx
call dword [sym.imp.GDI32.dll_SelectObject]
mov eax, dword [ebp - 0x22c]
push eax
mov ecx, dword [ebp - 0x230]
push ecx
mov edx, dword [ebp - 0x234]
push edx
mov eax, dword [ebp - 0x238]
push eax
mov ecx, dword [ebp - 0x3dc]
push ecx
call dword [sym.imp.GDI32.dll_Rectangle]
mov edx, dword [ebp - 0x5d0]
push edx
mov eax, dword [ebp - 0x3dc]
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
jmp 0x423472
mov ecx, dword [ebp - 0x3dc]
push ecx
call dword [sym.imp.GDI32.dll_SaveDC]
mov dword [ebp - 0x614], eax
lea edx, [ebp - 0x3d4]
push edx
mov eax, dword [ebp - 0x3dc]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x58]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x58]
mov eax, dword [edx + 0x168]
call eax
mov ecx, dword [ebp - 0x614]
push ecx
mov edx, dword [ebp - 0x3dc]
push edx
call dword [sym.imp.GDI32.dll_RestoreDC]
lea eax, [ebp - 0x3dc]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_EndPaint]
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xbd]
test ecx, ecx
je 0x4234ac
push 0
push 0
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
mov al, 1
jmp 0x424fd8
lea ecx, [ebp - 0x288]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x448], ecx
mov edx, dword [ebp - 0x448]
push edx
call dword [sym.imp.GDI32.dll_SaveDC]
mov dword [ebp - 0x618], eax
lea eax, [ebp - 0x288]
push eax
mov ecx, dword [ebp - 0x448]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x58]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x58]
mov eax, dword [edx + 0x168]
call eax
mov ecx, dword [ebp + 0x10]
and ecx, 0x10
je 0x4235df
push 5
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [ebp - 0x418], eax
cmp dword [ebp - 0x418], 0
je 0x4235df
xor ecx, ecx
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x264], ecx
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x25c], ecx
lea edx, [ebp - 0x268]
push edx
mov eax, dword [ebp - 0x418]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
push 2
lea ecx, [ebp - 0x268]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
push 0
mov ecx, dword [ebp - 0x264]
neg ecx
push ecx
mov edx, dword [ebp - 0x268]
neg edx
push edx
mov eax, dword [ebp - 0x448]
push eax
call dword [sym.imp.GDI32.dll_SetWindowOrgEx]
mov ecx, dword [ebp + 0x10]
or ecx, 2
push ecx
mov edx, dword [ebp + 0xc]
push edx
push 0x317
mov eax, dword [ebp - 0x418]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push 2
mov ecx, dword [ebp - 0x418]
push ecx
call dword [sym.imp.USER32.dll_GetWindow]
mov dword [ebp - 0x418], eax
jmp 0x423532
mov edx, dword [ebp - 0x618]
push edx
mov eax, dword [ebp - 0x448]
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp case.default.0x42244a
lea ecx, [ebp - 0x504]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00421970
lea edx, [ebp - 0x50c]
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00421930
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x504], 0
jle 0x42363d
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x504]
mov dword [ecx + 0x18], edx
cmp dword [ebp - 0x500], 0
jle 0x423655
mov eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x500]
mov dword [eax + 0x1c], ecx
cmp dword [ebp - 0x50c], 0
jle 0x42366d
mov edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x50c]
mov dword [edx + 0x20], eax
cmp dword [ebp - 0x508], 0
jle 0x423685
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x508]
mov dword [ecx + 0x24], edx
jmp case.default.0x42244a
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x5c], 0
je 0x423710
xor ecx, ecx
mov dword [ebp - 0x750], ecx
mov dword [ebp - 0x74c], ecx
mov dword [ebp - 0x748], ecx
mov dword [ebp - 0x744], ecx
mov dword [ebp - 0x740], ecx
mov dword [ebp - 0x73c], ecx
mov dword [ebp - 0x738], ecx
mov dword [ebp - 0x734], ecx
mov dword [ebp - 0x750], 0x16
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov dword [ebp - 0x74c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x748], eax
lea ecx, [ebp - 0x750]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x5c]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x58], 0
je 0x42372a
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0042eff0
mov al, 1
jmp 0x424fd8
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
cmp ecx, 0xf1
jne 0x42379a
mov edx, dword [ebp - 0x3e0]
add edx, 0x26c
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00421c50
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0x27c]
test ecx, ecx
jne 0x423779
mov dword [ebp - 0x4ac], 1
jmp 0x423783
mov dword [ebp - 0x4ac], 0
mov edx, dword [ebp - 0x3e0]
mov al, byte [ebp - 0x4ac]
mov byte [edx + 0x27c], al
jmp 0x4238ce
mov dword [ebp - 0x450], 0
jmp 0x4237b5
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.00429f10
cmp dword [ebp - 0x450], eax
jge 0x4238ce
mov edx, dword [ebp - 0x450]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.00429610
mov dword [ebp - 0x404], eax
mov eax, dword [ebp - 0x404]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax + 8]
cmp edx, dword [ecx]
jne 0x4238c9
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
mov edx, dword [ebp - 0x404]
cmp dword [edx + 0xc], ecx
jne 0x4238c9
mov eax, dword [ebp - 0x404]
movzx ecx, byte [eax + 0x10]
test ecx, ecx
jne 0x4238c9
xor edx, edx
mov dword [ebp - 0x6e4], edx
mov dword [ebp - 0x6e0], edx
mov dword [ebp - 0x6dc], edx
mov dword [ebp - 0x6d8], edx
mov dword [ebp - 0x6d4], edx
mov dword [ebp - 0x6d0], edx
mov dword [ebp - 0x6cc], edx
mov dword [ebp - 0x6c8], edx
mov dword [ebp - 0x6e4], 0x18
mov eax, dword [ebp - 0x404]
mov ecx, dword [eax]
mov dword [ebp - 0x6e0], ecx
mov edx, dword [ebp - 0x404]
mov eax, dword [edx + 4]
mov dword [ebp - 0x6cc], eax
mov ecx, dword [ebp - 0x404]
mov edx, dword [ecx]
mov dword [ebp - 0x6c8], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6dc], eax
lea eax, [ebp - 0x6e4]
push eax
mov ecx, dword [ebp - 0x404]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x404]
mov edx, dword [edx]
mov ecx, dword [eax]
mov eax, dword [edx + 0x158]
call eax
jmp 0x4238ce
jmp 0x4237a6
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
mov byte [ecx + 0xc2], 0
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x4c0], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x4bc], edx
mov eax, dword [ebp - 0x4bc]
push eax
mov ecx, dword [ebp - 0x4c0]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
jne 0x423934
jmp case.default.0x42244a
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x4239bd
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x498], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x498]
cmp edx, dword [ecx]
je 0x4239bd
push 0x208
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.004e2580
add esp, 0xc
push 0x104
lea ecx, [ebp - 0x218]
push ecx
mov edx, dword [ebp - 0x498]
push edx
call dword [sym.imp.USER32.dll_GetClassNameW]
test eax, eax
je 0x4239bd
push str.Internet_Explorer_Server
lea eax, [ebp - 0x218]
push eax
call fcn.004ecc29
add esp, 8
test eax, eax
jne 0x4239bd
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x64], 0
je 0x423a5f
xor ecx, ecx
mov dword [ebp - 0x704], ecx
mov dword [ebp - 0x700], ecx
mov dword [ebp - 0x6fc], ecx
mov dword [ebp - 0x6f8], ecx
mov dword [ebp - 0x6f4], ecx
mov dword [ebp - 0x6f0], ecx
mov dword [ebp - 0x6ec], ecx
mov dword [ebp - 0x6e8], ecx
mov edx, dword [ebp - 0x4c0]
mov dword [ebp - 0x6f8], edx
mov eax, dword [ebp - 0x4bc]
mov dword [ebp - 0x6f4], eax
mov dword [ebp - 0x704], 0xc
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x64]
mov dword [ebp - 0x700], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6fc], eax
lea eax, [ebp - 0x704]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x64]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x64]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3f8]
mov eax, dword [edx + 0xdc]
call eax
movzx ecx, al
test ecx, ecx
jne 0x423a83
mov al, 1
jmp 0x424fd8
lea edx, [ebp - 0x38c]
push edx
mov eax, dword [ebp - 0x3f8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x3f8]
mov eax, dword [edx + 0xd8]
call eax
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x38c]
call fcn.0042a1f0
movzx ecx, al
test ecx, ecx
je 0x423add
mov byte [ebp - 0x405], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38c]
call fcn.004293e0
mov al, byte [ebp - 0x405]
jmp 0x424fd8
push 0x30
push 0
mov edx, dword [ebp - 0x3e0]
add edx, 0x24
push edx
call fcn.004e2580
add esp, 0xc
mov eax, dword [ebp - 0x3e0]
mov dword [eax + 0x24], 0x30
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x28], 1
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
mov dword [edx + 0x2c], ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
mov dword [edx + 0x30], ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [0x54e088]
mov dword [edx + 0x44], eax
lea ecx, [ebp - 0x38c]
call fcn.00421a30
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x48], eax
mov edx, dword [ebp - 0x3f8]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3f8]
mov edx, dword [eax + 0x34]
call edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x34
mov edx, dword [eax]
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov dword [ecx + 4], edx
mov edx, dword [eax + 8]
mov dword [ecx + 8], edx
mov eax, dword [eax + 0xc]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x20], 0
jne 0x423c27
push 0
mov edx, dword [0x54e088]
push edx
push 0
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysStringLen
push 0
push str.tooltips_class32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov edx, dword [ebp - 0x3e0]
mov dword [edx + 0x20], eax
mov eax, dword [ebp - 0x3e0]
add eax, 0x24
push eax
push 0
push 0x432
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x20]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x3f8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x3f8]
mov eax, dword [edx + 0xec]
call eax
push eax
push 0
push 0x418
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x20]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x423c7d
mov edx, dword [ebp - 0x3e0]
add edx, 0x24
push edx
push 0
push 0x436
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x3e0]
add edx, 0x24
push edx
push 1
push 0x411
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38c]
call fcn.004293e0
mov al, 1
jmp 0x424fd8
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x20], 0
je 0x423cc3
mov eax, dword [ebp - 0x3e0]
add eax, 0x24
push eax
push 0
push 0x411
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x20]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xc2]
test ecx, ecx
je 0x423cec
push 0xffffffffffffffff
push 0
push 0x200
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x3e0]
mov byte [ecx + 0xc2], 0
jmp case.default.0x42244a
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xc2]
test eax, eax
jne 0x423dac
xor ecx, ecx
mov dword [ebp - 0x51c], ecx
mov dword [ebp - 0x518], ecx
mov dword [ebp - 0x514], ecx
mov dword [ebp - 0x510], ecx
mov dword [ebp - 0x51c], 0x10
mov dword [ebp - 0x518], 3
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
mov dword [ebp - 0x514], eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x20], 0
jne 0x423d67
mov dword [ebp - 0x4d0], 0xc8
jmp 0x423d86
push 0
push 3
push 0x415
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x20]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x4d0], eax
mov ecx, dword [ebp - 0x4d0]
mov dword [ebp - 0x510], ecx
lea edx, [ebp - 0x51c]
push edx
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov eax, dword [ebp - 0x3e0]
mov byte [eax + 0xc2], 1
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x47c], edx
mov eax, dword [ebp + 0x10]
shr eax, 0x10
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x478], ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x47c]
mov dword [edx + 0x70], eax
mov ecx, dword [ebp - 0x478]
mov dword [edx + 0x74], ecx
mov edx, dword [ebp - 0x478]
push edx
mov eax, dword [ebp - 0x47c]
push eax
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 0
je 0x423e32
mov ecx, dword [ebp - 0x3ec]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3ec]
mov eax, dword [edx + 0x20]
call eax
cmp eax, dword [ebp - 0x3e0]
je 0x423e32
jmp case.default.0x42244a
xor ecx, ecx
mov dword [ebp - 0x4fc], ecx
mov dword [ebp - 0x4f8], ecx
mov dword [ebp - 0x4f4], ecx
mov dword [ebp - 0x4f0], ecx
mov dword [ebp - 0x4ec], ecx
mov dword [ebp - 0x4e8], ecx
mov dword [ebp - 0x4e4], ecx
mov dword [ebp - 0x4e0], ecx
mov edx, dword [ebp - 0x47c]
mov dword [ebp - 0x4f0], edx
mov eax, dword [ebp - 0x478]
mov dword [ebp - 0x4ec], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x4f4], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x3ec]
cmp edx, dword [ecx + 0x64]
je 0x423f1f
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x64], 0
je 0x423f1f
mov dword [ebp - 0x4fc], 0xa
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x64]
mov dword [ebp - 0x4f8], edx
lea eax, [ebp - 0x4fc]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x64]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x64]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x64], 0
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x20], 0
je 0x423f1f
mov eax, dword [ebp - 0x3e0]
add eax, 0x24
push eax
push 0
push 0x411
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x20]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x3ec]
cmp ecx, dword [eax + 0x64]
je 0x423f7b
cmp dword [ebp - 0x3ec], 0
je 0x423f7b
mov dword [ebp - 0x4fc], 0xb
mov edx, dword [ebp - 0x3ec]
mov dword [ebp - 0x4f8], edx
lea eax, [ebp - 0x4fc]
push eax
mov ecx, dword [ebp - 0x3ec]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3ec]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x3ec]
mov dword [ecx + 0x64], edx
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x68], 0
je 0x423fc5
mov dword [ebp - 0x4fc], 9
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x68]
mov dword [ebp - 0x4f8], edx
lea eax, [ebp - 0x4fc]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x68]
mov eax, dword [ebp - 0x3e0]
mov edx, dword [edx]
mov ecx, dword [eax + 0x68]
mov eax, dword [edx + 0x158]
call eax
jmp 0x424001
cmp dword [ebp - 0x3ec], 0
je 0x424001
mov dword [ebp - 0x4fc], 9
mov ecx, dword [ebp - 0x3ec]
mov dword [ebp - 0x4f8], ecx
lea edx, [ebp - 0x4fc]
push edx
mov eax, dword [ebp - 0x3ec]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x3ec]
mov eax, dword [edx + 0x158]
call eax
jmp case.default.0x42244a
call dword [sym.imp.USER32.dll_GetFocus]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x4a0]
cmp edx, dword [ecx]
je 0x42404b
mov eax, dword [ebp - 0x4a0]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_IsChild]
test eax, eax
jne 0x42404b
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_SetFocus]
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x464], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x460], edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x464]
mov dword [eax + 0x70], ecx
mov edx, dword [ebp - 0x460]
mov dword [eax + 0x74], edx
mov eax, dword [ebp - 0x460]
push eax
mov ecx, dword [ebp - 0x464]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
jne 0x4240b7
jmp case.default.0x42244a
mov edx, dword [ebp - 0x3fc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3fc]
mov edx, dword [eax + 0x20]
call edx
cmp eax, dword [ebp - 0x3e0]
je 0x4240d7
jmp case.default.0x42244a
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x3fc]
mov dword [eax + 0x68], ecx
mov edx, dword [ebp - 0x3fc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3fc]
mov edx, dword [eax + 0x13c]
call edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427160
xor eax, eax
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x538], eax
mov dword [ebp - 0x534], eax
mov dword [ebp - 0x530], eax
mov dword [ebp - 0x52c], eax
mov dword [ebp - 0x528], eax
mov dword [ebp - 0x524], eax
mov dword [ebp - 0x520], eax
mov dword [ebp - 0x53c], 0xd
mov ecx, dword [ebp - 0x3fc]
mov dword [ebp - 0x538], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x524], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x520], eax
mov ecx, dword [ebp - 0x464]
mov dword [ebp - 0x530], ecx
mov edx, dword [ebp - 0x460]
mov dword [ebp - 0x52c], edx
mov ax, word [ebp + 0xc]
mov word [ebp - 0x526], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x534], eax
lea ecx, [ebp - 0x53c]
push ecx
mov edx, dword [ebp - 0x3fc]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3fc]
mov edx, dword [eax + 0x158]
call edx
jmp case.default.0x42244a
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_SetFocus]
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x480], edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x484]
mov dword [eax + 0x70], ecx
mov edx, dword [ebp - 0x480]
mov dword [eax + 0x74], edx
mov eax, dword [ebp - 0x480]
push eax
mov ecx, dword [ebp - 0x484]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x40c], eax
cmp dword [ebp - 0x40c], 0
jne 0x42422d
jmp case.default.0x42244a
mov edx, dword [ebp - 0x40c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x40c]
mov edx, dword [eax + 0x20]
call edx
cmp eax, dword [ebp - 0x3e0]
je 0x42424d
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
call fcn.00427160
xor eax, eax
mov dword [ebp - 0x6c4], eax
mov dword [ebp - 0x6c0], eax
mov dword [ebp - 0x6bc], eax
mov dword [ebp - 0x6b8], eax
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x6b0], eax
mov dword [ebp - 0x6ac], eax
mov dword [ebp - 0x6a8], eax
mov dword [ebp - 0x6c4], 0x10
mov ecx, dword [ebp - 0x40c]
mov dword [ebp - 0x6c0], ecx
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x6b8], edx
mov eax, dword [ebp - 0x480]
mov dword [ebp - 0x6b4], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x6ae], cx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x6bc], eax
lea edx, [ebp - 0x6c4]
push edx
mov eax, dword [ebp - 0x40c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x40c]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x40c]
mov dword [ecx + 0x68], edx
jmp case.default.0x42244a
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x68], 0
je 0x4243a1
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp + 0x10]
cmp edx, dword [ecx]
je 0x4243a1
xor eax, eax
mov dword [ebp - 0x730], eax
mov dword [ebp - 0x72c], eax
mov dword [ebp - 0x728], eax
mov dword [ebp - 0x724], eax
mov dword [ebp - 0x720], eax
mov dword [ebp - 0x71c], eax
mov dword [ebp - 0x718], eax
mov dword [ebp - 0x714], eax
mov dword [ebp - 0x730], 0x1b
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x68]
mov dword [ebp - 0x72c], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x718], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x714], ecx
lea edx, [ebp - 0x730]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x68]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ecx]
mov ecx, dword [edx + 0x68]
mov edx, dword [eax + 0x15c]
call edx
jmp case.default.0x42244a
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x4c8], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x4c4], eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x4c8]
mov dword [ecx + 0x70], edx
mov eax, dword [ebp - 0x4c4]
mov dword [ecx + 0x74], eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x68], 0
jne 0x4243f5
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
call fcn.004262f0
xor edx, edx
mov dword [ebp - 0x59c], edx
mov dword [ebp - 0x598], edx
mov dword [ebp - 0x594], edx
mov dword [ebp - 0x590], edx
mov dword [ebp - 0x58c], edx
mov dword [ebp - 0x588], edx
mov dword [ebp - 0x584], edx
mov dword [ebp - 0x580], edx
mov dword [ebp - 0x59c], 0xe
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x68]
mov dword [ebp - 0x598], ecx
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x584], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x4c8]
mov dword [ebp - 0x590], ecx
mov edx, dword [ebp - 0x4c4]
mov dword [ebp - 0x58c], edx
mov ax, word [ebp + 0xc]
mov word [ebp - 0x586], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x594], eax
lea ecx, [ebp - 0x59c]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x68]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x68]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x68], 0
jmp case.default.0x42244a
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
mov ecx, dword [ebp + 0x10]
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x474], edx
mov eax, dword [ebp + 0x10]
shr eax, 0x10
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x470], ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x474]
mov dword [edx + 0x70], eax
mov ecx, dword [ebp - 0x470]
mov dword [edx + 0x74], ecx
mov edx, dword [ebp - 0x470]
push edx
mov eax, dword [ebp - 0x474]
push eax
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
jne 0x42453b
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x400]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x400]
mov eax, dword [edx + 0x20]
call eax
cmp eax, dword [ebp - 0x3e0]
je 0x42455b
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x400]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x400]
mov eax, dword [edx + 0x13c]
call eax
mov ecx, dword [ebp - 0x3e0]
call fcn.00427160
xor ecx, ecx
mov dword [ebp - 0x55c], ecx
mov dword [ebp - 0x558], ecx
mov dword [ebp - 0x554], ecx
mov dword [ebp - 0x550], ecx
mov dword [ebp - 0x54c], ecx
mov dword [ebp - 0x548], ecx
mov dword [ebp - 0x544], ecx
mov dword [ebp - 0x540], ecx
mov dword [ebp - 0x55c], 0xf
mov edx, dword [ebp - 0x400]
mov dword [ebp - 0x558], edx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x544], eax
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x540], ecx
mov edx, dword [ebp - 0x474]
mov dword [ebp - 0x550], edx
mov eax, dword [ebp - 0x470]
mov dword [ebp - 0x54c], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x546], cx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x554], eax
lea edx, [ebp - 0x55c]
push edx
mov eax, dword [ebp - 0x400]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x400]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x400]
mov dword [ecx + 0x68], edx
jmp case.default.0x42244a
mov eax, dword [ebp + 0x10]
and eax, 0xffff
movsx ecx, ax
mov dword [ebp - 0x48c], ecx
mov edx, dword [ebp + 0x10]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x488], eax
lea ecx, [ebp - 0x48c]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x48c]
mov dword [ecx + 0x70], edx
mov eax, dword [ebp - 0x488]
mov dword [ecx + 0x74], eax
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x68], 0
jne 0x42469b
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
call fcn.004262f0
xor edx, edx
mov dword [ebp - 0x5f0], edx
mov dword [ebp - 0x5ec], edx
mov dword [ebp - 0x5e8], edx
mov dword [ebp - 0x5e4], edx
mov dword [ebp - 0x5e0], edx
mov dword [ebp - 0x5dc], edx
mov dword [ebp - 0x5d8], edx
mov dword [ebp - 0x5d4], edx
mov dword [ebp - 0x5f0], 0x11
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax + 0x68]
mov dword [ebp - 0x5ec], ecx
mov edx, dword [ebp - 0x48c]
mov dword [ebp - 0x5e4], edx
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x5e0], eax
mov cx, word [ebp + 0xc]
mov word [ebp - 0x5da], cx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x68]
mov dword [ebp - 0x5d4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x5e8], eax
lea ecx, [ebp - 0x5f0]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x68]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x68]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x68], 0
jmp case.default.0x42244a
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp + 0x10]
shr ecx, 0x10
and ecx, 0xffff
movsx edx, cx
mov dword [ebp - 0x490], edx
lea eax, [ebp - 0x494]
push eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx]
push edx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [ebp - 0x494]
mov dword [eax + 0x70], ecx
mov edx, dword [ebp - 0x490]
mov dword [eax + 0x74], edx
mov eax, dword [ebp - 0x490]
push eax
mov ecx, dword [ebp - 0x494]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0
jne 0x4247e6
jmp case.default.0x42244a
mov edx, dword [ebp - 0x3f0]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x3f0]
mov edx, dword [eax + 0x20]
call edx
cmp eax, dword [ebp - 0x3e0]
je 0x424806
jmp case.default.0x42244a
push str.WebBrowserUI
mov eax, dword [ebp - 0x3f0]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x3f0]
mov eax, dword [edx + 0x10]
call eax
push eax
call fcn.004ecc29
add esp, 8
test eax, eax
jne 0x4248f8
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
je 0x42486a
push str.EditUI
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x5c]
mov eax, dword [edx + 0x10]
call eax
push eax
call fcn.004ecc29
add esp, 8
test eax, eax
je 0x4248f8
xor ecx, ecx
mov dword [ebp - 0x770], ecx
mov dword [ebp - 0x76c], ecx
mov dword [ebp - 0x768], ecx
mov dword [ebp - 0x764], ecx
mov dword [ebp - 0x760], ecx
mov dword [ebp - 0x75c], ecx
mov dword [ebp - 0x758], ecx
mov dword [ebp - 0x754], ecx
mov dword [ebp - 0x770], 0x15
mov edx, dword [ebp - 0x3f0]
mov dword [ebp - 0x76c], edx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x768], eax
lea eax, [ebp - 0x770]
push eax
mov ecx, dword [ebp - 0x3f0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3f0]
mov eax, dword [edx + 0x158]
call eax
push 0
push 0
push 0
push str.setfocus
mov ecx, dword [ebp - 0x3f0]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.00427040
mov edx, dword [ebp + 0xc]
shr edx, 0x10
and edx, 0xffff
movsx eax, dx
mov dword [ebp - 0x61c], eax
xor ecx, ecx
mov dword [ebp - 0x644], ecx
mov dword [ebp - 0x640], ecx
mov dword [ebp - 0x63c], ecx
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x634], ecx
mov dword [ebp - 0x630], ecx
mov dword [ebp - 0x62c], ecx
mov dword [ebp - 0x628], ecx
mov dword [ebp - 0x644], 0x12
mov edx, dword [ebp - 0x3f0]
mov dword [ebp - 0x640], edx
cmp dword [ebp - 0x61c], 0
jge 0x42496a
mov dword [ebp - 0x4cc], 1
jmp 0x424974
mov dword [ebp - 0x4cc], 0
mov eax, dword [ebp - 0x4cc]
and eax, 0xffff
movzx ecx, ax
mov dword [ebp - 0x62c], ecx
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x628], edx
call fcn.00422050
mov word [ebp - 0x62e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x63c], eax
lea eax, [ebp - 0x644]
push eax
mov ecx, dword [ebp - 0x3f0]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x3f0]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x70]
and edx, 0xffff
movzx eax, dx
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x74]
and edx, 0xffff
movzx ecx, dx
shl ecx, 0x10
or eax, ecx
push eax
push 0
push 0x200
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x424a1c
jmp case.default.0x42244a
xor edx, edx
mov dword [ebp - 0x664], edx
mov dword [ebp - 0x660], edx
mov dword [ebp - 0x65c], edx
mov dword [ebp - 0x658], edx
mov dword [ebp - 0x654], edx
mov dword [ebp - 0x650], edx
mov dword [ebp - 0x64c], edx
mov dword [ebp - 0x648], edx
mov dword [ebp - 0x664], 5
mov ax, word [ebp + 0xc]
mov word [ebp - 0x650], ax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x70]
mov eax, dword [ecx + 0x74]
mov dword [ebp - 0x658], edx
mov dword [ebp - 0x654], eax
call fcn.00422050
mov word [ebp - 0x64e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x65c], eax
lea ecx, [ebp - 0x664]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x5c]
mov eax, dword [edx + 0x158]
call eax
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x424acc
jmp case.default.0x42244a
xor edx, edx
mov dword [ebp - 0x684], edx
mov dword [ebp - 0x680], edx
mov dword [ebp - 0x67c], edx
mov dword [ebp - 0x678], edx
mov dword [ebp - 0x674], edx
mov dword [ebp - 0x670], edx
mov dword [ebp - 0x66c], edx
mov dword [ebp - 0x668], edx
mov dword [ebp - 0x684], 3
mov ax, word [ebp + 0xc]
mov word [ebp - 0x670], ax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x70]
mov eax, dword [ecx + 0x74]
mov dword [ebp - 0x678], edx
mov dword [ebp - 0x674], eax
call fcn.00422050
mov word [ebp - 0x66e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x67c], eax
lea ecx, [ebp - 0x684]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x5c]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x5c]
mov dword [ecx + 0x6c], eax
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x6c], 0
jne 0x424b8e
jmp case.default.0x42244a
xor edx, edx
mov dword [ebp - 0x6a4], edx
mov dword [ebp - 0x6a0], edx
mov dword [ebp - 0x69c], edx
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x694], edx
mov dword [ebp - 0x690], edx
mov dword [ebp - 0x68c], edx
mov dword [ebp - 0x688], edx
mov dword [ebp - 0x6a4], 4
mov ax, word [ebp + 0xc]
mov word [ebp - 0x690], ax
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ecx + 0x70]
mov eax, dword [ecx + 0x74]
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x694], eax
call fcn.00422050
mov word [ebp - 0x68e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x69c], eax
lea ecx, [ebp - 0x6a4]
push ecx
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx + 0x6c]
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [eax]
mov ecx, dword [ecx + 0x6c]
mov eax, dword [edx + 0x158]
call eax
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x6c], 0
jmp case.default.0x42244a
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movzx eax, dx
cmp eax, 1
je 0x424c50
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc3]
test edx, edx
je 0x424c68
mov al, 1
jmp 0x424fd8
xor eax, eax
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], eax
lea ecx, [ebp - 0x46c]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
lea edx, [ebp - 0x46c]
push edx
mov eax, dword [ebp - 0x3e0]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
mov edx, dword [ebp - 0x468]
push edx
mov eax, dword [ebp - 0x46c]
push eax
mov ecx, dword [ebp - 0x3e0]
call fcn.00420fa0
mov dword [ebp - 0x41c], eax
cmp dword [ebp - 0x41c], 0
jne 0x424cc6
jmp case.default.0x42244a
mov ecx, dword [ebp - 0x41c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x41c]
mov eax, dword [edx + 0x18]
call eax
and eax, 2
jne 0x424ce3
jmp case.default.0x42244a
xor ecx, ecx
mov dword [ebp - 0x610], ecx
mov dword [ebp - 0x60c], ecx
mov dword [ebp - 0x608], ecx
mov dword [ebp - 0x604], ecx
mov dword [ebp - 0x600], ecx
mov dword [ebp - 0x5fc], ecx
mov dword [ebp - 0x5f8], ecx
mov dword [ebp - 0x5f4], ecx
mov dword [ebp - 0x610], 0x17
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x5f8], edx
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x5f4], eax
mov ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x604], ecx
mov edx, dword [ebp - 0x468]
mov dword [ebp - 0x600], edx
call fcn.00422050
mov word [ebp - 0x5fa], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x608], eax
lea eax, [ebp - 0x610]
push eax
mov ecx, dword [ebp - 0x41c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x41c]
mov eax, dword [edx + 0x158]
call eax
mov al, 1
jmp 0x424fd8
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x4dc], ecx
cmp dword [ebp - 0x4dc], 0
je 0x424dbd
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x2000
push ecx
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x424fd8
cmp dword [ebp + 0x10], 0
jne 0x424dce
jmp case.default.0x42244a
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x620], edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x2000
push edx
mov eax, dword [ebp - 0x620]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x424fd8
cmp dword [ebp + 0x10], 0
jne 0x424e0c
jmp case.default.0x42244a
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x5b0], edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp + 0xc]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x2000
push edx
mov eax, dword [ebp - 0x5b0]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 0x14]
mov dword [ecx], eax
mov al, 1
jmp 0x424fd8
mov dword [ebp - 0x3e8], 0
mov edx, dword [ebp - 0x3e0]
add edx, 0x2a4
push edx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00429e00
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.0042a410
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a4
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x424fc9
mov byte [ebp - 0x3f3], 0
mov ecx, dword [ebp - 0x3e8]
cmp dword [ecx + 0x108], 0
je 0x424f02
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.00444b40
movzx eax, al
test eax, eax
je 0x424f02
mov ecx, dword [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.00444b90
movzx eax, al
test eax, eax
je 0x424f02
mov byte [ebp - 0x3f3], 1
movzx ecx, byte [ebp - 0x3f3]
test ecx, ecx
jne 0x424f89
mov dword [ebp - 0x454], 0
jmp 0x424f28
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00429f10
cmp dword [ebp - 0x454], eax
jge 0x424f89
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x424f89
mov ecx, dword [ebp - 0x454]
push ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00429610
mov dword [ebp - 0x4d8], eax
mov edx, dword [ebp - 0x3e8]
push edx
mov eax, dword [ebp - 0x4d8]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x4d8]
mov eax, dword [edx]
call eax
jmp 0x424f19
mov ecx, dword [ebp - 0x3e8]
mov dword [ebp - 0x5c0], ecx
mov edx, dword [ebp - 0x5c0]
mov dword [ebp - 0x4d4], edx
cmp dword [ebp - 0x4d4], 0
je 0x424fbf
push 1
mov ecx, dword [ebp - 0x4d4]
call fcn.00420270
mov dword [ebp - 0x5c4], eax
jmp 0x424fc9
mov dword [ebp - 0x5c4], 0
cmp dword [ebp - 0x3e8], 0
jne 0x424e4a
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004bd6ac
mov esp, ebp
pop ebp
ret 0x10