Function at 0x46be90
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ca4e9
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
mov eax, dword [0x532804]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x64], ebx
cmp dword [ebp + 0x1c], 0
mov esi, dword [ebp + 0x18]
mov dword [ebp - 0x60], esi
jne 0x46d04c
mov edi, dword [ebp + 0xc]
cmp edi, 0x81
je 0x46bef1
cmp edi, 2
jne 0x46bef7
mov eax, dword [ebx + 0x30]
lea ecx, [ebx + 0x30]
mov eax, dword [eax + 4]
add ecx, eax
call dword [0x4d96f4]
mov dword [esi], 0
mov eax, dword [ebp + 0x14]
lea ecx, [ebx + 0x85]
push 0
push esi
push eax
mov dword [ebp - 0x68], eax
mov eax, dword [ebp + 0x10]
push eax
push edi
push dword [ebp + 8]
mov dword [ebp - 0x6c], eax
call fcn.0046bbf0
test eax, eax
jne 0x46cf51
lea ecx, [ebx + 0x4c]
cmp edi, 6
jne 0x46bf89
lea eax, [ebp - 0x74]
mov dword [ebp - 0x74], 1
push eax
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push edi
call fcn.004670f0
cmp dword [ebp - 0x74], 0
mov dword [esi], eax
jne 0x46cf51
cmp edi, 5
jne 0x46c524
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x46cf48
mov ecx, ebx
call fcn.0046e8a0
push 1
push 0
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
lea eax, [edi - 4]
jmp 0x46d04e
cmp edi, 1
jne 0x46bfa9
lea eax, [ebp - 0x74]
mov ecx, ebx
push eax
push dword [ebp - 0x68]
push dword [ebp - 0x6c]
push edi
call fcn.00467d80
mov dword [esi], eax
mov eax, edi
jmp 0x46d04e
cmp edi, 2
jne 0x46c051
mov eax, dword [ebx + 0x30]
lea ecx, [ebx + 0x30]
push dword [ebx + 4]
mov eax, dword [eax + 0xc]
add ecx, eax
call dword [0x4da504]
mov eax, dword [ebx + 0x1b4]
mov dword [ebp - 0x64], eax
mov dword [ebx + 0x1b4], 0
test eax, eax
je 0x46bff3
mov eax, dword [eax]
push 1
mov esi, dword [eax]
mov ecx, esi
call dword [0x4da544]
mov ecx, dword [ebp - 0x64]
call esi
mov esi, dword [ebp - 0x60]
mov eax, dword [ebx + 0x190]
test eax, eax
je 0x46c006
push dword [eax + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, dword [ebx + 0x1d0]
test eax, eax
je 0x46c019
push dword [eax + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov eax, dword [ebx + 0x238]
mov dword [ebp - 0x64], eax
mov dword [ebx + 0x238], 0
test eax, eax
je 0x46c8c0
mov ecx, eax
call dword [0x4d9ce0]
push 0xc0
push dword [ebp - 0x64]
call fcn.004ae8c3
add esp, 8
jmp 0x46c8c0
cmp edi, 0x10
jne 0x46c0ed
lea ecx, [ebp - 0x30]
call dword [0x4d9eec]
mov dword [ebp - 4], 1
lea eax, [ebp - 0x30]
mov ecx, dword [0x53ac78]
push eax
call fcn.00448190
test al, al
jne 0x46c0bf
call dword [0x4da4f4]
mov edi, eax
push 0x4de4fc
mov ecx, dword [edi]
mov esi, dword [ecx + 4]
lea ecx, [ebp - 0x50]
call dword [0x4d9f00]
mov byte [ebp - 4], 2
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x30]
mov ecx, esi
push eax
call dword [0x4da544]
mov ecx, edi
call esi
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x50]
call dword [0x4d9ef8]
jmp 0x46c0ca
mov ecx, dword [0x53ac78]
call fcn.00456b00
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call dword [0x4d9ef8]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x83
jne 0x46c124
lea eax, [ebp - 0x74]
mov dword [ebp - 0x74], 1
push eax
push dword [ebp - 0x68]
mov ecx, ebx
push dword [ebp - 0x6c]
push edi
call fcn.0046a020
cmp dword [ebp - 0x74], 0
mov dword [esi], eax
je 0x46c8c6
mov eax, 1
jmp 0x46d04e
cmp edi, 0x86
jne 0x46c191
call dword [0x4d986c]
mov ecx, dword [eax + 0x27ac]
add eax, 0x27a8
mov edi, dword [ecx + 0xc]
add edi, eax
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
je 0x46ca3e
cmp dword [ebp - 0x6c], 0
push 0
push 0
setne al
push 0x85
mov byte [ebx + 0x2c9], al
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 1
mov eax, 1
jmp 0x46d04e
cmp edi, 0x85
jne 0x46c1c8
lea eax, [ebp - 0x74]
mov dword [ebp - 0x74], 1
push eax
push dword [ebp - 0x68]
mov ecx, ebx
push dword [ebp - 0x6c]
push edi
call fcn.0046a290
cmp dword [ebp - 0x74], 0
mov dword [esi], eax
je 0x46c8c6
mov eax, 1
jmp 0x46d04e
cmp edi, 0x84
jne 0x46c33f
call dword [0x4d986c]
mov ecx, dword [eax + 0x27ac]
add eax, 0x27a8
mov edi, dword [ecx + 0xc]
add edi, eax
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
je 0x46ca3e
lea eax, [ebp - 0x20]
xorps xmm0, xmm0
push eax
push dword [ebx + 4]
movups xmmword [ebp - 0x20], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x68]
movsx esi, ax
sub esi, dword [ebp - 0x20]
shr eax, 0x10
movsx edi, ax
lea eax, [ebx + 0x2a4]
sub edi, dword [ebp - 0x1c]
push edi
push esi
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x46c278
cmp dword [ebx + 0x2c4], 3
je 0x46c265
push 0
push 0
push 0x85
mov dword [ebx + 0x2c4], 3
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0x14
mov eax, 1
jmp 0x46d04e
push edi
push esi
lea eax, [ebx + 0x284]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x46c2c3
cmp dword [ebx + 0x2c4], 1
je 0x46c2b0
push 0
push 0
push 0x85
mov dword [ebx + 0x2c4], 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 8
mov eax, 1
jmp 0x46d04e
push edi
push esi
lea eax, [ebx + 0x294]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
mov ecx, dword [ebx + 0x2c4]
test eax, eax
je 0x46c310
cmp ecx, 2
je 0x46c2fd
push 0
push 0
push 0x85
mov dword [ebx + 0x2c4], 2
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 9
mov eax, 1
jmp 0x46d04e
test ecx, ecx
je 0x46ca3e
push 0
push 0
push 0x85
mov dword [ebx + 0x2c4], 0
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [ebp - 0x60]
mov edi, dword [ebp + 0xc]
jmp 0x46c8c0
cmp edi, 0xa1
jne 0x46c3ab
call dword [0x4d986c]
mov ecx, dword [eax + 0x27ac]
add eax, 0x27a8
mov edi, dword [ecx + 0xc]
add edi, eax
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
je 0x46ca3e
mov eax, dword [ebp - 0x6c]
cmp eax, 0x14
je 0x46cf48
cmp eax, 8
je 0x46cf48
cmp eax, 9
jne 0x46ca3e
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0xa2
jne 0x46c481
call dword [0x4d986c]
mov ecx, dword [eax + 0x27ac]
add eax, 0x27a8
mov edi, dword [ecx + 0xc]
add edi, eax
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
je 0x46ca3e
mov eax, dword [ebp - 0x6c]
sub eax, 8
je 0x46c45c
sub eax, 1
je 0x46c420
sub eax, 0xb
jne 0x46ca3e
push eax
push eax
push 0x10
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
mov cl, byte [ebx + 0x2c8]
mov edx, 3
test cl, cl
mov byte [ebx + 0x270], 1
sete al
test cl, cl
mov byte [ebx + 0x2c8], al
mov eax, 9
cmove eax, edx
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 0
push 0x85
jmp 0x46c404
push 6
mov byte [ebx + 0x270], 1
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0xa3
jne 0x46bf4a
call dword [0x4d986c]
mov ecx, dword [eax + 0x27ac]
add eax, 0x27a8
mov edi, dword [ecx + 0xc]
add edi, eax
mov eax, dword [edi + 4]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
je 0x46ca3e
cmp dword [ebp - 0x6c], 2
jne 0x46cf48
cmp byte [ebx + 0x2c8], 0
mov ecx, 9
mov eax, 3
mov byte [ebx + 0x270], 1
cmovne eax, ecx
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
cmp byte [ebx + 0x2c8], 0
push 0
push 0
sete al
push 0x85
mov byte [ebx + 0x2c8], al
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 3
jne 0x46c551
mov eax, dword [0x53ac78]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x46c53a
call fcn.0045f040
mov ecx, ebx
call fcn.0046eaa0
mov dword [esi], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x214
jne 0x46c59e
cmp byte [ebx + 0x151], 0
mov byte [ebx + 0x270], 1
jne 0x46c58e
mov edi, dword [ebx + 0x188]
mov byte [ebx + 0x151], 1
test edi, edi
je 0x46c58e
mov eax, dword [edi]
mov esi, dword [eax + 0x50]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x60]
mov dword [esi], 1
mov eax, 1
jmp 0x46d04e
cmp edi, 0x231
jne 0x46c5b2
mov byte [ebx + 0x152], 1
jmp 0x46c8c0
cmp edi, 0x232
jne 0x46c65f
cmp dword [ebx + 0x154], 0
jne 0x46c5d0
cmp dword [ebx + 0x158], 0
je 0x46c60e
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetWindowRect]
push 1
push dword [ebx + 0x158]
push dword [ebx + 0x154]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_MoveWindow]
mov dword [ebx + 0x158], 0
mov dword [ebx + 0x154], 0
cmp byte [ebx + 0x151], 0
je 0x46c648
cmp dword [ebx + 0x188], 0
je 0x46c641
mov ecx, ebx
call fcn.00463670
mov edi, dword [ebx + 0x188]
mov eax, dword [edi]
mov esi, dword [eax + 0x54]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x60]
mov byte [ebx + 0x151], 0
mov byte [ebx + 0x152], 0
mov eax, 1
mov dword [esi], 0
jmp 0x46d04e
cmp edi, 0x24
jne 0x46c72a
push dword [ebx + 4]
lea eax, [ebp - 0x20]
push eax
call dword [0x4da030]
mov eax, dword [ebx + 0x198]
add esp, 8
mov edi, dword [0x532584]
mov edx, dword [0x532588]
cmp eax, 1
jne 0x46c6a0
mov ecx, dword [ebx + 0x18c]
lea eax, [ebp - 0x78]
push eax
call fcn.00490d30
jmp 0x46c6b4
cmp eax, 4
jne 0x46c6b9
mov ecx, dword [ebx + 0x1cc]
lea eax, [ebp - 0x70]
push eax
call fcn.00490d30
mov edx, dword [eax + 4]
mov edi, dword [eax]
mov eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x20]
add edi, eax
mov eax, dword [ebp - 0x14]
add eax, edx
add eax, dword [ebp - 0x1c]
mov dword [ebp - 0x64], eax
mov eax, dword [0x53ac78]
cmp byte [eax + 0x88], 0
mov ecx, dword [eax + 8]
jne 0x46c6f3
test ecx, ecx
je 0x46c6f3
cmp byte [ecx + 0xc5], 0
je 0x46c6f3
call fcn.0045e350
mov ecx, eax
jmp 0x46c6f5
xor ecx, ecx
add ecx, dword [ebp - 0x64]
cmp byte [ebx + 0x1ef], 0
je 0x46c709
mov eax, dword [ebx + 0x1e8]
jmp 0x46c70f
mov eax, dword [ebx + 0x1f4]
add eax, ecx
mov ecx, dword [ebp - 0x68]
mov dword [ecx + 0x1c], eax
mov eax, 1
mov dword [ecx + 0x18], edi
mov dword [esi], 0
jmp 0x46d04e
cmp edi, 0x112
jne 0x46c898
mov eax, dword [ebp - 0x6c]
and eax, 0xfff0
mov dword [ebp - 0x74], 1
sub eax, 0xf020
je 0x46c823
sub eax, 0x10
je 0x46c7e3
sub eax, 0xf0
jne 0x46c8c0
mov eax, dword [ebx + 0x188]
mov byte [ebx + 0x270], 1
mov dword [ebp - 0x64], eax
test eax, eax
je 0x46c794
mov eax, dword [eax]
push 0
mov esi, dword [eax + 0x60]
mov ecx, esi
call dword [0x4da544]
mov ecx, dword [ebp - 0x64]
call esi
mov esi, dword [ebp - 0x60]
jmp 0x46c8c0
xorps xmm0, xmm0
mov dword [ebp - 0x5c], 0x2c
lea eax, [ebp - 0x5c]
movlpd qword [ebp - 0x58], xmm0
push eax
push dword [ebx + 4]
movlpd qword [ebp - 0x50], xmm0
movlpd qword [ebp - 0x48], xmm0
movlpd qword [ebp - 0x40], xmm0
movlpd qword [ebp - 0x38], xmm0
call dword [sym.imp.USER32.dll_GetWindowPlacement]
cmp dword [ebp - 0x54], 2
je 0x46c8c0
cmp byte [ebx + 0x2c8], 0
sete al
mov byte [ebx + 0x2c8], al
jmp 0x46c8c0
mov eax, dword [ebx + 0x188]
mov dword [ebp - 0x64], eax
test eax, eax
je 0x46c807
mov eax, dword [eax]
push 0
mov esi, dword [eax + 0x60]
mov ecx, esi
call dword [0x4da544]
mov ecx, dword [ebp - 0x64]
call esi
mov esi, dword [ebp - 0x60]
cmp byte [ebx + 0x2c8], 0
mov byte [ebx + 0x270], 1
sete al
mov byte [ebx + 0x2c8], al
jmp 0x46c8c0
mov eax, dword [0x53ac78]
mov ecx, dword [eax + 0x14]
mov eax, dword [ecx + 0x2e80]
add ecx, 0x2e7c
mov edi, dword [eax + 0xc]
mov eax, dword [edi + ecx + 4]
add edi, ecx
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
lea ecx, [edi + 4]
call esi
mov al, byte [eax]
test al, al
jne 0x46c861
push 6
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [ebx + 0x188]
test edi, edi
je 0x46c87e
mov eax, dword [edi]
push 1
mov esi, dword [eax + 0x60]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x60]
mov byte [ebx + 0x270], 1
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 6
jne 0x46c901
mov eax, dword [ebp - 0x6c]
movzx ecx, ax
shr eax, 0x10
cmp ecx, 1
je 0x46c8b0
cmp ecx, 2
jne 0x46c8c0
test ax, ax
jne 0x46c8c0
push 0
push 1
mov ecx, ebx
call fcn.0046e4b0
mov dword [esi], 0
mov eax, dword [0x4da11c]
cmp edi, dword [eax]
jne 0x46cc13
mov ecx, dword [0x53ac78]
cmp byte [ecx + 0x88], 0
je 0x46cf48
mov ecx, dword [ecx + 8]
call fcn.0045f970
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x1c
jne 0x46c913
cmp dword [ebp - 0x6c], 0
jne 0x46c8c0
push dword [ebp - 0x68]
push 0
jmp 0x46c8b9
cmp edi, 7
jne 0x46c9b1
mov eax, dword [ebx + 0x198]
xor esi, esi
cmp eax, 4
ja case.default.0x46c92d
jmp dword [eax*4 + 0x46d0bc]
mov esi, dword [ebx + 0x18c]
jmp 0x46c942
mov esi, dword [ebx + 0x1cc]
mov esi, dword [esi + 4]
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x46cf48
push esi
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x46cf48
cmp byte [0x53a450], 0
jne 0x46c997
mov byte [0x53a450], 1
call dword [0x4d986c]
lea ecx, [eax + 0x27a8]
call fcn.00403fb0
test al, al
je 0x46c997
push 0
push 0
push 5
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x100
je 0x46c9c1
cmp edi, 0x104
jne 0x46ca07
cmp dword [ebx + 0x188], 0
je 0x46c8c0
mov eax, dword [0x53ac78]
push dword [ebp - 0x6c]
mov edi, dword [eax + 0xd0]
mov eax, dword [edi]
mov esi, dword [eax + 0x98]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
test al, al
je 0x46ca3e
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x105
jne 0x46ca49
cmp dword [ebx + 0x188], 0
je 0x46c8c0
mov eax, dword [0x53ac78]
push dword [ebp - 0x6c]
mov edi, dword [eax + 0xd0]
mov eax, dword [edi]
mov esi, dword [eax + 0x98]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x60]
mov edi, dword [ebp + 0xc]
jmp 0x46c8c0
cmp edi, 0xa
jne 0x46ca8b
mov edi, dword [ebx + 0x188]
test edi, edi
je 0x46cf48
mov eax, dword [edi]
cmp dword [ebp - 0x6c], 0
mov esi, dword [eax + 0x58]
setne al
movzx eax, al
mov ecx, esi
push eax
call dword [0x4da544]
mov ecx, edi
call esi
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x113
jne 0x46c8c6
mov eax, dword [ebp - 0x6c]
sub eax, 1
jne 0x46cc03
cmp byte [ebx + 0x1ef], al
je 0x46cbb2
mov eax, dword [ebx + 0x1e8]
push 1
test eax, eax
jne 0x46cb8b
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
push 0
push dword [ebx + 0x1e4]
mov byte [ebx + 0x1ef], 0
call dword [sym.imp.USER32.dll_ShowWindow]
cmp byte [ebx + 0x1ec], 0
mov dword [ebx + 0x1e4], 0
je 0x46cc03
call dword [0x4da090]
mov esi, eax
mov ecx, esi
call dword [0x4da09c]
mov dword [ebx + 0x1e4], eax
mov ecx, esi
mov byte [ebx + 0x1ec], 0
mov bl, byte [ebx + 0x1ed]
call dword [0x4da098]
mov ecx, dword [ebp - 0x64]
mov esi, eax
mov word [ecx + 0x1ee], 1
mov ecx, dword [ecx + 4]
test bl, bl
je 0x46cb54
push 0
push 0xf
push 1
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
push 1
push ecx
call dword [sym.imp.USER32.dll_KillTimer]
mov ebx, dword [ebp - 0x64]
mov ecx, ebx
push 1
mov dword [ebx + 0x1e8], esi
call fcn.00463860
mov esi, dword [ebp - 0x60]
mov eax, 1
mov word [ebx + 0x1ee], 0
mov dword [esi], 0
jmp 0x46d04e
add eax, 0xfffffffe
xor ecx, ecx
test eax, eax
cmovle eax, ecx
mov ecx, ebx
mov dword [ebx + 0x1e8], eax
call fcn.00463860
mov dword [esi], 0
mov eax, 1
jmp 0x46d04e
call dword [0x4da090]
mov ecx, eax
call dword [0x4da098]
mov ecx, eax
mov eax, dword [ebx + 0x1e8]
push 1
cmp ecx, eax
jne 0x46cbee
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_KillTimer]
mov byte [ebx + 0x1ee], 0
mov eax, 1
mov dword [esi], 0
jmp 0x46d04e
add eax, 2
cmp eax, ecx
cmovl ecx, eax
mov dword [ebx + 0x1e8], ecx
mov ecx, ebx
call fcn.00463860
mov dword [esi], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x7e
jne 0x46cc51
cmp dword [ebx + 0x188], 0
je 0x46cf48
mov eax, dword [0x53ac78]
cmp byte [eax + 0x88], 0
je 0x46cf48
push 0
mov ecx, ebx
call fcn.00465a40
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
lea eax, [edi - 0x7d]
jmp 0x46d04e
cmp edi, 0x218
jne 0x46cca9
push dword [ebp - 0x68]
lea eax, [ebp - 0x50]
push dword [ebp - 0x6c]
push eax
call dword [0x4da02c]
add esp, 0xc
mov dword [ebp - 4], 3
mov ecx, eax
call dword [0x4d9ef4]
push eax
push str.PlayerFrame::OnPowerBroadcast:__s_n
call fcn.004b02b9
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x50]
call dword [0x4d9ef8]
mov dword [esi], 1
mov eax, 1
jmp 0x46d04e
cmp edi, 0x11
jne 0x46cd25
lea ecx, [ebp - 0x30]
call dword [0x4d9eec]
mov dword [ebp - 4], 4
lea eax, [ebp - 0x30]
mov ecx, dword [0x53ac78]
push eax
call fcn.00448190
test al, al
jne 0x46cd00
lea ecx, [ebp - 0x30]
call dword [0x4d9ee4]
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShutdownBlockReasonCreate]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call dword [0x4d9ef8]
xor eax, eax
mov dword [esi], eax
lea eax, [edi - 0x10]
jmp 0x46d04e
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ShutdownBlockReasonDestroy]
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x30]
call dword [0x4d9ef8]
mov eax, 1
mov dword [esi], eax
jmp 0x46d04e
cmp edi, 0x47
jne 0x46cdc2
lea eax, [ebp - 0x74]
mov dword [ebp - 0x74], 1
push eax
push dword [ebp - 0x68]
mov ecx, ebx
push dword [ebp - 0x6c]
push edi
call fcn.0046b920
cmp dword [ebp - 0x74], 0
mov dword [esi], eax
jne 0x46cf51
mov eax, dword [ebx + 0x48]
mov ecx, dword [ebx + 0x40]
mov dword [ebp - 0x64], ecx
cmp edi, eax
jne 0x46cf8d
mov dword [ebx + 0x40], 1
test eax, eax
je 0x46cf74
mov ecx, dword [ebx + 0x44]
lea eax, [ebx + 0x44]
test ecx, ecx
je 0x46cd96
mov dword [eax], 0
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x4da544]
call esi
lea eax, [ebx + 0x44]
push eax
push 0x4eb7ac
push 0x17
push 0
push 0x4f2ae8
call dword [sym.imp.ole32.dll_CoCreateInstance]
lfence
test eax, eax
js 0x46cf5b
mov ecx, ebx
call fcn.00464b20
jmp 0x46cf6e
cmp edi, 0x5f5
jne 0x46cdde
cmp byte [0x53aebb], 0
je 0x46cf48
push 0x64
jmp 0x46cf38
cmp edi, 0x5f4
jne 0x46cf18
call dword [sym.imp.USER32.dll_GetFocus]
push dword [ebx + 4]
mov edi, eax
call dword [0x4da50c]
add esp, 4
mov esi, eax
push edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x46ce2b
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x46cf48
push 2
push edi
call dword [sym.imp.USER32.dll_GetAncestor]
cmp eax, esi
je 0x46cf48
push str.CheckFocus:_bad_focus__resetting_n
call fcn.004b02bf
push str.PlayerFrame::NoFocusNotify:_no_focus__resetting_n
call fcn.004b02bf
push dword [ebx + 4]
call dword [0x4da50c]
add esp, 0xc
mov edi, eax
push edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x46cec7
cmp edi, dword [ebx + 4]
je 0x46cec7
push edi
call dword [sym.imp.USER32.dll_SetActiveWindow]
push str.PlayerFrame::NoFocusNotify:_Try_SetActiveWindow_n
call fcn.004b02b9
add esp, 4
call dword [sym.imp.USER32.dll_GetFocus]
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x46ce91
push 2
push esi
call dword [sym.imp.USER32.dll_GetAncestor]
cmp eax, edi
je 0x46ceab
push 0
push 0
push edi
call dword [sym.imp.USER32.dll_GetNextDlgTabItem]
push str.PlayerFrame::NoFocusNotify:_Try_GetNextDlgTabItem_n
mov esi, eax
call fcn.004b02b9
add esp, 4
test esi, esi
jne 0x46cebe
push str.PlayerFrame::NoFocusNotify:_hWndTopDialog_n
call fcn.004b02b9
add esp, 4
mov esi, edi
push esi
call dword [sym.imp.USER32.dll_SetFocus]
jmp 0x46ced4
push str.PlayerFrame::NoFocusNotify:_No_dialog___doing_nothing__n
call fcn.004b02b9
add esp, 4
mov eax, dword [0x53ac78]
cmp byte [eax + 0x88], 0
je 0x46cf48
cmp byte [ebx + 0x150], 0
je 0x46cf48
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x46cf48
mov ecx, dword [0x53ac78]
push 1
call fcn.00456170
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
cmp edi, 0x111
jne 0x46cd53
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x46cf48
mov eax, dword [ebp - 0x6c]
movzx eax, ax
push eax
mov eax, dword [0x53ac78]
mov ecx, dword [eax + 8]
mov ecx, dword [ecx + 0x44]
call fcn.0043f8c0
mov eax, dword [ebp - 0x60]
mov dword [eax], 0
mov eax, 1
jmp 0x46d04e
push eax
push str.wui::util::TaskbarListMgr_class_PlayerFrame_::OnTaskbarBtnCreatedMsg
push str._s:_Failed_to_cocreate_CLSID_TaskbarList__error:_0x_08X_n
call fcn.004b02bf
add esp, 0xc
mov ecx, dword [ebp - 0x64]
mov esi, dword [ebp - 0x60]
mov dword [esi], 0
cmp dword [ebx + 0x40], 0
je 0x46cf8d
mov dword [ebx + 0x40], ecx
mov eax, 1
jmp 0x46d04e
mov dword [ebx + 0x40], ecx
lea ecx, [ebx + 0x24]
mov dword [ebp - 0x68], ecx
cmp edi, 6
jne 0x46d06c
mov eax, dword [ebp - 0x6c]
xor edi, edi
mov edx, eax
shr edx, 0x10
test ecx, ecx
cmove ebx, edi
test ax, ax
je 0x46d008
test dx, dx
jne 0x46d008
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, dword [ebx + 4]
jne 0x46d008
mov edi, dword [ebp - 0x68]
mov edi, dword [edi + 4]
mov eax, dword [edi]
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov edi, dword [ebp - 0x68]
mov eax, dword [edi]
mov esi, dword [eax]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
test al, al
je 0x46d043
push 0x13
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x46d043
push 0xffffffffffffffec
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test al, 8
je 0x46d046
push 0x13
push 0
push 0
push 0
push 0
push 0xfffffffffffffffe
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov edi, dword [ebp - 0x68]
mov edi, dword [edi + 4]
mov eax, dword [edi]
mov esi, dword [eax + 4]
mov ecx, esi
call dword [0x4da544]
mov ecx, edi
call esi
mov esi, dword [ebp - 0x60]
mov dword [esi], 0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004aeb30
mov esp, ebp
pop ebp
ret 0x18
lea eax, [ebx + 0x34]
mov dword [ebp - 0x64], eax
cmp edi, 0x20
jne 0x46d04c
cmp dword [eax + 4], 0
je 0x46d046
xor ecx, ecx
test eax, eax
cmove ebx, ecx
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
je 0x46d046
mov eax, dword [ebp - 0x64]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SetCursor]
mov dword [esi], 1
lea eax, [edi - 0x1f]
jmp 0x46d04e
push 0x5c4
push str.bora_apps_vmplayerwin32playerFrame.cpp
push str.NOT_REACHED__s:_d_n
call fcn.004b02c5
inc ebp
leave
inc esi
add byte [ecx + ecx*8], dh
inc esi
add byte [ebp - 0x37], al
inc esi
add byte [ebp - 0x37], al
inc esi
add byte [ecx + ecx*8], bh
inc esi
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp