Function at 0x449c30
Capabilities:
Link many functions at runtime

Disassembly:
mov eax, dword [0x4eba10]
sub esp, 0x2c
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push ebp
xor ebp, ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebp
push edi
je 0x449c7d
mov ecx, dword [0x4eba08]
xor eax, eax
cmp ecx, ebp
setne al
cmp eax, ebp
je 0x449d2d
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
push eax
push ecx
call dword [0x4eb9fc]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret 8
push str.USER32
call ebx
mov edi, eax
cmp edi, ebp
je 0x449cff
push str.GetSystemMetrics
push edi
call esi
cmp eax, ebp
mov dword [0x4eb9f8], eax
je 0x449cff
push str.MonitorFromWindow
push edi
call esi
cmp eax, ebp
mov dword [0x4eb9fc], eax
je 0x449cff
push str.MonitorFromRect
push edi
call esi
cmp eax, ebp
mov dword [0x4eba00], eax
je 0x449cff
push str.MonitorFromPoint
push edi
call esi
cmp eax, ebp
mov dword [0x4eba04], eax
je 0x449cff
push str.EnumDisplayMonitors
push edi
call esi
cmp eax, ebp
mov dword [0x4eba0c], eax
je 0x449cff
push str.GetMonitorInfoA
push edi
call esi
cmp eax, ebp
mov dword [0x4eba08], eax
je 0x449cff
mov dword [0x4eba10], 1
jmp 0x449c63
mov dword [0x4eb9f8], ebp
mov dword [0x4eb9fc], ebp
mov dword [0x4eba00], ebp
mov dword [0x4eba04], ebp
mov dword [0x4eba08], ebp
mov dword [0x4eba0c], ebp
mov dword [0x4eba10], 1
test byte [esp + 0x44], 3
je 0x449d43
pop edi
pop esi
pop ebp
mov eax, 0x12340042
pop ebx
add esp, 0x2c
ret 8
mov edi, dword [esp + 0x40]
push edi
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x449d60
lea edx, [esp + 0x10]
push edx
push edi
call dword [sym.imp.USER32.dll_GetWindowPlacement]
jmp 0x449d6c
lea eax, [esp + 0x2c]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp eax, ebp
je 0x449e84
cmp dword [0x4eba10], ebp
je 0x449dab
mov ecx, dword [0x4eba08]
xor eax, eax
cmp ecx, ebp
setne al
cmp eax, ebp
je 0x449e5b
mov ecx, dword [esp + 0x44]
lea edx, [esp + 0x2c]
push ecx
push edx
call dword [0x4eba00]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret 8
push str.USER32
call ebx
mov edi, eax
cmp edi, ebp
je 0x449e2d
push str.GetSystemMetrics
push edi
call esi
cmp eax, ebp
mov dword [0x4eb9f8], eax
je 0x449e2d
push str.MonitorFromWindow
push edi
call esi
cmp eax, ebp
mov dword [0x4eb9fc], eax
je 0x449e2d
push str.MonitorFromRect
push edi
call esi
cmp eax, ebp
mov dword [0x4eba00], eax
je 0x449e2d
push str.MonitorFromPoint
push edi
call esi
cmp eax, ebp
mov dword [0x4eba04], eax
je 0x449e2d
push str.EnumDisplayMonitors
push edi
call esi
cmp eax, ebp
mov dword [0x4eba0c], eax
je 0x449e2d
push str.GetMonitorInfoA
push edi
call esi
cmp eax, ebp
mov dword [0x4eba08], eax
je 0x449e2d
mov dword [0x4eba10], 1
jmp 0x449d91
mov dword [0x4eb9f8], ebp
mov dword [0x4eb9fc], ebp
mov dword [0x4eba00], ebp
mov dword [0x4eba04], ebp
mov dword [0x4eba08], ebp
mov dword [0x4eba0c], ebp
mov dword [0x4eba10], 1
cmp dword [esp + 0x34], ebp
jle 0x449e84
cmp dword [esp + 0x38], ebp
jle 0x449e84
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push ebp
call esi
cmp dword [esp + 0x2c], eax
jge 0x449e84
push 1
call esi
cmp dword [esp + 0x30], eax
jl 0x449d34
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x2c
ret 8