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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x78
mov esi, ecx
mov eax, dword [0x1017f528]
xor eax, ebp
mov dword [esp + 0x70], eax
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e34]
test al, 1
je 0x100961d4
mov edi, dword [0x10184e30]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 2
jne 0x10095f33
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e14]
test al, 1
je 0x10096239
mov edi, dword [0x10184e10]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ebx]
vmovss dword [esi + 0x3c], xmm0
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0x14c]
test ecx, ecx
je 0x10095b3a
mov eax, dword [ecx]
call dword [eax + 0x6e4]
fstp dword [esp + 0x24]
vmovss xmm0, dword [esp + 0x24]
jmp 0x10095b42
vmovss xmm0, dword [0x101323a8]
vmovss dword [esi + 0x40], xmm0
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e84]
test al, 1
je 0x1009629e
mov edi, dword [0x10184e80]
mov eax, dword [edi + 4]
mov ecx, dword [eax + ebx + 8]
mov dword [esi + 0x30], ecx
vmovsd xmm0, qword [eax + ebx]
mov edi, dword [ebp + 8]
lea eax, [esi + 0x28]
vmovsd qword [esi + 0x28], xmm0
mov ecx, esi
push eax
push edi
call fcn.10091480
cmp byte [esi + 0xb], 0
je 0x10095b8e
or byte [edi + 0x32], 0x40
cmp byte [esi + 0x38], 0
je 0x10095ca0
mov eax, dword [0x1017f5c8]
cmp dword [eax + 0x2c], 0
je 0x10095be4
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e74]
test al, 1
je 0x10096453
mov edi, dword [0x10184e70]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ebx]
vucomiss xmm0, dword [0x10129738]
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x30]
jbe 0x10095c59
or eax, 4
mov dword [edi + 0x30], eax
jmp 0x10095ca0
or byte [edi + 0x32], 0x40
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184f0c]
test al, 1
je 0x1009668b
mov edi, dword [0x10184f08]
mov edx, ebx
mov eax, dword [edi + 4]
mov ecx, dword [0x1017f610]
vmovss xmm0, dword [ecx + 0x20]
vmulss xmm0, xmm0, dword [0x10132450]
vmulss xmm0, xmm0, dword [eax + ebx]
mov eax, dword [0x10184e74]
test al, 1
je 0x100966f0
mov edi, dword [0x10184e70]
vminss xmm0, xmm0, dword [0x10129710]
mov eax, dword [edi + 4]
vucomiss xmm0, dword [eax + edx]
jae 0x10095c61
mov edi, dword [ebp + 8]
and byte [edi + 0x30], 0xfb
mov eax, dword [0x1017f5c0]
and byte [eax + 0x148], 0xfd
jmp 0x10095ca0
and eax, 0xfffffffb
mov dword [edi + 0x30], eax
jmp 0x10095ca0
mov eax, dword [0x1017f61c]
xor ecx, ecx
cmp dword [eax + 0x4d28], 7
setge cl
mov edi, dword [ebp + 8]
mov eax, dword [edi + 0x30]
and eax, 0xfffffffb
lea eax, [eax + ecx*4]
mov dword [edi + 0x30], eax
mov eax, dword [0x1017f5c0]
movzx ecx, byte [eax + 0x148]
test cl, 1
jne 0x10095c97
and cl, 0xfd
jmp 0x10095c9a
or cl, 2
mov byte [eax + 0x148], cl
mov ecx, esi
push edi
call fcn.10092420
mov bh, al
mov ecx, esi
push edi
call fcn.100938a0
test bh, bh
jne 0x10095e7e
mov ebx, eax
cmp byte [esi + 0xa], 0
je 0x10095de3
push dword [esi + 0x1c]
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x10095de3
test byte [edi + 0x30], 2
jne 0x10095de3
mov eax, dword [0x1017f608]
mov ecx, dword [eax]
mov eax, dword [0x1017f714]
test al, 1
je 0x10096afb
mov edi, dword [0x1017f710]
mov eax, dword [edi + 4]
test byte [eax + ecx], 1
mov edi, dword [ebp + 8]
je 0x10095de3
vmovss xmm1, dword [edi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10095d2e
jp 0x10095d2e
vmovss xmm1, dword [edi + 0x28]
vucomiss xmm1, xmm0
jne 0x10095d2e
jnp 0x10095de3
vcvtsi2ss xmm2, xmm2, dword [esi + 0x24]
vmovss xmm0, dword [esi + 0x28]
vmovss xmm1, dword [esi + 0x2c]
vmulss xmm1, xmm1, xmm1
vfmadd231ss xmm1, xmm0, xmm0
vmovss xmm0, dword [esi + 0x30]
vfmadd213ss xmm0, xmm0, xmm1
vcvtss2sd xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x10095d64
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10095d8a
sub esp, 8
vmovsd qword [esp], xmm0
vmovss dword [esp + 8], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
vmovss xmm2, dword [esp + 8]
add esp, 8
fstp qword [esp + 0x40]
vmovsd xmm0, qword [esp + 0x40]
vcvtsd2ss xmm0, xmm0, xmm0
vucomiss xmm0, xmm2
jb 0x10095de3
vcvtsi2ss xmm0, xmm3, dword [esi + 0x24]
vmovss dword [esi + 0x40], xmm0
vmovss dword [esi + 0x3c], xmm0
mov eax, dword [0x1017f608]
mov edx, dword [eax]
mov eax, dword [0x10184e84]
test al, 1
je 0x10096eea
mov edi, dword [0x10184e80]
mov eax, dword [edi + 4]
mov ecx, dword [eax + edx + 8]
mov dword [esp + 0x60], ecx
vmovsd xmm0, qword [eax + edx]
vmovsd qword [esp + 0x58], xmm0
lea eax, [esp + 0x58]
mov ecx, esi
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.10091230
test bl, bl
jne 0x10095e7e
mov eax, dword [0x1017f5e4]
cmp byte [eax + 0x14], 0
je 0x10095e24
vmovss xmm1, dword [edi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10095f48
jp 0x10095f48
vmovss xmm1, dword [edi + 0x28]
vucomiss xmm1, xmm0
jne 0x10095f48
jp 0x10095f48
cmp byte [esi + 0xc], 0
je 0x10095e76
test byte [edi + 0x30], 2
je 0x10095e76
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0xc0]
mov eax, dword [ecx]
call dword [eax + 0x34]
test eax, eax
jne 0x10095e76
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x1017f714]
test al, 1
je 0x10096bc9
mov edi, dword [0x1017f710]
mov eax, dword [edi + 4]
mov eax, dword [eax + ebx]
mov edi, dword [ebp + 8]
mov ecx, dword [edi + 0x30]
and ecx, 0xfffffffd
and eax, 1
lea eax, [ecx + eax*2]
mov dword [edi + 0x30], eax
mov ecx, esi
push edi
call fcn.10091700
and dword [edi + 0x30], 0xfffff9e7
cmp byte [esi + 9], 0
je 0x10095eec
mov eax, dword [0x1017f608]
mov edi, dword [eax]
mov eax, dword [0x10184e34]
test al, 1
je 0x1009630d
mov esi, dword [0x10184e30]
mov eax, dword [esi + 4]
cmp byte [eax + edi], 2
mov edi, dword [ebp + 8]
jne 0x10095eec
vmovss xmm1, dword [edi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10095ec2
jnp 0x10095ed5
xor eax, eax
vucomiss xmm0, xmm1
setbe al
lea eax, [eax*8 + 8]
or dword [edi + 0x30], eax
vmovss xmm1, dword [edi + 0x28]
vucomiss xmm1, xmm0
jne 0x10095ee2
jnp 0x10095f33
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
jmp 0x10095f22
vmovss xmm1, dword [edi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x10095efd
jnp 0x10095f0d
setbe al
movzx eax, al
lea eax, [eax*8 + 8]
or dword [edi + 0x30], eax
vmovss xmm1, dword [edi + 0x28]
vucomiss xmm1, xmm0
jne 0x10095f1a
jnp 0x10095f33
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
seta al
movzx eax, al
shl eax, 9
add eax, 0x200
or dword [edi + 0x30], eax
mov ecx, dword [esp + 0x70]
xor ecx, ebp
call fcn.100d7fe0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
test byte [edi + 0x30], 4
jne 0x10095e24
cmp byte [esi + 0x38], 0
jne 0x10095e24
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x1017f714]
test al, 1
je 0x10096b64
mov edi, dword [0x1017f710]
mov eax, dword [edi + 4]
test byte [eax + ebx], 1
mov edi, dword [ebp + 8]
je 0x10095e24
test byte [edi + 0x30], 2
jne 0x10095e24
mov eax, dword [0x1017f5c0]
cmp dword [eax + 0x14c], 0
je 0x10095e24
cmp dword [eax + 0x150], 0
je 0x10095e24
mov ecx, dword [0x1017f608]
mov ebx, dword [ecx]
mov ecx, dword [0x10184e14]
test cl, 1
je 0x10096f53
mov edi, dword [0x10184e10]
mov ecx, dword [edi + 4]
vmovss xmm0, dword [ecx + ebx]
vmovss dword [esi + 0x3c], xmm0
mov ecx, dword [eax + 0x14c]
test ecx, ecx
je 0x10095ff7
mov eax, dword [ecx]
call dword [eax + 0x6e4]
fstp dword [esp + 0x20]
vmovss xmm0, dword [esp + 0x20]
jmp 0x10095fff
vmovss xmm0, dword [0x101323a8]
vmovss dword [esi + 0x40], xmm0
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e84]
test al, 1
je 0x10096fb9
mov edi, dword [0x10184e80]
mov eax, dword [edi + 4]
mov ecx, dword [eax + ebx + 8]
mov dword [esp + 0x50], ecx
vmovsd xmm0, qword [eax + ebx]
vmovsd qword [esp + 0x48], xmm0
lea eax, [esp + 0x48]
mov ecx, esi
push eax
mov edi, dword [ebp + 8]
push edi
call fcn.10091480
vmovss xmm0, dword [esp + 0x48]
vmovss xmm1, dword [esp + 0x4c]
vmulss xmm1, xmm1, xmm1
vfmadd231ss xmm1, xmm0, xmm0
vcvtss2sd xmm0, xmm1, xmm1
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x1009606d
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10096087
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
add esp, 8
fstp qword [esp + 0x38]
vmovsd xmm0, qword [esp + 0x38]
vcvtsd2ss xmm2, xmm0, xmm0
vucomiss xmm2, dword [0x101298e4]
jbe 0x10095e24
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e84]
test al, 1
je 0x1009710a
mov edi, dword [0x10184e80]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ebx]
vmovss xmm1, dword [eax + ebx + 4]
vmulss xmm1, xmm1, xmm1
vfmadd231ss xmm1, xmm0, xmm0
vcvtss2sd xmm0, xmm1, xmm1
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x100960de
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10096104
sub esp, 8
vmovsd qword [esp], xmm0
vmovss dword [esp + 8], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
vmovss xmm2, dword [esp + 8]
add esp, 8
fstp qword [esp + 0x30]
vmovsd xmm0, qword [esp + 0x30]
mov edi, dword [ebp + 8]
vcvtsd2ss xmm0, xmm0, xmm0
vsubss xmm0, xmm2, xmm0
vbroadcastss xmm1, dword [0x1012978c]
vandps xmm0, xmm0, xmm1
vmovss xmm1, dword [0x1012984c]
vucomiss xmm1, xmm0
jbe 0x10095e24
vmovss xmm0, dword [edi + 0x24]
vmovss xmm1, dword [edi + 0x28]
vmulss xmm1, xmm1, xmm1
vfmadd231ss xmm1, xmm0, xmm0
vcvtss2sd xmm0, xmm1, xmm1
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x10096155
vsqrtsd xmm0, xmm0, xmm0
jmp 0x1009616f
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
add esp, 8
fstp qword [esp + 0x28]
vmovsd xmm0, qword [esp + 0x28]
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [esp], xmm0
mov eax, dword [0x1017f5c0]
push 0x41a00000
push 0x3f800000
call dword [eax]
add esp, 8
fstp dword [esp + 0x1c]
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0x14c]
mov eax, dword [ecx]
call dword [eax + 0x6e4]
fstp dword [esp + 0x18]
vmovss xmm1, dword [esp]
vminss xmm0, xmm1, dword [esp + 0x18]
vsubss xmm0, xmm0, dword [esp + 0x1c]
vdivss xmm0, xmm0, xmm1
vmovsd xmm1, qword [edi + 0x24]
vbroadcastss xmm0, xmm0
vmulps xmm0, xmm1, xmm0
vmovlps qword [edi + 0x24], xmm0
jmp 0x10095e24
or eax, 1
mov dword [0x10184e34], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.m_MoveType
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x1009620d
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10096303
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096372
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100963c3
or eax, 1
mov dword [0x10184e14], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_flMaxspeed
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096272
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x100964b8
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x100964c9
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1009651a
or eax, 1
mov dword [0x10184e84], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x100962d7
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x100964bf
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x100965aa
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100965fb
mov ecx, 0x811c9dc5
jmp 0x100963e3
or eax, 1
mov dword [0x10184e34], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea ecx, [esp + 0x58]
mov dword [esp + 4], ecx
push str.m_MoveType
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096346
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
cmp dword [esp], 0
je 0x1009675f
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x10096766
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100967b1
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096387
cmp dword [esp + 4], 0
je 0x100963e3
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x100963d0
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x1009642d
cmp dword [edi + 0x1c], 0x10
jb 0x10096416
mov eax, dword [edi + 8]
jmp 0x10096419
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1009643c
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10096403
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e30], edi
jmp 0x10095ae3
or eax, 1
mov dword [0x10184e74], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.m_flDuckAmount
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x1009648c
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x1009683b
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096842
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096893
mov ecx, 0x811c9dc5
jmp 0x1009653a
mov ecx, 0x811c9dc5
jmp 0x1009661b
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x100964de
cmp dword [esp + 4], 0
je 0x1009653a
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096527
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096584
cmp dword [edi + 0x1c], 0x10
jb 0x1009656d
mov eax, dword [edi + 8]
jmp 0x10096570
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096593
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x1009655a
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e10], edi
jmp 0x10095b0a
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x100965bf
cmp dword [esp + 4], 0
je 0x1009661b
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096608
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096665
cmp dword [edi + 0x1c], 0x10
jb 0x1009664e
mov eax, dword [edi + 8]
jmp 0x10096651
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096674
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x1009663b
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e80], edi
jmp 0x10095b61
or eax, 1
mov dword [0x10184f0c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_flDuckSpeed
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x100966c4
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10096923
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096934
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096985
vmovss dword [esp + 0x14], xmm0
mov dword [esp + 0x10], edx
or eax, 1
mov dword [0x10184e74], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea ecx, [esp + 0x58]
mov dword [esp + 4], ecx
push str.m_flDuckAmount
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096733
mov eax, dword [esp + 0x58]
mov dword [esp + 4], eax
cmp dword [esp], 0
je 0x1009692a
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x10096a1c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096a67
mov ecx, 0x811c9dc5
jmp 0x100967d1
mov esi, dword [esp]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 4]
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 esi, edx
jne 0x10096777
cmp dword [esp + 8], 0
je 0x100967d1
add edx, dword [esp + 4]
xor esi, esi
movzx ebx, byte [edx + esi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc esi
cmp dword [esp + 8], esi
jne 0x100967be
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp]
cmp eax, dword [esi + 0x18]
jne 0x10096817
cmp dword [esi + 0x1c], 0x10
jb 0x10096800
mov eax, dword [esi + 8]
jmp 0x10096803
lea eax, [esi + 8]
push dword [esp]
push eax
push dword [esp + 0xc]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096824
cmp esi, ebx
je 0x10097437
mov esi, dword [esi + 4]
jmp 0x100967ed
add esi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e30], esi
jmp 0x10095ea5
mov ecx, 0x811c9dc5
jmp 0x100968b3
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096857
cmp dword [esp + 4], 0
je 0x100968b3
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x100968a0
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x100968fd
cmp dword [edi + 0x1c], 0x10
jb 0x100968e6
mov eax, dword [edi + 8]
jmp 0x100968e9
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1009690c
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x100968d3
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e70], edi
jmp 0x10095bbd
mov ecx, 0x811c9dc5
jmp 0x100969a5
mov ecx, 0x811c9dc5
jmp 0x10096a87
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096949
cmp dword [esp + 4], 0
je 0x100969a5
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096992
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x100969ef
cmp dword [edi + 0x1c], 0x10
jb 0x100969d8
mov eax, dword [edi + 8]
jmp 0x100969db
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100969fe
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x100969c5
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184f08], edi
mov eax, dword [0x1017f608]
mov edx, dword [eax]
jmp 0x10095c04
mov edi, dword [esp]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 4]
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 0x10096a2d
cmp dword [esp + 8], 0
je 0x10096a87
add edx, dword [esp + 4]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 8], edi
jne 0x10096a74
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096acd
cmp dword [edi + 0x1c], 0x10
jb 0x10096ab6
mov eax, dword [edi + 8]
jmp 0x10096ab9
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0xc]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096ada
cmp edi, ebx
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10096aa3
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e70], edi
mov edx, dword [esp + 0x10]
vmovss xmm0, dword [esp + 0x14]
jmp 0x10095c32
mov dword [esp + 0x14], ecx
or eax, 1
mov dword [0x1017f714], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_fFlags
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096b38
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10096c2e
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096c35
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096c86
or eax, 1
mov dword [0x1017f714], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_fFlags
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096b9d
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10096d1a
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096d21
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096d72
or eax, 1
mov dword [0x1017f714], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_fFlags
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096c02
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10096e02
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10096e09
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10096e5a
mov ecx, 0x811c9dc5
jmp 0x10096ca6
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096c4a
cmp dword [esp + 4], 0
je 0x10096ca6
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096c93
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096cf0
cmp dword [edi + 0x1c], 0x10
jb 0x10096cd9
mov eax, dword [edi + 8]
jmp 0x10096cdc
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096cff
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10096cc6
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x1017f710], edi
mov ecx, dword [esp + 0x14]
jmp 0x10095cfc
mov ecx, 0x811c9dc5
jmp 0x10096d92
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096d36
cmp dword [esp + 4], 0
je 0x10096d92
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096d7f
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096ddc
cmp dword [edi + 0x1c], 0x10
jb 0x10096dc5
mov eax, dword [edi + 8]
jmp 0x10096dc8
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096deb
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10096db2
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x1017f710], edi
jmp 0x10095f76
mov ecx, 0x811c9dc5
jmp 0x10096e7a
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10096e1e
cmp dword [esp + 4], 0
je 0x10096e7a
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10096e67
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10096ec4
cmp dword [edi + 0x1c], 0x10
jb 0x10096ead
mov eax, dword [edi + 8]
jmp 0x10096eb0
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10096ed3
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10096e9a
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x1017f710], edi
jmp 0x10095e5e
mov dword [esp + 0x14], edx
or eax, 1
mov dword [0x10184e84], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096f27
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x1009701e
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10097025
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10097076
or ecx, 1
mov dword [0x10184e14], ecx
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_flMaxspeed
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096f8d
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x10097177
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x10097188
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100971d9
or eax, 1
mov dword [0x10184e84], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x58]
mov dword [esp + 8], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10096ff2
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
cmp dword [esp], 0
je 0x1009717e
mov eax, dword [esp]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 4], eax
cmp ecx, 3
jae 0x1009726e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100972bf
mov ecx, 0x811c9dc5
jmp 0x10097096
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x1009703a
cmp dword [esp + 4], 0
je 0x10097096
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x10097083
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x100970e0
cmp dword [edi + 0x1c], 0x10
jb 0x100970c9
mov eax, dword [edi + 8]
jmp 0x100970cc
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100970ef
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x100970b6
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e80], edi
mov edx, dword [esp + 0x14]
jmp 0x10095dbd
vmovss dword [esp], xmm2
or eax, 1
mov dword [0x10184e84], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x58]
mov dword [esp + 0xc], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.10005ce0
mov eax, dword [esp + 0x68]
mov dword [esp + 4], eax
cmp dword [esp + 0x6c], 0x10
jb 0x10097149
mov eax, dword [esp + 0x58]
mov dword [esp + 0xc], eax
cmp dword [esp + 4], 0
je 0x1009734f
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x10097356
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100973a8
mov ecx, 0x811c9dc5
jmp 0x100971f9
mov ecx, 0x811c9dc5
jmp 0x100972df
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x1009719d
cmp dword [esp + 4], 0
je 0x100971f9
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x100971e6
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10097243
cmp dword [edi + 0x1c], 0x10
jb 0x1009722c
mov eax, dword [edi + 8]
jmp 0x1009722f
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10097252
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x10097219
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e10], edi
mov eax, dword [0x1017f5c0]
jmp 0x10095fcc
mov eax, dword [esp]
and eax, 0xfffffffc
mov dword [esp + 0xc], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 8]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0xc], edx
jne 0x10097283
cmp dword [esp + 4], 0
je 0x100972df
add edx, dword [esp + 8]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 4], edi
jne 0x100972cc
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 4], eax
mov eax, dword [esp]
cmp eax, dword [edi + 0x18]
jne 0x10097329
cmp dword [edi + 0x1c], 0x10
jb 0x10097312
mov eax, dword [edi + 8]
jmp 0x10097315
lea eax, [edi + 8]
push dword [esp]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10097338
cmp edi, dword [esp + 4]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x100972ff
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e80], edi
jmp 0x1009601e
mov ecx, 0x811c9dc5
jmp 0x100973c8
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x10], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0xc]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x10], edx
jne 0x1009736c
cmp dword [esp + 8], 0
je 0x100973c8
add edx, dword [esp + 0xc]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 8], edi
jne 0x100973b5
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10097437
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x10097410
cmp dword [edi + 0x1c], 0x10
jb 0x100973f8
mov eax, dword [edi + 8]
jmp 0x100973fb
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1009741b
cmp edi, dword [esp + 8]
je 0x10097437
mov edi, dword [edi + 4]
jmp 0x100973e4
add edi, 0x20
lea ecx, [esp + 0x58]
call fcn.100026e0
mov dword [0x10184e80], edi
vmovss xmm2, dword [esp]
jmp 0x100960b3
push 0x1016ba76
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
int3