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

Disassembly:
push 0x9c
mov eax, 0x54ae81
call fcn.00523837
mov esi, ecx
lea ecx, [esi + 0x84]
xor edi, edi
mov eax, vtable.CBrush.0
mov dword [ebp - 0xa8], esi
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x8c]
mov dword [ebp - 4], edi
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x94]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x9c]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xa4]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xac]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xb4]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xbc]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xc4]
mov eax, vtable.CPen.0
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xcc]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0xd4]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x108]
mov eax, vtable.CFont.0
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x110]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x118]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x120]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x128]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x130]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x138]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x140]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x148]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea ecx, [esi + 0x150]
mov dword [ecx + 4], edi
mov dword [ecx], eax
lea eax, [ebp - 0xa4]
push eax
mov byte [ebp - 4], 0x14
mov dword [ebp - 0xa4], 0x94
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0xa0], 4
ja 0x43c015
jne 0x43c011
cmp dword [ebp - 0x9c], edi
ja 0x43c015
xor eax, eax
jmp 0x43c018
xor eax, eax
inc eax
cmp dword [ebp - 0x94], 2
lea ebx, [esi + 0x174]
mov dword [esi + 0x178], eax
mov dword [ebx], edi
jne 0x43c044
cmp dword [ebp - 0xa0], 5
jb 0x43c044
push 0x1000
call fcn.004278dd
mov dword [ebx], eax
cmp dword [ebp - 0xa0], 6
jae 0x43c063
cmp dword [ebp - 0xa0], 5
jne 0x43c05f
cmp dword [ebp - 0x9c], 1
jae 0x43c063
xor eax, eax
jmp 0x43c066
xor eax, eax
inc eax
lea ebx, [esi + 0x168]
mov dword [ebx], eax
cmp eax, edi
jne 0x43c08e
push str.GDIPlus.dll
call fcn.004264dd
pop ecx
cmp eax, edi
je 0x43c08e
push eax
mov dword [ebx], 1
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
cmp dword [ebp - 0xa0], 6
mov ecx, esi
sbb eax, eax
inc eax
mov dword [esi + 0x16c], eax
mov dword [esi + 0x170], edi
mov dword [esi + 0x1d0], 1
mov dword [esi + 8], edi
mov dword [esi + 4], edi
mov dword [esi + 0xc], edi
call fcn.0043b5b7
push str.UxTheme.dll
call fcn.004264dd
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
pop ecx
mov dword [esi + 0x1d4], eax
cmp eax, edi
je 0x43c122
push str.DrawThemeParentBackground
push eax
call ebx
push str.DrawThemeTextEx
push dword [esi + 0x1d4]
mov dword [esi + 0x1e4], eax
call ebx
push str.BeginBufferedPaint
push dword [esi + 0x1d4]
mov dword [esi + 0x1e8], eax
call ebx
push str.EndBufferedPaint
push dword [esi + 0x1d4]
mov dword [esi + 0x1ec], eax
call ebx
mov dword [esi + 0x1f0], eax
jmp 0x43c13a
mov dword [esi + 0x1e4], edi
mov dword [esi + 0x1e8], edi
mov dword [esi + 0x1ec], edi
mov dword [esi + 0x1f0], edi
cmp dword [esi + 0x178], edi
jne 0x43c150
mov dword [esi + 0x1d8], edi
mov dword [esi + 0x1e0], edi
jmp 0x43c173
push 0x55f3a8
call fcn.004264dd
pop ecx
mov dword [esi + 0x1d8], eax
cmp eax, edi
je 0x43c173
push 0x55f38c
push eax
call ebx
mov dword [esi + 0x1e0], eax
push str.dwmapi.dll
call fcn.004264dd
pop ecx
mov dword [esi + 0x1dc], eax
cmp eax, edi
je 0x43c1be
push str.DwmExtendFrameIntoClientArea
push eax
call ebx
push str.DwmDefWindowProc
push dword [esi + 0x1dc]
mov dword [esi + 0x1f4], eax
call ebx
push str.DwmIsCompositionEnabled
push dword [esi + 0x1dc]
mov dword [esi + 0x1f8], eax
call ebx
mov dword [esi + 0x1fc], eax
jmp 0x43c1d0
mov dword [esi + 0x1f4], edi
mov dword [esi + 0x1f8], edi
mov dword [esi + 0x1fc], edi
mov ecx, esi
mov dword [esi + 0xdc], edi
mov dword [esi + 0xe0], edi
mov dword [esi + 0xe4], edi
mov dword [esi + 0xe8], edi
mov dword [esi + 0xf4], edi
mov dword [esi + 0xf8], edi
mov dword [esi + 0xfc], edi
mov dword [esi + 0xec], edi
mov dword [esi + 0xf0], edi
mov dword [esi], edi
call fcn.0043ba70
mov ecx, esi
call fcn.0043a5b4
push 0x31
mov dword [esi + 0x190], edi
call fcn.004278dd
push 0x32
pop ebx
push ebx
mov dword [esi + 0x100], eax
call fcn.004278dd
or dword [esi + 0x1b0], 0xffffffff
mov dword [esi + 0x104], eax
push 4
pop eax
mov dword [esi + 0x19c], eax
mov dword [esi + 0x1a8], eax
xor eax, eax
inc eax
mov dword [esi + 0x184], eax
mov dword [esi + 0x194], eax
mov dword [esi + 0x1a0], 3
mov dword [esi + 0x1a4], 0xe
mov dword [esi + 0x1ac], ebx
mov dword [esi + 0x17c], edi
mov dword [esi + 0x180], edi
mov eax, esi
call fcn.005238ba
ret