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

Disassembly:
sub esp, 0x10
mov eax, dword [esp + 0x24]
push ebx
push ebp
push esi
mov esi, eax
movzx ecx, al
shr esi, 0x10
and esi, 0xff
shl ecx, 0x10
and eax, 0xff00ff00
push edi
mov edi, dword [esp + 0x38]
xor ebx, ebx
or esi, ecx
or esi, eax
mov eax, edi
mov dword [esp + 0x10], ebx
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4c7d24
mov ebp, dword [esp + 0x3c]
sub eax, edx
cmp eax, ebp
cmovg eax, ebp
lea edx, [eax + eax*2]
mov eax, dword [0xa23e88]
add edx, edx
push edx
push 0x18
push eax
push 4
call fcn.004d2cd0
movss xmm0, dword [esp + 0x34]
cvttss2si edx, dword [esp + 0x38]
cvttss2si ecx, xmm0
cvtsi2ss xmm3, ecx
mov cl, byte [edi]
add esp, 0x10
cvtsi2ss xmm6, edx
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x28], xmm6
test cl, cl
je 0x4c7fe5
movsd xmm5, qword [0x6dccf8]
movss xmm0, dword [0x6dd480]
cmp ebx, ebp
jge 0x4c7fc8
inc ebx
cmp cl, 9
jne 0x4c7dd3
add dword [esp + 0x10], 6
cvtss2sd xmm1, xmm3
addsd xmm1, qword [0x6e4c10]
mulsd xmm1, qword [0x6e4c08]
cvttsd2si ecx, xmm1
cvtsi2ss xmm1, ecx
cvtss2sd xmm1, xmm1
mulsd xmm1, qword [0x6dd520]
inc edi
jmp 0x4c7fba
cvtss2sd xmm2, dword [esp + 0x2c]
movzx ecx, cl
movzx edx, byte [ecx*4 + 0x7b7cea]
sub ecx, 0x20
cvtsi2sd xmm1, edx
inc edi
mulsd xmm1, xmm2
cvtsd2ss xmm1, xmm1
movss dword [esp + 0x34], xmm1
test ecx, ecx
je 0x4c7fa7
cmp ecx, 0x69
jge 0x4c7fa7
movzx ebp, byte [ecx*4 + 0x7b7d6b]
cvtss2sd xmm2, dword [esp + 0x30]
cvtsi2ss xmm4, ebp
movzx ebp, byte [ecx*4 + 0x7b7d68]
movzx ecx, byte [ecx*4 + 0x7b7d69]
cvtss2sd xmm1, xmm4
mulsd xmm1, xmm2
cvtsd2ss xmm1, xmm1
movss dword [esp + 0x38], xmm1
cvtss2sd xmm4, xmm4
mulsd xmm4, qword [0x6e4c00]
cvtsd2ss xmm4, xmm4
movss dword [esp + 0x14], xmm4
cvtss2sd xmm4, dword [esp + 0x34]
cvtsi2ss xmm1, ebp
cvtss2sd xmm1, xmm1
mulsd xmm1, xmm5
cvtsi2ss xmm7, edx
cvtss2sd xmm7, xmm7
mulsd xmm7, xmm5
cvtsd2ss xmm5, xmm7
movss dword [eax + 4], xmm6
movss dword [eax + 0x1c], xmm6
cvtsd2ss xmm1, xmm1
cvtss2sd xmm7, xmm3
addsd xmm4, xmm7
cvtss2sd xmm6, xmm6
cvtss2sd xmm5, xmm5
cvtss2sd xmm7, xmm1
addsd xmm5, xmm7
cvtss2sd xmm7, dword [esp + 0x38]
addsd xmm7, xmm6
cvtsd2ss xmm6, xmm7
movss dword [esp + 0x18], xmm6
movss dword [eax + 0x34], xmm6
cvtss2sd xmm6, dword [esp + 0x14]
cvtsi2ss xmm2, ecx
cvtss2sd xmm2, xmm2
mulsd xmm2, qword [0x6e4c00]
cvtsd2ss xmm2, xmm2
cvtsd2ss xmm4, xmm4
cvtss2sd xmm7, xmm2
addsd xmm6, xmm7
cvtsd2ss xmm6, xmm6
movss dword [eax + 0x18], xmm4
cvtsd2ss xmm5, xmm5
movss dword [eax + 0x30], xmm4
movss dword [eax + 0x44], xmm6
movss dword [eax + 0x48], xmm4
movss xmm4, dword [esp + 0x18]
movss dword [eax + 0x5c], xmm6
movss dword [eax + 0x74], xmm6
movss xmm6, dword [esp + 0x28]
movss dword [eax], xmm3
movss dword [eax + 0x10], xmm1
movss dword [eax + 0x14], xmm2
movss dword [eax + 0x28], xmm5
movss dword [eax + 0x2c], xmm2
movss dword [eax + 0x40], xmm5
movss dword [eax + 0x4c], xmm4
movss dword [eax + 0x58], xmm5
movss dword [eax + 0x60], xmm3
movss dword [eax + 0x64], xmm4
movss dword [eax + 0x70], xmm1
movss dword [eax + 0x78], xmm3
movss dword [eax + 0x7c], xmm6
movss dword [eax + 0x88], xmm1
movss dword [eax + 0x8c], xmm2
movss dword [eax + 0x80], xmm0
movss dword [eax + 0x68], xmm0
movss dword [eax + 0x50], xmm0
movss dword [eax + 0x38], xmm0
movss dword [eax + 0x20], xmm0
movss dword [eax + 8], xmm0
mov dword [eax + 0x84], esi
mov dword [eax + 0x6c], esi
mov dword [eax + 0x54], esi
mov dword [eax + 0x3c], esi
mov dword [eax + 0x24], esi
mov dword [eax + 0xc], esi
add eax, 0x90
movsd xmm5, qword [0x6dccf8]
mov ebp, dword [esp + 0x3c]
jmp 0x4c7fac
add dword [esp + 0x10], 6
cvtss2sd xmm1, dword [esp + 0x34]
cvtss2sd xmm2, xmm3
addsd xmm1, xmm2
mov cl, byte [edi]
cvtsd2ss xmm3, xmm1
test cl, cl
jne 0x4c7d92
mov eax, dword [esp + 0x10]
movss dword [esp + 0x24], xmm3
test eax, eax
je 0x4c7fe5
push eax
call fcn.004d27d0
movss xmm3, dword [esp + 0x28]
add esp, 4
cvtss2sd xmm1, dword [esp + 0x1c]
pop edi
pop esi
cvtss2sd xmm0, xmm3
pop ebp
subsd xmm0, xmm1
cvttsd2si eax, xmm0
pop ebx
add esp, 0x10
ret