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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
push edi
push ebx
sub esp, 0xa08
mov ebx, dword [ebp + 8]
lea ecx, [esp + 0x3c]
mov eax, dword [0x52cfb4]
xor eax, esp
mov dword [ecx + 0x9c4], eax
lea edi, [ebx + 0x134]
push ecx
push ebx
call fcn.00464420
add esp, 8
cmp dword [ebx + 0x50], 0
jle 0x463b11
xor ecx, ecx
mov edx, ebx
movsd xmm3, qword [0x4ca190]
mov ebx, ecx
movss xmm2, dword [0x4ca254]
movups xmm1, xmmword [0x4ca0a0]
movss xmm0, dword [0x4ca250]
mov dword [esp + 0x50], edi
mov edi, ecx
mov dword [esp + 0x28], esi
mov esi, ecx
push edi
push edi
push dword [esp + 0x44]
lea eax, [esp + 0x40]
push eax
push dword [ebp + 0xc]
push edx
call fcn.00435d10
mov edx, dword [ebp + 8]
mov dword [esp + 0x58], eax
add esp, 0x18
cmp dword [edx + 0x14b14], 2
je 0x463b78
cmp dword [edx + 0x4c], 0
jle 0x463af5
xor eax, eax
lea ecx, [ebx + edx + 0x134]
mov dword [esp + 0x2c], ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x48], edi
mov dword [esp + 0x60], eax
mov dword [esp + 0x30], esi
add ecx, esi
mov dword [esp + 0x58], ecx
mov esi, edx
mov dword [esp + 0x4c], ebx
mov ebx, eax
mov edi, dword [esp + 0x2c]
cmp dword [edi + 0x12b4], 2
movss xmm1, dword [esi + 0x14bb0]
jne 0x4639a9
movss xmm1, dword [esi + 0x14bb4]
cvtss2sd xmm1, xmm1
mulsd xmm1, qword [0x4ca190]
movsd xmm0, qword [0x4ca188]
call fcn.004864a0
cvtsd2ss xmm0, xmm0
mov eax, esi
mov edx, edi
movss dword [esi + 0x14bac], xmm0
call fcn.00463d90
mov eax, dword [edi + 0x1458]
xor ecx, ecx
mov dword [esp + 0x44], ecx
mov dword [edi + 0x129c], ecx
mov dword [esp + 0x54], eax
lea ecx, [eax*4]
neg ecx
lea edx, [esp + eax*4 + 0x64]
add ecx, 0x900
push ecx
push 0
push edx
call fcn.0048a380
lea ecx, [esp + 0x50]
push ecx
push dword [esp + 0x64]
lea ecx, [esp + 0x78]
push ecx
push edi
call dword [esi + 0x14f40]
add esp, 0x1c
movss xmm0, dword [esp + 0x44]
comiss xmm0, dword [0x4ca254]
jbe 0x463b5d
mov eax, dword [esi + 0x14c68]
and eax, 2
shr eax, 1
cmp dword [edi + 0x1300], 0
jle 0x463a5a
xor ecx, ecx
mov dword [esi + ecx*4 + 0x14bc8], eax
inc ecx
cmp ecx, dword [edi + 0x1300]
jl 0x463a4a
lea ecx, [esp + 0x964]
push ecx
push edi
push dword [esp + 0x60]
push esi
call fcn.00436140
push dword [esp + ebx*4 + 0x44]
push ebx
lea ecx, [esp + 0x7c]
push ecx
lea ecx, [esp + 0x980]
push ecx
push edi
push esi
call fcn.00460800
add esp, 0x28
push dword [esp + 0x50]
push ebx
push dword [esp + 0x50]
push esi
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x70]
add ecx, eax
lea ecx, [ecx + esi + 0x134]
mov dword [esp + 0x6c], ecx
call fcn.0045b700
add esp, 0x10
cmp dword [esi + 0x28], 1
je 0x463b4b
push dword [esp + 0x5c]
push esi
call fcn.004645d0
add esp, 8
inc ebx
add edi, 0x1484
add dword [esp + 0x60], 0x1484
add dword [esp + 0x58], 0x1e8
cmp ebx, dword [esi + 0x4c]
jl 0x463990
mov ebx, dword [esp + 0x4c]
mov edx, esi
mov esi, dword [esp + 0x30]
mov edi, dword [esp + 0x48]
inc edi
add ebx, 0x2908
add esi, 0x3d0
cmp edi, dword [edx + 0x50]
jl 0x46392d
mov esi, dword [esp + 0x28]
mov ebx, edx
push dword [esp + 0x3c]
push ebx
call fcn.004645f0
add esp, 8
mov ecx, dword [esp + 0xa00]
mov dword [esp + 0xa00], 0
xor ecx, esp
cmp ecx, dword [0x52cfb4]
jne 0x463b46
add esp, 0xa08
pop ebx
pop edi
mov esp, ebp
pop ebp
ret
call fcn.00497ce0
push dword [esp + 0x5c]
push esi
call fcn.0045a240
add esp, 8
jmp 0x463aba
push 0x900
push 0
lea ecx, [edi + 0x900]
push ecx
call fcn.0048a380
add esp, 0xc
jmp 0x463a89
lea eax, [ebx + edx + 0x134]
mov dword [esp + 0x18], eax
and eax, 0xf
je 0x463bdf
neg eax
mov dword [esp + 0x14], 0
add eax, 0x10
shr eax, 2
movss xmm3, dword [0x4ca250]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
movss xmm2, dword [ecx + edx*4]
movss xmm1, dword [ecx + edx*4 + 0x1484]
movaps xmm0, xmm2
addss xmm0, xmm1
subss xmm2, xmm1
mulss xmm0, xmm3
mulss xmm2, xmm3
movss dword [ecx + edx*4], xmm0
movss dword [ecx + edx*4 + 0x1484], xmm2
inc edx
cmp edx, eax
jb 0x463ba8
mov edx, dword [ebp + 8]
mov ecx, eax
neg ecx
and ecx, 7
neg ecx
mov dword [esp + 0x1c], ecx
movups xmm6, xmmword [0x4ca0a0]
lea ecx, [ecx + 0x240]
mov dword [esp + 0x20], ecx
mov edx, ecx
mov ecx, dword [esp + 0x18]
nop dword [eax + eax]
nop dword [eax + eax]
movups xmm1, xmmword [ecx + eax*4 + 0x1484]
movups xmm4, xmmword [ecx + eax*4 + 0x1494]
movups xmm2, xmmword [ecx + eax*4]
movups xmm5, xmmword [ecx + eax*4 + 0x10]
movaps xmm0, xmm2
movaps xmm3, xmm5
subps xmm2, xmm1
subps xmm5, xmm4
addps xmm0, xmm1
addps xmm3, xmm4
mulps xmm2, xmm6
mulps xmm5, xmm6
mulps xmm0, xmm6
mulps xmm3, xmm6
movups xmmword [ecx + eax*4 + 0x1484], xmm2
movups xmmword [ecx + eax*4 + 0x1494], xmm5
movups xmmword [ecx + eax*4], xmm0
movups xmmword [ecx + eax*4 + 0x10], xmm3
add eax, 8
cmp eax, edx
jb 0x463c10
mov eax, dword [esp + 0x1c]
mov edx, dword [ebp + 8]
lea ecx, [eax + 0x241]
cmp ecx, 0x240
ja 0x463d5c
mov eax, dword [esp + 0x20]
neg eax
add eax, 0x240
mov dword [esp + 0x20], eax
cmp eax, 4
jb 0x463d7f
and eax, 0xfffffffc
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], 0
movups xmm3, xmmword [0x4ca0a0]
lea ecx, [ecx + eax*4 + 0x900]
mov eax, dword [esp + 0x24]
mov edx, ecx
mov ecx, dword [esp + 0x10]
movups xmm1, xmmword [edx + ecx*4 + 0x1484]
movups xmm2, xmmword [edx + ecx*4]
movaps xmm0, xmm2
subps xmm2, xmm1
addps xmm0, xmm1
mulps xmm2, xmm3
mulps xmm0, xmm3
movups xmmword [edx + ecx*4 + 0x1484], xmm2
movups xmmword [edx + ecx*4], xmm0
add ecx, 4
cmp ecx, eax
jb 0x463cc7
mov dword [esp + 0x24], eax
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x24]
cmp eax, dword [esp + 0x20]
jae 0x463d5c
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
movss xmm3, dword [0x4ca250]
lea eax, [eax + ecx*4 + 0x900]
mov ecx, dword [esp + 0x20]
movss xmm2, dword [eax + edx*4]
movss xmm1, dword [eax + edx*4 + 0x1484]
movaps xmm0, xmm2
addss xmm0, xmm1
subss xmm2, xmm1
mulss xmm0, xmm3
mulss xmm2, xmm3
movss dword [eax + edx*4], xmm0
movss dword [eax + edx*4 + 0x1484], xmm2
inc edx
cmp edx, ecx
jb 0x463d25
mov edx, dword [ebp + 8]
mov eax, dword [ebp + 0x10]
push dword [esp + 0x40]
push dword [esp + 0x40]
push dword [eax + edi*4]
lea ecx, [esp + 0x40]
push ecx
call fcn.00435f60
mov edx, dword [ebp + 8]
add esp, 0x10
jmp 0x463958
mov dword [esp + 0x24], 0
jmp 0x463cfc