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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
mov esi, eax
mov eax, dword [esi + 0x34]
push edi
cmp eax, 1
jne 0x4c0ce8
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0x34]
lea ecx, [eax + eax*4]
add ecx, ecx
mov dword [esi + 0x2c], ecx
mov ecx, dword [esi + 0x2c]
mov edi, dword [esi + 0xc]
push ecx
mov ecx, dword [esi]
call fcn.004a5600
mov ecx, dword [esi + 0xc]
call fcn.004a5110
mov eax, dword [ebp + 0xc]
lea eax, [eax + eax + 2]
mov dword [ebp - 0x10], eax
xor ecx, ecx
add eax, 2
mov edx, 2
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00596073
xor ebx, ebx
add esp, 4
mov dword [ebp - 4], eax
cmp eax, ebx
je 0x4c1057
mov edi, dword [esi + 0xc]
mov eax, dword [edi + 0xb0]
mov dword [ebp - 8], ebx
cmp eax, ebx
je 0x4c0d32
cmp eax, 2
jne 0x4c0d06
mov dword [ebp - 8], 1
jmp 0x4c0d32
cmp eax, 2
jne 0x4c0c81
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ebp + 8]
call fcn.004c09a0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 3
jne 0x4c0d14
mov dword [ebp - 8], 0xffffffff
jmp 0x4c0d32
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
push eax
call fcn.00401770
xor ecx, ecx
add esp, 4
cmp eax, 2
setne cl
lea ecx, [ecx + ecx - 1]
mov dword [ebp - 8], ecx
mov edi, dword [edi + 0x48]
mov ecx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
add edi, dword [esi + 0x20]
lea eax, [ecx + edx]
and edi, 3
mov edx, 1
mov dword [ebp - 0x18], eax
mov dword [ebp + 8], edx
mov dword [ebp - 0x14], edi
cmp ecx, eax
jae 0x4c1007
mov dword [ebp + 0xc], edx
jmp 0x4c0d63
mov ecx, dword [ebp - 0xc]
mov eax, dword [esi + 0x1c]
xor edx, edx
mov dword [esi + 0x1490], edx
cmp eax, 0xffffffff
jne 0x4c0d7c
cmp dword [esi + 0x14], edx
je 0x4c0d82
movzx eax, byte [ecx]
inc ecx
mov dword [esi + 0x1490], eax
movzx eax, byte [ecx]
mov edi, dword [esi + 0x14]
inc ecx
mov dword [ebp - 0xc], ecx
mov dword [esi + 0x1494], eax
cmp edi, edx
je 0x4c0db3
cmp dword [esi + 0x18], 1
jne 0x4c0db3
mov ecx, dword [esi + 0x1490]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x1494], ecx
mov dword [esi + 0x1490], edx
mov dword [esi + 0x1498], edx
mov dword [esi + 0x149c], edx
mov dword [esi + 0x14a0], edx
mov dword [esi + 0x14a4], edx
mov edx, dword [esi + 0x1490]
cmp dword [esi + edx*4 + 0x874], 0
je 0x4c0f4c
mov ecx, dword [esi + 0x20]
mov eax, dword [esi + 0x1494]
lea eax, [ecx + eax*4]
mov ecx, dword [esi + edx*4 + 0x874]
mov ecx, dword [ecx + 0x8cc]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
mov dword [esi + 0x14a0], eax
mov ecx, dword [eax]
mov dword [esi + 0x14a4], ecx
test ecx, ecx
je 0x4c0f4c
mov eax, dword [ecx + 0x34]
test eax, eax
jns 0x4c0e4a
mov eax, dword [ebp - 8]
test eax, eax
jle 0x4c0e32
mov dx, word [esi + 0x1494]
mov eax, dword [ebp - 4]
mov word [eax + ebx*2], dx
jmp 0x4c0eae
jns 0x4c0ea2
mov ecx, dword [esi + 0x1494]
movzx edx, byte [ecx + 0x60d628]
mov eax, dword [ebp - 4]
mov word [eax + ebx*2], dx
jmp 0x4c0eae
cmp eax, 0xffff
ja 0x4c0e5a
mov ecx, dword [ebp - 4]
mov word [ecx + ebx*2], ax
jmp 0x4c0eae
cmp eax, 0x10ffff
ja 0x4c0ea2
mov edx, dword [ebp + 0xc]
cmp edx, dword [ebp - 0x10]
jge 0x4c0ea2
mov ecx, dword [ebp - 4]
sar eax, 0xa
sub eax, 0x2840
mov word [ecx + ebx*2], ax
mov eax, dword [esi + 0x14a4]
mov ax, word [eax + 0x34]
mov edi, 0x3ff
and ax, di
mov edi, 0xdc00
or ax, di
mov word [ecx + ebx*2 + 2], ax
add ebx, 2
add edx, 2
mov dword [ebp + 0xc], edx
jmp 0x4c0eb2
mov edx, dword [ebp - 4]
mov ecx, 0x3f
mov word [edx + ebx*2], cx
inc ebx
inc dword [ebp + 0xc]
test ebx, ebx
jle 0x4c0ec8
mov eax, dword [ebp - 4]
cmp word [eax + ebx*2 - 2], 0x20
je 0x4c0ec8
mov dword [ebp + 8], 0
mov ecx, dword [esi + 0xc]
mov edx, dword [ebp - 0x14]
inc dword [ecx + edx*4 + 0x68]
lea eax, [ecx + edx*4 + 0x68]
mov eax, dword [esi + 0x14a4]
mov ecx, dword [eax + 0x10]
mov dword [esi + 0x1498], ecx
mov eax, dword [eax + 0x14]
mov ecx, dword [esi + 0xc]
mov dword [esi + 0x149c], eax
add dword [ecx + 0x80], eax
mov edi, dword [ecx + 0x80]
mov eax, 0x10624dd3
imul edi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
test eax, eax
jle 0x4c0f22
mov edx, eax
imul edx, edx, 0x3e8
sub edi, edx
mov dword [ecx + 0x80], edi
mov edx, dword [ecx + 0x48]
test edx, edx
jne 0x4c0f2e
add dword [ecx + 0x78], eax
jmp 0x4c0fa4
cmp edx, 1
jne 0x4c0f38
add dword [ecx + 0x7c], eax
jmp 0x4c0fa4
cmp edx, 2
jne 0x4c0f42
sub dword [ecx + 0x78], eax
jmp 0x4c0fa4
cmp edx, 3
jne 0x4c0fa4
sub dword [ecx + 0x7c], eax
jmp 0x4c0fa4
mov eax, dword [esi + 0x1494]
cmp eax, dword [esi + 0x3c]
jne 0x4c0fa4
test edi, edi
je 0x4c0f60
cmp edx, dword [esi + 0x40]
jne 0x4c0fa4
mov ecx, dword [esi + 0xc]
cmp dword [ecx + 0xc4], 0
je 0x4c0f7c
mov eax, dword [ecx + 0xc8]
imul eax, dword [ecx + 0x38]
cdq
idiv dword [ecx + 0x34]
jmp 0x4c0f83
mov edx, dword [esi + 0x20]
mov eax, dword [esi + edx*4 + 0x44]
mov dword [esi + 0x1498], eax
mov eax, dword [esi + 0x149c]
call fcn.004a5cf0
mov edx, dword [ebp - 4]
mov ecx, 0x20
mov word [edx + ebx*2], cx
inc ebx
inc dword [ebp + 0xc]
cmp dword [ebp + 8], 0
je 0x4c0fca
test ebx, ebx
jle 0x4c0fca
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x78]
mov dword [eax + 0x84], ecx
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0x7c]
dec ebx
dec dword [ebp + 0xc]
mov dword [eax + 0x88], edx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x48]
mov edx, dword [esi + 0x1498]
test ecx, ecx
jne 0x4c0fdf
add dword [eax + 0x78], edx
jmp 0x4c0ffb
cmp ecx, 1
jne 0x4c0fe9
add dword [eax + 0x7c], edx
jmp 0x4c0ffb
cmp ecx, 2
jne 0x4c0ff3
sub dword [eax + 0x78], edx
jmp 0x4c0ffb
cmp ecx, 3
jne 0x4c0ffb
sub dword [eax + 0x7c], edx
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0xc], eax
jb 0x4c0d60
mov edx, dword [ebp - 4]
xor ecx, ecx
mov word [edx + ebx*2], cx
mov eax, dword [esi + 0xc]
mov ecx, dword [eax + 0x38]
mov edx, dword [eax + 0x20]
mov eax, dword [eax + 0x1c]
push edx
push eax
push ecx
push ecx
mov ecx, dword [ebp + 0x10]
call fcn.0045f1a0
mov eax, dword [esi + 0xc]
mov edx, dword [eax + 0x88]
mov eax, dword [eax + 0x84]
mov edi, dword [ebp - 4]
push edx
push eax
mov eax, edi
mov ebx, ecx
call fcn.0045f210
mov ecx, dword [esi + 0xc]
call fcn.004a5260
push edi
call dword [sym.imp.MSVCR100.dll_void___cdecl_operator_delete___void__]
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc