Function at 0x43b5e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4a0cb8
mov eax, dword fs:[0]
push eax
sub esp, 0x48
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4d6720]
xor eax, esp
push eax
lea eax, [esp + 0x5c]
mov dword fs:[0], eax
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x14], ebx
cmp dword [0x4d8958], edi
je 0x43b81a
cmp dword [0x4d895c], edi
je 0x43b81a
cmp dword [0x4d8960], edi
je 0x43b81a
lea ecx, [esp + 0x3c]
call fcn.0046a148
mov esi, dword [esp + 0x6c]
push esi
lea ecx, [esp + 0x40]
mov dword [esp + 0x68], edi
call fcn.00439e50
test eax, eax
je 0x43b809
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.USER32.dll_SetRectEmpty]
mov ebx, dword [esp + 0x74]
cmp ebx, edi
jle 0x43b6cc
mov esi, dword [esp + 0x70]
mov ebp, ebx
mov ebx, dword [sym.imp.USER32.dll_UnionRect]
add esi, 4
mov eax, dword [esi]
mov ecx, dword [esi + 8]
cmp eax, ecx
mov edx, dword [esi + 4]
mov edi, dword [esi + 0xc]
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], edi
jle 0x43b69f
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], eax
cmp edx, edi
jle 0x43b6ab
mov dword [esp + 0x30], edi
mov dword [esp + 0x38], edx
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x20]
push edx
mov eax, edx
push eax
call ebx
add esi, 0x14
sub ebp, 1
jne 0x43b678
mov esi, dword [esp + 0x6c]
mov ebx, dword [esp + 0x74]
xor edi, edi
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x24]
sub eax, dword [esp + 0x20]
sub ecx, dword [esp + 0x1c]
cmp esi, edi
jne 0x43b6e4
xor edx, edx
jmp 0x43b6e7
mov edx, dword [esi + 4]
push eax
push ecx
push edx
call dword [sym.imp.GDI32.dll_CreateCompatibleBitmap]
mov ecx, dword [esp + 0x40]
mov ebp, eax
push ebp
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov ecx, dword [esp + 0x24]
sub ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x78]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x28]
sub eax, dword [esp + 0x20]
push edx
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x50]
mov dword [esp + 0x58], ecx
push eax
lea ecx, [esp + 0x44]
mov dword [esp + 0x54], edi
mov dword [esp + 0x58], edi
call fcn.004736e0
mov edx, dword [esp + 0x40]
lea ecx, [esp + 0x18]
push ecx
push edx
call dword [0x4d8958]
test eax, eax
jne 0x43b7ee
cmp ebx, edi
mov dword [esp + 0x14], 1
jle 0x43b7a0
mov esi, dword [esp + 0x70]
add esi, 8
mov eax, dword [esi]
mov edx, dword [esi + 8]
mov ecx, dword [esi - 4]
mov edi, dword [esi + 4]
sub edx, eax
sub eax, dword [esp + 0x20]
push edx
sub edi, ecx
sub ecx, dword [esp + 0x20]
push edi
push eax
mov eax, dword [esi - 8]
push ecx
mov ecx, dword [esp + 0x28]
push eax
push ecx
call dword [0x4d895c]
test eax, eax
je 0x43b796
mov dword [esp + 0x14], 0
add esi, 0x14
sub ebx, 1
jne 0x43b760
xor edi, edi
mov edx, dword [esp + 0x18]
push edx
call dword [0x4d8960]
cmp dword [esp + 0x14], edi
je 0x43b7ee
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x40]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
push 0xcc0020
push edi
push edi
push ebx
sub eax, edx
push eax
mov eax, dword [esp + 0x80]
sub ecx, esi
push ecx
mov ecx, dword [eax + 4]
push edx
push esi
push ecx
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
jne 0x43b7ee
mov dword [esp + 0x14], edi
mov edx, dword [esp + 0x74]
mov eax, dword [esp + 0x40]
push edx
push eax
call dword [sym.imp.GDI32.dll_SelectObject]
push ebp
call dword [sym.imp.GDI32.dll_DeleteObject]
mov ebx, dword [esp + 0x14]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x64], 0xffffffff
call fcn.0046a6f0
mov eax, ebx
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 0x10