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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4f5764
sub esp, 0x68
mov eax, dword [esp + 0x78]
test eax, eax
jl 0x4f535c
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x74]
cmp ecx, edx
setne bl
sar ecx, 0x1f
cmp eax, ecx
setne cl
or ecx, ebx
test cl, cl
je 0x4f539b
mov eax, dword [0xa84ac0]
mov ecx, dword [0xa84ac4]
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], ecx
add esp, 0x68
ret
test eax, eax
sete cl
cmp edx, 0xa00000
setb bl
and ebx, ecx
test bl, bl
je 0x4f54fa
mov byte [esp + 0x27], cl
lea eax, [0x758ec0]
mov dword [esp], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
call fcn.0044b0f0
mov eax, dword [esp + 0x14]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x6c]
mov ecx, dword [ecx + 0x10]
mov edx, dword [esp + 0x70]
mov dword [esp], edx
mov dword [esp + 4], eax
mov edx, dword [esp + 0x74]
mov dword [esp + 8], edx
mov dword [esp + 0xc], edx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x10], ebx
call ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x20]
test eax, eax
je 0x4f54c3
mov eax, dword [0xa84a9c]
cmp dword [0xa84a98], ecx
je 0x4f5445
mov eax, 1
jmp 0x4f546d
mov dword [esp + 0x60], ebx
mov dword [esp + 0x58], ebp
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.00403870
movzx eax, byte [esp + 0xc]
xor eax, 1
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
test al, al
jne 0x4f5490
mov eax, dword [esp + 0x74]
test eax, eax
seta al
mov ecx, dword [esp + 0x78]
test ecx, ecx
seta cl
movzx edx, byte [esp + 0x27]
and eax, edx
or ecx, eax
test cl, cl
je 0x4f54c3
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebp
add esp, 0x68
ret
mov eax, dword [esp + 0x64]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x68
ret
lea eax, [0x758ec0]
mov dword [esp], eax
mov dword [esp + 4], 0xa00000
mov dword [esp + 8], 0xa00000
call fcn.0044b030
mov eax, dword [esp + 0xc]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
mov dword [esp + 0x50], eax
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x50]
jmp 0x4f55de
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x5c], ebp
mov esi, dword [esp + 0x44]
sub esi, eax
mov dword [esp + 0x3c], esi
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x40]
sbb edi, edx
mov dword [esp + 0x38], edi
mov ebx, dword [esp + 0x48]
add ebx, eax
mov dword [esp + 0x48], ebx
mov ebx, dword [esp + 0x4c]
adc ebx, edx
mov dword [esp + 0x4c], ebx
add ecx, ebp
mov dword [esp], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00464d50
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x5c]
mov ebp, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x48]
mov eax, edx
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x6c]
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov ebp, dword [esp + 0x4c]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], ebx
test esi, esi
sete bl
xchg ebp, ebx
seta bl
xchg ebp, ebx
test edi, edi
seta al
and eax, ebx
or eax, ebp
test al, al
je 0x4f570e
cmp edi, 0xa00000
seta al
and eax, ebx
or eax, ebp
test al, al
je 0x4f561d
mov eax, 0xa00000
xor ebx, ebx
jmp 0x4f5621
mov eax, edi
mov ebx, esi
test ebx, ebx
jne 0x4f5755
cmp eax, 0xa00000
ja 0x4f5749
mov dword [esp + 0x28], eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x2c], esi
mov dword [esp + 0x40], ebx
mov ebx, dword [edx + 0x10]
mov dword [esp], ecx
mov ebp, dword [esp + 0x64]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0xa00000
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x14], esi
mov edi, dword [esp + 0x48]
mov dword [esp + 0x10], edi
call ebx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
test eax, eax
jne 0x4f56db
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0x34]
cmp ebx, edx
jb 0x4f569c
mov ebp, dword [esp + 0x5c]
jmp 0x4f555a
mov ecx, dword [esp + 0x5c]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
lea ecx, [0x758ec0]
mov dword [esp + 0x10], ecx
call fcn.0044b1b0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebp, eax
mov ebx, ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
jmp 0x4f555a
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], edx
add esp, 0x68
ret
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
add esp, 0x68
ret
mov ecx, eax
mov edx, 0xa00000
call fcn.00464480
mov esi, ebx
mov ecx, eax
mov edx, 0xa00000
call fcn.00464580
nop
call fcn.00462fa0
jmp fcn.004f5320