Function at 0x100542e0
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov edi, ecx
mov esi, dword [sym.imp.kernel32.dll_LoadLibraryW]
push str.user32
call esi
mov ebx, eax
push str.gdi32
call esi
test ebx, ebx
je 0x10054507
test eax, eax
je 0x10054507
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], edi
mov edi, dword [sym.imp.kernel32.dll_GetProcAddress]
push str.GetThreadDpiAwarenessContext
push ebx
call edi
mov esi, eax
push str.AreDpiAwarenessContextsEqual
push ebx
call edi
test esi, esi
je 0x10054367
mov edi, eax
test eax, eax
je 0x10054367
mov ecx, esi
call dword [section..00cfg]
call esi
mov esi, eax
mov ecx, edi
call dword [section..00cfg]
push 0xfffffffffffffffd
push esi
call edi
test eax, eax
je 0x10054367
push str.EnableNonClientDpiScaling
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b5e4], eax
push str.GetSystemMetricsForDpi
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b564], eax
test eax, eax
je 0x10054504
push str.GetDpiForWindow
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b568], eax
test eax, eax
mov edi, dword [ebp - 0x10]
je 0x10054507
push str.RegisterClassW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b56c], eax
test eax, eax
je 0x10054507
push str.CreateWindowExW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b578], eax
test eax, eax
je 0x10054507
push str.ShowWindow
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b57c], eax
test eax, eax
je 0x10054507
push str.SetWindowPos
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b580], eax
test eax, eax
je 0x10054507
push str.GetWindowDC
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b584], eax
test eax, eax
je 0x10054507
push str.FillRect
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b588], eax
test eax, eax
je 0x10054507
push str.ReleaseDC
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b590], eax
test eax, eax
je 0x10054507
push str.LoadIconW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b570], eax
test eax, eax
je 0x10054507
push str.LoadCursorW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b574], eax
test eax, eax
je 0x10054507
push str.MonitorFromWindow
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b594], eax
test eax, eax
je 0x10054507
push str.GetMonitorInfoW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b598], eax
test eax, eax
je 0x10054507
push str.SetWindowLongPtrW
push ebx
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b59c], eax
test eax, eax
je 0x10054507
push str.StretchDIBits
mov esi, dword [ebp - 0x14]
push esi
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b5a0], eax
test eax, eax
je 0x10054507
push str.CreateSolidBrush
push esi
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b5a4], eax
test eax, eax
je 0x10054507
push str.DeleteObject
push esi
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov dword [0x1007b58c], eax
test eax, eax
je 0x10054507
mov byte [edi + 4], 0
jmp 0x10054511
mov edi, dword [ebp - 0x10]
mov byte [edi + 4], 1
mov dword [edi], 9
mov eax, edi
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret