Function at 0x5666e0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
lea esp, [esp - 0x2c]
mov eax, 1
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x10]
call fcn.0040d890
call fcn.00403e80
push eax
test eax, eax
jne 0x566d83
add dword [0x648150], 1
cmp dword [0x648140], 0
jne 0x566d78
mov eax, str.uxtheme.dll
push eax
call sub.kernel32.dll_LoadLibraryA
mov dword [0x648140], eax
test eax, eax
jbe 0x566d78
mov eax, str.OpenThemeData
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ce0], eax
mov eax, str.CloseThemeData
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d00], eax
mov eax, str.DrawThemeBackground
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d10], eax
mov eax, str.DrawThemeText
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d30], eax
mov eax, str.GetThemeBackgroundContentRect
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d40], eax
mov eax, str.GetThemeBackgroundExtent
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d50], eax
mov eax, str.GetThemePartSize
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d70], eax
mov eax, str.GetThemeTextExtent
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d80], eax
mov eax, str.GetThemeTextMetrics
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d90], eax
mov eax, str.GetThemeBackgroundRegion
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d60], eax
mov eax, str.HitTestThemeBackground
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647da0], eax
mov eax, str.DrawThemeEdge
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647db0], eax
mov eax, str.DrawThemeIcon
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647dc0], eax
mov eax, str.IsThemePartDefined
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647dd0], eax
mov eax, str.IsThemeBackgroundPartiallyTransparent
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647de0], eax
mov eax, str.GetThemeColor
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647df0], eax
mov eax, str.GetThemeMetric
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e00], eax
mov eax, str.GetThemeString
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e10], eax
mov eax, str.GetThemeBool
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e20], eax
mov eax, str.GetThemeInt
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e30], eax
mov eax, str.GetThemeEnumValue
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e40], eax
mov eax, str.GetThemePosition
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e50], eax
mov eax, str.GetThemeFont
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e60], eax
mov eax, str.GetThemeRect
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e70], eax
mov eax, str.GetThemeMargins
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e80], eax
mov eax, str.GetThemeIntList
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647e90], eax
mov eax, str.GetThemePropertyOrigin
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ea0], eax
mov eax, str.SetWindowTheme
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647eb0], eax
mov eax, str.GetThemeFilename
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ec0], eax
mov eax, str.GetThemeSysColor
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ed0], eax
mov eax, str.GetThemeSysColorBrush
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ee0], eax
mov eax, str.GetThemeSysBool
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ef0], eax
mov eax, str.GetThemeSysSize
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f00], eax
mov eax, str.GetThemeSysFont
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f10], eax
mov eax, str.GetThemeSysString
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f20], eax
mov eax, str.GetThemeSysInt
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f30], eax
mov eax, str.IsThemeActive
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f40], eax
mov eax, str.IsAppThemed
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f50], eax
mov eax, str.GetWindowTheme
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f60], eax
mov eax, str.EnableThemeDialogTexture
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f70], eax
mov eax, str.IsThemeDialogTextureEnabled
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f80], eax
mov eax, str.GetThemeAppProperties
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647f90], eax
mov eax, str.SetThemeAppProperties
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647fa0], eax
mov eax, str.GetCurrentThemeName
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647fb0], eax
mov eax, str.GetThemeDocumentationProperty
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647fc0], eax
mov eax, str.DrawThemeParentBackground
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647fd0], eax
mov eax, str.EnableTheming
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647fe0], eax
mov eax, str.OpenThemeDataEx
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647cf0], eax
mov eax, str.DrawThemeBackgroundEx
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647d20], eax
mov eax, str.DrawThemeParentBackgroundEx
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647ff0], eax
mov eax, str.SetWindowThemeAttribute
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648000], eax
mov eax, str.DrawThemeTextEx
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648010], eax
mov eax, str.GetThemeBitmap
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648020], eax
mov eax, str.GetThemeStream
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648030], eax
mov eax, str.BufferedPaintInit
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648040], eax
mov eax, str.BufferedPaintUnInit
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648050], eax
mov eax, str.BeginBufferedPaint
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648060], eax
mov eax, str.EndBufferedPaint
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648070], eax
mov eax, str.GetBufferedPaintTargetRect
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648080], eax
mov eax, str.GetBufferedPaintTargetDC
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648090], eax
mov eax, str.GetBufferedPaintDC
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480a0], eax
mov eax, str.GetBufferedPaintBits
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480b0], eax
mov eax, str.BufferedPaintClear
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480c0], eax
mov eax, str.BufferedPaintSetAlpha
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480d0], eax
mov eax, str.BufferedPaintStopAllAnimations
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480e0], eax
mov eax, str.BeginBufferedAnimation
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x6480f0], eax
mov eax, str.EndBufferedAnimation
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648100], eax
mov eax, str.BufferedPaintRenderAnimation
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648110], eax
mov eax, str.IsCompositionActive
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648120], eax
mov eax, str.GetThemeTransitionDuration
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x648130], eax
mov eax, str.BeginPanningFeedback
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647cb0], eax
mov eax, str.UpdatePanningFeedback
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647cc0], eax
mov eax, str.EndPanningFeedback
push eax
push dword [0x648140]
call sub.kernel32.dll_GetProcAddress
mov dword [0x647cd0], eax
nop
cmp dword [0x648140], 0
seta byte [ebp - 4]
call fcn.0040db00
pop eax
test eax, eax
je 0x566d92
call fcn.0040dc30
mov al, byte [ebp - 4]
mov esp, ebp
pop ebp
ret