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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x24
push ebx
push esi
mov esi, dword [0x101c18e4]
push edi
mov byte [esi + 0x357], 0
mov dword [esi + 0x1e44], 0
mov dword [esi + 0x1e48], 0
mov bh, byte [esi + 8]
and bh, 1
test byte [esi + 8], 2
mov byte [esp + 0x13], bh
je 0x1005c7bd
test byte [esi + 0xc], 1
je 0x1005c7bd
cmp dword [esi + 0x1d74], 3
lea ecx, [esi + 0x1d74]
mov bl, 1
xorps xmm1, xmm1
je 0x1005c7c8
movss xmm0, dword [esi + 0x300]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x308]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x304]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x30c]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x310]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x314]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x318]
comiss xmm0, xmm1
ja 0x1005c7b1
movss xmm0, dword [esi + 0x31c]
lea ecx, [esi + 0x1d74]
comiss xmm0, xmm1
jbe 0x1005c7c8
mov dword [esi + 0x1d74], 3
jmp 0x1005c7c2
xor bl, bl
xorps xmm1, xmm1
lea ecx, [esi + 0x1d74]
test bh, bh
je 0x1005c913
mov eax, dword [esi + 0x64]
test eax, eax
js 0x1005c7f2
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c7f2
mov dword [esi + 0x300], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x68]
test eax, eax
js 0x1005c814
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c814
mov dword [esi + 0x308], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x6c]
test eax, eax
js 0x1005c836
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c836
mov dword [esi + 0x304], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x38]
test eax, eax
js 0x1005c858
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c858
mov dword [esi + 0x344], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x3c]
test eax, eax
js 0x1005c87a
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c87a
mov dword [esi + 0x348], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x40]
test eax, eax
js 0x1005c89c
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c89c
mov dword [esi + 0x34c], 0x3f800000
mov dword [ecx], 2
mov eax, dword [esi + 0x44]
test eax, eax
js 0x1005c8be
mov al, byte [eax + esi + 0x100]
test al, al
je 0x1005c8be
mov dword [esi + 0x350], 0x3f800000
mov dword [ecx], 2
mov al, byte [esi + 0xfc]
test al, al
je 0x1005c8d2
mov dword [esi + 0x338], 0x3f800000
cmp byte [esi + 0xfd], 0
je 0x1005c8e5
mov dword [esi + 0x33c], 0x3f800000
cmp byte [esi + 0xfe], 0
je 0x1005c913
test al, al
jne 0x1005c913
mov dword [esi + 0x340], 0x3f800000
cmp byte [esi + 0x1e60], al
je 0x1005c913
cmp dword [esi + 0x151c], 0
jle 0x1005c913
mov byte [esi + 0x1e60], al
movups xmm0, xmmword [esi + 0x146c]
mov eax, dword [esi + 0x14bc]
lea ecx, [esi + 0x146c]
movss xmm2, dword [0x101b85d4]
movups xmmword [esi + 0x14c0], xmm0
movups xmm0, xmmword [ecx + 0x10]
movups xmmword [esi + 0x14d0], xmm0
movups xmm0, xmmword [ecx + 0x20]
movups xmmword [esi + 0x14e0], xmm0
movups xmm0, xmmword [ecx + 0x30]
movups xmmword [esi + 0x14f0], xmm0
movups xmm0, xmmword [ecx + 0x40]
movups xmmword [esi + 0x1500], xmm0
mov dword [esi + 0x1510], eax
mov eax, 0x15
nop dword [eax]
movss xmm0, dword [ecx - 0x116c]
comiss xmm0, xmm1
jbe 0x1005c992
movss xmm0, dword [ecx]
comiss xmm1, xmm0
jbe 0x1005c98b
movaps xmm0, xmm1
jmp 0x1005c995
addss xmm0, dword [esi + 0x18]
jmp 0x1005c995
movaps xmm0, xmm2
movss dword [ecx], xmm0
add ecx, 4
sub eax, 1
jne 0x1005c970
mov eax, dword [esi + 0x1d9c]
test eax, eax
je 0x1005ca08
mov edx, dword [esi + 0x1d44]
test edx, edx
je 0x1005ca08
mov ecx, dword [esi + 0x1d8c]
mov dword [esi + 0x1d48], eax
mov dword [esi + 0x1d8c], ecx
mov dword [esi + 0x1d4c], 0
mov dword [edx + ecx*4 + 0x33c], eax
add ecx, ecx
mov eax, dword [esi + 0x1d44]
movups xmm0, xmmword [esi + 0x1da0]
movups xmmword [eax + ecx*8 + 0x344], xmm0
cmp byte [esi + 0x1d9a], 0
je 0x1005ca08
mov word [esi + 0x1d95], 1
mov byte [esi + 0x1d97], 1
cmp byte [esi + 0x1db0], 0
mov word [esi + 0x1d99], 0
mov dword [esi + 0x1d9c], 0
mov dword [esi + 0x1d64], 0
je 0x1005ca33
call fcn.1005d650
cmp dword [esi + 0x1db8], 2
jne 0x1005ca5f
cmp dword [esi + 0x1dd0], 0
jne 0x1005ca55
cmp dword [esi + 0x1e20], 0
jne 0x1005ca55
mov byte [esi + 0x1d96], 0
mov dword [esi + 0x1db8], 0
cmp byte [esi + 0x1d95], 0
je 0x1005cad8
cmp byte [esi + 0x1d94], 0
je 0x1005cad8
test byte [esi + 8], 4
je 0x1005cad1
test byte [esi + 0xc], 4
je 0x1005cad1
cmp byte [esi + 0x1d96], 0
jne 0x1005cad1
cmp byte [esi + 0x1d97], 0
je 0x1005cad1
cmp dword [esi + 0x1d44], 0
je 0x1005cad1
lea ecx, [esp + 0x20]
call fcn.1005c250
movss xmm0, dword [eax]
movss xmm1, dword [eax + 4]
movss dword [esi + 0x380], xmm0
movss dword [esi + 0x384], xmm1
movss dword [esi + 0xe4], xmm0
movss dword [esi + 0xe8], xmm1
mov byte [esi + 0x357], 1
mov byte [esi + 0x1d95], 0
mov ecx, dword [esi + 0x1d44]
mov byte [esi + 0x1d94], 0
mov dword [esi + 0x1d60], 0
test ecx, ecx
je 0x1005cb1c
mov eax, ecx
cmp dword [eax + 0x32c], eax
je 0x1005cb12
test dword [eax + 0x10], 0x14000000
jne 0x1005cb12
mov eax, dword [eax + 0x328]
test eax, eax
jne 0x1005caf5
jmp 0x1005cb1c
cmp eax, ecx
je 0x1005cb1c
mov dword [eax + 0x338], ecx
mov eax, dword [esi + 0x1d44]
test eax, eax
je 0x1005cb42
cmp dword [eax + 0x338], 0
je 0x1005cb42
cmp dword [esi + 0x1d8c], 0
jne 0x1005cb42
mov dword [eax + 0x338], 0
call fcn.1005df20
test bh, bh
jne 0x1005cb4f
test bl, bl
je 0x1005cbc4
mov eax, dword [esi + 0x1d44]
test eax, eax
je 0x1005cbc4
test dword [eax + 0x10], 0x40000
jne 0x1005cbc4
mov byte [esi + 0x359], 1
cmp dword [esi + 0x1d48], 0
je 0x1005cbcb
cmp byte [esi + 0x1d96], 0
jne 0x1005cbcb
mov al, 1
mov edx, 1
mov byte [esi + 0x35a], al
mov ecx, edx
call fcn.1005c390
xorps xmm5, xmm5
comiss xmm0, xmm5
jbe 0x1005cd48
cmp dword [esi + 0x1be0], 0
je 0x1005cbd8
mov ebx, dword [0x101c18e4]
mov eax, dword [ebx + 0x1bf8]
shr eax, 1
test dl, al
jne 0x1005cd4e
call fcn.1004fb30
jmp 0x1005cd4e
mov byte [esi + 0x359], 0
cmp dword [esi + 0x1e4c], 0
jne 0x1005cb7b
xor al, al
jmp 0x1005cb7d
cmp dword [esi + 0x1d8c], 0
je 0x1005cbed
xor ecx, ecx
call fcn.1005c0b0
jmp 0x1005cd48
mov edi, dword [esi + 0x1d44]
test edi, edi
je 0x1005cce6
cmp edi, dword [edi + 0x32c]
je 0x1005cce6
test dword [edi + 0x10], 0x4000000
jne 0x1005cce6
mov ebx, dword [edi + 0x328]
test ebx, ebx
je 0x1005cce6
movss xmm0, dword [edi + 0x14]
mov ecx, ebx
movss dword [esp + 0x14], xmm0
movss xmm0, dword [edi + 0x18]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [edi + 0x1c]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edi + 0x20]
movss dword [esp + 0x20], xmm0
call fcn.10058d00
movss xmm5, dword [esp + 0x1c]
movss xmm4, dword [esp + 0x14]
movaps xmm2, xmm5
movss xmm3, dword [esp + 0x18]
addss xmm2, dword [esp + 0x20]
subss xmm5, dword [ebx + 0x18]
mov ecx, dword [edi + 0x74]
addss xmm3, xmm4
subss xmm4, dword [ebx + 0x14]
subss xmm2, dword [ebx + 0x18]
movss dword [esp + 0x24], xmm5
xorps xmm5, xmm5
subss xmm3, dword [ebx + 0x14]
mov ebx, dword [0x101c18e4]
movss dword [esp + 0x20], xmm4
movss dword [esp + 0x2c], xmm2
mov eax, dword [ebx + 0x1d44]
mov dword [ebx + 0x1d48], ecx
mov dword [ebx + 0x1d8c], 0
mov dword [ebx + 0x1d4c], 0
mov dword [eax + 0x33c], ecx
mov eax, dword [ebx + 0x1d44]
movss dword [esp + 0x28], xmm3
movups xmm0, xmmword [esp + 0x20]
movups xmmword [eax + 0x344], xmm0
jmp 0x1005cd4e
mov edx, dword [esi + 0x1d20]
test edx, edx
jle 0x1005cd15
mov eax, dword [esi + 0x1d28]
lea ecx, [edx + edx*8]
mov eax, dword [eax + ecx*4 - 0x20]
test dword [eax + 0x10], 0x8000000
jne 0x1005cd48
lea ecx, [edx - 1]
mov dl, 1
call fcn.1005b010
xorps xmm5, xmm5
jmp 0x1005cd48
test edi, edi
je 0x1005cd34
mov eax, dword [edi + 0x10]
test eax, 0x4000000
jne 0x1005cd2a
test eax, 0x1000000
jne 0x1005cd34
mov dword [edi + 0x33c], 0
mov dword [esi + 0x1d4c], 0
mov dword [esi + 0x1d48], 0
mov ebx, dword [0x101c18e4]
mov edi, dword [esi + 0x1d48]
mov dword [esi + 0x1d5c], 0
mov dword [esi + 0x1d58], 0
mov dword [esi + 0x1d54], 0
mov dword [esi + 0x1d50], 0
test edi, edi
je 0x1005ce3f
cmp byte [esi + 0x1d96], 0
jne 0x1005ce3f
cmp dword [esi + 0x1e4c], 0
jne 0x1005ce3f
mov eax, dword [esi + 0x1d44]
test eax, eax
je 0x1005ce3f
test dword [eax + 0x10], 0x40000
jne 0x1005ce3f
movss xmm0, dword [ebx + 0x300]
comiss xmm0, xmm5
seta al
mov byte [esp + 0x12], al
test al, al
je 0x1005cde4
mov edx, 1
xor ecx, ecx
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005cde4
mov cl, dl
jmp 0x1005cde6
xor cl, cl
mov eax, dword [esi + 0x1be0]
test eax, eax
jne 0x1005cdfc
test cl, cl
je 0x1005ce00
mov dword [esi + 0x1d50], edi
jmp 0x1005ce00
cmp eax, edi
jne 0x1005ce3f
cmp byte [esp + 0x12], 0
je 0x1005ce0d
mov dword [esi + 0x1d54], edi
test eax, eax
je 0x1005ce15
cmp eax, edi
jne 0x1005ce3f
test cl, cl
je 0x1005ce1f
mov dword [esi + 0x1d58], edi
test eax, eax
je 0x1005ce27
cmp eax, edi
jne 0x1005ce3f
mov edx, 1
lea ecx, [edx + 1]
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005ce3f
mov dword [esi + 0x1d5c], edi
mov ecx, dword [esi + 0x1d44]
test ecx, ecx
je 0x1005ce59
test dword [ecx + 0x10], 0x40000
je 0x1005ce59
mov byte [esi + 0x1d96], 1
mov eax, dword [esi + 0x1d70]
mov byte [esi + 0x1db0], 0
test eax, eax
je 0x1005ce82
mov dword [esi + 0x1d5c], eax
mov dword [esi + 0x1d58], eax
mov dword [esi + 0x1d54], eax
mov dword [esi + 0x1d50], eax
cmp dword [esi + 0x1db8], 0
mov dword [esi + 0x1d70], 0
jne 0x1005cfc8
or edi, 0xffffffff
mov dword [esi + 0x1dc0], 0xffffffff
mov dword [esi + 0x1db4], 0
test ecx, ecx
je 0x1005cfc0
or edi, edi
cmp dword [esi + 0x1e4c], 0
jne 0x1005cfc0
or edi, 0xffffffff
test dword [ecx + 0x10], 0x40000
jne 0x1005cfc0
or edi, edi
test byte [ebx + 0x1bf4], 1
jne 0x1005cf10
mov edx, 3
lea ecx, [edx + 1]
call fcn.1005c390
comiss xmm5, xmm0
jb 0x1005cf04
lea ecx, [edx + 0xe]
or edi, 0xffffffff
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005cf10
mov dword [esi + 0x1dc0], 0
xor edi, edi
mov eax, dword [ebx + 0x1bf4]
shr eax, 1
test al, 1
jne 0x1005cf4a
mov edx, 3
lea ecx, [edx + 2]
call fcn.1005c390
comiss xmm5, xmm0
jb 0x1005cf3b
lea ecx, [edx + 0xf]
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005cf4a
mov dword [esi + 0x1dc0], 1
mov edi, 1
mov eax, dword [ebx + 0x1bf4]
shr eax, 2
test al, 1
jne 0x1005cf85
mov edx, 3
lea ecx, [edx + 3]
call fcn.1005c390
comiss xmm5, xmm0
jb 0x1005cf76
lea ecx, [edx + 0x10]
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005cf85
mov dword [esi + 0x1dc0], 2
mov edi, 2
mov eax, dword [ebx + 0x1bf4]
shr eax, 3
test al, 1
jne 0x1005cfc0
mov edx, 3
lea ecx, [edx + 4]
call fcn.1005c390
comiss xmm5, xmm0
jb 0x1005cfb1
lea ecx, [edx + 0x11]
call fcn.1005c390
comiss xmm0, xmm5
jbe 0x1005cfc0
mov dword [esi + 0x1dc0], 3
mov edi, 3
mov dword [esi + 0x1dc8], edi
jmp 0x1005cfd2
mov dword [esi + 0x1db8], 2
xor al, al
xorps xmm0, xmm0
movss dword [esp + 0x18], xmm0
cmp byte [esp + 0x13], al
je 0x1005cff4
call fcn.1005d880
mov al, byte [esi + 0x1db0]
movss dword [esp + 0x18], xmm0
mov ecx, dword [esi + 0x1dc0]
cmp ecx, 0xffffffff
je 0x1005d01a
mov byte [esi + 0x1db0], 1
mov eax, dword [esi + 0x37c]
mov dword [esi + 0x1dbc], eax
mov dword [esi + 0x1dc4], ecx
jmp 0x1005d01e
test al, al
je 0x1005d041
cmp dword [esi + 0x1d48], 0
jne 0x1005d041
mov word [esi + 0x1d99], 0x101
mov dword [esi + 0x1d9c], 0
mov byte [esi + 0x1d96], 0
cmp byte [ebx + 0x1db0], 0
jne 0x1005d057
cmp byte [ebx + 0x1d99], 0
jne 0x1005d057
xor al, al
jmp 0x1005d059
mov al, 1
movss xmm2, dword [0x101b8310]
mov byte [ebx + 0x1d98], al
mov edi, dword [esi + 0x1d44]
test edi, edi
je 0x1005d257
test dword [edi + 0x10], 0x40000
jne 0x1005d257
cmp dword [esi + 0x1e4c], 0
jne 0x1005d257
movss xmm0, dword [ebx + 0x1944]
mov eax, dword [edi + 0x328]
mulss xmm0, dword [edi + 0x28c]
test eax, eax
je 0x1005d0b1
mulss xmm0, dword [eax + 0x28c]
cmp word [edi + 0x144], 0
mulss xmm0, dword [0x101b84bc]
mulss xmm0, dword [esi + 0x18]
addss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm1, eax
cvtdq2ps xmm1, xmm1
movss dword [esp + 0x14], xmm1
jne 0x1005d19c
cmp byte [edi + 0x14d], 0
je 0x1005d19c
cmp byte [esi + 0x1db0], 0
je 0x1005d19c
mov eax, dword [esi + 0x1dc0]
movss xmm2, dword [0x101b8358]
test eax, eax
je 0x1005d117
cmp eax, 1
jne 0x1005d14f
movaps xmm0, xmm2
jmp 0x1005d11f
movss xmm0, dword [0x101b85d4]
mulss xmm0, xmm1
mov dword [edi + 0x90], 0
mov dword [edi + 0x98], 0
addss xmm0, dword [edi + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x88], xmm0
mov eax, dword [esi + 0x1dc0]
cmp eax, 2
je 0x1005d164
cmp eax, 3
jne 0x1005d19c
movaps xmm0, xmm2
jmp 0x1005d16c
movss xmm0, dword [0x101b85d4]
mulss xmm0, xmm1
mov dword [edi + 0x94], 0
mov dword [edi + 0x9c], 0
addss xmm0, dword [edi + 0x7c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x8c], xmm0
movss xmm3, dword [0x101b8294]
mov edx, 4
push ecx
mov dword [esp], 0x41200000
lea ecx, [esp + 0x24]
push 0
call fcn.1005c510
movss xmm0, dword [esp + 0x28]
add esp, 8
movss xmm2, dword [esp + 0x14]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1005d210
cmp byte [edi + 0xa8], 0
je 0x1005d210
mulss xmm0, xmm2
mov dword [edi + 0x90], 0
mov dword [edi + 0x98], 0
addss xmm0, dword [edi + 0x78]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x88], xmm0
movss xmm0, dword [esp + 0x24]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1005d24f
mulss xmm0, xmm2
mov dword [edi + 0x94], 0
mov dword [edi + 0x9c], 0
addss xmm0, dword [edi + 0x7c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [edi + 0x8c], xmm0
movss xmm2, dword [0x101b8310]
mov dword [esi + 0x1dcc], 0
mov dword [esi + 0x1dd4], 0
mov dword [esi + 0x1dd0], 0
mov dword [esi + 0x1dd8], 0
mov dword [esi + 0x1ddc], 0
mov dword [esi + 0x1de0], 0
mov dword [esi + 0x1de4], 0
mov dword [esi + 0x1df0], 0x7f7fffff
mov dword [esi + 0x1dec], 0x7f7fffff
mov dword [esi + 0x1de8], 0x7f7fffff
mov dword [esi + 0x1df4], 0
mov dword [esi + 0x1dfc], 0
mov dword [esi + 0x1df8], 0
mov dword [esi + 0x1e00], 0
mov dword [esi + 0x1e04], 0
mov dword [esi + 0x1e08], 0
mov dword [esi + 0x1e0c], 0
mov dword [esi + 0x1e18], 0x7f7fffff
mov dword [esi + 0x1e14], 0x7f7fffff
mov dword [esi + 0x1e10], 0x7f7fffff
mov dword [esi + 0x1e1c], 0
mov dword [esi + 0x1e24], 0
mov dword [esi + 0x1e20], 0
mov dword [esi + 0x1e28], 0
mov dword [esi + 0x1e2c], 0
mov dword [esi + 0x1e30], 0
mov dword [esi + 0x1e34], 0
mov dword [esi + 0x1e40], 0x7f7fffff
mov dword [esi + 0x1e3c], 0x7f7fffff
mov dword [esi + 0x1e38], 0x7f7fffff
cmp byte [esi + 0x1db0], 0
je 0x1005d51e
cmp dword [esi + 0x1d74], 3
jne 0x1005d51e
mov ecx, dword [esi + 0x1d8c]
movss xmm5, dword [0x101b8358]
test ecx, ecx
jne 0x1005d526
mov eax, dword [esi + 0x1d44]
movss xmm3, dword [eax + 0x200]
subss xmm3, dword [eax + 0x14]
movss xmm7, dword [eax + 0x208]
movss xmm6, dword [eax + 0x20c]
movss xmm4, dword [eax + 0x204]
subss xmm7, dword [eax + 0x14]
subss xmm6, dword [eax + 0x18]
subss xmm4, dword [eax + 0x18]
movss xmm0, dword [eax + 0x344]
subss xmm3, xmm5
addss xmm7, xmm5
addss xmm6, xmm5
subss xmm4, xmm5
comiss xmm0, xmm3
jb 0x1005d42d
movss xmm0, dword [eax + 0x348]
comiss xmm0, xmm4
jb 0x1005d42d
comiss xmm7, dword [eax + 0x34c]
jb 0x1005d42d
comiss xmm6, dword [eax + 0x350]
jae 0x1005d526
movss xmm5, dword [ebx + 0x1944]
mov edx, dword [eax + 0x328]
mulss xmm5, dword [eax + 0x28c]
test edx, edx
je 0x1005d44f
mulss xmm5, dword [edx + 0x28c]
mulss xmm5, xmm2
movaps xmm1, xmm7
add ecx, ecx
movaps xmm2, xmm6
subss xmm1, xmm3
subss xmm2, xmm4
movss xmm0, dword [eax + ecx*8 + 0x348]
minss xmm1, xmm5
minss xmm2, xmm5
xorps xmm1, xmmword [0x101b88a0]
xorps xmm2, xmmword [0x101b88a0]
subss xmm3, xmm1
subss xmm4, xmm2
addss xmm7, xmm1
addss xmm6, xmm2
comiss xmm4, xmm0
jbe 0x1005d49c
movaps xmm1, xmm4
jmp 0x1005d4a3
movaps xmm1, xmm6
minss xmm1, xmm0
movss xmm2, dword [eax + 0x344]
comiss xmm3, xmm2
jbe 0x1005d4b5
movaps xmm0, xmm3
jmp 0x1005d4bc
movaps xmm0, xmm7
minss xmm0, xmm2
movss dword [eax + ecx*8 + 0x344], xmm0
movss dword [eax + ecx*8 + 0x348], xmm1
movss xmm0, dword [eax + ecx*8 + 0x350]
comiss xmm4, xmm0
ja 0x1005d4e3
movaps xmm4, xmm6
minss xmm4, xmm0
movss xmm0, dword [eax + ecx*8 + 0x34c]
comiss xmm3, xmm0
ja 0x1005d4f8
movaps xmm3, xmm7
minss xmm3, xmm0
movss dword [eax + ecx*8 + 0x34c], xmm3
movss dword [eax + ecx*8 + 0x350], xmm4
mov dword [esi + 0x1d4c], 0
mov dword [esi + 0x1d48], 0
movss xmm5, dword [0x101b8358]
mov eax, dword [esi + 0x1d44]
test eax, eax
je 0x1005d579
mov ecx, dword [esi + 0x1d8c]
add ecx, ecx
movss xmm0, dword [eax + ecx*8 + 0x344]
comiss xmm0, dword [eax + ecx*8 + 0x34c]
ja 0x1005d579
movss xmm0, dword [eax + ecx*8 + 0x348]
comiss xmm0, dword [eax + ecx*8 + 0x350]
ja 0x1005d579
movups xmm0, xmmword [eax + ecx*8 + 0x344]
lea ecx, [esp + 0x20]
movups xmmword [esp + 0x20], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [esp + 0x20], xmm0
jmp 0x1005d591
lea ecx, [esp + 0x20]
xorps xmm0, xmm0
movups xmmword [esp + 0x20], xmm0
movups xmm0, xmmword [ecx]
movups xmmword [esp + 0x20], xmm0
test eax, eax
je 0x1005d5d3
movss xmm2, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
movaps xmm3, xmm2
addss xmm3, dword [esp + 0x28]
addss xmm2, dword [esp + 0x20]
movaps xmm1, xmm0
addss xmm1, dword [esp + 0x2c]
addss xmm0, dword [esp + 0x24]
movss dword [esp + 0x28], xmm3
movss dword [esp + 0x20], xmm2
movss dword [esp + 0x2c], xmm1
movss dword [esp + 0x24], xmm0
jmp 0x1005d5db
xorps xmm0, xmm0
movups xmmword [esp + 0x20], xmm0
movss xmm1, dword [esp + 0x18]
lea eax, [esp + 0x20]
movups xmm0, xmmword [eax]
pop edi
movups xmmword [esi + 0x1d78], xmm0
movaps xmm0, xmm1
addss xmm0, dword [esi + 0x1d7c]
addss xmm1, dword [esi + 0x1d84]
movss dword [esi + 0x1d7c], xmm0
movss dword [esi + 0x1d84], xmm1
movss xmm0, dword [esi + 0x1d78]
addss xmm0, xmm5
mov dword [esi + 0x1d88], 0
minss xmm0, dword [esi + 0x1d80]
movss dword [esi + 0x1d78], xmm0
movss dword [esi + 0x1d80], xmm0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret