Function at 0x100cadd0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x48
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100daf10
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov eax, dword [0x10132ba8]
test al, 1
je 0x100cb032
mov edi, dword [0x10132ba4]
mov ecx, dword [ebp + 8]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ecx]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [eax + ecx + 4]
vmovss dword [ebp - 0x28], xmm0
vmovss xmm0, dword [eax + ecx + 8]
vmovss dword [ebp - 0x24], xmm0
mov ecx, dword [0x1012d368]
mov eax, dword [ecx]
call dword [eax + 0x94]
mov esi, eax
call fcn.100287b0
vmovss xmm1, dword [ebp - 0x28]
vmulss xmm0, xmm1, dword [esi + 0x14]
vmovss xmm2, dword [ebp - 0x20]
vfmadd231ss xmm0, xmm2, dword [esi + 0x10]
vmovss xmm3, dword [ebp - 0x24]
vfmadd231ss xmm0, xmm3, dword [esi + 0x18]
vaddss xmm0, xmm0, dword [esi + 0x1c]
vmulss xmm1, xmm1, dword [esi + 0x34]
vfmadd231ss xmm1, xmm2, dword [esi + 0x30]
vfmadd231ss xmm1, xmm3, dword [esi + 0x38]
vaddss xmm1, xmm1, dword [esi + 0x3c]
vmovss xmm2, dword [0x101011a0]
vucomiss xmm2, xmm1
vmovss dword [ebp - 0x3c], xmm1
ja 0x100caebc
vdivss xmm0, xmm0, xmm1
vmovss xmm1, dword [eax + 0xc]
vmovss xmm2, dword [0x100f54dc]
vmulss xmm3, xmm1, xmm2
vmulss xmm0, xmm0, xmm1
vmulss xmm0, xmm0, xmm2
vsubss xmm0, xmm3, xmm0
jmp 0x100caec4
vmulss xmm0, xmm0, dword [0x101011a4]
vmovss dword [ebp - 0x34], xmm0
mov eax, dword [0x10132bb8]
test al, 1
je 0x100cb085
mov ebx, dword [0x10132bb4]
mov edi, dword [ebp + 0xc]
mov eax, dword [ebx + 4]
mov ecx, dword [ebp + 8]
vmovss xmm0, dword [ebp - 0x24]
vaddss xmm0, xmm0, dword [eax + ecx + 8]
vmovss dword [ebp - 0x24], xmm0
mov ecx, dword [0x1012d368]
mov eax, dword [ecx]
call dword [eax + 0x94]
mov esi, eax
call fcn.100287b0
vmovss xmm2, dword [ebp - 0x28]
vmulss xmm0, xmm2, dword [esi + 4]
vmovss xmm3, dword [ebp - 0x20]
vfmadd231ss xmm0, xmm3, dword [esi]
vmovss xmm4, dword [ebp - 0x24]
vfmadd231ss xmm0, xmm4, dword [esi + 8]
vaddss xmm0, xmm0, dword [esi + 0xc]
vmovss dword [edi], xmm0
vmulss xmm1, xmm2, dword [esi + 0x14]
vfmadd231ss xmm1, xmm3, dword [esi + 0x10]
vfmadd231ss xmm1, xmm4, dword [esi + 0x18]
vaddss xmm1, xmm1, dword [esi + 0x1c]
vmovss dword [edi + 4], xmm1
vmulss xmm2, xmm2, dword [esi + 0x34]
vfmadd231ss xmm2, xmm3, dword [esi + 0x30]
vfmadd231ss xmm2, xmm4, dword [esi + 0x38]
vaddss xmm2, xmm2, dword [esi + 0x3c]
vmovss xmm3, dword [0x101011a0]
vucomiss xmm3, xmm2
ja 0x100cafc5
vinsertps xmm0, xmm0, xmm1, 0x10
vbroadcastss xmm1, xmm2
vdivps xmm1, xmm0, xmm1
vmovlps qword [edi], xmm1
vmovss xmm0, dword [eax + 8]
vmovss xmm2, dword [0x100f54dc]
vmulss xmm3, xmm0, xmm2
vmulss xmm0, xmm1, xmm0
vmulss xmm0, xmm0, xmm2
vaddss xmm0, xmm3, xmm0
vmovss dword [edi], xmm0
vmovss xmm3, dword [eax + 0xc]
vmulss xmm4, xmm3, xmm2
vmovshdup xmm1, xmm1
vmulss xmm1, xmm1, xmm3
vmulss xmm1, xmm1, xmm2
vsubss xmm1, xmm4, xmm1
vmovss dword [edi + 4], xmm1
jmp 0x100cafe5
vucomiss xmm3, dword [ebp - 0x3c]
vmovss xmm2, dword [0x101011a4]
vmulss xmm0, xmm0, xmm2
vmovss dword [edi], xmm0
vmulss xmm1, xmm1, xmm2
vmovss dword [edi + 4], xmm1
ja 0x100cb01c
vmovss xmm2, dword [ebp - 0x34]
vsubss xmm1, xmm2, xmm1
vaddss xmm1, xmm1, dword [0x100f5508]
vmovss dword [edi + 0xc], xmm1
vmovss xmm2, dword [0x100f54dc]
vmulss xmm1, xmm1, xmm2
vmovss dword [edi + 8], xmm1
vmulss xmm1, xmm1, xmm2
vsubss xmm0, xmm0, xmm1
vmovss dword [edi], xmm0
mov al, 1
jmp 0x100cb01e
xor eax, eax
mov ecx, dword [ebp - 0x18]
mov dword fs:[0], ecx
add esp, 0x48
pop esi
pop edi
pop ebx
pop ebp
ret 8
or eax, 1
mov dword [0x10132ba8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x20], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.100083b0
mov esi, dword [ebp - 0x44]
cmp dword [ebp - 0x40], 0x10
jb 0x100cb068
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100cb0dc
mov eax, esi
and eax, 3
mov dword [ebp - 0x28], eax
cmp esi, 4
jae 0x100cb0ed
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100cb136
or eax, 1
mov dword [0x10132bb8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x10], 2
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x2c], ecx
push str.CBaseEntity__m_vecMaxs
call fcn.100083b0
mov esi, dword [ebp - 0x44]
cmp dword [ebp - 0x40], 0x10
jb 0x100cb0bb
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x2c], eax
test esi, esi
je 0x100cb0e3
mov eax, esi
and eax, 3
mov dword [ebp - 0x30], eax
cmp esi, 4
jae 0x100cb1c1
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100cb20a
mov ecx, 0x811c9dc5
jmp 0x100cb153
mov ecx, 0x811c9dc5
jmp 0x100cb227
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x20]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100cb0fc
cmp dword [ebp - 0x28], 0
je 0x100cb153
add edx, dword [ebp - 0x20]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x28], edi
jne 0x100cb141
mov edx, dword [ebp - 0x24]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100cb28d
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100cb192
cmp dword [edi + 0x1c], 0x10
jb 0x100cb17e
mov eax, dword [edi + 8]
jmp 0x100cb181
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100cb1a4
cmp edi, ebx
je 0x100cb28d
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100cb173
jmp 0x100cb192
add edi, 0x20
lea ecx, [ebp - 0x54]
call fcn.100029d0
mov dword [0x10132ba4], edi
mov dword [ebp - 0x10], 0xffffffff
jmp 0x100cae10
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x2c]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100cb1d0
cmp dword [ebp - 0x30], 0
je 0x100cb227
add edx, dword [ebp - 0x2c]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x30], edi
jne 0x100cb215
mov edx, dword [ebp - 0x38]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100cb2a1
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp esi, dword [ebx + 0x18]
jne 0x100cb262
cmp dword [ebx + 0x1c], 0x10
jb 0x100cb24e
mov eax, dword [ebx + 8]
jmp 0x100cb251
lea eax, [ebx + 8]
push esi
push eax
push dword [ebp - 0x2c]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100cb270
cmp ebx, edi
je 0x100cb2a1
mov ebx, dword [ebx + 4]
cmp esi, dword [ebx + 0x18]
je 0x100cb243
jmp 0x100cb262
add ebx, 0x20
lea ecx, [ebp - 0x54]
call fcn.100029d0
mov dword [0x10132bb4], ebx
mov dword [ebp - 0x10], 0xffffffff
jmp 0x100caedc
mov dword [ebp - 0x10], 1
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 3
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop word cs:[eax + eax]
push ebp
sub esp, 0xc
add ebp, 0xc
lea ecx, [ebp - 0x54]
call fcn.100029d0
add esp, 0xc
pop ebp
ret