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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
mov eax, 0x3140
call fcn.100d8110
mov esi, ecx
mov eax, dword [0x1017f528]
xor eax, ebp
mov dword [esp + 0x3138], eax
mov edi, dword [ecx + 0xb4]
vxorps xmm0, xmm0, xmm0
vmovlps qword [ecx + 0xb0], xmm0
test edi, edi
je 0x10068be2
lock dec dword [edi + 4]
jne 0x10068be2
mov eax, dword [edi]
mov ecx, edi
call dword [eax]
lock dec dword [edi + 8]
jne 0x10068be2
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 4]
cmp byte [esi + 8], 0
je 0x10068c1c
mov eax, dword [0x1017f5c0]
mov ebx, dword [eax + 0x14c]
test ebx, ebx
je 0x10068c1c
cmp dword [eax + 0x150], 0
je 0x10068c1c
mov eax, dword [0x1017f74c]
test al, 1
je 0x10069a01
mov edi, dword [0x1017f748]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 0
je 0x10068c34
mov ecx, dword [esp + 0x3138]
xor ecx, ebp
call fcn.100d7fe0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0x150]
mov ecx, dword [ecx + 0xcc]
add ecx, 0xfffffff8
cmp ecx, 0xfffffff9
ja 0x10068c70
mov ebx, dword [eax + 0x14c]
mov eax, dword [0x1017f704]
test al, 1
je 0x10069bcc
mov edi, dword [0x1017f700]
mov eax, dword [edi + 4]
cmp word [eax + ebx], 0x1f
jne 0x10068c1c
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e34]
test al, 1
je 0x10069b58
mov edi, dword [0x10184e30]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 9
je 0x10068c1c
mov ecx, dword [0x1017f608]
mov ebx, dword [ecx]
mov ecx, dword [0x10184e34]
test cl, 1
je 0x10069c40
cmp byte [eax + ebx], 8
je 0x10068c1c
mov edi, dword [ebp + 8]
mov ecx, esi
call fcn.10066f80
mov ecx, esi
call fcn.10067890
mov ecx, esi
push dword [edi + 4]
call fcn.10067ae0
test eax, eax
je 0x100699c3
mov ebx, eax
mov edx, edi
mov edi, eax
mov eax, dword [0x1017f5c0]
or byte [eax + 0x148], 0x20
mov ecx, esi
push dword [edx + 4]
push ebx
call fcn.10066860
test eax, eax
je 0x100699c3
cmp byte [eax + 0x21], 0
je 0x100699c3
mov dword [esp + 0xc], eax
mov dword [esp + 0x84], ebx
mov dword [esp + 4], edi
mov eax, dword [edi]
mov ebx, dword [eax]
lea eax, [esp + 0xdc]
push 0x3044
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, dword [ebx + 0x3914]
test eax, eax
je 0x10068d4b
vmovss xmm0, dword [eax + 0x80]
vmovss dword [esp + 0xdc], xmm0
mov eax, dword [0x10184dfc]
test al, 1
je 0x10069f93
mov eax, dword [0x10184df8]
lea edx, [esp + 0xe0]
lea edi, [esp + 0xec]
mov eax, dword [eax + 4]
mov ecx, dword [eax + ebx + 8]
mov dword [edx + 8], ecx
vmovsd xmm0, qword [eax + ebx]
vmovsd qword [edx], xmm0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
mov ecx, dword [eax + 8]
mov dword [edi + 8], ecx
vmovsd xmm0, qword [eax]
vmovsd qword [edi], xmm0
mov eax, dword [0x10184e04]
test al, 1
je 0x1006a007
mov edi, dword [0x10184e00]
lea edx, [esp + 0xf8]
mov eax, dword [edi + 4]
mov ecx, dword [eax + ebx + 8]
mov dword [edx + 8], ecx
vmovsd xmm0, qword [eax + ebx]
vmovsd qword [edx], xmm0
mov eax, dword [0x10184e0c]
test al, 1
je 0x1006a07b
mov edi, dword [0x10184e08]
lea edx, [esp + 0x110]
mov eax, dword [edi + 4]
mov ecx, dword [eax + ebx + 8]
mov dword [esp + 0x10c], ecx
vmovsd xmm0, qword [eax + ebx]
vmovsd qword [esp + 0x104], xmm0
mov eax, dword [ebx + 0x26b0]
mov dword [esp + 0x3114], eax
mov eax, dword [ebx + 0x26b4]
mov dword [esp + 0x3118], eax
mov eax, dword [ebx + 0x291c]
shl eax, 4
lea eax, [eax + eax*2]
push eax
push dword [ebx + 0x2910]
push edx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [ebx + 0x291c]
mov dword [esp + 0x3110], eax
mov eax, dword [ebx + 0x2690]
mov dword [esp + 0x311c], eax
mov ecx, dword [esp + 4]
mov eax, dword [ecx]
mov edi, dword [ecx + 4]
mov ecx, dword [edi + 0x14]
mov dword [esp + 0x60], ecx
mov ebx, dword [eax]
mov eax, dword [0x10184dfc]
test al, 1
mov dword [esp + 0x10], ebx
je 0x1006a0ef
mov ecx, dword [0x10184df8]
lea eax, [edi + 0x58]
mov ecx, dword [ecx + 4]
mov edx, dword [eax + 8]
mov dword [ecx + ebx + 8], edx
vmovsd xmm0, qword [eax]
vmovsd qword [ecx + ebx], xmm0
mov edx, dword [0x1017f5c0]
mov ecx, ebx
push eax
call dword [edx + 0x18]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0xc]
test eax, eax
je 0x10068ef2
lea ecx, [edi + 0x64]
mov dword [esp + 0x20], ecx
lea edx, [edi + 0x70]
vmovss xmm0, dword [ebx + 0x9920]
vmovss dword [esp + 0x30], xmm0
vmovss xmm0, dword [ebx + 0x9924]
vmovss dword [esp + 0x40], xmm0
mov ebx, dword [0x1017f5c0]
mov ecx, eax
push edx
push dword [esp + 0x24]
call dword [ebx + 0x28]
mov eax, dword [esp + 0x10]
vmovss xmm0, dword [esp + 0x30]
vmovss dword [eax + 0x9920], xmm0
vmovss xmm0, dword [esp + 0x40]
vmovss dword [eax + 0x9924], xmm0
add edi, 0x354
mov eax, dword [esp + 0x60]
cmp eax, 3
jae 0x1006a15e
imul ebx, eax, 0x32f0
lea eax, [edi + ebx]
mov dword [esp + 0x60], eax
vmovss xmm0, dword [edi + ebx + 0x3004]
mov dword [esp + 0x3120], 0
vmovss dword [esp + 0x3124], xmm0
mov dword [esp + 0x3128], 0
mov eax, dword [0x1017f5c0]
lea edx, [esp + 0x3120]
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x10]
mov ecx, edi
mov dword [esp + 0x40], edx
push edx
call dword [eax + 0x14]
mov eax, dword [esp + 0x30]
mov eax, dword [eax + ebx + 0x3000]
shl eax, 4
lea eax, [eax + eax*2]
push eax
push dword [esp + 0x64]
push dword [edi + 0x2910]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [0x1017f5c0]
mov eax, dword [eax + 0x2c]
mov eax, dword [eax + 0xa]
mov eax, dword [eax]
mov dword [edi + 0x2690], eax
mov eax, dword [0x1017f5c0]
mov ecx, dword [esp + 0xc]
vmovss xmm0, dword [ecx + 8]
vsubss xmm2, xmm0, dword [eax + 0x110]
vmovsd xmm0, qword [ecx]
vmovsd xmm1, qword [eax + 0x108]
vsubps xmm1, xmm0, xmm1
vxorps xmm0, xmm0, xmm0
vcmpeqps xmm0, xmm1, xmm0
vpmovsxdq xmm0, xmm0
vmovmskpd eax, xmm0
cmp al, 3
jne 0x10068ff0
vxorps xmm1, xmm1, xmm1
xor eax, eax
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0x30], xmm0
vucomiss xmm2, xmm1
seta al
vmovss xmm0, dword [eax*4 + 0x10131ff8]
jmp 0x100690fd
vmovaps xmmword [esp + 0x10], xmm2
vcvtss2sd xmm0, xmm1, xmm1
vmovshdup xmm2, xmm1
vmovaps xmmword [esp + 0x20], xmm2
vmovaps xmmword [esp + 0x60], xmm1
vcvtss2sd xmm1, xmm2, xmm2
sub esp, 0x10
vmovsd qword [esp + 8], xmm0
vmovsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
add esp, 0x10
fstp dword [esp + 0xbc]
vmovss xmm0, dword [esp + 0xbc]
vmulss xmm0, xmm0, dword [0x10131fb8]
vaddss xmm1, xmm0, dword [0x101316d0]
vxorps xmm2, xmm2, xmm2
vcmpltss xmm2, xmm0, xmm2
vblendvps xmm2, xmm0, xmm1, xmm2
vmovaps xmm0, xmmword [esp + 0x20]
vmulss xmm0, xmm0, xmm0
vmovaps xmm1, xmmword [esp + 0x60]
vfmadd231ss xmm0, xmm1, xmm1
vcvtss2sd xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
vmovaps xmmword [esp + 0x30], xmm2
jb 0x10069082
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100690a2
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 + 0xc8]
vmovsd xmm0, qword [esp + 0xc8]
vcvtsd2ss xmm0, xmm0, xmm0
vbroadcastss xmm1, dword [0x10129734]
vxorps xmm1, xmm1, xmmword [esp + 0x10]
vcvtss2sd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm1, xmm1
sub esp, 0x10
vmovsd qword [esp + 8], xmm0
vmovsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
add esp, 0x10
fstp dword [esp + 0xb8]
vmovss xmm0, dword [esp + 0xb8]
vmulss xmm0, xmm0, dword [0x10131fb8]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jbe 0x100690fd
vaddss xmm0, xmm0, dword [0x101316d0]
sub esp, 8
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
mov edi, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call edi
add esp, 8
fstp dword [esp + 0xb4]
vmovss xmm0, dword [esp + 0xb4]
vmovaps xmmword [esp + 0x10], xmm0
vmovss dword [esp + 0xd0], xmm0
sub esp, 8
vmovaps xmm0, xmmword [esp + 0x38]
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call edi
add esp, 8
fstp dword [esp + 0xb0]
vmovss xmm0, dword [esp + 0xb0]
vmovaps xmmword [esp + 0x30], xmm0
vmovss dword [esp + 0xd4], xmm0
push 0x43b40000
push 0
call edi
add esp, 8
fstp dword [esp + 0xac]
vmovss xmm0, dword [esp + 0xac]
vmovss dword [esp + 0x60], xmm0
vmovss dword [esp + 0xd8], xmm0
mov eax, dword [0x1017f608]
mov edi, dword [eax]
mov eax, dword [edi + 0x3914]
vmovaps xmm0, xmmword [esp + 0x10]
vinsertps xmm2, xmm0, dword [esp + 0x30], 0x10
test eax, eax
je 0x10069558
cmp dword [eax + 0x60], 0
je 0x10069558
cmp byte [eax + 0x109], 0
jne 0x100691ea
vmovss xmm0, dword [eax + 0xa4]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100691ea
jnp 0x100699d5
mov eax, dword [0x10184e44]
test al, 1
je 0x1006a319
mov ebx, dword [0x10184e40]
mov ecx, edi
mov eax, dword [ebx + 4]
vmovss xmm0, dword [eax + edi + 0x30]
mov eax, dword [0x10184e4c]
test al, 1
vmovss dword [esp + 0x30], xmm0
je 0x1006a38b
mov ebx, dword [0x10184e48]
mov eax, dword [ebx + 4]
vmovss xmm0, dword [eax + ecx]
vmovss dword [esp + 0x20], xmm0
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0xec]
mov eax, dword [ecx]
call dword [eax + 0x30]
fstp dword [esp + 0xa8]
vmovaps xmm0, xmmword [esp + 0x10]
vmovss xmm1, dword [esp + 0x20]
vfnmadd231ss xmm0, xmm1, dword [esp + 0xa8]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e54]
test al, 1
je 0x1006a401
mov edi, dword [0x10184e50]
mov eax, dword [edi + 4]
vaddss xmm0, xmm0, dword [eax + ebx]
sub esp, 8
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
add esp, 8
fstp dword [esp + 0xa4]
vmovss xmm0, dword [esp + 0xa4]
vmovss xmm1, dword [0x10131fbc]
vucomiss xmm0, xmm1
jbe 0x100692bf
vmovss xmm0, dword [0x10129710]
jmp 0x100692d7
vmovss xmm2, dword [0x10132000]
vmaxss xmm0, xmm2, xmm0
vaddss xmm0, xmm0, xmm1
vdivss xmm0, xmm0, dword [0x10131fc0]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e44]
test al, 1
je 0x1006a47a
mov edi, dword [0x10184e40]
mov eax, dword [edi + 4]
vmovss dword [eax + ebx + 0x30], xmm0
mov ecx, dword [0x1017f5d8]
call fcn.100841b0
mov eax, dword [0x1017f608]
mov edi, dword [eax]
mov eax, dword [0x10184e44]
test al, 1
je 0x1006a4f2
mov ebx, dword [0x10184e40]
vmovss xmm0, dword [esp + 0x30]
mov eax, dword [ebx + 4]
vmovss dword [eax + edi + 0x30], xmm0
mov eax, dword [0x1017f5c0]
mov ecx, dword [esp + 0xc]
vmovss xmm0, dword [ecx + 8]
vsubss xmm2, xmm0, dword [eax + 0x110]
vmovsd xmm0, qword [ecx]
vmovsd xmm1, qword [eax + 0x108]
vsubps xmm1, xmm0, xmm1
vxorps xmm0, xmm0, xmm0
vcmpeqps xmm0, xmm1, xmm0
vpmovsxdq xmm0, xmm0
vmovmskpd eax, xmm0
cmp al, 3
jne 0x1006938f
vxorps xmm1, xmm1, xmm1
xor eax, eax
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0x10], xmm0
vucomiss xmm2, xmm1
seta al
vmovss xmm0, dword [eax*4 + 0x10131ff8]
jmp 0x1006949c
vmovaps xmmword [esp + 0x30], xmm2
vcvtss2sd xmm0, xmm1, xmm1
vmovshdup xmm2, xmm1
vmovaps xmmword [esp + 0x20], xmm2
vmovaps xmmword [esp + 0x40], xmm1
vcvtss2sd xmm1, xmm2, xmm2
sub esp, 0x10
vmovsd qword [esp + 8], xmm0
vmovsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
add esp, 0x10
fstp dword [esp + 0xa0]
vmovss xmm0, dword [esp + 0xa0]
vmulss xmm0, xmm0, dword [0x10131fb8]
vaddss xmm1, xmm0, dword [0x101316d0]
vxorps xmm2, xmm2, xmm2
vcmpltss xmm2, xmm0, xmm2
vblendvps xmm2, xmm0, xmm1, xmm2
vmovaps xmm0, xmmword [esp + 0x20]
vmulss xmm0, xmm0, xmm0
vmovaps xmm1, xmmword [esp + 0x40]
vfmadd231ss xmm0, xmm1, xmm1
vcvtss2sd xmm0, xmm0, xmm0
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
vmovaps xmmword [esp + 0x10], xmm2
jb 0x10069421
vsqrtsd xmm0, xmm0, xmm0
jmp 0x10069441
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 + 0xc0]
vmovsd xmm0, qword [esp + 0xc0]
vcvtsd2ss xmm0, xmm0, xmm0
vbroadcastss xmm1, dword [0x10129734]
vxorps xmm1, xmm1, xmmword [esp + 0x30]
vcvtss2sd xmm0, xmm0, xmm0
vcvtss2sd xmm1, xmm1, xmm1
sub esp, 0x10
vmovsd qword [esp + 8], xmm0
vmovsd qword [esp], xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2
add esp, 0x10
fstp dword [esp + 0x9c]
vmovss xmm0, dword [esp + 0x9c]
vmulss xmm0, xmm0, dword [0x10131fb8]
vxorps xmm1, xmm1, xmm1
vucomiss xmm1, xmm0
jbe 0x1006949c
vaddss xmm0, xmm0, dword [0x101316d0]
sub esp, 8
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
mov edi, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call edi
add esp, 8
fstp dword [esp + 0x98]
vmovss xmm0, dword [esp + 0x98]
vmovaps xmmword [esp + 0x30], xmm0
vmovss dword [esp + 0xd0], xmm0
sub esp, 8
vmovaps xmm0, xmmword [esp + 0x18]
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call edi
add esp, 8
fstp dword [esp + 0x94]
vmovss xmm0, dword [esp + 0x94]
vmovaps xmmword [esp + 0x10], xmm0
vmovss dword [esp + 0xd4], xmm0
sub esp, 8
vmovss xmm0, dword [esp + 0x68]
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call edi
add esp, 8
fstp dword [esp + 0x90]
vmovss xmm0, dword [esp + 0x90]
vmovss dword [esp + 0x60], xmm0
vmovss dword [esp + 0xd8], xmm0
vmovaps xmm0, xmmword [esp + 0x30]
vinsertps xmm2, xmm0, dword [esp + 0x10], 0x10
mov eax, dword [0x1017f5c0]
mov ebx, dword [eax + 0x14c]
mov eax, dword [0x1017f704]
test al, 1
je 0x1006a165
mov edi, dword [0x1017f700]
mov eax, dword [edi + 4]
movzx edx, word [eax + ebx]
mov eax, dword [0x1017f610]
vmovss xmm0, dword [eax + 0x10]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x1017f734]
test al, 1
je 0x1006a1df
mov edi, dword [0x1017f730]
mov eax, dword [edi + 4]
vucomiss xmm0, dword [eax + ebx]
mov ebx, dword [esp + 4]
jb 0x10069606
mov eax, dword [esi + 0x2c]
cmp eax, 1
je 0x100695e6
cmp eax, 2
jne 0x10069606
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebx]
mov ebx, dword [eax]
mov eax, dword [0x1017f71c]
test al, 1
je 0x1006acd1
mov edi, dword [0x1017f718]
mov eax, dword [edi + 4]
cmp ecx, dword [eax + ebx]
mov ebx, dword [esp + 4]
jl 0x10069606
mov eax, dword [0x1017f5c0]
test byte [eax + 0x148], 4
jne 0x100695f9
mov eax, dword [esi + 0x28]
jmp 0x100695fd
mov eax, dword [esi + 0x24]
inc eax
mov ecx, dword [0x1017f5cc]
mov dword [ecx + 0x34], eax
mov eax, dword [0x1017f5c0]
test byte [eax + 0x148], 4
je 0x1006989d
cmp byte [esi + 0xa], 0
vmovaps xmmword [esp + 0x30], xmm2
je 0x100696a3
lea eax, [edx - 0xb]
cmp eax, 0x1d
ja 0x10069636
mov ecx, 0x38000001
bt ecx, eax
jb 0x1006963e
lea eax, [edx - 8]
cmp eax, 2
jae 0x100696a3
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e5c]
test al, 1
je 0x1006abdf
mov edi, dword [0x10184e58]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 0
mov ebx, dword [esp + 4]
jne 0x100696a3
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x1017f714]
test al, 1
je 0x1006b207
mov edi, dword [0x1017f710]
mov eax, dword [edi + 4]
test byte [eax + ebx], 1
mov ebx, dword [esp + 4]
je 0x100696a3
mov eax, dword [0x1017f5d8]
test byte [eax + 0x38], 2
jne 0x100696a3
mov eax, dword [ebp + 8]
or byte [eax + 0x31], 8
jmp 0x1006989d
lea eax, [esp + 0xd0]
mov ecx, esi
push dword [esp + 0xc]
push eax
push ebx
mov edi, edx
call fcn.100681f0
mov ecx, 0x50
cmp di, 0x1f
je 0x100696c7
mov ecx, dword [esi + 0x1c]
cmp eax, ecx
jl 0x1006989d
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0xec]
mov eax, dword [ecx]
call dword [eax + 0x30]
fstp dword [esp + 0x8c]
vmovss xmm4, dword [esp + 0x8c]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e4c]
test al, 1
je 0x1006ac57
mov edi, dword [0x10184e48]
vmovaps xmm3, xmmword [esp + 0x30]
mov eax, dword [edi + 4]
vmulss xmm0, xmm4, dword [eax + ebx + 8]
vmovsd xmm1, qword [eax + ebx]
vmovss xmm2, dword [esp + 0x60]
vsubss xmm0, xmm2, xmm0
lea eax, [esi + 0xb0]
mov dword [esp + 0x10], eax
add dword [esp + 0x84], 4
vbroadcastss xmm2, xmm4
vmulps xmm1, xmm2, xmm1
vsubps xmm1, xmm3, xmm1
mov edi, dword [ebp + 8]
vmovlps qword [edi + 0xc], xmm1
vmovss dword [edi + 0x14], xmm0
sub esp, 8
vmovss dword [esp], xmm1
mov dword [esp + 4], 0x43b40000
mov ebx, dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_remainderf]
call ebx
add esp, 8
fstp dword [edi + 0xc]
vmovss xmm0, dword [edi + 0x10]
sub esp, 8
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
add esp, 8
fstp dword [edi + 0x10]
vmovss xmm0, dword [edi + 0x14]
sub esp, 8
vmovss dword [esp], xmm0
mov dword [esp + 4], 0x43b40000
call ebx
add esp, 8
fstp dword [esp + 0x88]
vmovss xmm0, dword [esp + 0x88]
vmovsd xmm1, qword [edi + 0xc]
vmovaps xmm2, xmmword [0x10132010]
vmovddup xmm3, qword [0x10132020]
vcmpltps xmm4, xmm3, xmm1
vmaxps xmm1, xmm2, xmm1
vblendvps xmm1, xmm1, xmm3, xmm4
vmovlps qword [edi + 0xc], xmm1
vmovss xmm1, dword [0x10132000]
vmaxss xmm1, xmm1, xmm0
vmovss xmm2, dword [0x10131fbc]
vcmpltss xmm0, xmm2, xmm0
vbroadcastss xmm2, dword [0x10131fbc]
vblendvps xmm0, xmm1, xmm2, xmm0
vmovss dword [edi + 0x14], xmm0
or byte [edi + 0x30], 1
mov ebx, dword [esp + 4]
mov eax, dword [ebx + 4]
vmovss xmm0, dword [eax + 0x20]
mov eax, dword [0x1017f5c0]
vaddss xmm0, xmm0, dword [eax + 0xfc]
mov eax, dword [0x1017f610]
vdivss xmm0, xmm0, dword [eax + 0x20]
vaddss xmm0, xmm0, dword [0x10129738]
vcvttss2si eax, xmm0
mov dword [edi + 8], eax
mov eax, dword [ebx]
mov dword [esi + 0xac], eax
mov ecx, dword [esp + 0x10]
push dword [esp + 0x84]
call fcn.10066770
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x10]
mov dword [esi + 0xb8], eax
mov eax, dword [ecx + 0x18]
mov dword [esi + 0xbc], eax
mov eax, dword [0x1017f5c0]
or byte [eax + 0x148], 0x10
mov ecx, dword [0x1017f5f8]
cmp byte [ecx + 0x9a], 0
je 0x1006989d
mov eax, dword [ebx]
push dword [esp + 0x84]
push dword [eax]
call fcn.100bb950
mov eax, dword [ebx]
mov edi, dword [eax]
mov eax, dword [0x10184dfc]
test al, 1
je 0x1006a263
mov ebx, dword [0x10184df8]
mov eax, dword [ebx + 4]
lea edx, [esp + 0xe0]
mov ecx, dword [edx + 8]
mov dword [eax + edi + 8], ecx
vmovsd xmm0, qword [edx]
vmovsd qword [eax + edi], xmm0
mov eax, dword [0x1017f5c0]
mov ecx, edi
lea edx, [esp + 0xec]
push edx
call dword [eax + 0x18]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0xc]
test eax, eax
je 0x1006993e
lea edx, [esp + 0x104]
vmovss xmm0, dword [edi + 0x9920]
vmovss dword [esp + 4], xmm0
vmovss xmm0, dword [edi + 0x9924]
vmovss dword [esp + 0xc], xmm0
mov ebx, dword [0x1017f5c0]
mov ecx, eax
push edx
lea eax, [esp + 0xfc]
push eax
call dword [ebx + 0x28]
vmovss xmm0, dword [esp + 4]
vmovss dword [edi + 0x9920], xmm0
vmovss xmm0, dword [esp + 0xc]
vmovss dword [edi + 0x9924], xmm0
vmovss xmm0, dword [esp + 0xdc]
mov dword [esp + 0x3120], 0
vmovss dword [esp + 0x3124], xmm0
mov dword [esp + 0x3128], 0
mov eax, dword [0x1017f5c0]
lea edx, [esp + 0x3120]
mov ecx, edi
push edx
call dword [eax + 0x14]
mov eax, dword [esp + 0x3114]
mov dword [edi + 0x26b0], eax
mov eax, dword [esp + 0x3118]
mov dword [edi + 0x26b4], eax
mov eax, dword [esp + 0x3110]
shl eax, 4
lea eax, [eax + eax*2]
push eax
lea eax, [esp + 0x114]
push eax
push dword [edi + 0x2910]
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x311c]
mov dword [edi + 0x2690], eax
add esi, 0xf4
mov ecx, esi
call fcn.1006b7d0
jmp 0x10068c1c
mov eax, dword [0x10184e3c]
test al, 1
je 0x1006b474
mov ebx, dword [0x10184e38]
mov eax, dword [ebx + 4]
cmp dword [eax + edi], 0xffffffff
jne 0x10069558
mov eax, dword [0x1017f608]
mov edi, dword [eax]
jmp 0x100691ea
or eax, 1
mov dword [0x1017f74c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0x10], ecx
push str.m_bInReload
call fcn.10005ce0
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
cmp dword [esp + 0xf0], 0x10
jb 0x10069a47
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x10069a6a
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0xc], eax
cmp ecx, 3
jae 0x10069a71
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10069ac3
mov ecx, 0x811c9dc5
jmp 0x10069ae3
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x10]
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 + 0x30], edx
jne 0x10069a87
cmp dword [esp + 0xc], 0
je 0x10069ae3
add edx, dword [esp + 0x10]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0xc], edi
jne 0x10069ad0
mov edx, dword [esp + 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x10069b2f
cmp dword [edi + 0x1c], 0x10
jb 0x10069b17
mov eax, dword [edi + 8]
jmp 0x10069b1a
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10069b3e
cmp edi, dword [esp + 0xc]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x10069b03
add edi, 0x20
lea ecx, [esp + 0xdc]
call fcn.100026e0
mov dword [0x1017f748], edi
jmp 0x10068c13
or eax, 1
mov dword [0x10184e34], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0x10], ecx
push str.m_MoveType
call fcn.10005ce0
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
cmp dword [esp + 0xf0], 0x10
jb 0x10069b9e
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x10069cb5
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0xc], eax
cmp ecx, 3
jae 0x10069cbc
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10069d0e
or eax, 1
mov dword [0x1017f704], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0x10], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.10005ce0
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
cmp dword [esp + 0xf0], 0x10
jb 0x10069c12
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x10069da3
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0xc], eax
cmp ecx, 3
jae 0x10069daa
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10069dfc
or ecx, 1
mov dword [0x10184e34], ecx
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0x10], ecx
push str.m_MoveType
call fcn.10005ce0
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
cmp dword [esp + 0xf0], 0x10
jb 0x10069c87
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x10069e91
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0xc], eax
cmp ecx, 3
jae 0x10069e98
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10069eea
mov ecx, 0x811c9dc5
jmp 0x10069d2e
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x10]
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 + 0x30], edx
jne 0x10069cd2
cmp dword [esp + 0xc], 0
je 0x10069d2e
add edx, dword [esp + 0x10]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0xc], edi
jne 0x10069d1b
mov edx, dword [esp + 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x10069d7a
cmp dword [edi + 0x1c], 0x10
jb 0x10069d62
mov eax, dword [edi + 8]
jmp 0x10069d65
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10069d89
cmp edi, dword [esp + 0xc]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x10069d4e
add edi, 0x20
lea ecx, [esp + 0xdc]
call fcn.100026e0
mov dword [0x10184e30], edi
jmp 0x10068c8a
mov ecx, 0x811c9dc5
jmp 0x10069e1c
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x10]
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 + 0x30], edx
jne 0x10069dc0
cmp dword [esp + 0xc], 0
je 0x10069e1c
add edx, dword [esp + 0x10]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0xc], edi
jne 0x10069e09
mov edx, dword [esp + 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x10069e68
cmp dword [edi + 0x1c], 0x10
jb 0x10069e50
mov eax, dword [edi + 8]
jmp 0x10069e53
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10069e77
cmp edi, dword [esp + 0xc]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x10069e3c
add edi, 0x20
lea ecx, [esp + 0xdc]
call fcn.100026e0
mov dword [0x1017f700], edi
jmp 0x10068c66
mov ecx, 0x811c9dc5
jmp 0x10069f0a
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x10]
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 + 0x30], edx
jne 0x10069eae
cmp dword [esp + 0xc], 0
je 0x10069f0a
add edx, dword [esp + 0x10]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0xc], edi
jne 0x10069ef7
mov edx, dword [esp + 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x10069f56
cmp dword [edi + 0x1c], 0x10
jb 0x10069f3e
mov eax, dword [edi + 8]
jmp 0x10069f41
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x10069f65
cmp edi, dword [esp + 0xc]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x10069f2a
lea eax, [edi + 0x20]
mov dword [esp + 4], eax
lea ecx, [esp + 0xdc]
call fcn.100026e0
mov eax, dword [esp + 4]
mov dword [0x10184e30], eax
mov eax, dword [edi + 0x24]
cmp byte [eax + ebx], 8
je 0x10068c1c
jmp 0x10068cb4
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x60], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x10069fd9
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x10], 0
je 0x1006a2d3
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x1006a562
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006a5b4
or eax, 1
mov dword [0x10184e04], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x60], ecx
push str.CBaseEntity__m_vecMins
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a04d
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x10], 0
je 0x1006a2dd
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x1006a655
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006a6a7
or eax, 1
mov dword [0x10184e0c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x60], ecx
push str.CBaseEntity__m_vecMaxs
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a0c1
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x10], 0
je 0x1006a2e7
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x1006a73c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006a78e
mov dword [esp + 0x30], edi
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 8], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov ebx, dword [esp + 0x3130]
cmp dword [esp + 0x3134], 0x10
jb 0x1006a135
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x1006a2f1
mov ecx, ebx
lea eax, [ebx - 1]
and ecx, 3
mov dword [esp + 0x40], ecx
cmp eax, 3
jae 0x1006a823
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006a871
mov ecx, edi
call fcn.1006b870
vmovaps xmmword [esp + 0x30], xmm2
or eax, 1
mov dword [0x1017f704], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 8], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a1b1
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006a2fb
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006a918
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006a968
vmovss dword [esp + 0x5c], xmm0
mov dword [esp + 8], edx
vmovaps xmmword [esp + 0x30], xmm2
or eax, 1
mov dword [0x1017f734], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.m_flNextAttack
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a235
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006a305
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006aa03
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006aa53
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x60], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x10], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 4], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a2a9
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x1006a30f
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0xc], eax
cmp ecx, 3
jae 0x1006aaf8
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006ab4a
mov ecx, 0x811c9dc5
jmp 0x1006a5d4
mov ecx, 0x811c9dc5
jmp 0x1006a6c7
mov ecx, 0x811c9dc5
jmp 0x1006a7ae
mov ecx, 0x811c9dc5
jmp 0x1006a891
mov ecx, 0x811c9dc5
jmp 0x1006a988
mov ecx, 0x811c9dc5
jmp 0x1006aa73
mov ecx, 0x811c9dc5
jmp 0x1006ab6a
or eax, 1
mov dword [0x10184e44], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp], ecx
push str.CBaseAnimating__m_flPoseParameter
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a35d
mov eax, dword [esp + 0x3120]
mov dword [esp], eax
cmp dword [esp + 0x30], 0
je 0x1006ad53
mov eax, dword [esp + 0x30]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x20], eax
cmp ecx, 3
jae 0x1006ad85
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006add6
mov dword [esp + 0x5c], ecx
or eax, 1
mov dword [0x10184e4c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp], ecx
push str.CBasePlayer__m_aimPunchAngle
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a3d3
mov eax, dword [esp + 0x3120]
mov dword [esp], eax
cmp dword [esp + 0x20], 0
je 0x1006ad5d
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x1006ae71
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006aebc
vmovaps xmmword [esp + 0x10], xmm0
or eax, 1
mov dword [0x10184e54], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x5c], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 8], ecx
push str.CCSPlayer__m_flThirdpersonRecoil
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a44d
mov eax, dword [esp + 0x3120]
mov dword [esp + 8], eax
cmp dword [esp + 0x20], 0
je 0x1006ad67
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x1006af4e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006afa0
vmovss dword [esp + 0x5c], xmm0
or eax, 1
mov dword [0x10184e44], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp], ecx
push str.CBaseAnimating__m_flPoseParameter
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a4c4
mov eax, dword [esp + 0x3120]
mov dword [esp], eax
cmp dword [esp + 0x10], 0
je 0x1006ad71
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x20], eax
cmp ecx, 3
jae 0x1006b037
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b088
or eax, 1
mov dword [0x10184e44], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 8], eax
lea ecx, [esp + 0x3120]
push str.CBaseAnimating__m_flPoseParameter
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006a534
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x10], 0
je 0x1006ad7b
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x20], eax
cmp ecx, 3
jae 0x1006b122
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b172
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x60]
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 + 0x40], edx
jne 0x1006a578
cmp dword [esp + 0x30], 0
je 0x1006a5d4
add edx, dword [esp + 0x60]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x1006a5c1
mov edx, dword [esp + 0x20]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov dword [esp + 0x30], eax
mov eax, dword [eax + ecx*8 + 4]
cmp eax, dword [edx + 4]
je 0x1006b7b8
mov edi, eax
add ecx, ecx
mov eax, dword [esp + 0x30]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006a62a
cmp dword [edi + 0x1c], 0x10
jb 0x1006a612
mov eax, dword [edi + 8]
jmp 0x1006a615
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x68]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006a639
cmp edi, dword [esp + 0x30]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006a5fe
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov eax, edi
mov dword [0x10184df8], edi
jmp 0x10068d5d
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x60]
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 + 0x40], edx
jne 0x1006a66b
cmp dword [esp + 0x30], 0
je 0x1006a6c7
add edx, dword [esp + 0x60]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x1006a6b4
mov edx, dword [esp + 0x20]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006a713
cmp dword [edi + 0x1c], 0x10
jb 0x1006a6fb
mov eax, dword [edi + 8]
jmp 0x1006a6fe
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x68]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006a722
cmp edi, dword [esp + 0x30]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006a6e7
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e00], edi
jmp 0x10068da6
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x60]
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 + 0x40], edx
jne 0x1006a752
cmp dword [esp + 0x30], 0
je 0x1006a7ae
add edx, dword [esp + 0x60]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x1006a79b
mov edx, dword [esp + 0x20]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006a7fa
cmp dword [edi + 0x1c], 0x10
jb 0x1006a7e2
mov eax, dword [edi + 8]
jmp 0x1006a7e5
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x68]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006a809
cmp edi, dword [esp + 0x30]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006a7ce
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e08], edi
jmp 0x10068dd3
mov eax, ebx
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x20]
movzx edi, byte [eax + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp dword [esp], edx
jne 0x1006a836
cmp dword [esp + 0x40], 0
je 0x1006a891
add edx, dword [esp + 0x20]
xor eax, eax
movzx edi, byte [edx + eax]
xor edi, ecx
imul ecx, edi, 0x1000193
inc eax
cmp dword [esp + 0x40], eax
jne 0x1006a87e
mov edx, dword [esp + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [eax + ecx*8 + 4]
cmp eax, dword [edx + 4]
je 0x1006b7b8
mov edi, eax
add ecx, ecx
mov eax, dword [esp + 0x40]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
cmp ebx, dword [edi + 0x18]
jne 0x1006a8e0
cmp dword [edi + 0x1c], 0x10
jb 0x1006a8cb
mov eax, dword [edi + 8]
jmp 0x1006a8ce
lea eax, [edi + 8]
push ebx
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006a8f4
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
cmp ebx, dword [edi + 0x18]
je 0x1006a8c0
jmp 0x1006a8e0
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov ecx, edi
mov dword [0x10184df8], edi
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x30]
jmp 0x10068e6f
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006a92d
cmp dword [esp + 0x40], 0
je 0x1006a988
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006a975
mov edx, dword [esp + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006a9d4
cmp dword [edi + 0x1c], 0x10
jb 0x1006a9bc
mov eax, dword [edi + 8]
jmp 0x1006a9bf
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006a9e3
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006a9a8
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x1017f700], edi
vmovaps xmm2, xmmword [esp + 0x30]
jmp 0x10069576
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006aa18
cmp dword [esp + 0x40], 0
je 0x1006aa73
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006aa60
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006aabf
cmp dword [edi + 0x1c], 0x10
jb 0x1006aaa7
mov eax, dword [edi + 8]
jmp 0x1006aaaa
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006aace
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006aa93
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x1017f730], edi
vmovaps xmm2, xmmword [esp + 0x30]
mov edx, dword [esp + 8]
vmovss xmm0, dword [esp + 0x5c]
jmp 0x100695a1
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x10]
movzx eax, byte [ebx + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [ebx + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x30], edx
jne 0x1006ab0e
cmp dword [esp + 0xc], 0
je 0x1006ab6a
add edx, dword [esp + 0x10]
xor ebx, ebx
movzx eax, byte [edx + ebx]
xor eax, ecx
imul ecx, eax, 0x1000193
inc ebx
cmp dword [esp + 0xc], ebx
jne 0x1006ab57
mov edx, dword [esp + 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
cmp eax, dword [ebx + 0x18]
jne 0x1006abb6
cmp dword [ebx + 0x1c], 0x10
jb 0x1006ab9e
mov eax, dword [ebx + 8]
jmp 0x1006aba1
lea eax, [ebx + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006abc5
cmp ebx, dword [esp + 0xc]
je 0x1006b7b8
mov ebx, dword [ebx + 4]
jmp 0x1006ab8a
add ebx, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184df8], ebx
jmp 0x100698b4
mov dword [esp + 8], edx
or eax, 1
mov dword [0x10184e5c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CCSPlayer__m_bIsScoped
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006ac29
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006b27f
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006b290
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b2e0
vmovaps xmmword [esp + 0x70], xmm4
or eax, 1
mov dword [0x10184e4c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 8], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CBasePlayer__m_aimPunchAngle
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006aca3
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006b286
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006b379
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b3c9
mov dword [esp + 0x5c], ecx
mov dword [esp + 8], edx
vmovaps xmmword [esp + 0x30], xmm2
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006ad25
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006b46a
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006b4ed
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b53d
mov ecx, 0x811c9dc5
jmp 0x1006adf5
mov ecx, 0x811c9dc5
jmp 0x1006aedb
mov ecx, 0x811c9dc5
jmp 0x1006afbe
mov ecx, 0x811c9dc5
jmp 0x1006b0a7
mov ecx, 0x811c9dc5
jmp 0x1006b192
mov eax, dword [esp + 0x30]
and eax, 0xfffffffc
mov dword [esp + 8], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp]
movzx eax, byte [ebx + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [ebx + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 8], edx
jne 0x1006ad9a
cmp dword [esp + 0x20], 0
je 0x1006adf5
add edx, dword [esp]
xor ebx, ebx
movzx eax, byte [edx + ebx]
xor eax, ecx
imul ecx, eax, 0x1000193
inc ebx
cmp dword [esp + 0x20], ebx
jne 0x1006ade2
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x30]
cmp eax, dword [ebx + 0x18]
jne 0x1006ae41
cmp dword [ebx + 0x1c], 0x10
jb 0x1006ae29
mov eax, dword [ebx + 8]
jmp 0x1006ae2c
lea eax, [ebx + 8]
push dword [esp + 0x30]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006ae50
cmp ebx, dword [esp + 0x20]
je 0x1006b7b8
mov ebx, dword [ebx + 4]
jmp 0x1006ae15
add ebx, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e40], ebx
mov eax, dword [0x1017f608]
mov ecx, dword [eax]
jmp 0x100691ff
mov edi, dword [esp + 0x20]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp]
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 0x1006ae82
cmp dword [esp + 8], 0
je 0x1006aedb
add edx, dword [esp]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 8], edi
jne 0x1006aec8
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x1006af23
cmp dword [ebx + 0x1c], 0x10
jb 0x1006af0b
mov eax, dword [ebx + 8]
jmp 0x1006af0e
lea eax, [ebx + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006af30
cmp ebx, edi
je 0x1006b7b8
mov ebx, dword [ebx + 4]
jmp 0x1006aef7
add ebx, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e48], ebx
mov ecx, dword [esp + 0x5c]
jmp 0x10069221
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 0x70], 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 + 0x70], edx
jne 0x1006af64
cmp dword [esp], 0
je 0x1006afbe
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], edi
jne 0x1006afac
mov edx, dword [esp + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [edi + 0x18]
jne 0x1006b009
cmp dword [edi + 0x1c], 0x10
jb 0x1006aff1
mov eax, dword [edi + 8]
jmp 0x1006aff4
lea eax, [edi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b017
cmp edi, dword [esp]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006afdd
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e50], edi
vmovaps xmm0, xmmword [esp + 0x10]
jmp 0x10069276
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 8], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
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 + 8], edx
jne 0x1006b04c
cmp dword [esp + 0x20], 0
je 0x1006b0a7
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x20], edi
jne 0x1006b094
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006b0f3
cmp dword [edi + 0x1c], 0x10
jb 0x1006b0db
mov eax, dword [edi + 8]
jmp 0x1006b0de
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b102
cmp edi, dword [esp + 0x20]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006b0c7
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e40], edi
vmovss xmm0, dword [esp + 0x5c]
jmp 0x100692f1
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx eax, byte [ebx + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [ebx + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp], edx
jne 0x1006b137
cmp dword [esp + 0x20], 0
je 0x1006b192
add edx, dword [esp + 0x40]
xor ebx, ebx
movzx eax, byte [edx + ebx]
xor eax, ecx
imul ecx, eax, 0x1000193
inc ebx
cmp dword [esp + 0x20], ebx
jne 0x1006b17f
mov edx, dword [esp + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x1006b1de
cmp dword [ebx + 0x1c], 0x10
jb 0x1006b1c6
cmp ebx, dword [esp + 0x20]
je 0x1006b7b8
mov dword [esp + 8], edx
or eax, 1
mov dword [0x1017f714], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 0x20], ecx
push str.CBasePlayer__m_fFlags
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006b251
mov eax, dword [esp + 0x3120]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x10], 0
je 0x1006b5e0
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x1006b5e7
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b637
mov ecx, 0x811c9dc5
jmp 0x1006b300
mov ecx, 0x811c9dc5
jmp 0x1006b3e9
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006b2a5
cmp dword [esp + 0x40], 0
je 0x1006b300
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006b2ed
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006b34c
cmp dword [edi + 0x1c], 0x10
jb 0x1006b334
mov eax, dword [edi + 8]
jmp 0x1006b337
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b35b
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006b320
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e58], edi
mov edx, dword [esp + 8]
jmp 0x10069658
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006b38e
cmp dword [esp + 0x40], 0
je 0x1006b3e9
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006b3d6
mov edx, dword [esp + 8]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006b435
cmp dword [edi + 0x1c], 0x10
jb 0x1006b41d
mov eax, dword [edi + 8]
jmp 0x1006b420
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b444
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006b409
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e48], edi
vmovaps xmm3, xmmword [esp + 0x30]
vmovaps xmm4, xmmword [esp + 0x70]
jmp 0x1006970f
mov ecx, 0x811c9dc5
jmp 0x1006b55d
vmovaps xmmword [esp + 0x30], xmm2
or eax, 1
mov dword [0x10184e3c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x5c], eax
lea ecx, [esp + 0x3120]
mov dword [esp + 8], ecx
push 0x1016b9fd
call fcn.10005ce0
mov eax, dword [esp + 0x3130]
mov dword [esp + 0x20], eax
cmp dword [esp + 0x3134], 0x10
jb 0x1006b4c0
mov eax, dword [esp + 0x3120]
mov dword [esp + 8], eax
cmp dword [esp + 0x20], 0
je 0x1006b6d0
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x1006b6d7
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x1006b729
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006b502
cmp dword [esp + 0x40], 0
je 0x1006b55d
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006b54a
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006b5a9
cmp dword [edi + 0x1c], 0x10
jb 0x1006b591
mov eax, dword [edi + 8]
jmp 0x1006b594
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b5b8
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006b57d
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x1017f718], edi
vmovaps xmm2, xmmword [esp + 0x30]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 0x5c]
jmp 0x100695da
mov ecx, 0x811c9dc5
jmp 0x1006b657
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x20]
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], edx
jne 0x1006b5fc
cmp dword [esp + 0x40], 0
je 0x1006b657
add edx, dword [esp + 0x20]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x40], edi
jne 0x1006b644
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x1006b6a3
cmp dword [edi + 0x1c], 0x10
jb 0x1006b68b
mov eax, dword [edi + 8]
jmp 0x1006b68e
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b6b2
cmp edi, dword [esp + 0x40]
je 0x1006b7b8
mov edi, dword [edi + 4]
jmp 0x1006b677
add edi, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x1017f710], edi
mov edx, dword [esp + 8]
jmp 0x1006967f
mov ecx, 0x811c9dc5
jmp 0x1006b747
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 0x70], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 8]
movzx eax, byte [ebx + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [ebx + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [ebx + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x70], edx
jne 0x1006b6ed
cmp dword [esp], 0
je 0x1006b747
add edx, dword [esp + 8]
xor ebx, ebx
movzx eax, byte [edx + ebx]
xor eax, ecx
imul ecx, eax, 0x1000193
inc ebx
cmp dword [esp], ebx
jne 0x1006b735
mov edx, dword [esp + 0x5c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x1006b7b8
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x1006b78e
cmp dword [ebx + 0x1c], 0x10
jb 0x1006b776
mov eax, dword [ebx + 8]
jmp 0x1006b779
lea eax, [ebx + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x10]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x1006b798
cmp ebx, dword [esp]
je 0x1006b7b8
mov ebx, dword [ebx + 4]
jmp 0x1006b762
add ebx, 0x20
lea ecx, [esp + 0x3120]
call fcn.100026e0
mov dword [0x10184e38], ebx
vmovaps xmm2, xmmword [esp + 0x30]
jmp 0x100699e8
push 0x1016ba76
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
int3