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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 8]
sub esp, 0xc
push ebx
push esi
push edi
mov ebx, ecx
cmp eax, 0x943
ja 0x4a8c9e
je 0x4a8c86
lea ecx, [eax - 0x834]
cmp ecx, 0xba
ja case.0x4a8e1e.4007
movzx ecx, byte [ecx + 0x4a934c]
jmp dword [ecx*4 + 0x4a92b0]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push edx
push eax
push ebx
mov dword [ebx + 0xe10], 0
call fcn.004a71d0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea edi, [ebx + 0xcec]
call fcn.00477aa0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xcec]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xd4c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ebx
call fcn.004a7b20
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov cl, byte [ebp + 0xc]
mov byte [ebx + 0xd28], cl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movsx eax, byte [ebx + 0xd28]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0x10]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a8937
sub eax, esi
push eax
push edx
lea ecx, [ebx + 0xcf0]
call fcn.00403a50
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0x10]
push edx
lea ecx, [ebx + 0xcec]
call fcn.00477ad0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne al
mov byte [ebx + 0xd54], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xd54]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0x10]
mov eax, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4a89a2
sub eax, esi
push eax
push edx
lea ecx, [ebx + 0xd0c]
call fcn.00403a50
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne cl
mov byte [ebx + 0xd45], cl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xd45]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne dl
mov byte [ebx + 0xd44], dl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xd44]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push ecx
push 0
push ebx
mov dword [ebx + 0xe10], eax
call fcn.004a71d0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne dl
mov byte [ebx + 0xd55], dl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xd55]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne al
mov byte [ebx + 0xd56], al
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xd56]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebx + 0xd48]
mov edx, dword [ecx]
mov eax, dword [ebp + 0xc]
mov edx, dword [edx + 0x10]
push eax
call edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebx + 0xd48]
mov eax, dword [ecx]
mov edx, dword [eax + 0x14]
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0xe14], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xe14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov cl, byte [ebp + 0xc]
mov byte [ebx + 0xd29], cl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movsx eax, byte [ebx + 0xd29]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
xor ecx, ecx
push ecx
push eax
lea edx, [esp + 0x18]
push edx
mov ecx, ebx
call fcn.00484d60
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [ebp + 0x10]
push eax
push ecx
push edx
mov edi, ebx
call fcn.004a7df0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea esi, [ebx + 0xd68]
call fcn.0047c570
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
movzx eax, byte [ebx + 0xddc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xde0]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0xde0], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
cmp eax, dword [ebx + 0xd68]
jne 0x4a8b92
cmp ecx, dword [ebx + 0xd6c]
je 0x4a922c
cmp ecx, eax
mov dword [ebx + 0xd68], eax
jle 0x4a8b9e
mov eax, ecx
mov dword [ebx + 0xd6c], eax
mov ebx, dword [ebx + 0xdc8]
test ebx, ebx
je 0x4a922c
push 0
push 0
push ebx
call dword [sym.imp.USER32.dll_InvalidateRect]
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0xc]
lea esi, [ebx + 0x324]
mov edi, 0x26
mov dword [ebx + 0xde4], ecx
call fcn.0049aa90
mov edx, dword [ebp + 0xc]
mov dword [eax + 0x30], edx
mov eax, ebx
call fcn.00484a70
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
lea esi, [ebx + 0x324]
mov edi, 0x26
mov dword [ebx + 0xde8], eax
call fcn.0049aa90
mov ecx, dword [ebp + 0xc]
mov dword [eax + 0x2c], ecx
mov eax, ebx
call fcn.00484a70
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0xc]
mov eax, ebx
mov dword [ebx + 0xdec], edx
call fcn.00484a70
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0xdbc], eax
mov eax, ebx
mov byte [ebx + 0xdc0], 1
call fcn.00484a70
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
mov eax, ebx
setne cl
mov byte [ebx + 0xdc1], cl
call fcn.00484a70
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp dword [ebp + 0xc], 0
setne dl
mov byte [ebx + 0xce4], dl
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 0xfa1
ja 0x4a8e0f
je 0x4a8df3
cmp eax, 0x968
ja 0x4a8cfb
je 0x4a8ce3
cmp eax, 0x965
jne case.0x4a8e1e.4007
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0xd48]
mov eax, dword [ecx]
mov eax, dword [eax + 0x3c]
push edx
mov edx, dword [ebp + 0xc]
push edx
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebx + 0xd48]
mov edx, dword [ecx]
mov eax, dword [edx + 0x44]
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [eax - 0x98d]
cmp ecx, 0xd8
ja case.0x4a8e1e.4007
movzx ecx, byte [ecx + 0x4a9430]
jmp dword [ecx*4 + 0x4a9408]
cmp byte [ebx + 0xcec], 0
je 0x4a9115
mov ecx, dword [ebx + 0xd48]
mov edx, dword [ecx]
mov eax, dword [edx + 0x30]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0x10]
push ebx
call fcn.004a7d40
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0xc]
mov dword [ebx + 0xd58], ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xd58]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0xc]
mov dword [ebx + 0xe18], edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xe18]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
mov dword [ebx + 0xd64], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebx + 0xd64]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0x10]
fld dword [ebx + 0xadc]
mov esi, dword [ebx + 0xd48]
mov edi, dword [esi]
push ecx
call fcn.00505040
fld dword [ebx + 0xad8]
push eax
call fcn.00505040
mov edx, dword [ebp + 0xc]
push eax
mov eax, dword [edi + 0x40]
push edx
mov ecx, esi
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov ecx, eax
mov eax, dword [ebp + 0xc]
call fcn.004a8670
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [eax - 0xfa2]
cmp ecx, 0x1a
ja case.0x4a8e1e.4007
jmp dword [ecx*4 + 0x4a950c]
mov esi, ebx
call fcn.004a8580
mov eax, dword [eax + 0x20]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 0x20], 0
mov ecx, dword [ebp + 0xc]
jne 0x4a8e94
mov eax, dword [ebx + 0x2c8]
cmp dword [eax + 0x17c], ecx
jle 0x4a8e5c
mov dword [eax + 0x17c], ecx
mov eax, dword [ebp + 0x10]
cmp eax, 0xffffffff
jne 0x4a8e76
mov eax, dword [ebx + 0x2c8]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 8]
add eax, 4
push eax
call edx
mov edx, dword [ebx]
push eax
mov eax, dword [edx + 0x78]
mov ecx, ebx
call eax
mov edx, dword [ebx]
mov eax, dword [edx + 0x30]
mov ecx, ebx
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ecx
call fcn.004a8580
mov esi, eax
mov eax, dword [ebp + 0x10]
call fcn.0049c280
mov edx, dword [ebx]
mov eax, dword [edx + 0x30]
mov ecx, ebx
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov edi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
call fcn.004a8780
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov ecx, dword [ebp + 0xc]
add eax, 0x14
push eax
call fcn.004c33a0
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
push ecx
lea ecx, [eax + 0x14]
call fcn.004c3860
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov edx, dword [ebp + 0x10]
push edx
mov edx, dword [ebp + 0xc]
lea ecx, [eax + 0x14]
call fcn.004c3960
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [ebp + 0xc]
push eax
mov esi, ebx
call fcn.004a8580
mov edx, dword [ebp + 0x10]
call fcn.004a8740
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov edi, eax
mov eax, dword [ebp + 0x10]
call fcn.004a86d0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
mov eax, dword [eax + 0x10]
test eax, eax
je 0x4a8f97
mov eax, dword [eax + 0x18]
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0x10]
mov eax, 0x5379d8
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 4], 0
je 0x4a922c
cmp dword [eax + 8], 0
je 0x4a922c
mov edx, dword [ebp + 0x10]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
push edx
mov edx, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, 8
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a901f
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edi, dword [ebp + 0x10]
xor eax, eax
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0xc]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a901f
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x10]
call eax
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a901f
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x18]
push eax
call edx
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x2c]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a9115
cmp dword [eax + 0x1c], 1
jl 0x4a9115
mov edx, dword [ebp + 0x10]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
push edx
mov edx, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ecx + 0x30]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a9115
cmp dword [eax + 0x1c], 1
jl 0x4a9115
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x34]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x38]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x3c]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x40]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x44]
push eax
call edx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov edx, dword [ebp + 0x10]
mov eax, dword [eax + 8]
mov ecx, dword [eax]
push edx
mov edx, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ecx + 0x48]
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a922c
cmp dword [eax + 0x1c], 1
jl 0x4a922c
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x4c]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov esi, ebx
call fcn.004a8580
cmp dword [eax + 8], 0
je 0x4a8f97
cmp dword [eax + 0x1c], 1
jl 0x4a8f97
mov eax, dword [eax + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x50]
push eax
call edx
mov edi, dword [ebp + 0x10]
mov edx, eax
call fcn.00496110
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
push ecx
push edx
push eax
mov ecx, ebx
call fcn.00496180
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc