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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x53edd6
mov eax, dword fs:[0]
push eax
sub esp, 0x77c
mov eax, dword [0x5854b4]
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 0x437e33
xor al, al
jmp 0x43ace8
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.00433e80
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00434470
mov edx, dword [ebp - 0x3e0]
add edx, 0x2a4
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x437fbd
mov byte [ebp - 0x3f1], 0
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x437ef6
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.004403c0
movzx edx, al
test edx, edx
je 0x437ef6
mov eax, dword [ebp - 0x3e8]
push eax
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.00440410
movzx edx, al
test edx, edx
je 0x437ef6
mov byte [ebp - 0x3f1], 1
movzx eax, byte [ebp - 0x3f1]
test eax, eax
jne 0x437f7d
mov dword [ebp - 0x420], 0
jmp 0x437f1c
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00408470
cmp dword [ebp - 0x420], eax
jge 0x437f7d
mov edx, dword [ebp - 0x3e8]
cmp dword [edx + 0x108], 0
je 0x437f7d
mov eax, dword [ebp - 0x420]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00433650
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 0x437f0d
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 0x437fb3
push 1
mov ecx, dword [ebp - 0x49c]
call fcn.00435eb0
mov dword [ebp - 0x5b8], eax
jmp 0x437fbd
mov dword [ebp - 0x5b8], 0
cmp dword [ebp - 0x3e8], 0
jne 0x437e3d
mov dword [ebp - 0x424], 0
jmp 0x437fe5
mov edx, dword [ebp - 0x424]
add edx, 1
mov dword [ebp - 0x424], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.00408470
cmp dword [ebp - 0x424], eax
jge 0x438070
mov byte [ebp - 0x3f2], 0
mov eax, dword [ebp - 0x424]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.00433650
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 0x43806b
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x5b4]
mov dword [ecx], edx
mov al, 1
jmp 0x43ace8
jmp 0x437fd6
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0x111
ja 0x4380c8
cmp dword [ebp - 0x3e4], 0x111
je 0x43aad6
mov ecx, dword [ebp - 0x3e4]
sub ecx, 5
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 0xfd
ja case.default.0x43815a
mov edx, dword [ebp - 0x3e4]
movzx eax, byte [edx + 0x43ad34]
jmp dword [eax*4 + 0x43ad04]
cmp dword [ebp - 0x3e4], 0x200
ja 0x438119
cmp dword [ebp - 0x3e4], 0x200
je 0x439a0e
cmp dword [ebp - 0x3e4], 0x113
je 0x439441
cmp dword [ebp - 0x3e4], 0x133
je 0x43ab14
cmp dword [ebp - 0x3e4], 0x138
je 0x43ab14
jmp case.default.0x43815a
cmp dword [ebp - 0x3e4], 0x20a
ja 0x438161
cmp dword [ebp - 0x3e4], 0x20a
je 0x43a474
mov ecx, dword [ebp - 0x3e4]
sub ecx, 0x201
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 3
ja case.default.0x43815a
mov edx, dword [ebp - 0x3e4]
jmp dword [edx*4 + 0x43ae34]
cmp dword [ebp - 0x3e4], 0x318
ja 0x4381b2
cmp dword [ebp - 0x3e4], 0x318
je 0x4391c3
cmp dword [ebp - 0x3e4], 0x215
je 0x43a010
cmp dword [ebp - 0x3e4], 0x2a1
je 0x4395e3
cmp dword [ebp - 0x3e4], 0x2a3
je 0x4399a6
jmp case.default.0x43815a
cmp dword [ebp - 0x3e4], 0x31e
je 0x4383ec
cmp dword [ebp - 0x3e4], 0x8001
je 0x4381d3
jmp case.default.0x43815a
mov eax, dword [ebp - 0x3e0]
add eax, 0x104
push eax
lea ecx, [ebp - 0x710]
call fcn.004332b0
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x104
call fcn.00433b70
mov dword [ebp - 0x428], 0
jmp 0x43821d
mov ecx, dword [ebp - 0x428]
add ecx, 1
mov dword [ebp - 0x428], ecx
lea ecx, [ebp - 0x710]
call fcn.00408470
cmp dword [ebp - 0x428], eax
jge 0x438266
mov edx, dword [ebp - 0x428]
push edx
lea ecx, [ebp - 0x710]
call fcn.00433650
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
je 0x438264
mov eax, dword [ebp - 0x458]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x458]
mov eax, dword [edx + 4]
call eax
jmp 0x43820e
lea ecx, [ebp - 0x710]
call fcn.00433b70
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x710]
call fcn.00433450
jmp case.default.0x43815a
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 0x438326
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 0x43836e
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.0043d3c0
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 0x4383a8
mov eax, dword [ebp - 0x4a8]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp case.default.0x43815a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x2a0], 0
jne 0x4383dc
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 0x43ace8
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a0
push eax
call fcn.00436d30
add esp, 4
jmp case.default.0x43815a
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 0x438442
mov al, 1
jmp 0x43ace8
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x58], 0
jne 0x438494
push 0x40
push 0
lea eax, [ebp - 0x308]
push eax
call fcn.00511800
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 0x43ace8
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc0]
test edx, edx
je 0x438c01
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 0x4384eb
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.00511800
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 0x438560
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 0x43857c
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 0x43878f
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 0x43878f
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.00442280
movzx eax, al
test eax, eax
je 0x43867e
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x10], 0
je 0x438602
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 0x43861e
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 0x438702
mov dword [ebp - 0x414], 0
push SysReAllocString
push 0
push 0x43e1b0
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 0x438702
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 0x438688
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 0x43876f
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.0043cce0
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.0043cce0
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x4387ad
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.0043d7d0
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.00511800
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 0x438874
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x18], 0
jne 0x438874
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.00446ea0
add esp, 0x10
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x18], eax
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x1c], 0
jne 0x43889d
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 0x43ace8
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 0x4388f0
mov ecx, dword [ebp - 0x42c]
add ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x42c]
cmp edx, dword [ebp - 0x21c]
jge 0x438934
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.00511800
add esp, 0xc
jmp 0x4388e1
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.00436a60
mov dword [ebp - 0x430], 0
jmp 0x438998
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.00408470
cmp dword [ebp - 0x430], eax
jge 0x438adf
mov edx, dword [ebp - 0x430]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.00433650
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x4389de
jmp 0x438989
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.00459200
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 0x438ada
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x438], eax
jmp 0x438a65
mov ecx, dword [ebp - 0x438]
add ecx, 1
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x438]
cmp edx, dword [ebp - 0x23c]
jge 0x438ada
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x43c], eax
jmp 0x438a90
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x43c]
cmp edx, dword [ebp - 0x240]
jge 0x438ad5
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 0x438a81
jmp 0x438a56
jmp 0x438989
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 0x43ace8
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xbd]
test ecx, ecx
je 0x438e5e
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 0x438e5e
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.00442280
movzx eax, al
test eax, eax
je 0x438d7c
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 0x438cde
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 0x438cfa
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 0x438d77
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x10], 0
je 0x438d41
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 0x438d5d
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 0x438e00
mov dword [ebp - 0x410], 0
push SysReAllocString
push 0
push 0x43e1b0
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 0x438e00
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 0x438d86
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbc]
test edx, edx
je 0x438e3e
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.0043cce0
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.0043cce0
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x438e7c
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.0043d7d0
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbf]
test edx, edx
je 0x438f19
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x14], 0
jne 0x438f19
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.00511800
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 0x439131
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 0x438fd5
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.00408470
cmp dword [ebp - 0x444], eax
jge 0x439035
mov edx, dword [ebp - 0x444]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.00433650
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 0x438fc6
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 0x43912f
mov eax, dword [0x58c890]
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 0x439182
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 0x4391bc
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 0x43ace8
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 0x4392ef
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 0x4392ef
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 0x439242
mov edx, dword [ebp - 0x618]
push edx
mov eax, dword [ebp - 0x448]
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp case.default.0x43815a
lea ecx, [ebp - 0x504]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.004376b0
lea edx, [ebp - 0x50c]
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00437670
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x504], 0
jle 0x43934d
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x504]
mov dword [ecx + 0x18], edx
cmp dword [ebp - 0x500], 0
jle 0x439365
mov eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x500]
mov dword [eax + 0x1c], ecx
cmp dword [ebp - 0x50c], 0
jle 0x43937d
mov edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x50c]
mov dword [edx + 0x20], eax
cmp dword [ebp - 0x508], 0
jle 0x439395
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x508]
mov dword [ecx + 0x24], edx
jmp case.default.0x43815a
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x5c], 0
je 0x439420
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 0x43943a
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.00442350
mov al, 1
jmp 0x43ace8
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
cmp ecx, 0xf1
jne 0x4394aa
mov edx, dword [ebp - 0x3e0]
add edx, 0x26c
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.00437960
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0x27c]
test ecx, ecx
jne 0x439489
mov dword [ebp - 0x4ac], 1
jmp 0x439493
mov dword [ebp - 0x4ac], 0
mov edx, dword [ebp - 0x3e0]
mov al, byte [ebp - 0x4ac]
mov byte [edx + 0x27c], al
jmp 0x4395de
mov dword [ebp - 0x450], 0
jmp 0x4394c5
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.00408470
cmp dword [ebp - 0x450], eax
jge 0x4395de
mov edx, dword [ebp - 0x450]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.00433650
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 0x4395d9
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
mov edx, dword [ebp - 0x404]
cmp dword [edx + 0xc], ecx
jne 0x4395d9
mov eax, dword [ebp - 0x404]
movzx ecx, byte [eax + 0x10]
test ecx, ecx
jne 0x4395d9
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 0x4395de
jmp 0x4394b6
jmp case.default.0x43815a
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.00436bc0
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
jne 0x439644
jmp case.default.0x43815a
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x4396cd
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 0x4396cd
push 0x208
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.00511800
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 0x4396cd
push str.Internet_Explorer_Server
lea eax, [ebp - 0x218]
push eax
call fcn.0051ac59
add esp, 8
test eax, eax
jne 0x4396cd
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 0x43976f
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 0x439793
mov al, 1
jmp 0x43ace8
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.00434250
movzx ecx, al
test ecx, ecx
je 0x4397ed
mov byte [ebp - 0x405], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38c]
call fcn.00433420
mov al, byte [ebp - 0x405]
jmp 0x43ace8
push 0x30
push 0
mov edx, dword [ebp - 0x3e0]
add edx, 0x24
push edx
call fcn.00511800
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 [0x58c880]
mov dword [edx + 0x44], eax
lea ecx, [ebp - 0x38c]
call fcn.00406cd0
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 0x439937
push 0
mov edx, dword [0x58c880]
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 0x43998d
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.00433420
mov al, 1
jmp 0x43ace8
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x20], 0
je 0x4399d3
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 0x4399fc
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.0x43815a
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xc2]
test eax, eax
jne 0x439abc
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 0x439a77
mov dword [ebp - 0x4d0], 0xc8
jmp 0x439a96
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.00436bc0
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 0
je 0x439b42
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 0x439b42
jmp case.default.0x43815a
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 0x439c2f
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x64], 0
je 0x439c2f
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 0x439c2f
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 0x439c8b
cmp dword [ebp - 0x3ec], 0
je 0x439c8b
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 0x439cd5
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 0x439d11
cmp dword [ebp - 0x3ec], 0
je 0x439d11
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.0x43815a
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 0x439d5b
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 0x439d5b
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.00436bc0
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
jne 0x439dc7
jmp case.default.0x43815a
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 0x439de7
jmp case.default.0x43815a
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.0043ce00
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.0x43815a
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.00436bc0
mov dword [ebp - 0x40c], eax
cmp dword [ebp - 0x40c], 0
jne 0x439f3d
jmp case.default.0x43815a
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 0x439f5d
jmp case.default.0x43815a
mov ecx, dword [ebp - 0x3e0]
call fcn.0043ce00
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.0x43815a
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x68], 0
je 0x43a0b1
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp + 0x10]
cmp edx, dword [ecx]
je 0x43a0b1
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.0x43815a
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 0x43a105
jmp case.default.0x43815a
mov ecx, dword [ebp - 0x3e0]
call fcn.0043c000
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.0x43815a
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.00436bc0
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
jne 0x43a24b
jmp case.default.0x43815a
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 0x43a26b
jmp case.default.0x43815a
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.0043ce00
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.0x43815a
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 0x43a3ab
jmp case.default.0x43815a
mov ecx, dword [ebp - 0x3e0]
call fcn.0043c000
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.0x43815a
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.00436bc0
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0
jne 0x43a4f6
jmp case.default.0x43815a
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 0x43a516
jmp case.default.0x43815a
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.0051ac59
add esp, 8
test eax, eax
jne 0x43a608
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
je 0x43a57a
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.0051ac59
add esp, 8
test eax, eax
je 0x43a608
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.0043cce0
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 0x43a67a
mov dword [ebp - 0x4cc], 1
jmp 0x43a684
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.00437d60
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.0x43815a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x43a72c
jmp case.default.0x43815a
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.00437d60
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.0x43815a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x43a7dc
jmp case.default.0x43815a
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.00437d60
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.0x43815a
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x6c], 0
jne 0x43a89e
jmp case.default.0x43815a
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.00437d60
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.0x43815a
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movzx eax, dx
cmp eax, 1
je 0x43a960
jmp case.default.0x43815a
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc3]
test edx, edx
je 0x43a978
mov al, 1
jmp 0x43ace8
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.00436bc0
mov dword [ebp - 0x41c], eax
cmp dword [ebp - 0x41c], 0
jne 0x43a9d6
jmp case.default.0x43815a
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 0x43a9f3
jmp case.default.0x43815a
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.00437d60
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 0x43ace8
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x4dc], ecx
cmp dword [ebp - 0x4dc], 0
je 0x43aacd
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 0x43ace8
cmp dword [ebp + 0x10], 0
jne 0x43aade
jmp case.default.0x43815a
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 0x43ace8
cmp dword [ebp + 0x10], 0
jne 0x43ab1c
jmp case.default.0x43815a
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 0x43ace8
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.00433e80
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00434470
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a4
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x43acd9
mov byte [ebp - 0x3f3], 0
mov ecx, dword [ebp - 0x3e8]
cmp dword [ecx + 0x108], 0
je 0x43ac12
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.004403c0
movzx eax, al
test eax, eax
je 0x43ac12
mov ecx, dword [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.00440410
movzx eax, al
test eax, eax
je 0x43ac12
mov byte [ebp - 0x3f3], 1
movzx ecx, byte [ebp - 0x3f3]
test ecx, ecx
jne 0x43ac99
mov dword [ebp - 0x454], 0
jmp 0x43ac38
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00408470
cmp dword [ebp - 0x454], eax
jge 0x43ac99
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x43ac99
mov ecx, dword [ebp - 0x454]
push ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.00433650
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 0x43ac29
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 0x43accf
push 1
mov ecx, dword [ebp - 0x4d4]
call fcn.00435eb0
mov dword [ebp - 0x5c4], eax
jmp 0x43acd9
mov dword [ebp - 0x5c4], 0
cmp dword [ebp - 0x3e8], 0
jne 0x43ab5a
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.004d77de
mov esp, ebp
pop ebp
ret 0x10