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

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x34]
push ebp
push esi
mov esi, dword [esp + 0x4c]
mov ebp, ecx
cmp ebx, esi
push edi
mov dword [esp + 0x10], ebp
jne 0x4fc6b1
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x54]
cmp eax, ecx
jne 0x4fc6b1
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x58]
cmp ecx, eax
jne 0x4fc6b1
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x5c]
cmp edx, eax
je 0x4fca9d
mov edi, dword [esp + 0x3c]
or eax, 0xffffffff
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
lea eax, [esp + 0x20]
lea ecx, [esp + 0x14]
push eax
push ecx
push edi
mov ecx, ebp
mov dword [esp + 0x20], 0
call fcn.004f8380
cmp ebx, esi
jne 0x4fc742
lea edx, [esp + 0x44]
lea ecx, [esp + 0x54]
push edx
call fcn.004f62d0
test eax, eax
jne 0x4fc740
lea eax, [esp + 0x44]
lea ecx, [esp + 0x54]
push eax
call fcn.004f8250
test eax, eax
jne 0x4fc740
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x58], ecx
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x5c], eax
jmp 0x4fc782
cmp ebx, esi
jle 0x4fc782
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x44], ebp
mov ebp, dword [esp + 0x58]
mov dword [esp + 0x48], ebp
mov ebp, dword [esp + 0x5c]
mov dword [esp + 0x40], esi
mov dword [esp + 0x4c], ebp
mov ebp, dword [esp + 0x10]
mov esi, ebx
mov ebx, dword [esp + 0x40]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], edx
test ebx, ebx
jl 0x4fca93
cmp ebx, dword [esp + 0x14]
jg 0x4fca93
mov ecx, dword [edi + 0x19c]
push ebx
mov dword [esp + 0x54], ecx
call fcn.004f4a00
mov ecx, dword [esp + 0x44]
mov ebp, eax
xor eax, eax
mov dword [esp + 0x18], ebp
cmp ecx, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
jne 0x4fc7cc
cmp dword [esp + 0x48], eax
jne 0x4fc7cc
cmp dword [esp + 0x4c], eax
je 0x4fc7e2
lea ecx, [esp + 0x2c]
push ecx
lea ecx, [esp + 0x48]
call fcn.004f8250
test eax, eax
je 0x4fca7d
lea edx, [esp + 0x2c]
mov ecx, ebp
push edx
call fcn.0050c6c0
mov ecx, dword [eax]
mov edx, dword [esp + 0x44]
cmp edx, ecx
jg 0x4fca7d
jne 0x4fc81e
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x48]
cmp edx, ecx
jg 0x4fca7d
jne 0x4fc81e
mov ecx, dword [esp + 0x4c]
mov edx, dword [eax + 8]
cmp ecx, edx
jg 0x4fca7d
test esi, esi
jl 0x4fca7d
cmp esi, dword [esp + 0x14]
jg 0x4fca7d
mov ecx, dword [esp + 0x50]
push esi
call fcn.004f4a00
mov ecx, dword [esp + 0x54]
mov ebp, eax
xor eax, eax
mov dword [esp + 0x1c], ebp
cmp ecx, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
jne 0x4fc862
cmp dword [esp + 0x58], eax
jne 0x4fc862
cmp dword [esp + 0x5c], eax
je 0x4fc878
lea edx, [esp + 0x2c]
lea ecx, [esp + 0x54]
push edx
call fcn.004f8250
test eax, eax
je 0x4fca7d
lea eax, [esp + 0x2c]
mov ecx, ebp
push eax
call fcn.0050c6c0
mov ecx, dword [eax]
mov edx, dword [esp + 0x54]
cmp edx, ecx
jg 0x4fca7d
jne 0x4fc8b4
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x58]
cmp edx, ecx
jg 0x4fca7d
jne 0x4fc8b4
mov ecx, dword [esp + 0x5c]
mov edx, dword [eax + 8]
cmp ecx, edx
jg 0x4fca7d
mov ecx, dword [esp + 0x50]
push ebx
call fcn.004f4a00
mov ebp, eax
test ebp, ebp
jne 0x4fc8de
push edi
xor ecx, ecx
call fcn.00515c00
test eax, eax
jne 0x4fc8de
mov ecx, dword [esp + 0x50]
push 1
push eax
call fcn.004f36e0
jmp 0x4fc8e8
push 1
push edi
mov ecx, ebp
call fcn.00515c00
push eax
mov ecx, edi
call fcn.004f0a70
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
cmp ecx, eax
je 0x4fca36
mov ebp, dword [esp + 0x60]
lea edx, [esp + 0x2c]
push ebp
push edx
call fcn.0050c6c0
mov edx, dword [eax]
sub esp, 0xc
mov ecx, esp
sub esp, 0xc
mov dword [ecx], edx
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x60]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x64]
mov ecx, esp
push edi
mov dword [ecx], edx
mov edx, dword [esp + 0x6c]
mov dword [ecx + 4], eax
mov dword [ecx + 8], edx
mov ecx, dword [esp + 0x38]
call fcn.00508ed0
sub esi, ebx
mov eax, esi
mov esi, 1
cmp eax, esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x60], esi
jle 0x4fc9e9
jmp 0x4fc966
mov ebx, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
lea eax, [esi + ebx]
push eax
call fcn.004f4a00
mov ebx, eax
test ebx, ebx
je 0x4fc9d8
mov esi, dword [ebx + 0xf0]
test ebp, ebp
je 0x4fc9a6
xor edi, edi
test esi, esi
jle 0x4fc9a2
push edi
mov ecx, ebx
call fcn.00505df0
mov ecx, dword [ebp + 8]
push eax
push ecx
mov ecx, ebp
call fcn.005bc7cb
inc edi
cmp edi, esi
jl 0x4fc989
mov edi, dword [esp + 0x3c]
mov edx, esi
dec esi
test edx, edx
je 0x4fc9ca
xor eax, eax
test ebp, ebp
sete al
mov edi, eax
push edi
push esi
mov ecx, ebx
call fcn.00504cf0
mov ecx, esi
dec esi
test ecx, ecx
jne 0x4fc9b6
mov edi, dword [esp + 0x3c]
push 0
push ebx
mov ecx, edi
call fcn.004b7e10
mov esi, dword [esp + 0x60]
mov eax, dword [esp + 0x18]
inc esi
cmp esi, eax
mov dword [esp + 0x60], esi
jl 0x4fc962
mov ebx, dword [esp + 0x54]
push ebp
sub esp, 0xc
xor eax, eax
mov esi, esp
sub esp, 0xc
xor ecx, ecx
xor edx, edx
mov dword [esi], ebx
mov ebx, dword [esp + 0x74]
mov dword [esi + 4], ebx
mov ebx, dword [esp + 0x78]
mov dword [esi + 8], ebx
mov esi, esp
push edi
mov dword [esi], eax
mov dword [esi + 4], ecx
mov dword [esi + 8], edx
mov esi, dword [esp + 0x3c]
mov ecx, esi
call fcn.00508ed0
push 0
push esi
mov ecx, edi
call fcn.004b7e10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x28
mov edx, dword [esp + 0x60]
push edx
mov edx, dword [esp + 0x58]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov dword [eax], edx
mov edx, dword [esp + 0x74]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x78]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x60]
mov eax, esp
push edi
mov dword [eax], edx
mov edx, dword [esp + 0x68]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [eax + 8], edx
call fcn.00508ed0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x28
mov ecx, dword [esp + 0x10]
push 0
push edi
call fcn.004f53c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x28
push 0
push edi
mov ecx, ebp
call fcn.004f53c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret 0x28