Function at 0x410a90
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x8c
mov eax, dword [0x504070]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push str.riched20.dll
call dword [sym.imp.KERNEL32.DLL_LoadLibraryW]
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x1c], 8
push eax
mov dword [ebp - 0x18], 0xc0ff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
mov eax, dword [0x528534]
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0x6b
push eax
mov dword [ebp - 0x58], 0x30
mov dword [ebp - 0x54], 3
mov dword [ebp - 0x50], 0x410870
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], eax
call esi
push 0x7f00
push 0
mov dword [ebp - 0x40], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
push 0x6c
push dword [ebp - 0x44]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], 6
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], str.VKSaverInstallWnd
call esi
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x58]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExW]
mov edi, dword [sym.imp.USER32.dll_LoadBitmapW]
push 0x84
push dword [0x528534]
call edi
mov esi, eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
mov ebx, eax
push ebx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push esi
push eax
mov dword [0x527610], eax
call dword [sym.imp.GDI32.dll_SelectObject]
push 0x85
push dword [0x528534]
call edi
push ebx
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push esi
push eax
mov dword [0x52760c], eax
call dword [sym.imp.GDI32.dll_SelectObject]
cmp dword [0x528528], 0xa
jb 0x410ba6
push 0x90
jmp 0x410bab
push 0x87
push dword [0x528534]
call edi
push ebx
mov esi, eax
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push esi
push eax
mov dword [0x527608], eax
call dword [sym.imp.GDI32.dll_SelectObject]
lea eax, [ebp - 0x8c]
push eax
push 0x18
push esi
call dword [sym.imp.GDI32.dll_GetObjectW]
mov eax, dword [ebp - 0x88]
mov dword [0x527604], eax
mov eax, dword [ebp - 0x84]
push 4
mov dword [0x527600], eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
divsd xmm1, qword [0x4fc230]
comisd xmm1, xmmword [0x4fc1d8]
movsd qword [ebp - 0x28], xmm1
jbe 0x410c31
movsd xmm0, qword [0x4fc1f0]
comisd xmm0, xmm1
jbe 0x410c31
movsd xmm1, qword [0x4fc1e0]
movsd qword [ebp - 0x28], xmm1
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
movsd xmm1, qword [ebp - 0x28]
push 0
push dword [0x528534]
movaps xmm0, xmm1
mulsd xmm0, qword [0x4fc3a0]
push 0
push 0
cvttsd2si eax, xmm0
movaps xmm0, xmm1
mulsd xmm0, qword [0x4fc400]
push eax
cvttsd2si eax, xmm0
movaps xmm0, xmm1
mulsd xmm1, qword [0x4fc410]
push eax
mulsd xmm0, qword [0x4fc408]
cvttsd2si eax, xmm0
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov eax, dword [ebp - 8]
cdq
neg ecx
sub eax, edx
sar eax, 1
sub eax, ecx
push eax
cvttsd2si eax, xmm1
cdq
sub eax, edx
sar eax, 1
mov ecx, eax
mov eax, dword [ebp - 0xc]
cdq
neg ecx
sub eax, edx
sar eax, 1
sub eax, ecx
push eax
push 0x90ca0000
push 0x527a28
push str.VKSaverInstallWnd
push 8
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov esi, eax
push 5
push esi
mov dword [0x52852c], esi
mov dword [0x528548], esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
mov ebx, dword [sym.imp.USER32.dll_GetMessageW]
lea eax, [ebp - 0x74]
push 0
push 0
push 0
push eax
call ebx
test eax, eax
je 0x410d2c
mov esi, dword [sym.imp.USER32.dll_TranslateMessage]
mov edi, dword [sym.imp.USER32.dll_DispatchMessageW]
nop dword [eax]
lea eax, [ebp - 0x74]
push eax
call esi
lea eax, [ebp - 0x74]
push eax
call edi
push 0
push 0
push 0
lea eax, [ebp - 0x74]
push eax
call ebx
test eax, eax
jne 0x410d10
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042cc9c
mov esp, ebp
pop ebp
ret