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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x608066
mov eax, dword fs:[0]
push eax
sub esp, 0x77c
mov eax, dword [0x67e4d0]
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 0x45d2c3
xor al, al
jmp 0x460178
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.00468550
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00468d40
mov edx, dword [ebp - 0x3e0]
add edx, 0x2a4
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x45d44d
mov byte [ebp - 0x3f1], 0
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x45d386
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.0046c8f0
movzx edx, al
test edx, edx
je 0x45d386
mov eax, dword [ebp - 0x3e8]
push eax
mov ecx, dword [ebp - 0x3e8]
mov ecx, dword [ecx + 0x108]
add ecx, 0x38
call fcn.0046c940
movzx edx, al
test edx, edx
je 0x45d386
mov byte [ebp - 0x3f1], 1
movzx eax, byte [ebp - 0x3f1]
test eax, eax
jne 0x45d40d
mov dword [ebp - 0x420], 0
jmp 0x45d3ac
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.004686d0
cmp dword [ebp - 0x420], eax
jge 0x45d40d
mov edx, dword [ebp - 0x3e8]
cmp dword [edx + 0x108], 0
je 0x45d40d
mov eax, dword [ebp - 0x420]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.004678e0
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 0x45d39d
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 0x45d443
push 1
mov ecx, dword [ebp - 0x49c]
call fcn.0045a8b0
mov dword [ebp - 0x5b8], eax
jmp 0x45d44d
mov dword [ebp - 0x5b8], 0
cmp dword [ebp - 0x3e8], 0
jne 0x45d2cd
mov dword [ebp - 0x424], 0
jmp 0x45d475
mov edx, dword [ebp - 0x424]
add edx, 1
mov dword [ebp - 0x424], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.004686d0
cmp dword [ebp - 0x424], eax
jge 0x45d500
mov byte [ebp - 0x3f2], 0
mov eax, dword [ebp - 0x424]
push eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xec
call fcn.004678e0
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 0x45d4fb
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x5b4]
mov dword [ecx], edx
mov al, 1
jmp 0x460178
jmp 0x45d466
mov eax, dword [ebp + 8]
mov dword [ebp - 0x3e4], eax
cmp dword [ebp - 0x3e4], 0x111
ja 0x45d558
cmp dword [ebp - 0x3e4], 0x111
je 0x45ff66
mov ecx, dword [ebp - 0x3e4]
sub ecx, 5
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 0xfd
ja case.default.0x45d5ea
mov edx, dword [ebp - 0x3e4]
movzx eax, byte [edx + 0x4601c4]
jmp dword [eax*4 + 0x460194]
cmp dword [ebp - 0x3e4], 0x200
ja 0x45d5a9
cmp dword [ebp - 0x3e4], 0x200
je 0x45ee9e
cmp dword [ebp - 0x3e4], 0x113
je 0x45e8d1
cmp dword [ebp - 0x3e4], 0x133
je 0x45ffa4
cmp dword [ebp - 0x3e4], 0x138
je 0x45ffa4
jmp case.default.0x45d5ea
cmp dword [ebp - 0x3e4], 0x20a
ja 0x45d5f1
cmp dword [ebp - 0x3e4], 0x20a
je 0x45f904
mov ecx, dword [ebp - 0x3e4]
sub ecx, 0x201
mov dword [ebp - 0x3e4], ecx
cmp dword [ebp - 0x3e4], 3
ja case.default.0x45d5ea
mov edx, dword [ebp - 0x3e4]
jmp dword [edx*4 + 0x4602c4]
cmp dword [ebp - 0x3e4], 0x318
ja 0x45d642
cmp dword [ebp - 0x3e4], 0x318
je 0x45e653
cmp dword [ebp - 0x3e4], 0x215
je 0x45f4a0
cmp dword [ebp - 0x3e4], 0x2a1
je 0x45ea73
cmp dword [ebp - 0x3e4], 0x2a3
je 0x45ee36
jmp case.default.0x45d5ea
cmp dword [ebp - 0x3e4], 0x31e
je 0x45d87c
cmp dword [ebp - 0x3e4], 0x8001
je 0x45d663
jmp case.default.0x45d5ea
mov eax, dword [ebp - 0x3e0]
add eax, 0x104
push eax
lea ecx, [ebp - 0x710]
call fcn.00467390
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x104
call fcn.004681a0
mov dword [ebp - 0x428], 0
jmp 0x45d6ad
mov ecx, dword [ebp - 0x428]
add ecx, 1
mov dword [ebp - 0x428], ecx
lea ecx, [ebp - 0x710]
call fcn.004686d0
cmp dword [ebp - 0x428], eax
jge 0x45d6f6
mov edx, dword [ebp - 0x428]
push edx
lea ecx, [ebp - 0x710]
call fcn.004678e0
mov dword [ebp - 0x458], eax
cmp dword [ebp - 0x458], 0
je 0x45d6f4
mov eax, dword [ebp - 0x458]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x458]
mov eax, dword [edx + 4]
call eax
jmp 0x45d69e
lea ecx, [ebp - 0x710]
call fcn.004681a0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x710]
call fcn.004675c0
jmp case.default.0x45d5ea
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 0x45d7b6
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 0x45d7fe
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.00463280
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 0x45d838
mov eax, dword [ebp - 0x4a8]
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp case.default.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x2a0], 0
jne 0x45d86c
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 0x460178
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a0
push eax
call fcn.0045bea0
add esp, 4
jmp case.default.0x45d5ea
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 0x45d8d2
mov al, 1
jmp 0x460178
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x58], 0
jne 0x45d924
push 0x40
push 0
lea eax, [ebp - 0x308]
push eax
call fcn.0058a9f0
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 0x460178
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc0]
test edx, edx
je 0x45e091
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 0x45d97b
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.0058a9f0
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 0x45d9f0
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 0x45da0c
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 0x45dc1f
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 0x45dc1f
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0046ec90
movzx eax, al
test eax, eax
je 0x45db0e
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x10], 0
je 0x45da92
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 0x45daae
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 0x45db92
mov dword [ebp - 0x414], 0
push SysReAllocString
push 0
push 0x464730
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 0x45db92
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 0x45db18
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 0x45dbff
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.00462b70
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.00462b70
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x45dc3d
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.00463820
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.0058a9f0
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 0x45dd04
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x18], 0
jne 0x45dd04
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.00474040
add esp, 0x10
mov ecx, dword [ebp - 0x3e0]
mov dword [ecx + 0x18], eax
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x1c], 0
jne 0x45dd2d
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 0x460178
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 0x45dd80
mov ecx, dword [ebp - 0x42c]
add ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x42c]
cmp edx, dword [ebp - 0x21c]
jge 0x45ddc4
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.0058a9f0
add esp, 0xc
jmp 0x45dd71
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.0045b800
mov dword [ebp - 0x430], 0
jmp 0x45de28
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.004686d0
cmp dword [ebp - 0x430], eax
jge 0x45df6f
mov edx, dword [ebp - 0x430]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x284
call fcn.004678e0
mov dword [ebp - 0x434], eax
cmp dword [ebp - 0x434], 0
jne 0x45de6e
jmp 0x45de19
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.00487f90
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 0x45df6a
mov eax, dword [ebp - 0x244]
mov dword [ebp - 0x438], eax
jmp 0x45def5
mov ecx, dword [ebp - 0x438]
add ecx, 1
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x438]
cmp edx, dword [ebp - 0x23c]
jge 0x45df6a
mov eax, dword [ebp - 0x248]
mov dword [ebp - 0x43c], eax
jmp 0x45df20
mov ecx, dword [ebp - 0x43c]
add ecx, 1
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x43c]
cmp edx, dword [ebp - 0x240]
jge 0x45df65
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 0x45df11
jmp 0x45dee6
jmp 0x45de19
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 0x460178
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0xbd]
test ecx, ecx
je 0x45e2ee
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 0x45e2ee
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0046ec90
movzx eax, al
test eax, eax
je 0x45e20c
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 0x45e16e
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 0x45e18a
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 0x45e207
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x10], 0
je 0x45e1d1
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 0x45e1ed
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 0x45e290
mov dword [ebp - 0x410], 0
push SysReAllocString
push 0
push 0x464730
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 0x45e290
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 0x45e216
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbc]
test edx, edx
je 0x45e2ce
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.00462b70
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.00462b70
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xbe]
test eax, eax
je 0x45e30c
push 1
mov ecx, dword [ebp - 0x3e0]
call fcn.00463820
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xbf]
test edx, edx
je 0x45e3a9
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x14], 0
jne 0x45e3a9
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.0058a9f0
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 0x45e5c1
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 0x45e465
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.004686d0
cmp dword [ebp - 0x444], eax
jge 0x45e4c5
mov edx, dword [ebp - 0x444]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xf8
call fcn.004678e0
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 0x45e456
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 0x45e5bf
mov eax, dword [0x6862f8]
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 0x45e612
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 0x45e64c
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 0x460178
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 0x45e77f
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 0x45e77f
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 0x45e6d2
mov edx, dword [ebp - 0x618]
push edx
mov eax, dword [ebp - 0x448]
push eax
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp case.default.0x45d5ea
lea ecx, [ebp - 0x504]
push ecx
mov ecx, dword [ebp - 0x3e0]
call fcn.0045c9a0
lea edx, [ebp - 0x50c]
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.0045c960
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x44c], eax
cmp dword [ebp - 0x504], 0
jle 0x45e7dd
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x504]
mov dword [ecx + 0x18], edx
cmp dword [ebp - 0x500], 0
jle 0x45e7f5
mov eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x500]
mov dword [eax + 0x1c], ecx
cmp dword [ebp - 0x50c], 0
jle 0x45e80d
mov edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x50c]
mov dword [edx + 0x20], eax
cmp dword [ebp - 0x508], 0
jle 0x45e825
mov ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x508]
mov dword [ecx + 0x24], edx
jmp case.default.0x45d5ea
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x5c], 0
je 0x45e8b0
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 0x45e8ca
mov edx, dword [ebp - 0x3e0]
mov ecx, dword [edx + 0x58]
call fcn.0046ed60
mov al, 1
jmp 0x460178
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
cmp ecx, 0xf1
jne 0x45e93a
mov edx, dword [ebp - 0x3e0]
add edx, 0x26c
push edx
mov ecx, dword [ebp - 0x3e0]
call fcn.0045cd60
mov eax, dword [ebp - 0x3e0]
movzx ecx, byte [eax + 0x27c]
test ecx, ecx
jne 0x45e919
mov dword [ebp - 0x4ac], 1
jmp 0x45e923
mov dword [ebp - 0x4ac], 0
mov edx, dword [ebp - 0x3e0]
mov al, byte [ebp - 0x4ac]
mov byte [edx + 0x27c], al
jmp 0x45ea6e
mov dword [ebp - 0x450], 0
jmp 0x45e955
mov ecx, dword [ebp - 0x450]
add ecx, 1
mov dword [ebp - 0x450], ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.004686d0
cmp dword [ebp - 0x450], eax
jge 0x45ea6e
mov edx, dword [ebp - 0x450]
push edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xd4
call fcn.004678e0
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 0x45ea69
mov eax, dword [ebp + 0xc]
and eax, 0xffff
movzx ecx, ax
mov edx, dword [ebp - 0x404]
cmp dword [edx + 0xc], ecx
jne 0x45ea69
mov eax, dword [ebp - 0x404]
movzx ecx, byte [eax + 0x10]
test ecx, ecx
jne 0x45ea69
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 0x45ea6e
jmp 0x45e946
jmp case.default.0x45d5ea
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.0045b960
mov dword [ebp - 0x3f8], eax
cmp dword [ebp - 0x3f8], 0
jne 0x45ead4
jmp case.default.0x45d5ea
mov edx, dword [ebp - 0x3e0]
mov eax, dword [edx]
push eax
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x45eb5d
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 0x45eb5d
push 0x208
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.0058a9f0
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 0x45eb5d
push str.Internet_Explorer_Server
lea eax, [ebp - 0x218]
push eax
call fcn.005a780d
add esp, 8
test eax, eax
jne 0x45eb5d
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 0x45ebff
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 0x45ec23
mov al, 1
jmp 0x460178
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.00468a10
movzx ecx, al
test ecx, ecx
je 0x45ec7d
mov byte [ebp - 0x405], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x38c]
call fcn.00467590
mov al, byte [ebp - 0x405]
jmp 0x460178
push 0x30
push 0
mov edx, dword [ebp - 0x3e0]
add edx, 0x24
push edx
call fcn.0058a9f0
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 [0x6862e8]
mov dword [edx + 0x44], eax
lea ecx, [ebp - 0x38c]
call fcn.00467940
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 0x45edc7
push 0
mov edx, dword [0x6862e8]
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 0x45ee1d
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.00467590
mov al, 1
jmp 0x460178
mov edx, dword [ebp - 0x3e0]
cmp dword [edx + 0x20], 0
je 0x45ee63
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 0x45ee8c
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.0x45d5ea
mov edx, dword [ebp - 0x3e0]
movzx eax, byte [edx + 0xc2]
test eax, eax
jne 0x45ef4c
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 0x45ef07
mov dword [ebp - 0x4d0], 0xc8
jmp 0x45ef26
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.0045b960
mov dword [ebp - 0x3ec], eax
cmp dword [ebp - 0x3ec], 0
je 0x45efd2
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 0x45efd2
jmp case.default.0x45d5ea
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 0x45f0bf
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x64], 0
je 0x45f0bf
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 0x45f0bf
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 0x45f11b
cmp dword [ebp - 0x3ec], 0
je 0x45f11b
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 0x45f165
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 0x45f1a1
cmp dword [ebp - 0x3ec], 0
je 0x45f1a1
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.0x45d5ea
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 0x45f1eb
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 0x45f1eb
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.0045b960
mov dword [ebp - 0x3fc], eax
cmp dword [ebp - 0x3fc], 0
jne 0x45f257
jmp case.default.0x45d5ea
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 0x45f277
jmp case.default.0x45d5ea
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.00462c90
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.0x45d5ea
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.0045b960
mov dword [ebp - 0x40c], eax
cmp dword [ebp - 0x40c], 0
jne 0x45f3cd
jmp case.default.0x45d5ea
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 0x45f3ed
jmp case.default.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
call fcn.00462c90
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.0x45d5ea
mov eax, dword [ebp - 0x3e0]
cmp dword [eax + 0x68], 0
je 0x45f541
mov ecx, dword [ebp - 0x3e0]
mov edx, dword [ebp + 0x10]
cmp edx, dword [ecx]
je 0x45f541
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.0x45d5ea
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 0x45f595
jmp case.default.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
call fcn.00461740
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.0x45d5ea
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.0045b960
mov dword [ebp - 0x400], eax
cmp dword [ebp - 0x400], 0
jne 0x45f6db
jmp case.default.0x45d5ea
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 0x45f6fb
jmp case.default.0x45d5ea
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.00462c90
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.0x45d5ea
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 0x45f83b
jmp case.default.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
call fcn.00461740
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.0x45d5ea
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.0045b960
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0
jne 0x45f986
jmp case.default.0x45d5ea
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 0x45f9a6
jmp case.default.0x45d5ea
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.005a780d
add esp, 8
test eax, eax
jne 0x45fa98
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
je 0x45fa0a
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.005a780d
add esp, 8
test eax, eax
je 0x45fa98
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.00462b70
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 0x45fb0a
mov dword [ebp - 0x4cc], 1
jmp 0x45fb14
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.0045d1f0
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.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x45fbbc
jmp case.default.0x45d5ea
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.0045d1f0
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.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x5c], 0
jne 0x45fc6c
jmp case.default.0x45d5ea
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.0045d1f0
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.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
cmp dword [ecx + 0x6c], 0
jne 0x45fd2e
jmp case.default.0x45d5ea
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.0045d1f0
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.0x45d5ea
mov edx, dword [ebp + 0x10]
and edx, 0xffff
movzx eax, dx
cmp eax, 1
je 0x45fdf0
jmp case.default.0x45d5ea
mov ecx, dword [ebp - 0x3e0]
movzx edx, byte [ecx + 0xc3]
test edx, edx
je 0x45fe08
mov al, 1
jmp 0x460178
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.0045b960
mov dword [ebp - 0x41c], eax
cmp dword [ebp - 0x41c], 0
jne 0x45fe66
jmp case.default.0x45d5ea
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 0x45fe83
jmp case.default.0x45d5ea
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.0045d1f0
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 0x460178
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x4dc], ecx
cmp dword [ebp - 0x4dc], 0
je 0x45ff5d
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 0x460178
cmp dword [ebp + 0x10], 0
jne 0x45ff6e
jmp case.default.0x45d5ea
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 0x460178
cmp dword [ebp + 0x10], 0
jne 0x45ffac
jmp case.default.0x45d5ea
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 0x460178
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.00468550
mov dword [ebp - 0x3e8], eax
push 0
mov ecx, dword [ebp - 0x3e0]
add ecx, 0x110
call fcn.00468d40
mov eax, dword [ebp - 0x3e0]
add eax, 0x2a4
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [ebp - 0x3e8], 0
je 0x460169
mov byte [ebp - 0x3f3], 0
mov ecx, dword [ebp - 0x3e8]
cmp dword [ecx + 0x108], 0
je 0x4600a2
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.0046c8f0
movzx eax, al
test eax, eax
je 0x4600a2
mov ecx, dword [ebp - 0x3e8]
push ecx
mov edx, dword [ebp - 0x3e8]
mov ecx, dword [edx + 0x108]
add ecx, 0x38
call fcn.0046c940
movzx eax, al
test eax, eax
je 0x4600a2
mov byte [ebp - 0x3f3], 1
movzx ecx, byte [ebp - 0x3f3]
test ecx, ecx
jne 0x460129
mov dword [ebp - 0x454], 0
jmp 0x4600c8
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.004686d0
cmp dword [ebp - 0x454], eax
jge 0x460129
mov eax, dword [ebp - 0x3e8]
cmp dword [eax + 0x108], 0
je 0x460129
mov ecx, dword [ebp - 0x454]
push ecx
mov ecx, dword [ebp - 0x3e0]
add ecx, 0xc8
call fcn.004678e0
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 0x4600b9
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 0x46015f
push 1
mov ecx, dword [ebp - 0x4d4]
call fcn.0045a8b0
mov dword [ebp - 0x5c4], eax
jmp 0x460169
mov dword [ebp - 0x5c4], 0
cmp dword [ebp - 0x3e8], 0
jne 0x45ffea
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.00536569
mov esp, ebp
pop ebp
ret 0x10