Function at 0x100af6d0
Capabilities:
Encode data using xor
Hash data using fnv
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xf8
mov ebx, ecx
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100b1ce0
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
mov eax, dword [0x1012d320]
mov ecx, dword [eax + 0x1c8]
test ecx, ecx
je 0x100af7d7
mov eax, dword [eax + 0x1cc]
test eax, eax
je 0x100af7d7
mov eax, dword [eax + 0xcc]
add eax, 0xfffffff8
cmp eax, 0xfffffff9
ja 0x100af752
mov eax, dword [0x1012d47c]
test al, 1
je 0x100afc87
mov edi, dword [0x1012d478]
mov eax, dword [edi + 4]
cmp word [eax + ecx], 0x1f
jne 0x100af7d7
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132be0]
test al, 1
je 0x100afc1a
mov edi, dword [0x10132bdc]
mov eax, dword [edi + 4]
cmp byte [eax + ecx], 9
je 0x100af7d7
mov ecx, dword [0x1012d35c]
mov edx, dword [ecx]
mov ecx, dword [0x10132be0]
test cl, 1
je 0x100afcf4
cmp byte [eax + edx], 8
je 0x100af7d7
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x14]
mov dword [ebp - 0xb4], eax
vmovsd xmm0, qword [esi + 0xc]
vmovsd qword [ebp - 0xbc], xmm0
mov eax, dword [0x1012d32c]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x100af7c3
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
js 0x100af7ed
mov byte [ebx + 0x43], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [ebx + 0x30], xmm0
mov dword [ebx + 0x38], 0
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0xf8
pop esi
pop edi
pop ebx
pop ebp
ret 4
vmovss xmm1, dword [ebx + 0x30]
vucomiss xmm1, dword [0x100fe3e4]
jbe 0x100af9c0
vmovss xmm0, dword [0x100fd290]
vucomiss xmm0, xmm1
jbe 0x100af9c0
vmovss xmm1, dword [ebx + 0x34]
vucomiss xmm1, dword [0x100fe3e4]
jbe 0x100af9c0
vucomiss xmm0, xmm1
jbe 0x100af9c0
vmovss xmm1, dword [ebx + 0x38]
vucomiss xmm1, dword [0x100fe3e4]
jbe 0x100af9c0
vucomiss xmm0, xmm1
jbe 0x100af9c0
lea esi, [ebx + 0x30]
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x10], 0xffffffff
call eax
mov ecx, dword [eax + 8]
mov dword [esi + 8], ecx
vmovsd xmm0, qword [eax]
vmovsd qword [esi], xmm0
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x1012d48c]
test al, 1
je 0x100b03f5
mov edi, dword [0x1012d488]
mov eax, dword [edi + 4]
test byte [eax + ecx], 1
jne 0x100af7d7
vxorps xmm1, xmm1, xmm1
vmovups ymmword [ebp - 0x6c], ymm1
vmovups ymmword [ebp - 0x80], ymm1
vmovups ymmword [ebp - 0xa0], ymm1
mov dword [ebp - 0xb0], 0x100fe104
mov ecx, dword [0x1012d384]
vmovss xmm0, dword [ebx + 0x38]
vaddss xmm2, xmm0, dword [0x100fe46c]
vsubss xmm0, xmm2, xmm0
vmovsd xmm2, qword [ebx + 0x30]
mov eax, dword [esi + 8]
mov dword [ebp - 0xfc], eax
vmovsd xmm3, qword [esi]
vmovsd qword [ebp - 0x104], xmm3
mov dword [ebp - 0xf8], 0
vsubps xmm2, xmm2, xmm2
vmovlps qword [ebp - 0xf4], xmm2
vmovss dword [ebp - 0xec], xmm0
vmovups ymmword [ebp - 0xe8], ymm1
mov dword [ebp - 0xc8], 0
mov dword [ebp - 0xc4], 0
vmulps xmm1, xmm2, xmm2
vmovshdup xmm1, xmm1
vfmadd231ss xmm1, xmm2, xmm2
vfmadd231ss xmm1, xmm0, xmm0
vxorps xmm0, xmm0, xmm0
vucomiss xmm1, xmm0
mov byte [ebp - 0xc0], 1
setp al
setne dl
or dl, al
mov byte [ebp - 0xbf], dl
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x10], 0xffffffff
lea edx, [ebp - 0xa0]
lea esi, [ebp - 0xb0]
lea edi, [ebp - 0x104]
push edx
push esi
push 0x200400b
push edi
vzeroupper
call eax
vmovss xmm0, dword [0x100f54d0]
vucomiss xmm0, dword [ebp - 0x74]
jbe 0x100af7d7
vmovss xmm0, dword [ebp - 0x8c]
vaddss xmm0, xmm0, dword [0x100f55a4]
vmovsd xmm1, qword [ebp - 0x94]
vxorps xmm2, xmm2, xmm2
vaddps xmm1, xmm1, xmm2
vmovlps qword [ebx + 0x30], xmm1
vmovss dword [ebx + 0x38], xmm0
jmp 0x100af7d7
test byte [esi + 0x30], 1
je 0x100af9f2
mov eax, dword [0x1012d320]
mov ecx, dword [eax + 0x1c8]
mov eax, dword [0x1012d47c]
test al, 1
je 0x100b00e0
mov edi, dword [0x1012d478]
mov eax, dword [edi + 4]
cmp word [eax + ecx], 0x40
je 0x100af9f2
mov byte [ebx + 0x43], 1
cmp byte [ebx + 0x43], 0
je 0x100af7d7
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0x10], 0xffffffff
call eax
vmovss xmm0, dword [eax]
vmovss xmm1, dword [eax + 4]
vsubss xmm1, xmm1, dword [ebx + 0x34]
vsubss xmm0, xmm0, dword [ebx + 0x30]
vmulss xmm1, xmm1, xmm1
vfmadd231ss xmm1, xmm0, xmm0
vcvtss2sd xmm0, xmm1, xmm1
vsqrtsd xmm0, xmm0, xmm0
vcvtsd2ss xmm0, xmm0, xmm0
vucomiss xmm0, dword [0x100f54dc]
jbe 0x100afbaa
and byte [esi + 0x30], 0xfd
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x28]
vmovss xmm0, dword [eax + 8]
vsubss xmm0, xmm0, dword [ebx + 0x38]
vmovups xmmword [ebp - 0x38], xmm0
vmovss xmm0, dword [eax]
vmovss xmm1, dword [eax + 4]
vsubss xmm1, xmm1, dword [ebx + 0x34]
vsubss xmm2, xmm0, dword [ebx + 0x30]
vmovss dword [ebp - 0x20], xmm2
vmulss xmm0, xmm1, xmm1
vfmadd231ss xmm0, xmm2, xmm2
vcvtss2sd xmm0, xmm0, xmm0
vsqrtsd xmm0, xmm0, xmm0
vcvtsd2ss xmm0, xmm0, xmm0
vmovss dword [ebp - 0x24], xmm0
vdivss xmm0, xmm1, xmm2
vcvtss2sd xmm0, xmm0, xmm0
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
add esp, 8
fstp dword [ebp - 0xac]
vmovss xmm0, dword [ebp - 0xac]
vmulss xmm0, xmm0, dword [0x100fe0b8]
vmovups xmmword [ebp - 0x48], xmm0
vbroadcastss xmm0, dword [0x100f54d8]
vxorps xmm0, xmm0, xmmword [ebp - 0x38]
vdivss xmm0, xmm0, dword [ebp - 0x24]
vcvtss2sd xmm0, xmm0, xmm0
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_atan
add esp, 8
fstp dword [ebp - 0xa8]
vmovss xmm0, dword [ebp - 0xa8]
vmulss xmm0, xmm0, dword [0x100fe468]
vmovups xmm3, xmmword [ebp - 0x48]
vaddss xmm1, xmm3, dword [0x100fe0c0]
vxorps xmm2, xmm2, xmm2
vcmpnless xmm2, xmm2, dword [ebp - 0x20]
vblendvps xmm1, xmm1, xmm3, xmm2
vmovss dword [ebp - 0xbc], xmm0
vmovss dword [ebp - 0xb8], xmm1
mov dword [ebp - 0xb4], 0
mov eax, dword [0x1012d320]
mov ecx, dword [eax + 0x154]
mov eax, dword [ecx]
call dword [eax + 0x30]
fstp dword [ebp - 0xa4]
mov eax, dword [esi + 4]
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
and ecx, 0xfffffffe
sub eax, ecx
vcvtsi2ss xmm0, xmm4, eax
vmulss xmm0, xmm0, dword [0x100fd82c]
mov eax, dword [0x1012d370]
mov eax, dword [eax + 0x4d30]
mov ecx, 0xe
sub ecx, eax
vucomiss xmm0, dword [0x100f54d0]
cmovne eax, ecx
cmovp eax, ecx
vcvtsi2ss xmm0, xmm4, eax
vmovss xmm1, dword [ebp - 0xa4]
vsubss xmm0, xmm1, xmm0
vmovss dword [esi + 0x24], xmm0
lea eax, [esi + 0x28]
jmp 0x100afbba
mov byte [ebx + 0x43], 0
vxorps xmm0, xmm0, xmm0
vmovlps qword [ebx + 0x30], xmm0
lea eax, [ebx + 0x38]
mov dword [eax], 0
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132be0]
test al, 1
je 0x100b0006
mov edi, dword [0x10132bdc]
mov dword [ebp - 0x20], ecx
mov eax, dword [edi + 4]
movzx ecx, byte [eax + ecx]
mov eax, dword [0x1012d48c]
test al, 1
je 0x100b0073
mov edi, dword [0x1012d488]
mov eax, dword [edi + 4]
movzx edx, cl
lea esi, [ebp - 0xbc]
mov ecx, ebx
push edx
mov edx, dword [ebp - 0x20]
push dword [eax + edx]
push esi
push dword [ebp + 8]
call fcn.100aa8c0
jmp 0x100af7d7
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x10132be0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 2
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.m_MoveType
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100afc62
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100afd62
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100afd69
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100afdb2
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x1012d47c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100afccf
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100afe3f
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100afe46
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100afe8f
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x24], ebx
or ecx, 1
mov dword [0x10132be0], ecx
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 4
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.m_MoveType
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100afd3d
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100aff1c
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100aff23
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100aff6c
mov ecx, 0x811c9dc5
jmp 0x100afdcf
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 0x100afd78
cmp dword [ebp - 0x38], 0
je 0x100afdcf
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 - 0x38], edi
jne 0x100afdbd
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b053a
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100afe0e
cmp dword [edi + 0x1c], 0x10
jb 0x100afdfa
mov eax, dword [edi + 8]
jmp 0x100afdfd
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100afe20
cmp edi, ebx
je 0x100b053a
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100afdef
jmp 0x100afe0e
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x10132bdc], edi
mov ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
jmp 0x100af76c
mov ecx, 0x811c9dc5
jmp 0x100afeac
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 0x100afe55
cmp dword [ebp - 0x38], 0
je 0x100afeac
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 - 0x38], edi
jne 0x100afe9a
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b054e
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100afeeb
cmp dword [edi + 0x1c], 0x10
jb 0x100afed7
mov eax, dword [edi + 8]
jmp 0x100afeda
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100afefd
cmp edi, ebx
je 0x100b054e
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100afecc
jmp 0x100afeeb
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x1012d478], edi
mov ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
jmp 0x100af744
mov ecx, 0x811c9dc5
jmp 0x100aff89
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 0x100aff32
cmp dword [ebp - 0x38], 0
je 0x100aff89
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 - 0x38], edi
jne 0x100aff77
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b0562
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100affc8
cmp dword [edi + 0x1c], 0x10
jb 0x100affb4
mov eax, dword [edi + 8]
jmp 0x100affb7
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100affda
cmp edi, ebx
je 0x100b0562
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100affa9
jmp 0x100affc8
lea esi, [edi + 0x20]
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x10132bdc], esi
mov eax, dword [edi + 0x24]
mov ebx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
cmp byte [eax + edx], 8
jne 0x100af792
jmp 0x100af7d7
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x10132be0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 0xa
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.m_MoveType
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100b004e
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b014d
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100b015e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b01a7
mov byte [ebp - 0x4c], cl
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x1012d48c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0xc
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x38], ecx
push str.CBasePlayer__m_fFlags
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100b00bb
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x38], eax
test esi, esi
je 0x100b0154
mov eax, esi
and eax, 3
mov dword [ebp - 0x48], eax
cmp esi, 4
jae 0x100b023e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0287
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x1012d47c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 8
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100b0128
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b0315
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100b031c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0365
mov ecx, 0x811c9dc5
jmp 0x100b01c4
mov ecx, 0x811c9dc5
jmp 0x100b02a4
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 0x100b016d
cmp dword [ebp - 0x38], 0
je 0x100b01c4
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 - 0x38], edi
jne 0x100b01b2
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b0576
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100b0203
cmp dword [edi + 0x1c], 0x10
jb 0x100b01ef
mov eax, dword [edi + 8]
jmp 0x100b01f2
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0215
cmp edi, ebx
je 0x100b0576
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100b01e4
jmp 0x100b0203
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x10132bdc], edi
mov eax, dword [0x1012d35c]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
mov ebx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
jmp 0x100afbdd
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x38]
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 0x100b024d
cmp dword [ebp - 0x48], 0
je 0x100b02a4
add edx, dword [ebp - 0x38]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x48], edi
jne 0x100b0292
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 0x100b058a
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100b02e3
cmp dword [edi + 0x1c], 0x10
jb 0x100b02cf
mov eax, dword [edi + 8]
jmp 0x100b02d2
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b02f5
cmp edi, ebx
je 0x100b058a
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100b02c4
jmp 0x100b02e3
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x1012d488], edi
mov ebx, dword [ebp - 0x24]
movzx ecx, byte [ebp - 0x4c]
jmp 0x100afbf7
mov ecx, 0x811c9dc5
jmp 0x100b0382
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 0x100b032b
cmp dword [ebp - 0x38], 0
je 0x100b0382
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 - 0x38], edi
jne 0x100b0370
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b059e
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100b03c1
cmp dword [edi + 0x1c], 0x10
jb 0x100b03ad
mov eax, dword [edi + 8]
jmp 0x100b03b0
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b03d3
cmp edi, ebx
je 0x100b059e
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100b03a2
jmp 0x100b03c1
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x1012d478], edi
mov ebx, dword [ebp - 0x24]
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0x28]
jmp 0x100af9e4
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], ebx
or eax, 1
mov dword [0x1012d48c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 6
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_fFlags
call fcn.100083b0
mov esi, dword [ebp - 0x90]
cmp dword [ebp - 0x8c], 0x10
jb 0x100b0440
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100b045a
mov eax, esi
and eax, 3
mov dword [ebp - 0x38], eax
cmp esi, 4
jae 0x100b0461
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b04aa
mov ecx, 0x811c9dc5
jmp 0x100b04c7
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 0x100b0470
cmp dword [ebp - 0x38], 0
je 0x100b04c7
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 - 0x38], edi
jne 0x100b04b5
mov edx, dword [ebp - 0x48]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b05b2
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
jne 0x100b0506
cmp dword [edi + 0x1c], 0x10
jb 0x100b04f2
mov eax, dword [edi + 8]
jmp 0x100b04f5
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0518
cmp edi, ebx
je 0x100b05b2
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
je 0x100b04e7
jmp 0x100b0506
add edi, 0x20
lea ecx, [ebp - 0xa0]
call fcn.100029d0
mov dword [0x1012d488], edi
mov ebx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x4c]
jmp 0x100af88c
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], 1
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], 0xb
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], 9
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
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
add ebp, 0xc
lea ecx, [ebp - 0xa0]
call fcn.100029d0
add esp, 0x10
pop ebp
ret