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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
mov eax, 0x18ec
call fcn.100f1fd0
mov ebx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x1007d970
mov esi, dword fs:[0]
mov dword [ebp - 0x18], esi
mov dword fs:[0], eax
cmp dword [edx + 0x1b88], 0
je 0x10074aba
mov esi, dword [edx]
mov eax, dword [esi + 0x2950]
test eax, eax
je 0x10074aba
mov eax, dword [eax]
test eax, eax
je 0x10074aba
mov dword [ebp - 0x28], eax
mov eax, dword [0x10132ba0]
test al, 1
je 0x100754f9
mov edi, dword [0x10132b9c]
mov eax, dword [ebp - 0x28]
add eax, dword [eax + 0xb0]
je 0x10074aba
mov dword [ebp - 0x28], eax
mov eax, dword [edi + 4]
mov eax, dword [eax + esi]
lea eax, [eax + eax*2]
mov esi, dword [ebp - 0x28]
cmp dword [esi + eax*4 + 4], 0
jle 0x10074aba
mov dword [ebp - 0x68], ecx
mov eax, dword [edx + 0x1b88]
mov ecx, dword [edx + 0x1b84]
add ecx, eax
dec ecx
mov edi, edx
mov edx, ecx
shr edx, 1
mov esi, dword [edi + 0x1b80]
dec esi
and esi, edx
mov edx, dword [edi + 0x1b7c]
mov edx, dword [edx + esi*4]
and ecx, 1
mov ecx, dword [edx + ecx*8]
cmp byte [ecx + 2], 0
je 0x10074ad6
mov dword [ebp - 0x10], 0xffffffff
push edi
push ebx
call fcn.10073db0
jmp 0x10074abe
mov byte [ebx + 0xc], 0
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
mov eax, ebx
add esp, 0x18ec
pop esi
pop edi
pop ebx
pop ebp
ret 8
cmp eax, 1
mov ecx, dword [ebp - 0x68]
je 0x10074b9f
mov eax, dword [ecx + 0x38]
test eax, eax
je 0x10074b9f
add ecx, 0x3c
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x54], 0
xor ecx, ecx
jmp 0x10074b11
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x54], edx
mov ecx, dword [ebp - 0x2c]
inc ecx
cmp ecx, 6
je 0x10074bb4
lea edx, [ecx + ecx*2]
mov esi, dword [ebp - 0x30]
mov edi, dword [esi + edx*4]
mov ebx, dword [esi + edx*4 + 4]
cmp edi, ebx
mov dword [ebp - 0x2c], ecx
je 0x10074afe
mov edx, 1
shlx edx, edx, ecx
mov dword [ebp - 0x28], edx
mov edx, 0x20
mov esi, 0xfffffffe
rol esi, cl
bts edx, ecx
mov ecx, edx
mov dword [ebp - 0x20], esi
or esi, 0x20
mov dword [ebp - 0x24], esi
mov esi, dword [ebp - 0x54]
jmp 0x10074b6b
and esi, dword [ebp - 0x24]
nop word cs:[eax + eax]
mov edx, esi
add edi, 4
mov esi, edx
cmp edi, ebx
je 0x10074b01
cmp dword [edi], 0
je 0x10074b90
mov edx, ecx
cmp eax, 2
je 0x10074b62
cmp eax, 1
jne 0x10074b60
or esi, dword [ebp - 0x28]
jmp 0x10074b60
cmp eax, 2
je 0x10074b51
cmp eax, 1
jne 0x10074b60
and esi, dword [ebp - 0x20]
jmp 0x10074b60
mov dword [ebp - 0x10], 0xffffffff
push dword [ebp + 0xc]
push ebx
call fcn.100745f0
jmp 0x10074abe
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov eax, dword [ebp + 0xc]
mov esi, dword [eax]
lea eax, [ebp - 0x18f8]
push 0x1844
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, dword [0x10132be8]
test al, 1
mov dword [ebp - 0x28], esi
je 0x1007563e
mov edi, dword [0x10132be4]
mov eax, dword [edi + 4]
mov eax, dword [esi + eax - 0x14]
test eax, eax
je 0x10074c0e
vmovss xmm0, dword [eax + 0x80]
vmovss dword [ebp - 0x18f8], xmm0
mov eax, dword [0x10132ba8]
test al, 1
je 0x10075699
mov edi, dword [0x10132ba4]
mov dword [ebp - 0x10], 2
lea edx, [ebp - 0x18f4]
mov eax, dword [edi + 4]
mov ecx, dword [eax + esi + 8]
mov dword [edx + 8], ecx
vmovsd xmm0, qword [eax + esi]
vmovsd qword [edx], xmm0
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x28]
lea edx, [ebp - 0x18e8]
mov ecx, dword [eax + 8]
mov dword [edx + 8], ecx
vmovsd xmm0, qword [eax]
vmovsd qword [edx], xmm0
mov eax, dword [0x10132bb0]
test al, 1
mov esi, dword [ebp - 0x28]
je 0x100756f4
mov edi, dword [0x10132bac]
lea edx, [ebp - 0x18dc]
mov eax, dword [edi + 4]
mov ecx, dword [eax + esi + 8]
mov dword [edx + 8], ecx
vmovsd xmm0, qword [eax + esi]
vmovsd qword [edx], xmm0
mov eax, dword [0x10132bb8]
test al, 1
je 0x1007574f
mov edi, dword [0x10132bb4]
lea edx, [ebp - 0x18c4]
mov eax, dword [edi + 4]
mov ecx, dword [eax + esi + 8]
mov dword [ebp - 0x18c8], ecx
vmovsd xmm0, qword [eax + esi]
vmovsd qword [ebp - 0x18d0], xmm0
mov eax, dword [esi + 0x26ac]
mov dword [ebp - 0xc0], eax
mov eax, dword [esi + 0x26b0]
mov dword [ebp - 0xbc], eax
mov eax, dword [esi + 0x2920]
shl eax, 4
lea eax, [eax + eax*2]
push eax
push dword [esi + 0x2914]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esi + 0x2920]
mov dword [ebp - 0xc4], eax
mov eax, dword [esi + 0x2690]
mov dword [ebp - 0xb8], eax
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x1b78]
mov dword [ebp - 0x8c], eax
mov eax, dword [edx + 0x1b84]
mov esi, dword [edx + 0x1b88]
add esi, eax
mov dword [ebp - 0x70], 0
vbroadcastss xmm0, dword [0x100f550c]
vmovups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0x74], 0
jmp 0x10074d60
mov eax, dword [edi]
cmp byte [eax + 2], 0
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp - 0x28]
jne 0x10075373
mov eax, dword [edx + 0x1b84]
cmp esi, eax
je 0x10075373
dec esi
mov eax, dword [ebp - 0x8c]
mov eax, dword [eax]
mov ecx, esi
shr ecx, 1
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
dec eax
and eax, ecx
mov dword [ebp - 0x28], esi
and esi, 1
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x2c], eax
mov eax, dword [eax + esi*8]
mov dword [ebp - 0x6c], eax
vmovss xmm0, dword [eax + 0x24]
vmovss dword [ebp - 0x20], xmm0
mov eax, dword [0x1012d320]
mov dword [ebp - 0x30], eax
mov ecx, dword [eax + 0x12c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x10], 2
call eax
fstp dword [ebp - 0x94]
vmovss xmm2, dword [ebp - 0x94]
mov eax, dword [ebp - 0x30]
vmovss xmm0, dword [eax + 0x17c]
vmovss xmm1, dword [eax + 0x180]
vmovss xmm3, dword [eax + 0x184]
mov eax, dword [0x1012d35c]
mov edx, dword [eax]
mov eax, dword [0x1012d4a4]
test al, 1
je 0x10075216
mov ebx, dword [0x1012d4a0]
vaddss xmm0, xmm0, xmm1
vaddss xmm0, xmm0, xmm3
vxorps xmm1, xmm1, xmm1
vmaxss xmm1, xmm1, xmm0
vcmpltss xmm0, xmm2, xmm0
vblendvps xmm0, xmm1, xmm2, xmm0
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x2c]
lea edi, [ecx + eax*8]
mov eax, dword [ebx + 4]
mov eax, dword [eax + edx]
mov ecx, dword [0x1012d328]
mov ecx, dword [ecx + 0x24]
mov edx, ecx
sar edx, 0x1f
andn ecx, edx, ecx
sub eax, ecx
vcvtsi2ss xmm1, xmm4, eax
mov eax, dword [0x1012d364]
vmovss xmm2, dword [eax + 0x20]
vmulss xmm1, xmm2, xmm1
vsubss xmm1, xmm1, dword [ebp - 0x20]
vsubss xmm0, xmm0, xmm1
vandps xmm0, xmm0, xmmword [ebp - 0xb4]
vucomiss xmm0, dword [0x100f5630]
ja 0x10074d48
mov eax, dword [0x1012d32c]
cmp byte [eax + 0x40], 0
mov dword [ebp - 0x20], edi
vmovss dword [ebp - 0x24], xmm2
je 0x10074e9b
mov eax, dword [0x1012d370]
mov ecx, 0xf
sub ecx, dword [eax + 0x4d30]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x10], 2
jmp 0x10074ea2
mov dword [ebp - 0x2c], 0
mov eax, dword [0x1012d320]
mov ecx, dword [ebp - 0x6c]
vmovss xmm0, dword [ecx + 0x24]
vmovss dword [ebp - 0x30], xmm0
mov ecx, dword [eax + 0x12c]
mov eax, dword [eax + 0x188]
mov dword [ebp - 0x6c], eax
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x10], 2
call eax
fstp dword [ebp - 0x90]
mov eax, dword [ebp - 0x6c]
add eax, dword [ebp - 0x2c]
vcvtsi2ss xmm0, xmm4, eax
vmulss xmm0, xmm0, dword [ebp - 0x24]
vsubss xmm0, xmm0, dword [ebp - 0x90]
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmovss xmm1, dword [ebp - 0x30]
vucomiss xmm1, xmm0
mov edi, dword [ebp - 0x20]
jb 0x10074d48
mov eax, dword [edi]
cmp byte [eax], 0
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp - 0x28]
jne 0x10075177
lea eax, [ebp - 0x4c]
vxorps xmm0, xmm0, xmm0
vmovups xmmword [eax + 0xc], xmm0
vmovups xmmword [eax], xmm0
mov dword [ebp - 0x50], edx
mov eax, dword [edi + 4]
test eax, eax
je 0x10074f68
lock inc dword [eax + 4]
mov esi, dword [ebp - 0x48]
vmovsd xmm0, qword [edi]
vmovsd qword [ebp - 0x4c], xmm0
test esi, esi
lea edx, [ebp - 0x50]
je 0x10074f77
lock dec dword [esi + 4]
jne 0x10074f77
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
lea edx, [ebp - 0x50]
lock dec dword [esi + 8]
jne 0x10074f77
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
jmp 0x10074f74
mov eax, dword [edi]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], 0
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
test al, 3
mov eax, 1
cmove eax, dword [ebp - 0x54]
mov ecx, dword [0x1012d320]
vmovss xmm0, dword [ecx + 0x190]
vmovss xmm1, dword [ecx + 0x194]
vmovss xmm2, dword [ecx + 0x198]
mov dword [ebp - 0x10], 0xf
sub esp, 0x14
vmovss dword [esp + 0x10], xmm2
vmovss dword [esp + 0xc], xmm1
vmovss dword [esp + 8], xmm0
mov dword [esp + 4], eax
mov dword [esp], edx
mov ecx, dword [ebp - 0x68]
call fcn.1006e980
mov ecx, dword [ebp - 0x68]
push 0
lea eax, [ebp - 0x50]
push eax
call fcn.10072870
mov edx, dword [ebp - 0x60]
test al, al
je 0x10075080
test edx, edx
mov edi, dword [ebp - 0x20]
je 0x10075096
cmp byte [ebp - 0x70], 0
je 0x10075096
mov esi, dword [ebp - 0x38]
cmp byte [esi + 0x21], 0
je 0x100750e3
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x100750e3
mov eax, dword [edi]
movzx ebx, byte [eax + 4]
cmp bl, byte [edx + 4]
jne 0x100750c7
mov edi, dword [eax + 8]
and edi, 1
mov edx, dword [edx + 8]
and edx, 1
cmp edi, edx
jne 0x1007519f
mov edx, dword [esi + 0x24]
cmp edx, 3
jne 0x100751c9
cmp dword [ebp - 0x58], 3
je 0x100751c9
lea ecx, [ebp - 0x60]
mov esi, dword [ebp - 0x20]
push esi
call fcn.10075ee0
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov ecx, dword [esi]
xor edx, edx
cmp byte [ecx + 2], 0
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
sete dl
lea edi, [edx*2 + 7]
jmp 0x100750f5
mov edi, 9
test edx, edx
jne 0x100750f5
lea ecx, [ebp - 0x60]
push dword [ebp - 0x20]
call fcn.10075ee0
jmp 0x100750f5
lea ecx, [ebp - 0x60]
push edi
call fcn.10075ee0
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
mov eax, dword [edi]
xor ecx, ecx
cmp byte [eax + 2], 0
sete cl
lea edi, [ecx*2 + 7]
mov al, 1
mov dword [ebp - 0x70], eax
jmp 0x100750f5
test bl, bl
je 0x100750e5
lea ecx, [ebp - 0x60]
push edi
call fcn.10075ee0
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
mov eax, dword [edi]
xor ecx, ecx
cmp byte [eax + 2], 0
sete cl
lea edi, [ecx*2 + 7]
xor ebx, ebx
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
je 0x10075145
mov eax, dword [ebp - 0x3c]
sub eax, ecx
cmp eax, 0x1000
jb 0x10075123
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x10075801
add eax, 0x23
mov ecx, edx
push eax
push ecx
call fcn.100f1e8b
add esp, 8
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov edx, dword [ebp + 0xc]
mov esi, dword [ebp - 0x48]
test esi, esi
je 0x1007516b
lock dec dword [esi + 4]
jne 0x1007516b
mov eax, dword [esi]
mov ecx, esi
call dword [eax]
mov edx, dword [ebp + 0xc]
lock dec dword [esi + 8]
jne 0x1007516b
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [ebp + 0xc]
test bl, bl
je 0x10075186
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov esi, dword [ebp - 0x28]
cmp byte [eax + 2], 0
je 0x10074d5a
jmp 0x10075373
cmp edi, 9
mov esi, dword [ebp - 0x28]
je 0x10074d5a
test edi, edi
je 0x10074d5a
jmp 0x10075373
test edi, edi
je 0x100750e5
lea ecx, [ebp - 0x60]
mov esi, dword [ebp - 0x20]
push esi
call fcn.10075ee0
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
mov eax, dword [esi]
jmp 0x100750e5
test bl, bl
jne 0x100751ea
test edi, edi
je 0x100751ea
mov esi, dword [eax + 0x14]
test esi, esi
je 0x100751ea
cmp esi, 2
jg 0x100751ea
cmp edx, dword [ebp - 0x58]
je 0x100751ea
jle 0x100750e5
jmp 0x100751a7
xor edi, edi
mov bl, 1
cmp ecx, dword [ebp - 0x64]
jle 0x100750f7
lea ecx, [ebp - 0x60]
push dword [ebp - 0x20]
call fcn.10075ee0
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x64], ecx
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x58], eax
jmp 0x100750f7
vmovss dword [ebp - 0x78], xmm3
vmovss dword [ebp - 0x7c], xmm1
vmovss dword [ebp - 0x80], xmm0
mov dword [ebp - 0x84], edx
vmovups xmmword [ebp - 0xa4], xmm2
or eax, 1
mov dword [0x1012d4a4], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x10], 5
lea ecx, [ebp - 0x50]
push str.CBasePlayer__m_nTickBase
call fcn.100083b0
cmp dword [ebp - 0x3c], 0x10
lea eax, [ebp - 0x50]
mov dword [ebp - 0x30], eax
jb 0x1007526c
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x30], eax
mov edi, dword [ebp - 0x40]
test edi, edi
je 0x10075281
cmp edi, 4
jae 0x10075288
mov eax, 0x811c9dc5
xor ecx, ecx
jmp 0x100752d1
mov eax, 0x811c9dc5
jmp 0x100752ee
mov edx, edi
and edx, 0xfffffffc
mov eax, 0x811c9dc5
xor ecx, ecx
mov ebx, dword [ebp - 0x30]
movzx esi, byte [ebx + ecx]
xor esi, eax
imul eax, esi, 0x1000193
movzx esi, byte [ebx + ecx + 1]
xor esi, eax
imul eax, esi, 0x1000193
movzx esi, byte [ebx + ecx + 2]
xor esi, eax
imul eax, esi, 0x1000193
movzx esi, byte [ebx + ecx + 3]
xor esi, eax
imul eax, esi, 0x1000193
add ecx, 4
cmp edx, ecx
jne 0x10075294
mov edx, edi
and edx, 3
je 0x100752ee
add ecx, dword [ebp - 0x30]
xor esi, esi
movzx ebx, byte [ecx + esi]
xor ebx, eax
imul eax, ebx, 0x1000193
inc esi
cmp edx, esi
jne 0x100752dd
mov edx, dword [ebp - 0x88]
and eax, dword [edx + 0x18]
mov ecx, dword [edx + 0xc]
mov ebx, dword [ecx + eax*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10075c67
add eax, eax
mov esi, dword [ecx + eax*4]
cmp edi, dword [ebx + 0x18]
je 0x10075321
cmp ebx, esi
je 0x10075c67
mov ebx, dword [ebx + 4]
cmp edi, dword [ebx + 0x18]
jne 0x10075311
cmp dword [ebx + 0x1c], 0x10
jb 0x1007532c
mov eax, dword [ebx + 8]
jmp 0x1007532f
lea eax, [ebx + 8]
push edi
push eax
push dword [ebp - 0x30]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x10075311
add ebx, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x1012d4a0], ebx
vmovups xmm2, xmmword [ebp - 0xa4]
mov edx, dword [ebp - 0x84]
vmovss xmm0, dword [ebp - 0x80]
vmovss xmm1, dword [ebp - 0x7c]
vmovss xmm3, dword [ebp - 0x78]
jmp 0x10074dfc
mov ecx, dword [edx]
mov eax, dword [0x10132ba8]
test al, 1
mov dword [ebp - 0x28], ecx
je 0x100757aa
mov edi, dword [0x10132ba4]
mov dword [ebp - 0x10], 2
lea edx, [ebp - 0x18f4]
mov eax, dword [edi + 4]
mov esi, dword [edx + 8]
mov dword [eax + ecx + 8], esi
vmovsd xmm0, qword [edx]
vmovsd qword [eax + ecx], xmm0
mov eax, dword [0x1012d320]
lea edx, [ebp - 0x18e8]
push edx
call dword [eax + 0x18]
mov ecx, dword [ebp - 0x28]
mov eax, dword [ecx]
call dword [eax + 0xc]
test eax, eax
mov esi, dword [ebp - 0x28]
je 0x10075419
vmovss xmm0, dword [esi + 0x9920]
vmovss dword [ebp - 0x20], xmm0
vmovss xmm0, dword [esi + 0x9924]
vmovss dword [ebp - 0x24], xmm0
mov edx, dword [0x1012d320]
mov ecx, eax
lea eax, [ebp - 0x18d0]
push eax
lea eax, [ebp - 0x18dc]
push eax
call dword [edx + 0x28]
vmovss xmm0, dword [ebp - 0x20]
mov esi, dword [ebp - 0x28]
vmovss dword [esi + 0x9920], xmm0
vmovss xmm0, dword [ebp - 0x24]
vmovss dword [esi + 0x9924], xmm0
vmovd xmm0, dword [ebp - 0x18f8]
mov dword [ebp - 0x50], 0
vmovd dword [ebp - 0x4c], xmm0
mov dword [ebp - 0x48], 0
mov eax, dword [0x1012d320]
lea edx, [ebp - 0x50]
mov ecx, esi
push edx
call dword [eax + 0x14]
mov eax, dword [ebp - 0xc0]
mov esi, dword [ebp - 0x28]
mov dword [esi + 0x26ac], eax
mov eax, dword [ebp - 0xbc]
mov dword [esi + 0x26b0], eax
mov eax, dword [ebp - 0xc4]
shl eax, 4
lea eax, [eax + eax*2]
push eax
lea eax, [ebp - 0x18c4]
push eax
push dword [esi + 0x2914]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebp - 0xb8]
mov dword [esi + 0x2690], eax
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x100754be
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov ecx, dword [ebp - 0x5c]
test ecx, ecx
mov ebx, dword [ebp + 8]
je 0x100754c7
lock inc dword [ecx + 4]
vmovq xmm0, qword [ebp - 0x60]
mov edx, dword [ebp - 0x50]
jmp 0x100754cb
mov ebx, dword [ebp + 8]
mov byte [ebx + 0xc], 0
jmp 0x100754ec
vmovd xmm0, eax
mov dword [ebx], edx
vmovq qword [ebx + 4], xmm0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov byte [ebx + 0xc], 1
lea ecx, [ebp - 0x50]
call fcn.100745c0
lea ecx, [ebp - 0x60]
call fcn.10013a70
jmp 0x10074abe
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x68], ecx
or eax, 1
mov dword [0x10132ba0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x18f8]
mov dword [ebp - 0x20], ecx
push str.CBaseAnimating__m_nHitboxSet
call fcn.100083b0
mov esi, dword [ebp - 0x18e8]
cmp dword [ebp - 0x18e4], 0x10
jb 0x10075541
mov eax, dword [ebp - 0x18f8]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x1007555b
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x10075562
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100755ab
mov ecx, 0x811c9dc5
jmp 0x100755c8
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 0x10075571
cmp dword [ebp - 0x24], 0
je 0x100755c8
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 0x100755b6
mov edx, dword [ebp - 0x54]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x10075c53
mov edi, ebx
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100755fa
cmp edi, ebx
je 0x10075c53
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100755ea
cmp dword [edi + 0x1c], 0x10
jb 0x10075605
mov eax, dword [edi + 8]
jmp 0x10075608
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100755ea
add edi, 0x20
lea ecx, [ebp - 0x18f8]
call fcn.100029d0
mov dword [0x10132b9c], edi
mov ebx, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x68]
mov esi, dword [ebp - 0x2c]
jmp 0x10074a53
or eax, 1
mov dword [0x10132be8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xd
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x20], ecx
push str.CCSPlayer__m_bIsScoped
call fcn.100083b0
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], 0x10
jb 0x10075674
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x10075807
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x10075839
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10075882
or eax, 1
mov dword [0x10132ba8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0xb
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x20], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.100083b0
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], 0x10
jb 0x100756cf
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x10075811
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x10075907
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10075950
or eax, 1
mov dword [0x10132bb0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 9
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x20], ecx
push str.CBaseEntity__m_vecMins
call fcn.100083b0
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], 0x10
jb 0x1007572a
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x1007581b
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100759dc
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10075a25
or eax, 1
mov dword [0x10132bb8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 7
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x20], ecx
push str.CBaseEntity__m_vecMaxs
call fcn.100083b0
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], 0x10
jb 0x10075785
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x10075825
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x10075aaa
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10075af3
or eax, 1
mov dword [0x10132ba8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x10], 3
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x20], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.100083b0
mov esi, dword [ebp - 0x40]
cmp dword [ebp - 0x3c], 0x10
jb 0x100757e0
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x1007582f
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x10075b78
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10075bc1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
mov ecx, 0x811c9dc5
jmp 0x1007589f
mov ecx, 0x811c9dc5
jmp 0x1007596d
mov ecx, 0x811c9dc5
jmp 0x10075a42
mov ecx, 0x811c9dc5
jmp 0x10075b10
mov ecx, 0x811c9dc5
jmp 0x10075bde
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 0x10075848
cmp dword [ebp - 0x24], 0
je 0x1007589f
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 0x1007588d
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 0x10075c7b
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100758cf
cmp edi, ebx
je 0x10075c7b
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100758bf
cmp dword [edi + 0x1c], 0x10
jb 0x100758da
mov eax, dword [edi + 8]
jmp 0x100758dd
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100758bf
add edi, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x10132be4], edi
mov esi, dword [ebp - 0x28]
jmp 0x10074bf3
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 0x10075916
cmp dword [ebp - 0x24], 0
je 0x1007596d
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 0x1007595b
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 0x10075c8f
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x1007599d
cmp edi, ebx
je 0x10075c8f
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x1007598d
cmp dword [edi + 0x1c], 0x10
jb 0x100759a8
mov eax, dword [edi + 8]
jmp 0x100759ab
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x1007598d
add edi, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x10132ba4], edi
mov dword [ebp - 0x10], 2
mov esi, dword [ebp - 0x28]
jmp 0x10074c28
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 0x100759eb
cmp dword [ebp - 0x24], 0
je 0x10075a42
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 0x10075a30
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 0x10075ca3
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x10075a72
cmp edi, ebx
je 0x10075ca3
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x10075a62
cmp dword [edi + 0x1c], 0x10
jb 0x10075a7d
mov eax, dword [edi + 8]
jmp 0x10075a80
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x10075a62
add edi, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x10132bac], edi
mov esi, dword [ebp - 0x28]
jmp 0x10074c72
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 0x10075ab9
cmp dword [ebp - 0x24], 0
je 0x10075b10
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 0x10075afe
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 0x10075cb7
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x10075b40
cmp edi, ebx
je 0x10075cb7
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x10075b30
cmp dword [edi + 0x1c], 0x10
jb 0x10075b4b
mov eax, dword [edi + 8]
jmp 0x10075b4e
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x10075b30
add edi, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x10132bb4], edi
mov esi, dword [ebp - 0x28]
jmp 0x10074c9e
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 0x10075b87
cmp dword [ebp - 0x24], 0
je 0x10075bde
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 0x10075bcc
mov edx, dword [ebp - 0x54]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x10075ccb
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x10075c0e
cmp edi, ebx
je 0x10075ccb
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x10075bfe
cmp dword [edi + 0x1c], 0x10
jb 0x10075c19
mov eax, dword [edi + 8]
jmp 0x10075c1c
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x10075bfe
add edi, 0x20
lea ecx, [ebp - 0x50]
call fcn.100029d0
mov dword [0x10132ba4], edi
mov dword [ebp - 0x10], 2
lea edx, [ebp - 0x18f4]
mov ecx, dword [ebp - 0x28]
jmp 0x10075398
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], 6
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xe
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xc
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 0xa
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 8
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 4
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop
push ebp
sub esp, 0x14
add ebp, 0xc
lea ecx, [ebp - 0x50]
call fcn.100029d0
add esp, 0x14
pop ebp
ret