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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4c41a9
sub esp, 0x74
lea eax, [0x687de0]
mov dword [esp], eax
call fcn.0040b7c0
mov eax, dword [esp + 4]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x90]
mov ebx, dword [esp + 0x88]
mov ebp, dword [esp + 0x80]
mov esi, dword [esp + 0x84]
mov edi, dword [esp + 0x7c]
jmp 0x4c3f45
mov eax, dword [esp + 0x30]
lea esi, [eax - 0x10]
mov eax, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, 0x10
mov ecx, dword [esp + 0x44]
lea edi, [ecx + esi]
lea ebp, [edx - 0x10]
mov ecx, dword [esp + 0x38]
lea edx, [ecx - 0x10]
mov ecx, edx
neg edx
sar edx, 0x1f
and edx, 0x10
mov ebx, dword [esp + 0x48]
add ebx, edx
mov edx, dword [esp + 0x34]
add edx, 0xfffffff0
mov esi, eax
mov eax, dword [esp + 0x4c]
mov eax, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x44], edi
cmp ecx, 0x10
jl 0x4c406b
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ebp, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
nop
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x50], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x58], ebx
mov ebp, dword [esp + 0x48]
mov dword [esp + 0x68], ebp
mov esi, dword [esp + 0x34]
mov dword [esp + 0x6c], esi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x70], edi
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], 0x10
mov dword [esp + 0x64], 0x10
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov ebp, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x3c]
jmp 0x4c415c
cmp edx, 0x10
jae 0x4c3ef8
jmp 0x4c417e
test ecx, ecx
je 0x4c4146
mov ecx, dword [esp + 0x78]
mov edx, dword [ecx]
mov ebx, dword [esp + 0x94]
test byte [ebx], al
mov ecx, dword [ecx + 4]
mov edx, dword [edx + 0x18]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], 0x10
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 0x10
mov dword [esp + 0x18], 0x10
call edx
nop
mov eax, dword [esp + 0x94]
movzx ecx, byte [eax + 0xf]
movzx edx, byte [eax + 0xe]
shl edx, 8
or ecx, edx
movzx edx, byte [eax + 0xd]
shl edx, 0x10
or ecx, edx
movzx edx, byte [eax + 0xc]
shl edx, 0x18
or edx, ecx
lea ecx, [edx + 1]
mov edx, ecx
shr ecx, 0x18
mov byte [eax + 0xc], cl
mov ecx, edx
shr edx, 0x10
mov byte [eax + 0xd], dl
mov edx, ecx
shr ecx, 8
mov byte [eax + 0xe], cl
mov byte [eax + 0xf], dl
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], 0x10
mov dword [esp + 0x20], 0x10
call fcn.004c45d0
add esp, 0x74
ret
mov dword [esi + ebx*4], edx
lea edx, [ebx + 1]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
cmp ebx, 4
jge 0x4c405d
cmp ebx, ebp
jae 0x4c419f
mov edx, dword [edi + ebx*4]
cmp ebx, 0x10
jae 0x4c4193
xor edx, dword [ecx + ebx*4]
cmp ebx, eax
jb 0x4c414a
jmp 0x4c418a
mov eax, 0x10
mov ecx, edx
call fcn.00462fb0
mov ecx, eax
mov eax, ebx
call fcn.00462f50
mov eax, ebx
mov ecx, 0x10
call fcn.00462f50
mov eax, ebx
mov ecx, ebp
call fcn.00462f50
nop
call fcn.00461ac0
jmp fcn.004c3ea0