Function at 0x401d74
Capabilities:
Check os version
Link many functions at runtime

Disassembly:
mov eax, 0x43f1a3
call fcn.0043cc34
sub esp, 0x118
push ebx
push esi
push edi
mov ecx, 0x457af8
mov dword [ebp - 0x10], 0x457a68
call fcn.00403709
xor edi, edi
mov ecx, 0x457b00
mov dword [ebp - 4], edi
call fcn.00403709
mov ecx, 0x457b08
call fcn.00403709
mov ecx, 0x457b10
call fcn.00403709
mov ecx, 0x457b18
call fcn.00403709
mov ecx, 0x457b20
call fcn.00403709
mov ecx, 0x457b28
call fcn.00403709
mov ecx, 0x457b30
call fcn.00403709
mov esi, 0x457b38
call fcn.004036d0
mov esi, 0x457b40
call fcn.004036d0
mov esi, 0x457b48
call fcn.004036d0
mov ecx, 0x457b74
call fcn.00409110
mov ecx, 0x457b7c
call fcn.00403695
mov ecx, 0x457b84
call fcn.00403695
mov ecx, 0x457b8c
call fcn.00403695
mov ecx, 0x457b94
call fcn.00403695
mov ecx, 0x457b9c
call fcn.00403695
mov ecx, 0x457ba4
call fcn.00403695
mov ecx, 0x457bac
call fcn.00403695
mov ecx, 0x457bb4
call fcn.00403695
mov ecx, 0x457bbc
call fcn.00403695
mov ecx, 0x457bc4
call fcn.00403695
mov ecx, 0x457bcc
mov byte [ebp - 4], 0x14
call fcn.00403973
lea eax, [ebp - 0x124]
push eax
mov dword [ebp - 0x124], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
push 0x1000
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [0x457be8], eax
cmp dword [ebp - 0x120], 6
sbb eax, eax
xor ebx, ebx
inc eax
inc ebx
cmp dword [ebp - 0x120], 6
mov dword [0x457bdc], eax
jne 0x401ece
cmp dword [ebp - 0x11c], ebx
jae 0x401ed4
cmp dword [ebp - 0x120], 6
ja 0x401ed4
xor eax, eax
jmp 0x401ed6
mov eax, ebx
mov dword [0x457be0], eax
mov dword [0x457be4], edi
mov dword [0x457c4c], ebx
mov dword [0x457a74], edi
mov dword [0x457a70], edi
mov dword [0x457a78], edi
call fcn.00402823
push 0x446e20
call fcn.0040371b
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
pop ecx
mov dword [0x457c54], eax
cmp eax, edi
je 0x401f81
push str.DrawThemeParentBackground
push eax
call esi
push str.DrawThemeTextEx
push dword [0x457c54]
mov dword [0x457c5c], eax
call esi
push str.BufferedPaintInit
push dword [0x457c54]
mov dword [0x457c60], eax
call esi
push str.BufferedPaintUnInit
push dword [0x457c54]
mov dword [0x457c64], eax
call esi
push str.BeginBufferedPaint
push dword [0x457c54]
mov dword [0x457c68], eax
call esi
push str.EndBufferedPaint
push dword [0x457c54]
mov dword [0x457c6c], eax
call esi
mov dword [0x457c70], eax
jmp 0x401fa5
mov dword [0x457c5c], edi
mov dword [0x457c60], edi
mov dword [0x457c64], edi
mov dword [0x457c68], edi
mov dword [0x457c6c], edi
mov dword [0x457c70], edi
push str.dwmapi.dll
call fcn.00401cec
pop ecx
mov dword [0x457c58], eax
cmp eax, edi
je 0x401fec
push str.DwmExtendFrameIntoClientArea
push eax
call esi
push str.DwmDefWindowProc
push dword [0x457c58]
mov dword [0x457c74], eax
call esi
push str.DwmIsCompositionEnabled
push dword [0x457c58]
mov dword [0x457c78], eax
call esi
mov dword [0x457c7c], eax
jmp 0x401ffe
mov dword [0x457c74], edi
mov dword [0x457c78], edi
mov dword [0x457c7c], edi
mov dword [0x457b50], edi
mov dword [0x457b54], edi
mov dword [0x457b58], edi
mov dword [0x457b5c], edi
mov dword [0x457b68], edi
mov dword [0x457b6c], edi
mov dword [0x457b70], edi
mov dword [0x457b60], edi
mov dword [0x457b64], edi
mov dword [0x457a68], edi
mov dword [0x457a6c], edi
call fcn.0040221b
call fcn.00402767
or dword [0x457c2c], 0xffffffff
push 4
pop eax
mov dword [0x457c00], edi
mov dword [0x457c50], edi
mov dword [0x457c18], eax
mov dword [0x457c1c], 3
mov dword [0x457c20], 0xe
mov dword [0x457c24], eax
mov dword [0x457c28], 0x32
mov dword [0x457bec], edi
mov dword [0x457bf0], edi
mov dword [0x457bf4], ebx
mov dword [0x457c80], edi
mov dword [0x457c88], edi
mov dword [0x457c8c], edi
mov dword [0x457c84], ebx
call fcn.00402e69
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov eax, 0x457a68
pop ebx
mov dword fs:[0], ecx
leave
ret