Function at 0x4d3590
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x613061
mov eax, dword fs:[0]
push eax
sub esp, 0x2a0
mov eax, dword [0x67f864]
xor eax, esp
mov dword [esp + 0x298], eax
push ebx
push esi
push edi
mov eax, dword [0x67f864]
xor eax, esp
push eax
lea eax, [esp + 0x2b0]
mov dword fs:[0], eax
mov edi, ecx
call fcn.004f2ff0
movzx ecx, word [edi + 0xd4]
push 0x100
lea eax, [esp + 0xa8]
push eax
push ecx
push 0x11
call fcn.0051a1e0
add esp, 0x10
lea edx, [esp + 0xa4]
push edx
mov ecx, edi
call fcn.005722a2
mov dword [0x691d4c], edi
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
mov esi, dword [sym.imp.USER32.dll_LoadBitmapW]
push 0x44a
push eax
call esi
push eax
push 0
push 0xf7
push 0x44a
mov ecx, edi
mov dword [edi + 0xd8], eax
call fcn.005720b1
mov eax, dword [eax + 0x20]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x445
push eax
call esi
push eax
push 0
push 0xf7
push 0x445
mov ecx, edi
mov dword [edi + 0xdc], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
push ecx
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x446
push eax
call esi
push eax
push 0
push 0xf7
push 0x446
mov ecx, edi
mov dword [edi + 0xe0], eax
call fcn.005720b1
mov edx, dword [eax + 0x20]
push edx
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x447
push eax
call esi
push eax
push 0
push 0xf7
push 0x447
mov ecx, edi
mov dword [edi + 0xe4], eax
call fcn.005720b1
mov eax, dword [eax + 0x20]
push eax
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x448
push eax
call esi
push eax
push 0
push 0xf7
push 0x448
mov ecx, edi
mov dword [edi + 0xe8], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
push ecx
call ebx
cmp byte [0x683b6e], 0x2c
jne 0x4d371c
call fcn.0057ee1a
push 0x461
jmp 0x4d3726
call fcn.0057ee1a
push 0x442
mov eax, dword [eax + 0xc]
push eax
call esi
mov edx, eax
push edx
push 0
push 0xf7
push 0x442
mov ecx, edi
mov dword [edi + 0xec], eax
call fcn.005720b1
mov eax, dword [eax + 0x20]
push eax
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x443
push eax
call esi
push eax
push 0
push 0xf7
push 0x443
mov ecx, edi
mov dword [edi + 0x118], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
push ecx
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x444
push eax
call esi
push eax
push 0
push 0xf7
push 0x444
mov ecx, edi
mov dword [edi + 0x11c], eax
call fcn.005720b1
mov edx, dword [eax + 0x20]
push edx
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x449
push eax
call esi
push eax
push 0
push 0xf7
push 0x449
mov ecx, edi
mov dword [edi + 0x120], eax
call fcn.005720b1
mov eax, dword [eax + 0x20]
push eax
call ebx
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x44b
push eax
call esi
push eax
push 0
push 0xf7
push 0x44b
mov ecx, edi
mov dword [edi + 0x124], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
push ecx
call ebx
lea edx, [edi + 0xf0]
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], edx
call fcn.0057ee1a
mov ecx, dword [esp + 0x18]
mov eax, dword [eax + 0xc]
add ecx, 0x438
movzx edx, cx
push edx
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
push eax
push 0
push 0xf7
add edx, 0x438
mov dword [ecx], eax
push edx
mov ecx, edi
call fcn.005720b1
mov eax, dword [eax + 0x20]
push eax
call ebx
mov eax, dword [esp + 0x18]
add dword [esp + 0x14], 4
add eax, 1
cmp eax, 0xa
mov dword [esp + 0x18], eax
jl 0x4d3820
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x44c
push eax
call esi
mov dword [edi + 0x128], eax
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x44e
push eax
call esi
mov dword [edi + 0x12c], eax
call fcn.0057ee1a
mov eax, dword [eax + 0xc]
push 0x44d
push eax
call esi
push 0x7c
mov dword [edi + 0x130], eax
call fcn.0056bad1
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x2b8], 0
je 0x4d38dd
push 0
push eax
call fcn.0050e7f0
jmp 0x4d38df
xor eax, eax
mov dword [esp + 0x2b8], 0xffffffff
push 7
mov ecx, edi
mov dword [edi + 0x134], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
mov esi, dword [edi + 0x134]
push ecx
call fcn.0050e910
push 0x7c
call fcn.0056bad1
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x2b8], 1
je 0x4d392f
push 0
push eax
call fcn.0050e7f0
jmp 0x4d3931
xor eax, eax
mov dword [esp + 0x2b8], 0xffffffff
push 4
mov ecx, edi
mov dword [edi + 0x138], eax
call fcn.005720b1
mov edx, dword [eax + 0x20]
mov esi, dword [edi + 0x138]
push edx
call fcn.0050e910
push 0x7c
call fcn.0056bad1
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x2b8], 2
je 0x4d3981
push 0
push eax
call fcn.0050e7f0
jmp 0x4d3983
xor eax, eax
mov dword [esp + 0x2b8], 0xffffffff
push 5
mov ecx, edi
mov dword [edi + 0x13c], eax
call fcn.005720b1
mov eax, dword [eax + 0x20]
mov esi, dword [edi + 0x13c]
push eax
call fcn.0050e910
push 0x7c
call fcn.0056bad1
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x2b8], 3
je 0x4d39d3
push 0
push eax
call fcn.0050e7f0
jmp 0x4d39d5
xor eax, eax
mov dword [esp + 0x2b8], 0xffffffff
push 6
mov ecx, edi
mov dword [edi + 0x140], eax
call fcn.005720b1
mov ecx, dword [eax + 0x20]
mov esi, dword [edi + 0x140]
push ecx
call fcn.0050e910
push 0xa0
call fcn.0056bad1
add esp, 4
mov dword [esp + 0x14], eax
test eax, eax
mov dword [esp + 0x2b8], 4
je 0x4d3a29
push 0
mov esi, eax
call fcn.00512f20
jmp 0x4d3a2b
xor eax, eax
mov dword [esp + 0x2b8], 0xffffffff
push 0x548
mov ecx, edi
mov dword [edi + 0xcc], eax
call fcn.005720b1
mov edx, dword [eax + 0x20]
mov ecx, dword [edi + 0xcc]
push edx
call fcn.0056eb8f
mov eax, dword [0x68c170]
cmp eax, 4
mov dword [esp + 0x14], eax
jne 0x4d3b36
push 7
mov ecx, edi
call fcn.005720b1
mov esi, eax
push 0
mov ecx, esi
call fcn.0057235f
push 0
mov ecx, esi
call fcn.0057239b
push 0x44b
mov ecx, edi
call fcn.005720b1
mov esi, eax
mov ecx, dword [esi + 0x20]
lea eax, [esp + 0x1c]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
push 0
mov ecx, esi
call fcn.0057235f
push 0x442
mov ecx, edi
call fcn.005720b1
mov esi, eax
mov eax, dword [esi + 0x20]
lea edx, [esp + 0x2c]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, edi
call fcn.00579257
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
push 5
sub edx, eax
push edx
mov edx, dword [esp + 0x2c]
sub edx, ecx
push edx
push eax
push ecx
push 0
mov ecx, esi
call fcn.0057267b
push 0x438
mov ecx, edi
call fcn.005720b1
mov esi, eax
mov ecx, dword [esi + 0x20]
lea eax, [esp + 0x1c]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [esp + 0x28]
sub edx, dword [esp + 0x20]
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x1c]
push 6
push edx
push eax
push 0
push 0
push 0
mov ecx, esi
call fcn.0057267b
xor eax, eax
lea ecx, [esp + 0x2c]
push ecx
lea esi, [esp + 0x48]
mov word [esp + 0x30], 1
mov word [esp + 0x32], 0x10
mov word [esp + 0x34], ax
mov word [esp + 0x36], ax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov word [esp + 0x44], ax
call fcn.004e1340
add esp, 4
mov edx, esi
push edx
call dword [sym.imp.GDI32.dll_CreateFontIndirectW]
mov esi, eax
push 0x548
mov ecx, edi
mov dword [edi + 0x148], esi
call fcn.005720b1
mov eax, dword [eax + 0x20]
push 0
push esi
push 0x30
push eax
call ebx
mov ecx, dword [esp + 0x14]
mov edx, dword [edi + ecx*4 + 0x124]
push edx
push 0
push 0xf7
push 0x44b
mov ecx, edi
call fcn.005720b1
mov eax, dword [eax + 0x20]
push eax
call ebx
mov ecx, dword [edi + 0x20]
mov esi, dword [sym.imp.USER32.dll_InvalidateRect]
push 1
push 0
push ecx
call esi
push 0x44b
mov ecx, edi
call fcn.005720b1
mov edx, dword [eax + 0x20]
push 1
push 0
push edx
call esi
call fcn.004d2d80
mov esi, edi
call fcn.004d2be0
mov cl, 1
mov esi, 0x6295d0
call fcn.004f4470
mov eax, dword [edi + 0x20]
push 0
push 0x1f4
push 2
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov eax, 1
mov ecx, dword [esp + 0x2b0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x298]
xor ecx, esp
call fcn.005ce60a
mov esp, ebp
pop ebp
ret