Function at 0x427890
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x497d0a
mov eax, dword fs:[0]
push eax
sub esp, 0xb4
push ebx
push esi
push edi
mov eax, dword [0x4c100c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
xor ebx, ebx
lea eax, [edi + 0x2074]
mov dword [ebp - 0x10], ebx
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
cmp dword [ebp + 8], eax
jne 0x42790d
mov ecx, dword [edi + 0x548]
mov eax, dword [ecx + 0x44]
mov eax, dword [eax]
test eax, eax
je 0x4278e9
push 5
push eax
call esi
jmp 0x4278f0
or dword [ecx + 0x34], 0x10000000
mov ecx, dword [edi + 0x18a8]
mov eax, dword [ecx + 0x44]
mov eax, dword [eax]
test eax, eax
je 0x427906
push 0
push eax
call esi
jmp 0x42790d
and dword [ecx + 0x34], 0xefffffff
lea ecx, [ebp - 0x94]
call fcn.00405e70
mov dword [ebp - 4], 0
lea eax, [edi + 0x21d4]
mov ecx, dword [ebp + 8]
cmp ecx, eax
jne 0x427a6e
lea ecx, [ebp - 0x68]
call fcn.00405e70
mov byte [ebp - 4], 2
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x1f04]
call fcn.00439b90
sub esp, 0x10
mov dword [ebp - 0x10], 4
lea edx, [ebp - 0x3c]
lea ecx, [ebp - 0xc0]
call fcn.004110d0
mov esi, eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x68]
mov edx, dword [ebp - 0x68]
call dword [edx + 0x44]
mov ecx, dword [esi + 4]
mov dword [ebp - 0x64], ecx
mov ecx, dword [esi + 8]
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x58]
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x58]
call dword [eax + 0x44]
lea eax, [esi + 0x10]
push eax
lea ecx, [ebp - 0x58]
call fcn.004059c0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xc0]
call fcn.00405340
mov ebx, 4
mov dword [ebp - 0x10], ebx
and ebx, 0xfffffffb
mov dword [ebp - 0x10], ebx
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3c]
call fcn.00405340
mov eax, dword [ebp - 0x5c]
test eax, eax
jne 0x4279d6
cmp dword [ebp - 0x44], 0
mov eax, 0x4a49e4
cmovne eax, dword [ebp - 0x4c]
mov ecx, 0x4a49e4
nop dword [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x427a06
test dx, dx
je 0x427a02
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x427a06
add eax, 4
add ecx, 4
test dx, dx
jne 0x4279e0
xor eax, eax
jmp 0x427a0b
sbb eax, eax
or eax, 1
test eax, eax
je 0x427a20
lea eax, [ebp - 0x68]
push eax
lea ecx, [edi + 0x25ec]
call fcn.00439cc0
jmp 0x427a59
lea ecx, [ebp - 0x3c]
call fcn.00405e70
mov byte [ebp - 4], 4
mov dword [ebp - 0x3c], vtable.CWConstString.0
mov dword [ebp - 0x30], 0x4ab32c
mov byte [ebp - 4], 5
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x25ec]
call fcn.00439cc0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x3c]
call fcn.00405340
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x68]
call fcn.00405340
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
mov ecx, dword [ebp + 8]
lea eax, [edi + 0x173c]
cmp ecx, eax
jne 0x427b83
mov eax, dword [0x4c1efc]
test eax, eax
jne 0x427a98
cmp dword [0x4c1f14], 0
mov eax, 0x4a49e4
cmovne eax, dword [0x4c1f0c]
mov ecx, 0x4a49e4
nop dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x427ac6
test dx, dx
je 0x427ac2
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x427ac6
add eax, 4
add ecx, 4
test dx, dx
jne 0x427aa0
xor eax, eax
jmp 0x427acb
sbb eax, eax
or eax, 1
test eax, eax
je 0x427b1e
mov edx, 0x4a49e4
mov ecx, 0x4c1f1c
call fcn.0040f010
test eax, eax
je 0x427b1e
mov ecx, dword [edi + 0x548]
mov eax, dword [ecx + 0x44]
mov eax, dword [eax]
test eax, eax
je 0x427af8
push 0
push eax
call esi
jmp 0x427aff
and dword [ecx + 0x34], 0xefffffff
mov ecx, dword [edi + 0x18a8]
mov eax, dword [ecx + 0x44]
mov eax, dword [eax]
test eax, eax
je 0x427b15
push 5
push eax
call esi
jmp 0x427b83
or dword [ecx + 0x34], 0x10000000
jmp 0x427b83
lea ecx, [ebp - 0x68]
call fcn.00405e70
mov byte [ebp - 4], 7
mov dword [ebp - 0x68], vtable.CWConstString.0
mov dword [ebp - 0x5c], 0x4ab26c
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x3c]
call fcn.00405e70
mov byte [ebp - 4], 9
mov dword [ebp - 0x3c], vtable.CWConstString.0
mov dword [ebp - 0x30], 0x4ab354
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x68]
push eax
push 0
lea eax, [ebp - 0x3c]
mov ecx, edi
push eax
call fcn.00439e80
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x3c]
call fcn.00405340
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x68]
call fcn.00405340
lea eax, [edi + 0x11ac]
cmp dword [ebp + 8], eax
jne 0x427d5b
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x103c]
call fcn.004361a0
mov byte [ebp - 4], 0xd
or ebx, 1
mov dword [ebp - 0x10], ebx
mov ecx, dword [eax + 0xc]
test ecx, ecx
jne 0x427bbf
cmp dword [eax + 0x24], ecx
mov ecx, 0x4a49e4
je 0x427bbf
mov ecx, dword [eax + 0x1c]
mov eax, 0x4a49e4
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x427bea
test dx, dx
je 0x427be6
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x427bea
add ecx, 4
add eax, 4
test dx, dx
jne 0x427bc4
xor eax, eax
jmp 0x427bef
sbb eax, eax
or eax, 1
test eax, eax
je 0x427c26
lea eax, [ebp - 0xc0]
push eax
lea ecx, [edi + 0x103c]
call fcn.004361a0
mov dword [ebp - 4], 0xe
or ebx, 2
mov edx, 0x4aaf50
mov dword [ebp - 0x10], ebx
mov ecx, eax
call fcn.0040f250
mov byte [ebp + 0xb], 0
test eax, eax
je 0x427c2a
mov byte [ebp + 0xb], 1
mov dword [ebp - 4], 0xd
test bl, 2
je 0x427c47
and ebx, 0xfffffffd
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0x10], ebx
call fcn.00405340
mov dword [ebp - 4], 0
test bl, 1
je 0x427c61
and ebx, 0xfffffffe
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x10], ebx
call fcn.00405340
cmp byte [ebp + 0xb], 0
je 0x427ccc
lea ecx, [ebp - 0x68]
call fcn.00405e70
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x68], vtable.CWConstString.0
mov dword [ebp - 0x5c], 0x4ab26c
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x3c]
call fcn.00405e70
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x3c], vtable.CWConstString.0
mov dword [ebp - 0x30], 0x4ab368
mov byte [ebp - 4], 0x12
lea eax, [ebp - 0x68]
push eax
push 0
lea eax, [ebp - 0x3c]
mov ecx, edi
push eax
call fcn.00439e80
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x3c]
call fcn.00405340
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x68]
jmp 0x427d56
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x103c]
call fcn.00439b90
push ecx
or ebx, 0x20
lea edx, [ebp - 0x94]
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x10], ebx
call fcn.00418840
and ebx, 0xffffffdf
mov esi, eax
mov dword [ebp - 0x10], ebx
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3c]
call fcn.00405340
test esi, esi
je 0x427d1d
mov ecx, edi
call fcn.00427d90
push ecx
mov ecx, edi
call fcn.00428f10
jmp 0x427d5b
lea ecx, [ebp - 0x3c]
call fcn.00405e70
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x3c], vtable.CWConstString.0
mov dword [ebp - 0x30], 0x4ab26c
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x3c]
push eax
push 0
lea eax, [ebp - 0x94]
mov ecx, edi
push eax
call fcn.00439e80
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x3c]
call fcn.00405340
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00405340
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8