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

Disassembly:
push 0xffffffffffffffff
push 0x710a50
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x70
push ebx
push ebp
push esi
push edi
xor edi, edi
mov ebx, ecx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], vtable.CPen.0
push 6
mov dword [esp + 0x8c], edi
call dword [sym.imp.GDI32.dll_GetStockObject]
mov ebp, dword [esp + 0x90]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x28]
mov ecx, ebp
push eax
mov dword [esp + 0x54], ebp
call fcn.006c6b4d
mov dword [esp + 0x54], eax
push 7
mov ecx, ebp
mov byte [esp + 0x8c], 1
mov dword [esp + 0x4c], ebp
call fcn.006c6bf0
mov dword [esp + 0x4c], eax
mov ecx, dword [ebx + 0x68]
mov edx, dword [ebx + 0x64]
push ecx
mov ecx, dword [ebx + 0x2c]
lea eax, [esp + 0x1c]
push edx
push eax
mov byte [esp + 0x94], 2
call fcn.00405bf0
mov ecx, dword [ebx + 0x3c]
lea edx, [esp + 0x40]
push edx
call fcn.005dc9f0
mov ecx, dword [esp + 0x18]
mov edx, dword [eax]
mov esi, dword [esp + 0x1c]
sub ecx, edx
mov dword [esp + 0x18], ecx
mov eax, dword [eax + 4]
sub esi, eax
mov al, byte [0x85a788]
sub ecx, 0x20
mov dword [esp + 0x1c], esi
mov esi, dword [0x84752c]
mov dword [esp + 0x18], ecx
test al, 1
jne 0x5e8780
mov dl, al
mov eax, 1
mov dword [0x847560], eax
mov dword [0x847564], eax
mov eax, 2
or dl, 1
mov dword [0x847568], eax
mov dword [0x84756c], eax
mov eax, 4
push fcn.00555d40
mov dword [0x847570], eax
mov dword [0x847574], eax
mov eax, 8
mov byte [0x85a788], dl
mov dword [0x847578], eax
mov dword [0x84757c], eax
call fcn.006601e7
add esp, 4
mov eax, dword [esi*8 + 0x847560]
mov esi, dword [esi*8 + 0x847564]
test esi, esi
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], esi
mov dword [esp + 0x24], edi
jle 0x5e8934
xor edx, edx
test eax, eax
mov dword [esp + 0x20], edx
jle 0x5e8927
mov esi, edi
mov ebp, edi
shl esi, 5
shl ebp, 6
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebp
mov ecx, dword [ebx + 0x68]
mov eax, dword [ebx + 0x64]
add ecx, edi
add eax, edx
mov dword [esp + 0x34], ecx
lea ecx, [esp + 0x30]
push ecx
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 0x34], eax
call fcn.00405ad0
test al, al
je 0x5e88f1
mov eax, esi
mov esi, dword [esp + 0x18]
cdq
sub eax, edx
mov dword [esp + 0x58], esi
mov ecx, eax
mov eax, ebp
cdq
sub eax, edx
mov edx, dword [esp + 0x1c]
sar ecx, 1
sar eax, 1
add edx, ecx
mov ecx, dword [esp + 0x94]
add eax, esi
mov dword [esp + 0x3c], edx
mov esi, dword [ecx]
mov dword [esp + 0x38], eax
lea edx, [eax + 0x40]
cmp edx, esi
jl 0x5e88f1
cmp eax, dword [ecx + 8]
jge 0x5e88f1
mov ecx, dword [ebx + 0x3c]
call fcn.005dc9d0
mov edx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
sub esp, 0xc
mov ecx, dword [ebx + 0x2c]
mov ebp, esp
mov edi, dword [ecx]
mov dword [ebp], edx
mov dword [ebp + 4], esi
mov dword [ebp + 8], eax
lea eax, [esp + 0x6c]
push eax
call dword [edi + 0x40]
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
xor esi, esi
xor edx, edx
mov si, word [eax]
mov eax, dword [esp + 0x60]
mov dx, word [ecx]
mov ecx, dword [esp + 0x64]
xor ebp, ebp
xor edi, edi
mov bp, word [eax]
mov eax, dword [esp + 0x3c]
mov di, word [ecx]
mov ecx, eax
mov dword [esp + 0x70], ebp
sub ecx, ebp
mov ebp, eax
mov dword [esp + 0x74], edi
sub ebp, edi
mov edi, eax
sub edi, esi
sub eax, edx
add ecx, 0x10
add edi, 0x10
add eax, 0x20
cmp ecx, ebp
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], edx
jge 0x5e88b0
mov ebp, ecx
jmp 0x5e88b6
cmp ecx, eax
jle 0x5e88b6
mov eax, ecx
cmp edi, ebp
jge 0x5e88be
mov ebp, edi
jmp 0x5e88c4
cmp edi, eax
jle 0x5e88c4
mov eax, edi
mov ecx, dword [esp + 0x94]
cmp eax, dword [ecx + 4]
jl 0x5e88ed
mov edx, ecx
cmp ebp, dword [edx + 0xc]
jge 0x5e88ed
lea eax, [esp + 0x70]
lea edx, [esp + 0x38]
push eax
push ecx
mov ecx, dword [esp + 0x98]
call fcn.005e4fb0
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x40]
inc edx
add esi, 0x20
sub ebp, 0x40
cmp edx, eax
mov dword [esp + 0x20], edx
mov dword [esp + 0x10], esi
mov dword [esp + 0x14], ebp
jl 0x5e87c2
mov esi, dword [esp + 0x44]
mov ebp, dword [esp + 0x90]
inc edi
cmp edi, esi
mov dword [esp + 0x24], edi
jl 0x5e87a2
mov edx, dword [esp + 0x4c]
mov ecx, ebp
push edx
mov byte [esp + 0x8c], 1
call fcn.006c6bf0
mov eax, dword [esp + 0x54]
mov ecx, ebp
push eax
mov byte [esp + 0x8c], 0
call fcn.006c6b4d
mov dword [esp + 0x28], vtable.CGdiObject.0
lea ecx, [esp + 0x28]
mov dword [esp + 0x88], 3
call fcn.006c7566
mov ecx, dword [esp + 0x80]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x7c
ret 8