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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xcc
mov eax, dword [ebp + 8]
push ebx
mov ebx, ecx
mov dword [esp + 0x14], eax
push esi
push edi
cmp dword [ebx + 0x40], 0x2000
je 0x4bc70a
mov eax, dword [ebx + 0x3c]
test eax, eax
je 0x4bc6e8
push eax
call fcn.00588148
add esp, 4
mov dword [ebx + 0x3c], 0
push 0x2000
mov dword [ebx + 0x40], 0
call fcn.0058813f
mov dword [ebx + 0x3c], eax
add esp, 4
mov eax, dword [esp + 0x1c]
mov dword [ebx + 0x40], 0x2000
mov edi, dword [ebx + 0x3c]
mov esi, 0x2000
mov dword [esp + 0x14], 0
jmp 0x4bc724
mov eax, dword [esp + 0x1c]
mov eax, dword [eax]
lea edx, [esp + 0x20]
mov ecx, SysReAllocString
cmp esi, ecx
push edx
cmovb ecx, esi
push ecx
push edi
push dword [esp + 0x28]
call dword [eax + 0xc]
mov edx, dword [esp + 0x14]
mov ecx, eax
mov eax, dword [esp + 0x20]
add edx, eax
add edi, eax
mov dword [esp + 0x14], edx
sub esi, eax
test ecx, ecx
jne 0x4bcc39
test eax, eax
je 0x4bc762
test esi, esi
jne 0x4bc720
xor ecx, ecx
cmp edx, 0x2000
setne cl
jne 0x4bcc39
mov edx, dword [ebx + 0x3c]
mov dword [esp + 0x20], edx
cmp byte [edx + 0x1fe], 0x55
jne 0x4bc7c7
cmp byte [edx + 0x1ff], 0xaa
jne 0x4bc7c7
mov ecx, 9
mov edi, 1
shl edi, cl
mov dword [esp + 0x38], edi
mov eax, dword [edi + edx]
cmp eax, dword [0x5c2dc4]
jne 0x4bc7bf
mov eax, dword [edi + edx + 4]
cmp eax, dword [0x5c2dc8]
jne 0x4bc7bf
mov eax, dword [edi + edx + 8]
cmp eax, dword [0x5c2dcc]
je 0x4bc7d5
add ecx, 3
cmp ecx, 0xc
jbe 0x4bc791
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov dword [ebx + 0x28], ecx
mov eax, dword [edi + edx + 0xc]
cmp eax, edi
ja 0x4bc7c7
mov esi, dword [edi + edx + 0x10]
mov dword [edi + edx + 0x10], 0
mov edx, dword [ebx + 0x3c]
push eax
or eax, 0xffffffff
mov ecx, eax
lea edx, [edx + edi]
call fcn.0044a290
not eax
cmp eax, esi
jne 0x4bc7c7
mov esi, dword [esp + 0x20]
cmp dword [edi + esi + 0x18], 1
jne 0x4bc7c7
cmp dword [edi + esi + 0x1c], 0
jne 0x4bc7c7
mov eax, dword [edi + esi + 0x20]
movups xmm0, xmmword [edi + esi + 0x38]
mov dword [esp + 0x28], eax
mov eax, dword [edi + esi + 0x24]
movups xmmword [ebx + 0x2c], xmm0
mov edx, dword [edi + esi + 0x4c]
mov dword [esp + 0x20], eax
mov eax, dword [edi + esi + 0x48]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
test edx, edx
jne 0x4bc847
cmp eax, 2
jb 0x4bc7c7
mov ecx, 0x3f
sub ecx, dword [ebx + 0x28]
call fcn.005a80a0
or eax, edx
jne 0x4bc7c7
mov ecx, dword [edi + esi + 0x50]
mov dword [esp + 0x34], ecx
cmp ecx, 0x10000
ja 0x4bc7c7
mov edx, dword [edi + esi + 0x54]
mov dword [esp + 0x24], edx
lea eax, [edx - 0x80]
cmp eax, 0xf80
ja 0x4bc7c7
mov eax, dword [edi + esi + 0x58]
mov dword [esp + 0x48], eax
mov eax, edx
imul eax, ecx
mov dword [esp + 0x44], eax
lea esi, [eax - 1]
mov eax, edi
add esi, edi
neg eax
and esi, eax
cmp esi, dword [ebx + 0x40]
je 0x4bc8d8
mov eax, dword [ebx + 0x3c]
test eax, eax
je 0x4bc8be
push eax
call fcn.00588148
add esp, 4
mov dword [ebx + 0x3c], 0
mov dword [ebx + 0x40], 0
test esi, esi
je 0x4bc8d8
push esi
call fcn.0058813f
add esp, 4
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x40], esi
mov eax, dword [esp + 0x18]
mul edi
push 0
mov ecx, eax
mov eax, dword [esp + 0x18]
mul edi
push 0
add ecx, edx
mov edx, eax
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x24]
push dword [esp + 0x20]
mov dword [esp + 0x58], edx
push edx
mov eax, dword [ecx]
push ecx
call dword [eax + 0x10]
test eax, eax
jne 0x4bcc3b
mov edx, dword [ebx + 0x3c]
lea eax, [esp + 0x14]
mov ecx, dword [esp + 0x1c]
push eax
mov dword [esp + 0x18], esi
call fcn.00558f10
add esp, 4
test eax, eax
jne 0x4bcc3b
cmp esi, dword [esp + 0x14]
setne al
test eax, eax
jne 0x4bcc3b
push dword [esp + 0x44]
mov edx, dword [ebx + 0x3c]
or eax, 0xffffffff
mov ecx, eax
call fcn.0044a290
not eax
cmp eax, dword [esp + 0x48]
jne 0x4bc7c7
xor eax, eax
add esi, dword [esp + 0x4c]
mov dword [ebx + 0x20], esi
adc eax, dword [esp + 0x18]
cmp dword [esp + 0x34], 0
mov dword [ebx + 0x24], eax
mov dword [esp + 0x18], 0
jbe 0x4bcb32
xor ecx, ecx
mov dword [esp + 0x14], ecx
nop dword [eax]
nop word [eax + eax]
mov edx, dword [ebx + 0x3c]
add edx, ecx
mov dword [esp + 0x88], 0
movups xmm0, xmmword [edx]
mov eax, dword [edx + 0x24]
mov ecx, dword [edx + 0x20]
movups xmmword [esp + 0x50], xmm0
mov esi, dword [edx + 0x28]
movups xmm0, xmmword [edx + 0x10]
mov edi, dword [edx + 0x2c]
mov dword [esp + 0x74], eax
mov eax, dword [edx + 0x30]
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], ecx
movups xmm0, xmmword [edx + 0x38]
mov ecx, dword [edx + 0x34]
mov dword [esp + 0x80], eax
xor eax, eax
movups xmmword [esp + 0x8c], xmm0
mov dword [esp + 0x78], esi
movups xmm0, xmmword [edx + 0x48]
mov dword [esp + 0x7c], edi
mov dword [esp + 0x84], ecx
movups xmmword [esp + 0x9c], xmm0
movups xmm0, xmmword [edx + 0x58]
movups xmmword [esp + 0xac], xmm0
movups xmm0, xmmword [edx + 0x68]
movups xmmword [esp + 0xbc], xmm0
movq xmm0, qword [edx + 0x78]
movq qword [esp + 0xcc], xmm0
cmp byte [esp + eax + 0x50], 0
jne 0x4bca33
inc eax
cmp eax, 0x10
jb 0x4bca21
jmp 0x4bcb0f
cmp edi, dword [edx + 0x24]
jb 0x4bc7c7
ja 0x4bca47
cmp esi, dword [edx + 0x20]
jb 0x4bc7c7
mov ecx, 0x3f
mov eax, esi
sub ecx, dword [ebx + 0x28]
mov edx, edi
call fcn.005a80a0
or eax, edx
jne 0x4bc7c7
mov ecx, dword [ebx + 0x28]
add esi, 1
adc edi, eax
mov eax, esi
mov edx, edi
call fcn.005a8080
cmp dword [ebx + 0x24], edx
ja 0x4bca83
jb 0x4bca7d
cmp dword [ebx + 0x20], eax
jae 0x4bca83
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], edx
mov ecx, dword [ebx + 0x18]
cmp dword [ebx + 0x14], ecx
jne 0x4bcaf2
cmp ecx, 0x7fffffff
jae 0x4bcc44
mov eax, ecx
mov esi, SysReAllocString
shr eax, 2
sub esi, ecx
inc eax
cmp eax, esi
cmovbe esi, eax
add esi, ecx
mov ecx, 0x88
mov eax, esi
mul ecx
mov ecx, 0xffffffff
cmovb eax, ecx
push eax
call fcn.0058813f
mov edi, eax
add esp, 4
mov eax, dword [ebx + 0x14]
test eax, eax
je 0x4bcae1
imul eax, eax, 0x88
push eax
push dword [ebx + 0x10]
push edi
call fcn.0058aed0
add esp, 0xc
push dword [ebx + 0x10]
call fcn.00588148
add esp, 4
mov dword [ebx + 0x10], edi
mov dword [ebx + 0x18], esi
mov ecx, dword [ebx + 0x14]
lea esi, [esp + 0x50]
imul edi, ecx, 0x88
lea eax, [ecx + 1]
mov ecx, 0x22
mov dword [ebx + 0x14], eax
add edi, dword [ebx + 0x10]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
inc eax
add ecx, dword [esp + 0x24]
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], ecx
cmp eax, dword [esp + 0x34]
jb 0x4bc990
mov edi, dword [esp + 0x38]
mov eax, dword [ebx + 0x3c]
test eax, eax
je 0x4bcb49
push eax
call fcn.00588148
add esp, 4
mov dword [ebx + 0x3c], 0
mov esi, dword [esp + 0x28]
mov ecx, 0x3f
mov edx, dword [esp + 0x20]
mov eax, esi
mov dword [ebx + 0x40], 0
sub ecx, dword [ebx + 0x28]
call fcn.005a80a0
or eax, edx
jne 0x4bc7c7
mov eax, dword [esp + 0x20]
add esi, 1
adc eax, 0
mul edi
mov ecx, eax
mov eax, esi
mul edi
add ecx, edx
cmp dword [ebx + 0x24], ecx
ja 0x4bcb95
jb 0x4bcb8f
cmp dword [ebx + 0x20], eax
jae 0x4bcb95
mov dword [ebx + 0x20], eax
mov dword [ebx + 0x24], ecx
mov edi, dword [esp + 0x1c]
lea ecx, [esp + 0x38]
push ecx
push 2
push 0
mov eax, dword [edi]
push 0
push edi
call dword [eax + 0x10]
test eax, eax
jne 0x4bcc3b
mov esi, dword [ebx + 0x24]
mov ecx, dword [esp + 0x3c]
mov edx, dword [ebx + 0x20]
cmp esi, ecx
ja 0x4bcc2e
mov eax, dword [esp + 0x38]
jb 0x4bcbca
cmp edx, eax
jae 0x4bcc2e
sub eax, edx
sbb ecx, esi
mov dword [esp + 0x2c], ecx
jne 0x4bcc2e
jb 0x4bcbdd
cmp eax, 0x400000
ja 0x4bcc2e
mov eax, dword [edi]
push 0
push 0
push esi
push edx
push edi
call dword [eax + 0x10]
test eax, eax
jne 0x4bcc3b
push eax
mov byte [esp + 0x17], al
lea edx, [esp + 0x17]
lea eax, [esp + 0x2c]
xorps xmm0, xmm0
push 0x400000
push eax
mov ecx, edi
movlpd qword [esp + 0x34], xmm0
call fcn.004a5180
add esp, 0xc
test eax, eax
jne 0x4bcc2e
cmp byte [esp + 0x13], al
jne 0x4bcc2e
mov ecx, dword [esp + 0x28]
add dword [ebx + 0x20], ecx
mov eax, dword [ebx + 0x24]
adc eax, dword [esp + 0x2c]
mov dword [ebx + 0x24], eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
push 0x5f79a8
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0x7e5
push eax
call fcn.0058acc1
int3