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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x78
mov eax, dword [0x1015b040]
xor eax, esp
mov dword [esp + 0x74], eax
mov eax, dword [0x1018bcf4]
mov dword [esp + 0x60], edx
mov dword [esp + 0x44], ecx
push esi
push edi
vmovss dword [esp + 0x60], xmm1
test al, 1
jne 0x100644af
or eax, 1
mov dword [esp + 0x20], 0
push 0x16
mov dword [0x1018bcf4], eax
lea ecx, [esp + 0x14]
mov eax, dword [0x1018bfd0]
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_bIsScoped
mov dword [esp + 0x14], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea esi, [esp + 0x10]
mov edi, dword [esp + 0x10]
mov ecx, 0x811c9dc5
cmova esi, edi
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x10064453
nop dword [eax]
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x10064440
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bd0c], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x100644af
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x100644a5
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10064ead
push ecx
push edi
call fcn.10112642
add esp, 8
mov eax, dword [0x1018bd0c]
mov ecx, dword [esp + 0x4c]
mov eax, dword [eax + 4]
mov edi, dword [eax + ecx - 0x14]
mov eax, dword [0x1018bcc8]
mov dword [esp + 0x50], edi
test al, 1
jne 0x1006459a
mov eax, dword [0x1018bfd0]
lea ecx, [esp + 0x10]
or dword [0x1018bcc8], 1
push 0x1d
vpxor xmm0, xmm0, xmm0
push str.CBasePlayer__m_vecVelocity_0_
mov dword [esp + 0x14], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea esi, [esp + 0x10]
mov edi, dword [esp + 0x10]
mov ecx, 0x811c9dc5
cmova esi, edi
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x1006453a
movzx eax, byte [esi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x10064527
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bcec], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x10064596
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x1006458c
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10064ead
push ecx
push edi
call fcn.10112642
add esp, 8
mov edi, dword [esp + 0x50]
mov eax, dword [0x1018bcec]
mov esi, dword [eax + 4]
mov eax, dword [esp + 0x4c]
vmovq xmm0, qword [esi + eax]
mov eax, dword [esi + eax + 8]
vmovq qword [esp + 0x54], xmm0
vmovss xmm0, dword [esp + 0x58]
vmulss xmm1, xmm0, xmm0
vmovss xmm0, dword [esp + 0x54]
vmulss xmm0, xmm0, xmm0
vaddss xmm1, xmm1, xmm0
mov dword [esp + 0x5c], eax
vmovss xmm0, dword [esp + 0x5c]
vmulss xmm0, xmm0, xmm0
vaddss xmm0, xmm1, xmm0
vmovsd xmm1, qword [0x10157f20]
vmovss dword [esp + 0xc], xmm0
vmovsd xmm0, qword [0x10157fb8]
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_pow_precise
vmovss xmm1, dword [esp + 0xc]
vcvtsd2ss xmm0, xmm0, xmm0
vcomiss xmm1, xmm0
jbe 0x100646c0
mov eax, dword [esp + 0x4c]
vmovq xmm0, qword [esi + eax]
mov eax, dword [esi + eax + 8]
vmovq qword [esp + 0x30], xmm0
vmovss xmm0, dword [esp + 0x34]
vmulss xmm1, xmm0, xmm0
vmovss xmm0, dword [esp + 0x30]
vmulss xmm0, xmm0, xmm0
vaddss xmm1, xmm1, xmm0
mov dword [esp + 0x38], eax
vmovss xmm0, dword [esp + 0x38]
vmulss xmm0, xmm0, xmm0
vaddss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vxorpd xmm1, xmm1, xmm1
vucomisd xmm1, xmm0
ja 0x1006465f
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10064664
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
vmovss xmm2, dword [esp + 0x30]
vmovss xmm3, dword [esp + 0x38]
vxorps xmm1, xmm1, xmm1
vcvtsd2ss xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
vmovss xmm1, dword [esp + 0x34]
lahf
test ah, 0x44
jnp 0x10064694
vdivss xmm2, xmm2, xmm0
vdivss xmm1, xmm1, xmm0
vdivss xmm3, xmm3, xmm0
vmovss xmm0, dword [0x1015818c]
vmulss xmm2, xmm2, xmm0
vmulss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, xmm0
vmovss dword [esp + 0x18], xmm0
mov eax, dword [esp + 0x18]
vunpcklps xmm0, xmm2, xmm1
vmovq qword [esp + 0x54], xmm0
mov dword [esp + 0x5c], eax
vmovss xmm0, dword [edi + 0x6c]
vmovss xmm2, dword [0x10157ec8]
mov eax, dword [0x1018bd20]
vmovss dword [esp + 0x48], xmm0
vxorps xmm0, xmm0, xmm0
vmovss dword [esp + 0x6c], xmm2
vmovss dword [esp + 0x40], xmm0
test al, 1
jne 0x100647bf
or eax, 1
mov dword [esp + 0x20], 0
push 0xe
mov dword [0x1018bd20], eax
lea ecx, [esp + 0x14]
mov eax, dword [0x1018bfd0]
push str.m_flDuckAmount
mov dword [esp + 0x14], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea esi, [esp + 0x10]
mov edi, dword [esp + 0x10]
mov ecx, 0x811c9dc5
cmova esi, edi
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x10064757
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x10064744
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x38]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x34]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bd68], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x100647b3
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x100647a9
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10064ead
push ecx
push edi
call fcn.10112642
add esp, 8
mov edi, dword [esp + 0x50]
vmovss xmm2, dword [0x10157ec8]
mov eax, dword [0x1018bd68]
mov ecx, dword [esp + 0x4c]
vmovss xmm4, dword [edi + 0xa4]
vxorps xmm1, xmm1, xmm1
mov eax, dword [eax + 4]
vmovss xmm0, dword [eax + ecx]
vaddss xmm0, xmm0, dword [edi + 0xa8]
vcomiss xmm1, xmm0
lea eax, [esp + 0xc]
lea ecx, [esp + 0x40]
cmovbe ecx, eax
lea eax, [esp + 0x6c]
vcomiss xmm0, xmm2
vmovss dword [esp + 0xc], xmm0
vmovss xmm0, dword [esp + 0x48]
vmulss xmm3, xmm0, dword [0x10157fd8]
cmovbe eax, ecx
vmovss xmm1, dword [eax]
vsubss xmm5, xmm1, xmm4
vcomiss xmm3, xmm5
jb 0x10064834
vxorps xmm0, xmm3, xmmword [0x10158550]
vcomiss xmm5, xmm0
jae 0x10064838
vsubss xmm1, xmm4, xmm3
jmp 0x10064838
vaddss xmm1, xmm3, xmm4
vxorps xmm0, xmm0, xmm0
vcomiss xmm0, xmm1
lea eax, [esp + 0x64]
lea ecx, [esp + 0x74]
cmovbe eax, ecx
lea esi, [esp + 0x30]
vcomiss xmm1, xmm2
vmovss dword [esp + 0x74], xmm1
cmovbe esi, eax
mov eax, dword [0x1018bcc8]
vmovss dword [esp + 0x30], xmm2
vmovss dword [esp + 0x64], xmm0
test al, 1
jne 0x10064941
mov eax, dword [0x1018bfd0]
lea ecx, [esp + 0x10]
or dword [0x1018bcc8], 1
push 0x1d
push str.CBasePlayer__m_vecVelocity_0_
mov dword [esp + 0x14], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea edi, [esp + 0x10]
mov ecx, 0x811c9dc5
cmova edi, dword [esp + 0x10]
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x100648d9
movzx eax, byte [edx + edi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x100648c6
push ecx
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x48]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x44]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bcec], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x10064941
lea ecx, [eax + 1]
mov eax, dword [esp + 0x10]
mov edx, eax
cmp ecx, 0x1000
jb 0x10064937
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0xc], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x10064ead
mov eax, dword [esp + 0xc]
push ecx
push eax
call fcn.10112642
add esp, 8
mov eax, dword [0x1018bcec]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x4c]
vmovq xmm0, qword [eax]
mov eax, dword [eax + 8]
vmovq qword [esp + 0x10], xmm0
vmovss xmm0, dword [esp + 0x54]
vsubss xmm2, xmm0, dword [esp + 0x10]
vmovss xmm0, dword [esp + 0x58]
vsubss xmm1, xmm0, dword [esp + 0x14]
vmovss xmm0, dword [esp + 0x5c]
vmovss dword [esp + 0x40], xmm1
mov dword [esp + 0x18], eax
vsubss xmm3, xmm0, dword [esp + 0x18]
vmulss xmm1, xmm1, xmm1
vmulss xmm0, xmm2, xmm2
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm3, xmm3
vaddss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vxorpd xmm1, xmm1, xmm1
vucomisd xmm1, xmm0
vmovss dword [esp + 0x6c], xmm2
vmovss dword [esp + 0xc], xmm3
ja 0x100649bc
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100649c1
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
vcvtsd2ss xmm1, xmm0, xmm0
vmovss xmm0, dword [esp + 0x48]
vmulss xmm2, xmm0, dword [0x1015820c]
vcomiss xmm2, xmm1
jb 0x10064a50
vxorps xmm0, xmm2, xmmword [0x10158550]
vcomiss xmm1, xmm0
jb 0x100649fe
vmovss xmm2, dword [esp + 0x5c]
vmovss xmm3, dword [esp + 0x54]
vmovss xmm4, dword [esp + 0x58]
jmp 0x10064a94
vaddss xmm0, xmm1, dword [0x10157db4]
vmovss xmm1, dword [0x10157ec8]
vmovss xmm3, dword [esp + 0x10]
vmovss xmm4, dword [esp + 0x14]
vdivss xmm1, xmm1, xmm0
vmulss xmm0, xmm1, dword [esp + 0x6c]
vmulss xmm0, xmm0, xmm2
vsubss xmm3, xmm3, xmm0
vmulss xmm0, xmm1, dword [esp + 0x40]
vmulss xmm0, xmm0, xmm2
vsubss xmm4, xmm4, xmm0
vmulss xmm0, xmm1, dword [esp + 0xc]
vmovss xmm1, dword [esp + 0x18]
vmulss xmm0, xmm0, xmm2
vsubss xmm2, xmm1, xmm0
jmp 0x10064a94
vaddss xmm0, xmm1, dword [0x10157db4]
vmovss xmm1, dword [0x10157ec8]
vdivss xmm1, xmm1, xmm0
vmulss xmm0, xmm1, dword [esp + 0x6c]
vmulss xmm0, xmm0, xmm2
vaddss xmm3, xmm0, dword [esp + 0x10]
vmulss xmm0, xmm1, dword [esp + 0x40]
vmulss xmm0, xmm0, xmm2
vaddss xmm4, xmm0, dword [esp + 0x14]
vmulss xmm0, xmm1, dword [esp + 0xc]
vmulss xmm0, xmm0, xmm2
vaddss xmm2, xmm0, dword [esp + 0x18]
vmovss xmm0, dword [0x10158170]
sub esp, 8
vmulss xmm1, xmm3, xmm3
vmovss dword [esp + 4], xmm0
vmulss xmm0, xmm4, xmm4
vaddss xmm1, xmm1, xmm0
vmulss xmm0, xmm2, xmm2
vaddss xmm0, xmm1, xmm0
vcvtss2sd xmm0, xmm0, xmm0
vxorpd xmm1, xmm1, xmm1
vucomisd xmm1, xmm0
ja 0x10064acd
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10064ad2
call sub.api_ms_win_crt_math_l1_1_0.dll__libm_sse2_sqrt_precise
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fminf]
mov eax, dword [0x1018bcc0]
add esp, 8
fstp dword [esp + 0xc]
test al, 1
jne 0x10064bcb
or eax, 1
mov dword [esp + 0x20], 0
push 0x25
mov dword [0x1018bcc0], eax
lea ecx, [esp + 0x14]
mov eax, dword [0x1018bfd0]
vpxor xmm0, xmm0, xmm0
push str.CBaseCombatCharacter__m_hActiveWeapon
mov dword [esp + 0x48], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea edi, [esp + 0x10]
mov ecx, 0x811c9dc5
cmova edi, dword [esp + 0x10]
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x10064b63
nop dword [eax + eax]
movzx eax, byte [edx + edi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x10064b50
push ecx
mov ecx, dword [esp + 0x44]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x74]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bcc4], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x10064bcb
lea ecx, [eax + 1]
mov eax, dword [esp + 0x10]
mov edx, eax
cmp ecx, 0x1000
jb 0x10064bc1
mov eax, dword [edx - 4]
add ecx, 0x23
sub edx, eax
mov dword [esp + 0x40], eax
lea eax, [edx - 4]
cmp eax, 0x1f
ja 0x10064ead
mov eax, dword [esp + 0x40]
push ecx
push eax
call fcn.10112642
add esp, 8
mov eax, dword [0x1018bcc4]
mov ecx, dword [esp + 0x4c]
mov eax, dword [eax + 4]
mov edx, dword [ecx + eax]
cmp edx, 0xffffffff
jne 0x10064be9
vmovss xmm0, dword [0x10158170]
jmp 0x10064c48
mov ecx, dword [0x1018bbc4]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
vmovss xmm0, dword [0x10158170]
test eax, eax
je 0x10064c48
mov ecx, dword [eax]
mov ecx, dword [ecx + 0x6e8]
mov dword [esp + 0x40], ecx
mov ecx, eax
call dword [esp + 0x40]
vmovss xmm0, dword [0x10157dc4]
sub esp, 8
fstp dword [esp + 0x48]
vmovss dword [esp + 4], xmm0
vmovss xmm0, dword [esp + 0x48]
vmovss dword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_fmaxf]
fstp dword [esp + 0x48]
vmovss xmm0, dword [esp + 0x48]
add esp, 8
vmulss xmm0, xmm0, dword [0x10157e64]
vmovss xmm1, dword [esp + 0xc]
vmovss xmm3, dword [0x10157ec8]
vdivss xmm0, xmm1, xmm0
vxorps xmm2, xmm2, xmm2
vcomiss xmm2, xmm0
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x40]
cmovbe ecx, eax
lea eax, [esp + 0x48]
vcomiss xmm0, xmm3
vmovss dword [esp + 0x6c], xmm0
cmovbe eax, ecx
mov ecx, dword [esp + 0x50]
vmovss dword [esp + 0x48], xmm3
vmovss dword [esp + 0x40], xmm2
vmovss xmm0, dword [ecx + 0x11c]
vmulss xmm0, xmm0, dword [0x1015825c]
vsubss xmm1, xmm0, dword [0x10157e28]
vmulss xmm0, xmm1, dword [eax]
vmovss xmm1, dword [esi]
vcomiss xmm1, xmm2
vaddss xmm4, xmm0, xmm3
jbe 0x10064d04
vmovss xmm0, dword [esp + 0x74]
vcomiss xmm2, xmm0
lea eax, [esp + 0x74]
lea ecx, [esp + 0x30]
cmovbe ecx, eax
lea eax, [esp + 0x64]
vcomiss xmm0, xmm3
vmovss xmm0, dword [0x10157e60]
cmovbe eax, ecx
vmovss dword [esp + 0x64], xmm3
vmovss dword [esp + 0x30], xmm2
vsubss xmm0, xmm0, xmm4
vmulss xmm1, xmm1, dword [eax]
vmulss xmm0, xmm1, xmm0
vaddss xmm4, xmm0, xmm4
vmulss xmm0, xmm4, dword [0x101582a0]
vmovss dword [esp + 0x6c], xmm0
vmulss xmm0, xmm4, dword [0x10158074]
sub esp, 8
vmovss dword [esp + 0x50], xmm0
vmovss xmm0, dword [0x101581a4]
vmovss dword [esp + 4], xmm0
vmovss xmm0, dword [esp + 0x68]
vsubss xmm0, xmm0, xmm2
vmovss dword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
vmovss xmm0, dword [esp + 0x50]
vmovss xmm1, dword [0x10158520]
fstp dword [esp + 0x38]
vmovss xmm2, dword [esp + 0x38]
add esp, 8
vcomiss xmm0, xmm2
jb 0x10064d7f
vmovss xmm0, dword [esp + 0x6c]
vcomiss xmm0, xmm2
jbe 0x10064d8f
vandps xmm0, xmm0, xmm1
vaddss xmm0, xmm0, dword [esp + 0x60]
jmp 0x10064d93
vandps xmm0, xmm0, xmm1
vmovss xmm1, dword [esp + 0x60]
vsubss xmm0, xmm1, xmm0
jmp 0x10064d93
vxorps xmm0, xmm0, xmm0
vmovss xmm1, dword [0x101581a4]
sub esp, 8
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
vmovss xmm0, dword [esp + 0x14]
add esp, 8
vcomiss xmm0, dword [0x10157e10]
fstp dword [esp + 0x40]
ja 0x10064f00
vmovss xmm0, dword [esp + 0x5c]
vandps xmm0, xmm0, xmmword [0x10158520]
vcomiss xmm0, dword [0x101580b4]
ja 0x10064f00
mov eax, dword [0x1018bd74]
test al, 1
jne 0x10064ebd
or eax, 1
mov dword [esp + 0x20], 0
push 0x21
mov dword [0x1018bd74], eax
lea ecx, [esp + 0x14]
mov eax, dword [0x1018bfd0]
vpxor xmm0, xmm0, xmm0
push str.CCSPlayer__m_flLowerBodyYawTarget
mov dword [esp + 0x38], eax
vmovdqu xmmword [esp + 0x18], xmm0
mov dword [esp + 0x2c], 0
call fcn.100052f0
cmp dword [esp + 0x24], 0xf
lea esi, [esp + 0x10]
mov edi, dword [esp + 0x10]
mov ecx, 0x811c9dc5
cmova esi, edi
xor edx, edx
cmp dword [esp + 0x20], edx
jbe 0x10064e63
nop dword [eax + eax]
movzx eax, byte [edx + esi]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, dword [esp + 0x20]
jb 0x10064e50
push ecx
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x7c]
push eax
call fcn.10008e20
mov eax, dword [esp + 0x78]
test eax, eax
je 0x10064ef5
add eax, 0x20
mov dword [0x1018bd84], eax
mov eax, dword [esp + 0x24]
cmp eax, 0xf
jbe 0x10064ebd
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x10064eb3
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10064eb3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edi
call fcn.10112642
add esp, 8
vmovss xmm0, dword [esp + 0x40]
vcvtss2sd xmm0, xmm0, xmm0
vmulsd xmm0, xmm0, qword [0x10157f98]
vmovsd qword [esp + 0x30], xmm0
fld qword [esp + 0x30]
fstp qword [esp + 0x30]
vxorpd xmm0, xmm0, xmm0
vroundsd xmm0, xmm0, qword [esp + 0x30], 1
vmovsd qword [esp + 0x30], xmm0
fld qword [esp + 0x30]
jmp 0x10064f36
push str.invalid_unordered_map_K__T__key
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__]
vmovss xmm0, dword [esp + 0x40]
vcvtss2sd xmm0, xmm0, xmm0
vmulsd xmm0, xmm0, qword [0x10157f98]
vmovsd qword [esp + 0x30], xmm0
fld qword [esp + 0x30]
fstp qword [esp + 0x30]
vxorpd xmm1, xmm1, xmm1
vroundsd xmm1, xmm1, qword [esp + 0x30], 1
vmovsd qword [esp + 0x30], xmm1
fld qword [esp + 0x30]
mov eax, dword [esp + 0x68]
fstp qword [esp + 0x30]
cmp eax, 1
jne 0x10064f5a
vmovss xmm0, dword [esp + 0x6c]
pop edi
pop esi
mov ecx, dword [esp + 0x74]
xor ecx, esp
call fcn.101122e5
mov esp, ebp
pop ebp
ret
cmp eax, 2
jne 0x10064f76
vmovss xmm0, dword [esp + 0x48]
pop edi
pop esi
mov ecx, dword [esp + 0x74]
xor ecx, esp
call fcn.101122e5
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x10064f8c
vcvttsd2si eax, qword [esp + 0x30]
movzx eax, ax
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
mov ecx, dword [esp + 0x7c]
pop edi
pop esi
xor ecx, esp
call fcn.101122e5
mov esp, ebp
pop ebp
ret