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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x44
mov dword [ebp - 0x30], ecx
mov esi, dword [ebp + 8]
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100b1cf0
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov ecx, dword [0x1012d32c]
push esi
call fcn.100af6d0
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132be0]
test al, 1
je 0x100b0bf5
mov edi, dword [0x10132bdc]
mov eax, dword [edi + 4]
cmp byte [eax + ecx], 2
jne 0x100b0be2
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132bc0]
test al, 1
je 0x100b0c53
mov edi, dword [0x10132bbc]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ecx]
mov eax, dword [ebp - 0x30]
vmovss dword [eax + 0x44], xmm0
mov eax, dword [0x1012d320]
mov ecx, dword [eax + 0x1c8]
test ecx, ecx
je 0x100b084a
mov eax, dword [ecx]
mov eax, dword [eax + 0x6e8]
mov dword [ebp - 0x10], 0xffffffff
call eax
fstp dword [ebp - 0x50]
vmovss xmm0, dword [ebp - 0x50]
jmp 0x100b0852
vmovss xmm0, dword [0x100fe410]
mov eax, dword [ebp - 0x30]
vmovss dword [eax + 0x48], xmm0
mov eax, dword [0x1012d35c]
mov ebx, dword [eax]
mov eax, dword [0x10132c18]
test al, 1
je 0x100b0cb1
mov edi, dword [0x10132c14]
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x30]
lea edx, [edi + 0x24]
mov ecx, dword [eax + ebx + 8]
mov dword [edi + 0x2c], ecx
vmovsd xmm0, qword [eax + ebx]
vmovsd qword [edi + 0x24], xmm0
mov ecx, edi
push edx
push esi
call fcn.100a9c70
cmp byte [edi + 0xb], 0
je 0x100b08a8
or byte [esi + 0x32], 0x40
mov eax, dword [ebp - 0x30]
cmp byte [eax + 0x40], 0
je 0x100b09b7
mov eax, dword [0x1012d328]
cmp dword [eax + 0x2c], 0
je 0x100b08fa
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132c28]
test al, 1
je 0x100b0e48
mov edi, dword [0x10132c24]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ecx]
vucomiss xmm0, dword [0x100f54dc]
mov eax, dword [esi + 0x30]
jbe 0x100b096c
or eax, 4
mov dword [esi + 0x30], eax
jmp 0x100b09b0
or byte [esi + 0x32], 0x40
mov eax, dword [0x1012d35c]
mov ebx, dword [eax]
mov eax, dword [0x10132cb8]
test al, 1
je 0x100b1060
mov edi, dword [0x10132cb4]
mov edx, ebx
mov eax, dword [edi + 4]
mov ecx, dword [0x1012d364]
vmovss xmm0, dword [ecx + 0x20]
vmulss xmm0, xmm0, dword [0x100fe454]
vmulss xmm0, xmm0, dword [eax + ebx]
mov eax, dword [0x10132c28]
test al, 1
je 0x100b10be
mov edi, dword [0x10132c24]
vminss xmm0, xmm0, dword [0x100f54d0]
mov eax, dword [edi + 4]
vucomiss xmm0, dword [eax + edx]
jae 0x100b0974
and byte [esi + 0x30], 0xfb
mov eax, dword [0x1012d320]
and byte [eax + 0x1c4], 0xfd
jmp 0x100b09b0
and eax, 0xfffffffb
mov dword [esi + 0x30], eax
jmp 0x100b09b0
mov eax, dword [0x1012d370]
xor ecx, ecx
cmp dword [eax + 0x4d30], 7
setge cl
mov eax, dword [esi + 0x30]
and eax, 0xfffffffb
lea eax, [eax + ecx*4]
mov dword [esi + 0x30], eax
mov eax, dword [0x1012d320]
movzx ecx, byte [eax + 0x1c4]
test cl, 1
jne 0x100b09a7
and cl, 0xfd
jmp 0x100b09aa
or cl, 2
mov byte [eax + 0x1c4], cl
mov dword [ebp - 0x10], 0xffffffff
mov edi, dword [ebp - 0x30]
mov ecx, edi
push esi
call fcn.100acc70
mov ebx, eax
mov ecx, edi
push esi
call fcn.100ae0c0
test bl, bl
jne 0x100b0b29
mov bh, al
cmp byte [edi + 0xa], 0
je 0x100b0ace
mov eax, dword [ebp - 0x30]
push dword [eax + 0x1c]
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x100b0ace
test byte [esi + 0x30], 2
jne 0x100b0ace
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x1012d48c]
test al, 1
je 0x100b14f1
mov edi, dword [0x1012d488]
mov eax, dword [edi + 4]
test byte [eax + ecx], 1
je 0x100b0ace
vmovss xmm1, dword [esi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x100b0a48
jp 0x100b0a48
vmovss xmm1, dword [esi + 0x28]
vucomiss xmm1, xmm0
jne 0x100b0a48
jnp 0x100b0ace
mov eax, dword [ebp - 0x30]
vmovss xmm0, dword [eax + 0x10]
vmovss xmm1, dword [eax + 0x24]
vmovss xmm2, dword [eax + 0x28]
vmulss xmm2, xmm2, xmm2
vfmadd231ss xmm2, xmm1, xmm1
vmovss xmm1, dword [eax + 0x2c]
vfmadd213ss xmm1, xmm1, xmm2
vcvtss2sd xmm1, xmm1, xmm1
vsqrtsd xmm1, xmm1, xmm1
vcvtsd2ss xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jb 0x100b0ace
mov eax, dword [ebp - 0x30]
vmovss dword [eax + 0x48], xmm0
vmovss dword [eax + 0x44], xmm0
mov eax, dword [0x1012d35c]
mov edx, dword [eax]
mov eax, dword [0x10132c18]
test al, 1
je 0x100b1705
mov edi, dword [0x10132c14]
mov dword [ebp - 0x10], 0xffffffff
mov eax, dword [edi + 4]
mov ecx, dword [eax + edx + 8]
mov dword [ebp - 0x40], ecx
vmovsd xmm0, qword [eax + edx]
vmovsd qword [ebp - 0x48], xmm0
lea eax, [ebp - 0x48]
mov ecx, dword [ebp - 0x30]
push eax
push esi
call fcn.100a9a60
test bh, bh
mov edi, dword [ebp - 0x30]
jne 0x100b0b29
cmp byte [edi + 0xc], 0
je 0x100b0b17
test byte [esi + 0x30], 2
je 0x100b0b17
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x1012d48c]
test al, 1
je 0x100b12e5
mov edi, dword [0x1012d488]
mov eax, dword [edi + 4]
mov eax, dword [eax + ecx]
mov ecx, dword [esi + 0x30]
and ecx, 0xfffffffd
and eax, 1
lea eax, [ecx + eax*2]
mov dword [esi + 0x30], eax
mov dword [ebp - 0x10], 0xffffffff
mov dword [ebp - 0x10], 0xffffffff
mov edi, dword [ebp - 0x30]
mov ecx, edi
push esi
call fcn.100a9ea0
mov dword [ebp - 0x10], 0xffffffff
mov ecx, edi
push esi
call fcn.100ac1a0
and dword [esi + 0x30], 0xfffff9e7
cmp byte [edi + 9], 0
je 0x100b0b9f
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132be0]
test al, 1
je 0x100b0d19
mov edi, dword [0x10132bdc]
mov eax, dword [edi + 4]
cmp byte [eax + ecx], 2
jne 0x100b0b9f
vmovss xmm1, dword [esi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x100b0b79
jnp 0x100b0b8c
xor eax, eax
vucomiss xmm0, xmm1
setbe al
lea eax, [eax*8 + 8]
or dword [esi + 0x30], eax
vmovss xmm1, dword [esi + 0x28]
vucomiss xmm1, xmm0
jne 0x100b0b99
jnp 0x100b0be2
vucomiss xmm0, xmm1
jmp 0x100b0bd1
vmovss xmm1, dword [esi + 0x24]
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
jne 0x100b0bb0
jnp 0x100b0bc0
setbe al
movzx eax, al
lea eax, [eax*8 + 8]
or dword [esi + 0x30], eax
vmovss xmm1, dword [esi + 0x28]
vucomiss xmm1, xmm0
jne 0x100b0bcd
jnp 0x100b0be2
vucomiss xmm1, xmm0
seta al
movzx eax, al
shl eax, 9
add eax, 0x200
or dword [esi + 0x30], eax
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0x44
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov dword [ebp - 0x2c], ecx
or eax, 1
mov dword [0x10132be0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.m_MoveType
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b0c2e
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b0d0f
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b0d77
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0dc0
mov dword [ebp - 0x2c], ecx
or eax, 1
mov dword [0x10132bc0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 2
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_flMaxspeed
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b0c8c
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b0ea6
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b0eb7
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0f00
mov dword [ebp - 0x2c], ebx
or eax, 1
mov dword [0x10132c18], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 4
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b0cea
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b0ead
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b0f88
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0fd1
mov ecx, 0x811c9dc5
jmp 0x100b0ddd
mov dword [ebp - 0x28], ecx
or eax, 1
mov dword [0x10132be0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], 0x12
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x30], ecx
push str.m_MoveType
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b0d52
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x30], eax
test esi, esi
je 0x100b1121
mov eax, esi
and eax, 3
mov dword [ebp - 0x20], eax
cmp esi, 4
jae 0x100b1128
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b1171
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 0x100b0d86
cmp dword [ebp - 0x24], 0
je 0x100b0ddd
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 - 0x24], edi
jne 0x100b0dcb
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b183d
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b0e0d
cmp edi, ebx
je 0x100b183d
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b0dfd
cmp dword [edi + 0x1c], 0x10
jb 0x100b0e18
mov eax, dword [edi + 8]
jmp 0x100b0e1b
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b0dfd
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132bdc], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x2c]
jmp 0x100b07e9
mov dword [ebp - 0x2c], ecx
or eax, 1
mov dword [0x10132c28], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 6
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.m_flDuckAmount
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b0e81
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b11f9
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b1200
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b1249
mov ecx, 0x811c9dc5
jmp 0x100b0f1d
mov ecx, 0x811c9dc5
jmp 0x100b0fee
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 0x100b0ec6
cmp dword [ebp - 0x24], 0
je 0x100b0f1d
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 - 0x24], edi
jne 0x100b0f0b
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b1851
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b0f4d
cmp edi, ebx
je 0x100b1851
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b0f3d
cmp dword [edi + 0x1c], 0x10
jb 0x100b0f58
mov eax, dword [edi + 8]
jmp 0x100b0f5b
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b0f3d
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132bbc], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x2c]
jmp 0x100b0810
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 0x100b0f97
cmp dword [ebp - 0x24], 0
je 0x100b0fee
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 - 0x24], edi
jne 0x100b0fdc
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b1865
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b101e
cmp edi, ebx
je 0x100b1865
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b100e
cmp dword [edi + 0x1c], 0x10
jb 0x100b1029
mov eax, dword [edi + 8]
jmp 0x100b102c
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b100e
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132c14], edi
mov dword [ebp - 0x10], 0xffffffff
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x2c]
jmp 0x100b087b
mov dword [ebp - 0x2c], ebx
or eax, 1
mov dword [0x10132cb8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 8
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_flDuckSpeed
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b1099
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b12d1
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b1343
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b138c
vmovss dword [ebp - 0x4c], xmm0
mov dword [ebp - 0x2c], edx
or eax, 1
mov dword [0x10132c28], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0xa
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.m_flDuckAmount
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b10fc
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b12db
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b141b
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b1464
mov ecx, 0x811c9dc5
jmp 0x100b118e
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x30]
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 0x100b1137
cmp dword [ebp - 0x20], 0
je 0x100b118e
add edx, dword [ebp - 0x30]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x20], edi
jne 0x100b117c
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 0x100b1879
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b11be
cmp edi, ebx
je 0x100b1879
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b11ae
cmp dword [edi + 0x1c], 0x10
jb 0x100b11c9
mov eax, dword [edi + 8]
jmp 0x100b11cc
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b11ae
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132bdc], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x28]
jmp 0x100b0b5f
mov ecx, 0x811c9dc5
jmp 0x100b1266
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 0x100b120f
cmp dword [ebp - 0x24], 0
je 0x100b1266
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 - 0x24], edi
jne 0x100b1254
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b188d
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b1296
cmp edi, ebx
je 0x100b188d
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b1286
cmp dword [edi + 0x1c], 0x10
jb 0x100b12a1
mov eax, dword [edi + 8]
jmp 0x100b12a4
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b1286
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132c24], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x2c]
jmp 0x100b08da
mov ecx, 0x811c9dc5
jmp 0x100b13a9
mov ecx, 0x811c9dc5
jmp 0x100b1481
mov dword [ebp - 0x2c], ecx
or eax, 1
mov dword [0x1012d48c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0x10
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_fFlags
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b131e
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b1552
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b1559
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b15a2
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 0x100b1352
cmp dword [ebp - 0x24], 0
je 0x100b13a9
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 - 0x24], edi
jne 0x100b1397
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b18a1
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b13d9
cmp edi, ebx
je 0x100b18a1
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b13c9
cmp dword [edi + 0x1c], 0x10
jb 0x100b13e4
mov eax, dword [edi + 8]
jmp 0x100b13e7
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b13c9
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132cb4], edi
mov eax, dword [0x1012d35c]
mov edx, dword [eax]
mov esi, dword [ebp + 8]
mov ebx, dword [ebp - 0x2c]
jmp 0x100b091a
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 0x100b142a
cmp dword [ebp - 0x24], 0
je 0x100b1481
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 - 0x24], edi
jne 0x100b146f
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b18b5
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b14b1
cmp edi, ebx
je 0x100b18b5
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b14a1
cmp dword [edi + 0x1c], 0x10
jb 0x100b14bc
mov eax, dword [edi + 8]
jmp 0x100b14bf
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b14a1
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132c24], edi
mov esi, dword [ebp + 8]
mov edx, dword [ebp - 0x2c]
vmovss xmm0, dword [ebp - 0x4c]
jmp 0x100b0948
mov dword [ebp - 0x4c], ecx
mov byte [ebp - 0x28], bh
or eax, 1
mov dword [0x1012d48c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xc
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_fFlags
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b152d
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b162a
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b1631
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b167a
mov ecx, 0x811c9dc5
jmp 0x100b15bf
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 0x100b1568
cmp dword [ebp - 0x24], 0
je 0x100b15bf
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 - 0x24], edi
jne 0x100b15ad
mov edx, dword [ebp - 0x28]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b18c9
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b15ef
cmp edi, ebx
je 0x100b18c9
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b15df
cmp dword [edi + 0x1c], 0x10
jb 0x100b15fa
mov eax, dword [edi + 8]
jmp 0x100b15fd
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b15df
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x1012d488], edi
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x2c]
jmp 0x100b0afb
mov ecx, 0x811c9dc5
jmp 0x100b1697
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 0x100b1640
cmp dword [ebp - 0x24], 0
je 0x100b1697
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 - 0x24], edi
jne 0x100b1685
mov edx, dword [ebp - 0x2c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b18dd
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b16c7
cmp edi, ebx
je 0x100b18dd
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b16b7
cmp dword [edi + 0x1c], 0x10
jb 0x100b16d2
mov eax, dword [edi + 8]
jmp 0x100b16d5
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b16b7
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x1012d488], edi
mov esi, dword [ebp + 8]
mov bh, byte [ebp - 0x28]
mov ecx, dword [ebp - 0x4c]
jmp 0x100b0a19
mov dword [ebp - 0x4c], edx
mov byte [ebp - 0x28], bh
or eax, 1
mov dword [0x10132c18], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xe
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_vecVelocity_0_
call fcn.100083b0
mov esi, dword [ebp - 0x38]
cmp dword [ebp - 0x34], 0x10
jb 0x100b1741
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b175b
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100b1762
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b17ab
mov ecx, 0x811c9dc5
jmp 0x100b17c8
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 0x100b1771
cmp dword [ebp - 0x24], 0
je 0x100b17c8
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 - 0x24], edi
jne 0x100b17b6
mov edx, dword [ebp - 0x2c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b18f1
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100b17f8
cmp edi, ebx
je 0x100b18f1
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100b17e8
cmp dword [edi + 0x1c], 0x10
jb 0x100b1803
mov eax, dword [edi + 8]
jmp 0x100b1806
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b17e8
add edi, 0x20
lea ecx, [ebp - 0x48]
call fcn.100029d0
mov dword [0x10132c14], edi
mov dword [ebp - 0x10], 0xffffffff
mov esi, dword [ebp + 8]
mov bh, byte [ebp - 0x28]
mov edx, dword [ebp - 0x4c]
jmp 0x100b0aad
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
mov dword [ebp - 0x10], 5
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0x13
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 7
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 9
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xb
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0x11
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xd
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xf
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 - 0x48]
call fcn.100029d0
add esp, 0xc
pop ebp
ret