Function at 0x1001ef10
Capabilities:
Encode data using xor
Hash data with crc32
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x80
mov eax, dword [0x1005b00c]
xor eax, esp
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 8]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x68], edx
mov edx, dword [0x1005be30]
test byte [edi + 8], 0x42
mov dword [esp + 0x50], eax
mov eax, edx
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], eax
jne 0x1001fcbc
cmp byte [edi + 0xa4], 0
jg 0x1001fcbc
cmp byte [edi + 0xa5], 0
jg 0x1001fcbc
cmp byte [edi + 0x8b], 0
je 0x1001fcbc
vmovss xmm0, dword [edi + 0x44]
vaddss xmm1, xmm0, dword [0x10054bf0]
vmovss xmm2, dword [eax + 0x1930]
vfmadd231ss xmm1, xmm2, dword [0x10054b98]
vmulss xmm0, xmm2, dword [0x10054c00]
mov cl, byte [eax + 0xb4]
xor esi, esi
vmaxss xmm0, xmm1, xmm0
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
test cl, cl
mov dword [esp + 0x34], 4
vcvtsi2ss xmm0, xmm0, eax
cmovne esi, dword [esp + 0x34]
vmulss xmm0, xmm0, dword [0x10054bd4]
mov dword [esp + 0x4c], esi
vcvttss2si esi, xmm0
mov byte [esp + 0x17], 0
mov dword [esp + 0x38], esi
je 0x1001eff0
vmovss xmm0, dword [0x10054c1c]
jmp 0x1001eff4
vxorps xmm0, xmm0, xmm0
vmovss xmm1, dword [0x10054c9c]
mov dword [edi + 0x144], 1
mov eax, dword [edx + 0x1b9c]
xor edx, edx
add eax, 0xc4
mov dword [esp + 0xc], eax
vmovss dword [esp + 0x3c], xmm0
vmovaps xmm0, xmm1
mov ecx, dword [eax]
mov eax, dword [eax + 8]
vmovss dword [esp + 0x1c], xmm0
vmovss dword [esp + 0x10], xmm1
vmovss dword [esp + 0x28], xmm1
push dword [eax + ecx*4 - 4]
mov ecx, str.RESIZE
vmovss dword [esp + 0x1c], xmm1
call fcn.10017af0
mov edx, dword [esp + 0x10]
add esp, 4
mov dword [esp + 0x64], eax
mov eax, dword [edx + 4]
mov ecx, dword [edx]
mov dword [esp + 0x20], eax
cmp ecx, eax
jne 0x1001f08e
inc ecx
test eax, eax
je 0x1001f078
cdq
sub eax, edx
mov edx, dword [esp + 0xc]
sar eax, 1
add eax, dword [esp + 0x20]
jmp 0x1001f07d
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, edx
call fcn.100296e0
mov edx, dword [esp + 0xc]
mov ecx, dword [edx]
mov eax, dword [edx + 8]
mov esi, dword [esp + 0x64]
mov dword [eax + ecx*4], esi
inc dword [edx]
xor edx, edx
mov esi, dword [esp + 0x38]
mov dword [esp + 0xc], edx
cmp dword [ebp + 0xc], edx
jle 0x1001f4f5
nop
vmovss xmm0, dword [edi + 0x14]
vmovss xmm6, dword [esp + 0x3c]
lea eax, [edx + edx*2]
vmovss xmm3, dword [eax*8 + 0x1005b268]
vfmadd213ss xmm3, xmm0, dword [edi + 0xc]
vmovss xmm0, dword [edi + 0x18]
vmovss xmm2, dword [eax*8 + 0x1005b26c]
vfmadd213ss xmm2, xmm0, dword [edi + 0x10]
vmovss xmm0, dword [eax*8 + 0x1005b270]
vmovss xmm1, dword [eax*8 + 0x1005b274]
vxorps xmm4, xmm4, xmm4
vcvtsi2ss xmm4, xmm4, esi
vmovaps xmm5, xmm4
vfmadd213ss xmm5, xmm0, xmm3
vfnmadd213ss xmm6, xmm0, xmm3
vcomiss xmm6, xmm5
vmovss xmm0, dword [esp + 0x3c]
vfmadd213ss xmm4, xmm1, xmm2
vfnmadd213ss xmm0, xmm1, xmm2
mov dword [esp + 0x20], eax
vmovss dword [esp + 0x54], xmm6
vmovss dword [esp + 0x58], xmm0
vmovss dword [esp + 0x5c], xmm5
vmovss dword [esp + 0x60], xmm4
jbe 0x1001f147
vmovss dword [esp + 0x54], xmm5
vmovss dword [esp + 0x5c], xmm6
vcomiss xmm0, xmm4
jbe 0x1001f159
vmovss dword [esp + 0x58], xmm4
vmovss dword [esp + 0x60], xmm0
mov ecx, dword [edi + 0xc4]
lea esi, [esp + 0x64]
mov eax, dword [edi + 0xcc]
mov edi, 4
mov dword [esp + 0x64], edx
mov edx, dword [eax + ecx*4 - 4]
not edx
nop dword [eax + eax]
movzx eax, byte [esi]
lea esi, [esi + 1]
movzx ecx, dl
xor ecx, eax
shr edx, 8
xor edx, dword [ecx*4 + 0x10050120]
sub edi, 1
jne 0x1001f180
mov eax, dword [0x1005be30]
not edx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x30]
cmp dword [eax + 0x1bd4], edx
jne 0x1001f1b7
mov dword [eax + 0x1bd8], edx
cmp dword [eax + 0x1c0c], edx
jne 0x1001f1c6
mov byte [eax + 0x1c10], 1
push 0x40800
lea eax, [esp + 0xe]
push eax
lea eax, [esp + 0x13]
push eax
lea ecx, [esp + 0x60]
call fcn.1003bb90
mov cl, byte [esp + 0x17]
add esp, 0xc
test cl, cl
jne 0x1001f1f5
mov al, byte [esp + 0xa]
test al, al
je 0x1001f592
mov edx, dword [esp + 0xc]
mov eax, edx
mov ecx, dword [esp + 0x2c]
not eax
and eax, 1
add eax, 5
mov dword [ecx + 0x1e40], eax
mov al, byte [esp + 0xa]
test al, al
je 0x1001f4af
cmp byte [ecx + 0x3dd], 0
je 0x1001f270
test edx, edx
jne 0x1001f270
push dword [esp + 0x68]
mov edx, edi
lea ecx, [esp + 0x78]
call fcn.1001e940
add esp, 4
mov byte [esp + 0x17], 1
vmovss xmm0, dword [eax]
vmovss dword [esp + 0x28], xmm0
vmovss xmm0, dword [eax + 4]
vmovss dword [esp + 0x18], xmm0
call fcn.10019e60
mov edx, dword [esp + 0xc]
cmp byte [esp + 0xa], 0
je 0x1001f4c7
mov ecx, 0x20
jmp 0x1001f4d3
mov ecx, dword [esp + 0x20]
vmovss xmm4, dword [0x10054bf0]
mov edx, dword [ebp + 0x14]
vmovss xmm3, dword [0x10054cc8]
vmovss xmm2, dword [ecx*8 + 0x1005b26c]
vucomiss xmm2, xmm4
vmovss dword [esp + 0x64], xmm2
lahf
test ah, 0x44
jp 0x1001f2a7
vmovss xmm0, dword [edx + 4]
jmp 0x1001f2ab
vmovaps xmm0, xmm3
vmovss xmm1, dword [ecx*8 + 0x1005b268]
vucomiss xmm1, xmm4
vmovss dword [esp + 0x28], xmm0
lahf
vmovss dword [esp + 0x10], xmm1
test ah, 0x44
jp 0x1001f2d0
vmovss xmm6, dword [edx]
jmp 0x1001f2d4
vmovaps xmm6, xmm3
vxorps xmm3, xmm3, xmm3
vucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x1001f2f7
vmovss xmm0, dword [edx + 0xc]
vmovss dword [esp + 0x18], xmm0
vmovss xmm0, dword [0x10054c9c]
jmp 0x1001f305
vmovss xmm0, dword [0x10054c9c]
vmovss dword [esp + 0x18], xmm0
vucomiss xmm1, xmm3
lahf
test ah, 0x44
jp 0x1001f316
vmovss xmm7, dword [edx + 8]
jmp 0x1001f31a
vmovaps xmm7, xmm0
vmovss xmm1, dword [ecx*8 + 0x1005b270]
vmulss xmm2, xmm1, dword [esp + 0x3c]
mov eax, dword [esp + 0x2c]
vmovss xmm4, dword [ecx*8 + 0x1005b274]
vmulss xmm3, xmm4, dword [esp + 0x3c]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, esi
vxorps xmm5, xmm0, xmmword [0x10055260]
vmovaps xmm0, xmm5
vfmsub213ss xmm0, xmm1, xmm2
vmovss xmm1, dword [esp + 0x10]
vfmadd213ss xmm1, xmm0, xmm2
vmovss xmm0, dword [eax + 0xe4]
vsubss xmm0, xmm0, dword [eax + 0x1bf8]
vaddss xmm2, xmm1, xmm0
vmovss xmm0, dword [eax + 0xe8]
vmovss xmm1, dword [esp + 0x64]
vsubss xmm0, xmm0, dword [eax + 0x1bfc]
vfmsub213ss xmm5, xmm4, xmm3
vmovss xmm4, dword [esp + 0x28]
vfmadd213ss xmm1, xmm5, xmm3
vaddss xmm0, xmm1, xmm0
vcomiss xmm4, xmm0
ja 0x1001f3aa
vminss xmm4, xmm0, dword [esp + 0x18]
vcomiss xmm6, xmm2
ja 0x1001f3b4
vminss xmm6, xmm2, xmm7
vmovss xmm3, dword [esp + 0x10]
vmovss xmm1, dword [edi + 0xc]
vmovss xmm2, dword [edi + 0x10]
vmovss xmm5, dword [esp + 0x64]
vsubss xmm0, xmm1, xmm6
vaddss xmm1, xmm1, dword [edi + 0x14]
vmovaps xmm7, xmm3
vfmadd213ss xmm7, xmm0, xmm6
vmovss dword [esp + 0x1c], xmm7
vsubss xmm0, xmm2, xmm4
vaddss xmm2, xmm2, dword [edi + 0x18]
vmovaps xmm7, xmm5
vfmadd213ss xmm7, xmm0, xmm4
vsubss xmm0, xmm6, xmm1
vfmadd213ss xmm3, xmm0, xmm1
vsubss xmm0, xmm3, dword [esp + 0x1c]
vmovss dword [esp + 0x6c], xmm0
vsubss xmm0, xmm4, xmm2
vfmadd213ss xmm5, xmm0, xmm2
lea eax, [esp + 0x6c]
mov edx, edi
vsubss xmm0, xmm5, xmm7
push eax
lea ecx, [esp + 0x48]
vmovss dword [esp + 0x14], xmm7
vmovss dword [esp + 0x74], xmm0
call fcn.1001e940
mov ecx, dword [esp + 0x24]
add esp, 4
vxorps xmm1, xmm1, xmm1
vmovss xmm0, dword [ecx*8 + 0x1005b268]
vucomiss xmm0, xmm1
vmovss xmm0, dword [esp + 0x44]
lahf
vmovss dword [esp + 0x28], xmm0
test ah, 0x44
jp 0x1001f472
vmovss xmm2, dword [esp + 0x1c]
vsubss xmm0, xmm0, dword [esp + 0x6c]
vsubss xmm2, xmm2, xmm0
vmovss dword [esp + 0x1c], xmm2
vmovss xmm0, dword [ecx*8 + 0x1005b26c]
vucomiss xmm0, xmm1
vmovss xmm0, dword [esp + 0x48]
lahf
vmovss dword [esp + 0x18], xmm0
test ah, 0x44
jp 0x1001f4a7
vmovss xmm1, dword [esp + 0x10]
vsubss xmm0, xmm0, dword [esp + 0x70]
vsubss xmm1, xmm1, xmm0
vmovss dword [esp + 0x10], xmm1
mov edx, dword [esp + 0xc]
mov al, byte [esp + 0xa]
mov cl, byte [esp + 0xb]
test edx, edx
je 0x1001f25b
test al, al
jne 0x1001f266
test cl, cl
je 0x1001f4e7
xor ecx, ecx
cmp byte [esp + 0xb], cl
setne cl
add ecx, 0x1e
vmovss xmm1, dword [0x10054bf0]
call fcn.10018520
mov ecx, dword [esp + 0x50]
mov dword [ecx + edx*4], eax
inc edx
mov dword [esp + 0xc], edx
cmp edx, dword [ebp + 0xc]
jl 0x1001f0b0
xor edi, edi
mov dword [esp + 0x20], edi
cmp dword [esp + 0x4c], edi
jbe 0x1001f919
nop word [eax + eax]
lea eax, [edi*8]
sub eax, edi
shl eax, 2
mov dword [esp + 0x64], eax
test edi, edi
je 0x1001f59b
cmp edi, 1
je 0x1001f59b
mov edx, dword [esp + 0x30]
mov dword [esp + 0xc], 1
vmovss xmm2, dword [edx + 0xc]
vmovss xmm1, dword [edx + 0x10]
vaddss xmm3, xmm2, dword [edx + 0x14]
vaddss xmm4, xmm1, dword [edx + 0x18]
cmp edi, 2
jne 0x1001f649
vxorps xmm5, xmm5, xmm5
vcvtsi2ss xmm5, xmm5, esi
vaddss xmm0, xmm2, xmm5
vmovss dword [esp + 0x74], xmm0
vsubss xmm0, xmm1, dword [0x10054c1c]
vmovss dword [esp + 0x78], xmm0
vsubss xmm0, xmm3, xmm5
vmovss dword [esp + 0x7c], xmm0
vaddss xmm0, xmm1, dword [0x10054c1c]
vmovss dword [esp + 0x80], xmm0
jmp 0x1001f695
mov edx, dword [esp + 0xc]
jmp 0x1001f4b3
mov edx, dword [esp + 0x30]
xor eax, eax
mov dword [esp + 0xc], eax
vmovss xmm2, dword [edx + 0xc]
vmovss xmm1, dword [edx + 0x10]
vaddss xmm3, xmm2, dword [edx + 0x14]
vaddss xmm4, xmm1, dword [edx + 0x18]
test edi, edi
jne 0x1001f5fd
vsubss xmm0, xmm2, dword [0x10054c1c]
vxorps xmm6, xmm6, xmm6
vmovss dword [esp + 0x74], xmm0
vcvtsi2ss xmm6, xmm6, esi
vaddss xmm0, xmm1, xmm6
vmovss dword [esp + 0x78], xmm0
vaddss xmm0, xmm2, dword [0x10054c1c]
vmovss dword [esp + 0x7c], xmm0
vsubss xmm0, xmm4, xmm6
vmovss dword [esp + 0x80], xmm0
jmp 0x1001f695
cmp edi, 1
jne 0x1001f549
vsubss xmm0, xmm3, dword [0x10054c1c]
vxorps xmm5, xmm5, xmm5
vmovss dword [esp + 0x74], xmm0
vcvtsi2ss xmm5, xmm5, esi
vaddss xmm0, xmm5, xmm1
vmovss dword [esp + 0x78], xmm0
vaddss xmm0, xmm3, dword [0x10054c1c]
vmovss dword [esp + 0x7c], xmm0
vsubss xmm0, xmm4, xmm5
xor eax, eax
vmovss dword [esp + 0x80], xmm0
mov dword [esp + 0xc], eax
jmp 0x1001f695
cmp edi, 3
jne 0x1001f68b
vxorps xmm5, xmm5, xmm5
vcvtsi2ss xmm5, xmm5, esi
vaddss xmm0, xmm2, xmm5
vmovss dword [esp + 0x74], xmm0
vsubss xmm0, xmm4, dword [0x10054c1c]
vmovss dword [esp + 0x78], xmm0
vsubss xmm0, xmm3, xmm5
vmovss dword [esp + 0x7c], xmm0
vaddss xmm0, xmm4, dword [0x10054c1c]
vmovss dword [esp + 0x80], xmm0
jmp 0x1001f695
vxorps xmm0, xmm0, xmm0
vmovups xmmword [esp + 0x74], xmm0
mov ecx, dword [edx + 0xc4]
lea eax, [edi + 4]
mov dword [esp + 0x68], eax
lea esi, [esp + 0x68]
mov eax, dword [edx + 0xcc]
mov edi, 4
mov edx, dword [eax + ecx*4 - 4]
not edx
movzx eax, byte [esi]
lea esi, [esi + 1]
movzx ecx, dl
xor ecx, eax
shr edx, 8
xor edx, dword [ecx*4 + 0x10050120]
sub edi, 1
jne 0x1001f6b7
mov eax, dword [0x1005be30]
not edx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x20]
cmp dword [eax + 0x1bd4], edx
jne 0x1001f6ee
mov dword [eax + 0x1bd8], edx
cmp dword [eax + 0x1c0c], edx
jne 0x1001f6fd
mov byte [eax + 0x1c10], 1
push 0x800
lea eax, [esp + 0xe]
push eax
lea eax, [esp + 0x13]
push eax
lea ecx, [esp + 0x80]
call fcn.1003bb90
mov dl, byte [esp + 0x16]
add esp, 0xc
cmp byte [esp + 0xb], 0
je 0x1001f73c
mov eax, dword [esp + 0x2c]
vmovss xmm0, dword [eax + 0x1bcc]
vcomiss xmm0, dword [0x10054b78]
ja 0x1001f744
test dl, dl
je 0x1001f90a
mov ecx, dword [esp + 0xc]
mov eax, ecx
mov esi, dword [esp + 0x2c]
xor eax, 1
add eax, 3
mov dword [esi + 0x1e40], eax
mov esi, dword [esp + 0x38]
test dl, dl
je 0x1001f90a
mov eax, dword [esp + 0x24]
mov dword [eax], edi
cmp edi, 3
jne 0x1001f9bc
mov eax, dword [ebp + 0x14]
vmovss xmm6, dword [0x10054cc8]
vmovss xmm5, dword [eax + 4]
vmovss xmm1, dword [0x10054c9c]
vmovss xmm3, dword [0x10054c9c]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
vmovss xmm0, dword [eax + 0xc]
vmovss dword [esp + 0x6c], xmm0
vmovss xmm0, dword [eax + 0x10]
vmovss dword [esp + 0x70], xmm0
vmovss xmm0, dword [edx + ecx*4 + 0xe4]
vsubss xmm0, xmm0, dword [edx + ecx*4 + 0x1bf8]
vaddss xmm0, xmm0, dword [0x10054c1c]
vmovss dword [esp + ecx*4 + 0x6c], xmm0
vmovss xmm0, dword [esp + 0x70]
vcomiss xmm5, xmm0
ja 0x1001f7e3
vminss xmm5, xmm0, xmm1
vmovss xmm0, dword [esp + 0x6c]
vcomiss xmm6, xmm0
ja 0x1001f7f3
vminss xmm6, xmm0, xmm3
mov ecx, dword [esp + 0x64]
mov edx, eax
vmovss xmm2, dword [eax + 0xc]
vmovss xmm0, dword [ecx + 0x1005b2d4]
vminss xmm7, xmm0, dword [ecx + 0x1005b2dc]
vmovss xmm0, dword [ecx + 0x1005b2d0]
vminss xmm4, xmm0, dword [ecx + 0x1005b2d8]
vsubss xmm0, xmm2, xmm6
vaddss xmm2, xmm2, dword [eax + 0x14]
vmovaps xmm1, xmm4
vfmadd213ss xmm1, xmm0, xmm6
vmovss dword [esp + 0x1c], xmm1
vmovss xmm1, dword [eax + 0x10]
vsubss xmm0, xmm1, xmm5
vmovaps xmm3, xmm7
vfmadd213ss xmm3, xmm0, xmm5
vmovss dword [esp + 0x10], xmm3
vaddss xmm3, xmm1, dword [eax + 0x18]
vsubss xmm0, xmm6, xmm2
vmovaps xmm1, xmm4
vfmadd213ss xmm1, xmm0, xmm2
vsubss xmm0, xmm1, dword [esp + 0x1c]
vmovss dword [esp + 0x3c], xmm0
vsubss xmm0, xmm5, xmm3
vmovaps xmm1, xmm7
vfmadd213ss xmm1, xmm0, xmm3
vsubss xmm0, xmm1, dword [esp + 0x10]
lea ecx, [esp + 0x3c]
push ecx
lea ecx, [esp + 0x48]
vmovss dword [esp + 0x24], xmm7
vmovss dword [esp + 0x6c], xmm4
vmovss dword [esp + 0x44], xmm0
call fcn.1001e940
vmovss xmm0, dword [esp + 0x6c]
add esp, 4
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
vmovss xmm0, dword [esp + 0x44]
lahf
vmovss dword [esp + 0x28], xmm0
test ah, 0x44
jp 0x1001f8d8
vmovss xmm2, dword [esp + 0x1c]
vsubss xmm0, xmm0, dword [esp + 0x3c]
vsubss xmm2, xmm2, xmm0
vmovss dword [esp + 0x1c], xmm2
vmovss xmm0, dword [esp + 0x20]
vucomiss xmm0, xmm1
vmovss xmm0, dword [esp + 0x48]
lahf
vmovss dword [esp + 0x18], xmm0
test ah, 0x44
jp 0x1001f90a
vmovss xmm1, dword [esp + 0x10]
vsubss xmm0, xmm0, dword [esp + 0x40]
vsubss xmm1, xmm1, xmm0
vmovss dword [esp + 0x10], xmm1
inc edi
mov dword [esp + 0x20], edi
cmp edi, dword [esp + 0x4c]
jl 0x1001f510
mov edi, dword [0x1005be30]
mov esi, dword [esp + 0x30]
mov eax, dword [edi + 0x1b9c]
dec dword [eax + 0xc4]
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x144], 0
mov ecx, dword [eax + 0x1e08]
test ecx, ecx
je 0x1001fc03
cmp dword [ecx + 0x31c], esi
jne 0x1001fc03
mov ecx, dword [eax + 0x1d30]
cmp ecx, 2
jne 0x1001fa14
cmp byte [eax + 0xfd], 0
je 0x1001fc03
xor edx, edx
lea ecx, [edx + 0x12]
call fcn.10025960
lea ecx, [edx + 0x11]
vmovss dword [esp + 0x24], xmm0
call fcn.10025960
vmovss xmm1, dword [esp + 0x24]
vsubss xmm0, xmm1, xmm0
lea ecx, [edx + 0x14]
vmovss dword [esp + 0x34], xmm0
call fcn.10025960
lea ecx, [edx + 0x13]
vmovss dword [esp + 0x24], xmm0
call fcn.10025960
vmovss xmm1, dword [esp + 0x24]
jmp 0x1001fa62
vmovss xmm1, dword [0x10054cc8]
vmovaps xmm5, xmm1
vmovaps xmm0, xmm5
cmp edi, 1
jne 0x1001f9dd
mov eax, dword [ebp + 0x14]
vmovss xmm6, dword [eax]
jmp 0x1001f785
vmovaps xmm6, xmm1
vmovaps xmm2, xmm6
cmp edi, 2
jne 0x1001f9f7
mov eax, dword [ebp + 0x14]
vmovss xmm1, dword [eax + 0xc]
jmp 0x1001f78d
vmovss xmm1, dword [0x10054c9c]
test edi, edi
jne 0x1001f78d
mov eax, dword [ebp + 0x14]
vmovss xmm3, dword [eax + 8]
jmp 0x1001f795
cmp ecx, 3
jne 0x1001fc03
xor edx, edx
lea ecx, [edx + 5]
call fcn.10025960
mov ecx, dword [esp + 0x34]
vmovss dword [esp + 0x24], xmm0
call fcn.10025960
vmovss xmm1, dword [esp + 0x24]
vsubss xmm0, xmm1, xmm0
lea ecx, [edx + 7]
vmovss dword [esp + 0x34], xmm0
call fcn.10025960
lea ecx, [edx + 6]
vmovss dword [esp + 0x24], xmm0
call fcn.10025960
vmovss xmm1, dword [esp + 0x24]
vmovss xmm3, dword [esp + 0x34]
vxorps xmm7, xmm7, xmm7
vucomiss xmm3, xmm7
vsubss xmm4, xmm1, xmm0
lahf
test ah, 0x44
jp 0x1001fa88
vucomiss xmm4, xmm7
lahf
test ah, 0x44
jnp 0x1001fc07
mov ecx, dword [esp + 0x2c]
vxorps xmm2, xmm2, xmm2
vmovss xmm0, dword [ecx + 0xac]
vminss xmm0, xmm0, dword [ecx + 0xa8]
vmulss xmm0, xmm0, dword [ecx + 0x18]
vmulss xmm0, xmm0, dword [0x10054c84]
vcvttss2si eax, xmm0
vcvtsi2ss xmm2, xmm2, eax
mov eax, dword [ebp + 0x14]
vmovss xmm0, dword [eax]
vsubss xmm0, xmm0, dword [esi + 0xc]
vsubss xmm1, xmm0, dword [esi + 0x14]
vmulss xmm0, xmm3, xmm2
vmaxss xmm5, xmm1, xmm0
vmovss xmm0, dword [eax + 4]
vsubss xmm0, xmm0, dword [esi + 0x10]
vsubss xmm1, xmm0, dword [esi + 0x18]
vmulss xmm0, xmm4, xmm2
vmaxss xmm6, xmm1, xmm0
mov byte [ecx + 0x1e1c], 0
mov byte [ecx + 0x1d53], 1
vmovdqu xmm1, xmmword [edi + 0x17dc]
vcomiss xmm7, xmm1
vshufps xmm0, xmm1, xmm1, 0xff
vmulss xmm4, xmm0, dword [edi + 0x1518]
vmovdqu xmmword [esp + 0x54], xmm1
jbe 0x1001fb1a
vxorps xmm3, xmm3, xmm3
jmp 0x1001fb22
vminss xmm3, xmm1, dword [0x10054bf0]
vmovss xmm1, dword [0x10054c70]
vmovss xmm2, dword [0x10054bbc]
vmovaps xmm0, xmm1
vfmadd213ss xmm0, xmm3, xmm2
vcvttss2si ecx, xmm0
vmovss xmm0, dword [esp + 0x58]
vcomiss xmm7, xmm0
jbe 0x1001fb51
vxorps xmm3, xmm3, xmm3
jmp 0x1001fb59
vminss xmm3, xmm0, dword [0x10054bf0]
vmovaps xmm0, xmm1
vfmadd213ss xmm0, xmm3, xmm2
vcvttss2si eax, xmm0
vmovss xmm0, dword [esp + 0x5c]
shl eax, 8
or ecx, eax
vcomiss xmm7, xmm0
jbe 0x1001fb7d
vxorps xmm3, xmm3, xmm3
jmp 0x1001fb85
vminss xmm3, xmm0, dword [0x10054bf0]
vmovaps xmm0, xmm1
vfmadd213ss xmm0, xmm3, xmm2
vcvttss2si eax, xmm0
shl eax, 0x10
or ecx, eax
vcomiss xmm7, xmm4
jbe 0x1001fba3
vxorps xmm0, xmm0, xmm0
jmp 0x1001fbab
vminss xmm0, xmm4, dword [0x10054bf0]
vfmadd213ss xmm1, xmm0, xmm2
vcvttss2si eax, xmm1
shl eax, 0x18
mov edx, esi
or eax, ecx
mov ecx, dword [esp + 0x50]
mov dword [ecx], eax
lea eax, [esp + 0x44]
vaddss xmm0, xmm5, dword [esi + 0x1c]
vmovss dword [esp + 0x44], xmm0
vaddss xmm0, xmm6, dword [esi + 0x20]
push eax
lea ecx, [esp + 0x78]
vmovss dword [esp + 0x4c], xmm0
call fcn.1001e940
mov edi, dword [0x1005be30]
add esp, 4
vxorps xmm7, xmm7, xmm7
vmovss xmm0, dword [eax]
vmovss dword [esp + 0x28], xmm0
vmovss xmm0, dword [eax + 4]
jmp 0x1001fc0d
vxorps xmm7, xmm7, xmm7
vmovss xmm0, dword [esp + 0x18]
vmovss xmm1, dword [0x10054c9c]
vmovss xmm2, dword [esp + 0x28]
vucomiss xmm2, xmm1
lahf
test ah, 0x44
jnp 0x1001fc4b
test dword [esi + 8], 0x100
vmovss dword [esi + 0x1c], xmm2
vmovss dword [esi + 0x20], xmm0
jne 0x1001fc4b
vcomiss xmm7, dword [edi + 0x2ea0]
jb 0x1001fc4b
mov eax, dword [edi + 0x1c]
mov dword [edi + 0x2ea0], eax
vmovss xmm0, dword [esp + 0x1c]
vucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x1001fc9b
test dword [esi + 8], 0x100
vcvttss2si eax, xmm0
vxorps xmm1, xmm1, xmm1
vcvtsi2ss xmm1, xmm1, eax
vcvttss2si eax, dword [esp + 0x10]
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmovss dword [esi + 0xc], xmm1
vmovss dword [esi + 0x10], xmm0
jne 0x1001fc9b
vcomiss xmm7, dword [edi + 0x2ea0]
jb 0x1001fc9b
mov ecx, dword [edi + 0x1c]
mov dword [edi + 0x2ea0], ecx
mov ecx, dword [esi + 0x1c]
mov edx, dword [esi + 0x20]
mov al, byte [esp + 0x17]
mov dword [esi + 0x14], ecx
mov dword [esi + 0x18], edx
pop edi
pop esi
mov ecx, dword [esp + 0x7c]
xor ecx, esp
call fcn.10049096
mov esp, ebp
pop ebp
ret
mov ecx, dword [esp + 0x84]
xor al, al
pop edi
pop esi
xor ecx, esp
call fcn.10049096
mov esp, ebp
pop ebp
ret