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

Disassembly:
sub esp, 0xa0
push ebx
push ebp
mov ebp, dword [0x53151c]
push esi
push edi
mov edi, dword [esp + 0xb4]
cmp byte [edi + 0x7d], 0
movss xmm2, dword [edi + 0x3c]
movss xmm0, dword [edi + 0x40]
mov ebx, dword [edi + 8]
mov byte [edi + 0x7f], 0
movss dword [esp + 0x10], xmm2
movss dword [esp + 0x2c], xmm0
je 0x42be07
cmp byte [esp + 0xbc], 0
movss xmm1, dword [ebp + 0x1554]
movss dword [esp + 0x14], xmm1
movss dword [ebp + 0x1554], xmm0
je 0x42bc3c
cmp byte [ebp + 0x1b32], 0
mov eax, 0x160
je 0x42bc41
mov eax, 0x170
mov esi, dword [0x53151c]
push 0xf
push ecx
movss dword [esp], xmm2
movups xmm1, xmmword [eax + esi + 0x1510]
mov eax, dword [esp + 0xc0]
movss xmm0, dword [esi + 0x1510]
movups xmmword [esp + 0x24], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm0, xmm1
movss dword [esp + 0x30], xmm0
movss xmm0, dword [eax + 8]
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax + 0xc]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax]
movss dword [esp + 0x3c], xmm0
movss xmm0, dword [eax + 4]
lea eax, [esp + 0x24]
movss dword [esp + 0x40], xmm0
mov edi, dword [esi + 0x19b0]
push eax
call fcn.0041e320
mov ecx, dword [edi + 0x274]
add esp, 4
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x44]
push eax
call fcn.004333a0
movss xmm2, dword [esi + 0x1554]
comiss xmm2, dword [0x48f4f0]
movss dword [esp + 0x18], xmm2
jbe 0x42bdee
mov eax, dword [0x53151c]
push ecx
movss dword [esp], xmm2
push 0xf
movups xmm1, xmmword [eax + 0x1620]
push ecx
movss xmm0, dword [eax + 0x1510]
lea eax, [esp + 0x28]
movups xmmword [esp + 0x28], xmm1
shufps xmm1, xmm1, 0xff
mulss xmm0, xmm1
movss xmm1, dword [0x48f4f4]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [esp + 0x48]
addss xmm0, xmm1
movss dword [esp + 0x58], xmm0
movss xmm0, dword [esp + 0x4c]
addss xmm0, xmm1
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [esp + 0x40]
addss xmm0, xmm1
movss dword [esp + 0x50], xmm0
movss xmm0, dword [esp + 0x44]
addss xmm0, xmm1
movss xmm1, dword [esp + 0x1c]
movss dword [esp], xmm1
push eax
movss dword [esp + 0x58], xmm0
call fcn.0041e320
mov ecx, dword [edi + 0x274]
add esp, 4
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.004332b0
mov eax, dword [0x53151c]
push ecx
movups xmm0, xmmword [eax + 0x1610]
movups xmmword [esp + 0x20], xmm0
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [eax + 0x1510]
lea eax, [esp + 0x20]
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esp + 0x1c]
movss dword [esp], xmm0
movss xmm0, dword [esp + 0x14]
push 0xf
push ecx
movss dword [esp], xmm0
push eax
call fcn.0041e320
mov ecx, dword [edi + 0x274]
add esp, 4
push eax
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x48]
push eax
call fcn.004332b0
movss xmm0, dword [esp + 0x14]
pop edi
pop esi
movss dword [ebp + 0x1554], xmm0
pop ebp
pop ebx
add esp, 0xa0
ret
test bl, bl
js 0x42bf73
test ebx, 0x6000000
je 0x42be1e
mov eax, 0xf0
jmp 0x42be31
mov eax, ebx
and eax, 0x1000000
neg eax
sbb eax, eax
and eax, 0x10
add eax, 0xd0
mov ecx, dword [0x53151c]
movups xmm1, xmmword [eax + ecx + 0x1510]
lea eax, [esp + 0x1c]
movss xmm0, dword [ecx + 0x1510]
movups xmmword [esp + 0x1c], xmm1
push eax
shufps xmm1, xmm1, 0xff
mulss xmm0, xmm1
movss dword [esp + 0x2c], xmm0
call fcn.0041e320
add esp, 4
mov ecx, eax
test byte [ebp + 0x1a2c], 0x40
xorps xmm1, xmm1
je 0x42bebb
movss xmm2, dword [ebp + 0x1a78]
movss xmm0, dword [0x48f4f4]
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jnp 0x42bebb
comiss xmm1, xmm2
jbe 0x42be98
xorps xmm0, xmm0
jmp 0x42be9c
minss xmm0, xmm2
mulss xmm0, dword [0x4a7468]
and ecx, 0xffffff
addss xmm0, dword [0x48fc20]
cvttss2si eax, xmm0
shl eax, 0x18
or ecx, eax
movss xmm3, dword [edi + 0xc]
mov esi, ebx
movss xmm4, dword [edi + 0x10]
movaps xmm0, xmm3
addss xmm0, dword [edi + 0x14]
movss dword [esp + 0x58], xmm0
movss xmm0, dword [edi + 0x18]
addss xmm0, xmm4
movss dword [esp + 0x5c], xmm0
and esi, 1
je 0x42beee
xorps xmm0, xmm0
jmp 0x42bf25
mov eax, dword [0x53151c]
mov edx, dword [edi + 0x2f0]
movss xmm2, dword [eax + 0x18c8]
mulss xmm2, dword [edi + 0x26c]
test edx, edx
je 0x42bf15
mulss xmm2, dword [edx + 0x26c]
movss xmm0, dword [eax + 0x154c]
addss xmm0, xmm0
addss xmm0, xmm2
test esi, esi
addss xmm4, xmm0
movss xmm0, dword [esp + 0x10]
addss xmm3, xmm1
mov edx, 0xf
mov eax, 0xc
cmovne eax, edx
push eax
push ecx
movss dword [esp], xmm0
lea eax, [esp + 0x60]
push ecx
mov ecx, dword [edi + 0x274]
push eax
lea eax, [esp + 0x70]
movss dword [esp + 0x70], xmm3
push eax
movss dword [esp + 0x78], xmm4
call fcn.004333a0
movss xmm2, dword [esp + 0x10]
jmp 0x42bf78
mov esi, ebx
and esi, 1
test esi, esi
jne 0x42bfdd
movzx eax, byte [esp + 0xbc]
mov ecx, dword [0x53151c]
add eax, 0x15
add ecx, 0x1510
add eax, eax
push 3
push ecx
movss dword [esp], xmm2
movups xmm1, xmmword [ecx + eax*8]
lea eax, [esp + 0x24]
movss xmm0, dword [ecx]
movups xmmword [esp + 0x24], xmm1
push eax
shufps xmm1, xmm1, 0xff
mulss xmm0, xmm1
movss dword [esp + 0x34], xmm0
call fcn.0041e320
mov ecx, dword [esp + 0xc4]
add esp, 4
push eax
lea eax, [ecx + 8]
push eax
push ecx
mov ecx, dword [edi + 0x274]
call fcn.004333a0
test ebx, 0x400
je 0x42c200
mov edx, dword [edi + 8]
mov eax, dword [0x53151c]
test dl, 1
je 0x42bffb
xorps xmm3, xmm3
jmp 0x42c02d
movss xmm1, dword [eax + 0x18c8]
mov ecx, dword [edi + 0x2f0]
mulss xmm1, dword [edi + 0x26c]
test ecx, ecx
je 0x42c01d
mulss xmm1, dword [ecx + 0x26c]
movss xmm3, dword [eax + 0x154c]
addss xmm3, xmm3
addss xmm3, xmm1
movss xmm6, dword [edi + 0x10]
xorps xmm4, xmm4
addss xmm3, xmm6
test edx, 0x400
je 0x42c081
movss xmm1, dword [eax + 0x18c8]
mov ecx, dword [edi + 0x2f0]
mulss xmm1, dword [edi + 0x26c]
test ecx, ecx
je 0x42c063
mulss xmm1, dword [ecx + 0x26c]
movss xmm0, dword [eax + 0x154c]
movss xmm2, dword [edi + 0x148]
addss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
jmp 0x42c084
xorps xmm2, xmm2
movss xmm1, dword [edi + 0xc]
movaps xmm0, xmm3
movss xmm5, dword [edi + 0x1c]
maxss xmm0, xmm6
addss xmm5, xmm1
movaps xmm7, xmm1
addss xmm2, xmm3
maxss xmm7, xmm1
addss xmm6, dword [edi + 0x18]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edi + 0x14]
addss xmm0, xmm1
movss dword [esp + 0x30], xmm7
minss xmm2, xmm6
minss xmm5, xmm0
movss dword [esp + 0x14], xmm2
movss dword [esp + 0x28], xmm2
movss dword [esp + 0x24], xmm5
test esi, esi
je 0x42c0e4
movss xmm3, dword [esp + 0x10]
jmp 0x42c0e7
xorps xmm3, xmm3
movups xmm0, xmmword [eax + 0x1690]
push 3
subss xmm5, dword [esp + 0x30]
movups xmmword [esp + 0xa4], xmm0
push ecx
shufps xmm0, xmm0, 0xff
mulss xmm0, dword [eax + 0x1510]
lea eax, [esp + 0xa8]
movss dword [esp], xmm3
push eax
movss dword [esp + 0xb8], xmm0
movaps xmm0, xmm2
subss xmm0, xmm4
movss dword [esp + 0x74], xmm5
movss dword [esp + 0x78], xmm0
movaps xmm0, xmm7
addss xmm0, dword [esp + 0x38]
movss dword [esp + 0x7c], xmm0
movss xmm0, dword [esp + 0x24]
addss xmm0, xmm4
movss dword [esp + 0x80], xmm0
call fcn.0041e320
mov ecx, dword [edi + 0x274]
add esp, 4
push eax
lea eax, [esp + 0x74]
push eax
lea eax, [esp + 0x80]
push eax
call fcn.004333a0
movss xmm2, dword [ebp + 0x1554]
xorps xmm1, xmm1
comiss xmm2, xmm1
jbe 0x42c200
movss xmm0, dword [edi + 0x10]
addss xmm0, dword [edi + 0x18]
movss xmm1, dword [esp + 0x14]
comiss xmm0, xmm1
jbe 0x42c200
mov eax, dword [esp + 0x24]
sub esp, 8
movss xmm0, dword [esp + 0x38]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x30]
movss dword [esp + 4], xmm2
mov dword [esp], 0x3f800000
push 5
mov dword [esp + 0x88], eax
movss dword [esp + 0x8c], xmm0
movss dword [esp + 0x90], xmm1
call fcn.004207e0
mov ecx, dword [edi + 0x274]
add esp, 8
push eax
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x8c]
push eax
call fcn.00432710
cmp byte [edi + 0x78], 0
je 0x42c210
push 0
call fcn.00456590
add esp, 4
cmp byte [edi + 0x79], 0
je 0x42c220
push 1
call fcn.00456590
add esp, 4
test bl, 2
jne 0x42c5b6
xor ebx, ebx
mov dword [esp + 0x18], ebx
cmp dword [esp + 0xc0], ebx
jle 0x42c5b6
movss xmm4, dword [esp + 0x2c]
mov ebp, 0x4c8274
movaps xmm0, xmm4
addss xmm0, dword [esp + 0x10]
movss dword [esp + 0x3c], xmm0
nop word [eax + eax]
movss xmm0, dword [edi + 0xc]
mov ecx, ebx
movss xmm1, dword [edi + 0x10]
movaps xmm2, xmm0
addss xmm2, dword [edi + 0x14]
movss xmm3, dword [edi + 0x18]
and ecx, 1
addss xmm3, xmm1
mov dword [esp + 0x34], ecx
subss xmm2, xmm0
subss xmm3, xmm1
mulss xmm2, dword [ebp - 0xc]
mulss xmm3, dword [ebp - 8]
addss xmm2, xmm0
movss xmm0, dword [esp + 0xc8]
addss xmm3, xmm1
movss dword [esp + 0x30], xmm2
movss dword [esp + 0x14], xmm3
je 0x42c2cc
movss dword [esp + 0x90], xmm4
movaps xmm1, xmm4
movss dword [esp + 0x94], xmm0
jmp 0x42c2e1
movss dword [esp + 0x88], xmm0
movaps xmm1, xmm0
movss dword [esp + 0x8c], xmm4
movss xmm0, dword [ebp - 4]
lea eax, [esp + 0x8c]
mov esi, dword [edi + 0x274]
lea edx, [esp + 0x94]
mulss xmm0, xmm1
test ecx, ecx
cmovne eax, edx
mov ebx, dword [esi + 0x58]
mov ecx, dword [esi + 0x5c]
addss xmm0, xmm2
movss dword [esp + 0x44], xmm0
movss xmm0, dword [eax]
mulss xmm0, dword [ebp]
addss xmm0, xmm3
movss dword [esp + 0x48], xmm0
cmp ebx, ecx
jne 0x42c3d4
inc ebx
test ecx, ecx
je 0x42c33e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x42c343
mov eax, 8
cmp eax, ebx
cmovg ebx, eax
cmp ebx, ecx
jle 0x42c3d4
mov eax, dword [0x53151c]
test eax, eax
je 0x42c35f
inc dword [eax + 0x374]
push dword [0x531524]
lea eax, [ebx*8]
push eax
call dword [0x4c8260]
mov edx, dword [esi + 0x60]
add esp, 8
mov dword [esp + 0x54], eax
test edx, edx
je 0x42c3bc
mov ecx, dword [esi + 0x58]
shl ecx, 3
push ecx
push edx
push eax
call fcn.0046ded0
mov ecx, dword [esi + 0x60]
add esp, 0xc
test ecx, ecx
je 0x42c3a8
mov eax, dword [0x53151c]
test eax, eax
je 0x42c3a8
dec dword [eax + 0x374]
push dword [0x531524]
push ecx
call dword [0x4c8264]
mov eax, dword [esp + 0x5c]
add esp, 8
movss xmm2, dword [esp + 0x30]
movss xmm3, dword [esp + 0x14]
movss xmm4, dword [esp + 0x2c]
mov dword [esi + 0x60], eax
mov dword [esi + 0x5c], ebx
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x60]
mov eax, dword [esp + 0x44]
movss xmm0, dword [esp + 0xc8]
mov dword [edx + ecx*8], eax
mov eax, dword [esp + 0x48]
mov dword [edx + ecx*8 + 4], eax
inc dword [esi + 0x58]
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x42c414
movss dword [esp + 0xa4], xmm4
movaps xmm4, xmm0
movss dword [esp + 0xa0], xmm0
jmp 0x42c426
movss dword [esp + 0x98], xmm4
movss dword [esp + 0x9c], xmm0
movss xmm0, dword [ebp - 4]
lea eax, [esp + 0x9c]
mov esi, dword [edi + 0x274]
lea edx, [esp + 0xa4]
mulss xmm0, xmm4
test ecx, ecx
cmovne eax, edx
mov ebx, dword [esi + 0x58]
mov ecx, dword [esi + 0x5c]
addss xmm0, xmm2
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [eax]
mulss xmm0, dword [ebp]
addss xmm0, xmm3
movss dword [esp + 0x50], xmm0
cmp ebx, ecx
jne 0x42c50f
inc ebx
test ecx, ecx
je 0x42c483
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x42c488
mov eax, 8
cmp eax, ebx
cmovg ebx, eax
cmp ebx, ecx
jle 0x42c50f
mov eax, dword [0x53151c]
test eax, eax
je 0x42c4a0
inc dword [eax + 0x374]
push dword [0x531524]
lea eax, [ebx*8]
push eax
call dword [0x4c8260]
mov edx, dword [esi + 0x60]
add esp, 8
mov dword [esp + 0x34], eax
test edx, edx
je 0x42c4fd
mov ecx, dword [esi + 0x58]
shl ecx, 3
push ecx
push edx
push eax
call fcn.0046ded0
mov ecx, dword [esi + 0x60]
add esp, 0xc
test ecx, ecx
je 0x42c4e9
mov eax, dword [0x53151c]
test eax, eax
je 0x42c4e9
dec dword [eax + 0x374]
push dword [0x531524]
push ecx
call dword [0x4c8264]
mov eax, dword [esp + 0x3c]
add esp, 8
movss xmm2, dword [esp + 0x30]
movss xmm3, dword [esp + 0x14]
mov dword [esi + 0x60], eax
mov dword [esi + 0x5c], ebx
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x60]
mov eax, dword [esp + 0x4c]
movss xmm0, dword [esp + 0x3c]
mov dword [edx + ecx*8], eax
mov eax, dword [esp + 0x50]
mov dword [edx + ecx*8 + 4], eax
lea eax, [esp + 0x1c]
inc dword [esi + 0x58]
mulss xmm0, dword [ebp - 4]
push dword [ebp + 8]
push dword [ebp + 4]
addss xmm0, xmm2
push ecx
mov ecx, dword [edi + 0x274]
movss dword [esp + 0x28], xmm0
movss xmm0, dword [esp + 0x48]
mulss xmm0, dword [ebp]
addss xmm0, xmm3
movss dword [esp + 0x2c], xmm0
movss xmm0, dword [esp + 0x1c]
movss dword [esp], xmm0
push eax
call fcn.00436640
mov eax, dword [esp + 0xc4]
mov esi, dword [edi + 0x274]
mov ecx, esi
mov ebx, dword [esp + 0x18]
push dword [eax + ebx*4]
push dword [esi + 0x58]
push dword [esi + 0x60]
call fcn.00431c80
movss xmm4, dword [esp + 0x2c]
inc ebx
add ebp, 0x18
mov dword [esi + 0x58], 0
mov dword [esp + 0x18], ebx
cmp ebx, dword [esp + 0xc0]
jl 0x42c260
push edi
call fcn.0042c5d0
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret