Function at 0x635ea0
Capabilities:
Check os version

Disassembly:
push 0xffffffffffffffff
push 0x8271a8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x218
push ebx
push esi
mov esi, ecx
push edi
mov dword [esp + 0xc], esi
call fcn.007d3a8e
xor ebx, ebx
mov ecx, 0x11
mov eax, 0xa
mov dword [esp + 0x22c], ebx
mov dword [esi + 0x3c], 0x874f78
mov dword [esi + 0x40], ebx
mov dword [esi + 0x44], ecx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x50], ebx
mov dword [esi + 0x54], eax
mov dword [esi + 0x58], 0x874f6c
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x68], ebx
mov dword [esi + 0x64], ebx
mov dword [esi + 0x60], ebx
mov dword [esi + 0x6c], 0x874f60
mov dword [esi + 0x70], ebx
mov dword [esi + 0x7c], ebx
mov dword [esi + 0x78], ebx
mov dword [esi + 0x74], ebx
mov dword [esi + 0x80], 0x874f54
mov dword [esi + 0x84], ebx
mov dword [esi + 0x88], ecx
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x90], ebx
mov dword [esi + 0x94], ebx
mov dword [esi + 0x98], eax
mov dword [esi + 0x9c], 0x874f48
mov dword [esi + 0xa0], ebx
mov dword [esi + 0xac], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xa4], ebx
mov byte [esi + 0xd4], bl
mov byte [esi + 0xdc], 1
mov byte [esi + 0xe4], 1
mov byte [esi + 0xec], 1
mov byte [esi + 0xf4], 1
mov byte [esi + 0xfc], 1
mov dword [esi + 0x108], ebx
mov dword [esi + 0x10c], ebx
mov byte [esi + 0x130], bl
mov byte [esi + 0x131], bl
mov byte [esi + 0x13a], 1
lea ecx, [esi + 0x14c]
mov byte [esp + 0x22c], 5
mov dword [esi + 0x13c], ebx
mov dword [esi + 0x140], ebx
mov dword [esi + 0x144], ebx
mov dword [esi + 0x148], ebx
call fcn.007d9c83
mov ecx, esi
mov byte [esp + 0x22c], 6
mov dword [esi], method.CWnd.virtual_0
call fcn.00636360
mov edi, dword [sym.imp.USER32.dll_GetSysColor]
push 0xf
call edi
push 8
mov dword [esi + 0xd8], eax
call edi
push 0x14
mov dword [esi + 0xe0], eax
call edi
push 0x10
mov dword [esi + 0xf8], eax
call edi
mov dword [esi + 0xf0], eax
push 0xd
call edi
push eax
mov dword [esi + 0xe8], eax
call fcn.005854f0
mov dword [esi + 0x100], eax
mov eax, dword [esi + 0xe8]
push eax
call fcn.005853d0
mov dword [esi + 0x104], eax
or eax, 0xffffffff
mov ecx, 0x20
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
mov dword [esi + 0xb4], eax
mov dword [esi + 0xb8], eax
mov byte [esi + 0xb1], bl
mov dword [esi + 0xbc], ebx
mov dword [esi + 0xc4], ebx
mov ecx, 0x20
xor eax, eax
lea edi, [esp + 0x98]
mov bl, 0xef
add esp, 8
rep stosd dword es:[edi], eax
mov byte [esi + 0xb0], 1
mov dword [esi + 0xc8], esi
mov byte [esp + 0x10], 1
mov byte [esp + 0x14], 0x83
mov byte [esp + 0x18], 0xc7
mov byte [esp + 0x1c], bl
call fcn.007e5536
mov eax, dword [eax + 4]
lea ecx, [esp + 0x90]
mov edi, dword [sym.imp.USER32.dll_CreateIcon]
lea edx, [esp + 0x10]
mov eax, dword [eax + 0x68]
push ecx
push edx
push 1
push 1
push 0x20
push 0x20
push eax
call edi
mov dword [esi + 0x10c], eax
mov byte [esp + 0x1c], 1
mov byte [esp + 0x18], 0x83
mov byte [esp + 0x14], 0xc7
mov byte [esp + 0x10], bl
call fcn.007e5536
mov eax, dword [eax + 4]
lea ecx, [esp + 0x90]
lea edx, [esp + 0x10]
push ecx
mov eax, dword [eax + 0x68]
push edx
push 1
push 1
push 0x20
push 0x20
push eax
call edi
mov edi, dword [sym.imp.KERNEL32.dll_GetVersionExW]
lea ecx, [esp + 0x110]
push ecx
mov dword [esi + 0x108], eax
mov dword [esp + 0x114], 0x114
call edi
lea edx, [esp + 0x110]
push edx
call edi
test eax, eax
mov ecx, 2
je 0x63616b
cmp dword [esp + 0x120], ecx
jne 0x63616b
mov eax, dword [esp + 0x114]
cmp eax, 5
ja 0x636164
jne 0x63616b
cmp dword [esp + 0x118], 1
jb 0x63616b
mov byte [esi + 0xd4], 1
mov dword [esi + 0x134], ecx
mov ecx, dword [esp + 0x224]
mov word [esi + 0x138], 3
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
add esp, 0x224
ret