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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x1c0
mov esi, ecx
mov eax, dword [0x1017f528]
xor eax, ebp
mov dword [esp + 0x1a8], eax
mov word [esp + 0x140], 0
mov byte [esp + 0x142], 0
mov word [esp + 0xf8], 0
vxorps xmm0, xmm0, xmm0
vmovups ymmword [esp + 0x143], ymm0
vmovups ymmword [esp + 0x151], ymm0
vxorps xmm2, xmm2, xmm2
vmovups xmmword [esp + 0xfa], xmm2
mov dword [esp + 0x10a], 0
mov byte [ecx + 0x270], 0
vmovups ymm0, ymmword [esp + 0x140]
vmovups ymm1, ymmword [esp + 0x151]
vmovups ymmword [ecx + 0x271], ymm0
vmovups ymmword [ecx + 0x282], ymm1
vmovups xmm0, xmmword [esp + 0xf8]
vmovups xmmword [ecx + 0x2a2], xmm0
vmovsd xmm0, qword [esp + 0x106]
vmovsd qword [ecx + 0x2b0], xmm0
mov ecx, dword [ecx + 0x2b8]
test ecx, ecx
je 0x100b7546
mov eax, dword [esi + 0x2c0]
sub eax, ecx
cmp eax, 0x1000
jb 0x100b7533
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b7d89
add eax, 0x23
mov ecx, edx
mov dword [esp + 4], eax
mov dword [esp], ecx
vzeroupper
call fcn.100d7fd2
vxorps xmm2, xmm2, xmm2
vmovlps qword [esi + 0x2b8], xmm2
mov dword [esi + 0x2c0], 0
mov byte [esi + 0x26c], 0
mov eax, dword [0x1017f5c0]
cmp dword [eax + 0x14c], 0
je 0x100b7cfc
mov eax, dword [eax + 0x150]
test eax, eax
je 0x100b7cfc
mov edx, dword [ebp + 8]
cmp byte [esi + 0x191], 0
je 0x100b7795
mov eax, dword [eax + 0xc8]
test eax, eax
je 0x100b7795
cmp eax, 6
jg 0x100b7795
vmovss xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [edx + 0xc]
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x70], xmm0
vmovsd qword [esp], xmm0
vzeroupper
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp dword [esp + 0x9c]
vmovss xmm0, dword [esp + 0x9c]
vmovss dword [esp + 0x60], xmm0
vmovsd xmm0, qword [esp + 0x70]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp dword [esp + 0x98]
vmovss xmm0, dword [esp + 0x98]
vmovaps xmmword [esp + 0x70], xmm0
mov eax, dword [ebp + 8]
vmovss xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [eax + 0x10]
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x50], xmm0
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esp + 0xd0]
vmovsd xmm0, qword [esp + 0x50]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esp + 0xc8]
vmovsd xmm0, qword [esp + 0xc8]
vmovhpd xmm0, xmm0, qword [esp + 0xd0]
vcvtpd2ps xmm2, xmm0
mov eax, dword [ebp + 8]
vmovss xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [eax + 0x14]
vucomiss xmm0, dword [0x101320e4]
jae 0x100b7d17
vmovss xmm1, dword [0x10129a0c]
vucomiss xmm1, xmm0
jae 0x100b7d17
vbroadcastss xmm0, dword [esp + 0x70]
vmulps xmm0, xmm0, xmm2
mov edx, dword [0x1017f5dc]
mov ecx, dword [0x1017f5c0]
mov eax, dword [ecx + 0x150]
vmovss xmm3, dword [ecx + 0x110]
vbroadcastss xmm1, dword [eax + 0x108]
vmulss xmm2, xmm1, dword [esp + 0x60]
vsubss xmm2, xmm3, xmm2
vmulps xmm0, xmm0, xmm1
vmovsd xmm1, qword [ecx + 0x108]
vaddps xmm0, xmm0, xmm1
vmovlps qword [esp + 0xf8], xmm0
vmovss dword [esp + 0x100], xmm2
mov ebx, dword [ecx + 0x14c]
mov ecx, dword [0x1017f704]
test cl, 1
mov dword [esp + 0x70], edx
je 0x100b7d92
mov edi, dword [0x1017f700]
mov edx, dword [edi + 4]
xor ecx, ecx
cmp word [edx + ebx], 0x1f
lea edi, [esi + 0x258]
sete cl
mov edx, dword [0x1017f608]
mov edx, dword [edx]
lea ebx, [esp + 0xf8]
mov dword [esp + 0x20], ebx
vmovss dword [esp + 0x1c], xmm3
vextractps dword [esp + 0x18], xmm1, 1
vmovss dword [esp + 0x14], xmm1
mov dword [esp + 0xc], eax
mov dword [esp + 4], edx
lea eax, [esp + 0x140]
mov dword [esp], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x70]
call fcn.1007cad0
sub esp, 0x24
cmp byte [esi + 0x26c], 0
mov eax, dword [esp + 0x150]
mov dword [edi + 0x10], eax
vmovups xmm0, xmmword [esp + 0x140]
vmovups xmmword [edi], xmm0
jne 0x100b7792
mov byte [esi + 0x26c], 1
mov edx, dword [ebp + 8]
cmp byte [esi + 0x18e], 0
je 0x100b7cfc
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0x150]
cmp dword [ecx + 0xc8], 9
jne 0x100b7cfc
mov ebx, dword [eax + 0x14c]
mov eax, dword [0x10185010]
test al, 1
je 0x100b7e1e
mov edi, dword [0x1018500c]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 0
je 0x100b7cc2
mov eax, dword [0x1017f608]
mov eax, dword [eax]
mov dword [esi + 0x274], eax
mov eax, dword [0x1017f5c0]
mov ebx, dword [eax + 0x14c]
mov eax, dword [0x1017f704]
test al, 1
je 0x100b7e9a
mov edi, dword [0x1017f700]
mov eax, dword [edi + 4]
movzx eax, word [eax + ebx]
mov word [esi + 0x2a0], ax
vmovss xmm0, dword [edx + 0xc]
vmovss xmm3, dword [edx + 0x10]
vmovss xmm2, dword [edx + 0x14]
vmovss xmm1, dword [0x10132000]
vucomiss xmm1, xmm0
vmovss dword [esp + 0x50], xmm2
vmovss dword [esp + 0x40], xmm3
jbe 0x100b784c
vaddss xmm0, xmm0, dword [0x101316d0]
jmp 0x100b785e
vucomiss xmm0, dword [0x10131fbc]
jbe 0x100b785e
vaddss xmm0, xmm0, dword [0x10134f30]
vbroadcastss xmm1, dword [0x1012978c]
vandps xmm1, xmm0, xmm1
vmovss xmm2, dword [0x10131fbc]
vsubss xmm1, xmm2, xmm1
vmulss xmm1, xmm1, dword [0x10129870]
vdivss xmm1, xmm1, xmm2
vaddss xmm0, xmm0, xmm1
vmulss xmm0, xmm0, dword [0x10131fc4]
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x60], xmm0
vmovsd qword [esp], xmm0
vzeroupper
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp dword [esp + 0x94]
vmovss xmm0, dword [esp + 0x94]
vmovss dword [esp + 0x70], xmm0
vmovsd xmm0, qword [esp + 0x60]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp dword [esp + 0x90]
vmovss xmm0, dword [esp + 0x90]
vmovaps xmmword [esp + 0x60], xmm0
vmovss xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [esp + 0x40]
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x40], xmm0
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp qword [esp + 0xc0]
vmovsd xmm0, qword [esp + 0x40]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp qword [esp + 0xb8]
vmovsd xmm0, qword [esp + 0xb8]
vmovhpd xmm2, xmm0, qword [esp + 0xc0]
vmovss xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [esp + 0x50]
vucomiss xmm0, dword [0x101320e4]
jae 0x100b7d50
vmovss xmm1, dword [0x10129a0c]
vucomiss xmm1, xmm0
jae 0x100b7d50
mov dword [esp + 0xf8], 0x3f800000
mov dword [esp + 0xe8], 0
mov ecx, dword [0x1017f5c0]
mov ebx, dword [ecx + 0x14c]
mov eax, dword [0x10185018]
test al, 1
je 0x100b7f16
mov edi, dword [0x10185014]
vcvtpd2ps xmm2, xmm2
mov eax, dword [edi + 4]
lea edx, [eax + ebx]
vmovss xmm1, dword [eax + ebx]
vxorps xmm0, xmm0, xmm0
vucomiss xmm0, xmm1
lea eax, [esp + 0xe8]
cmova edx, eax
vucomiss xmm1, dword [0x10129710]
lea ebx, [esp + 0xf8]
cmova edx, ebx
vbroadcastss xmm3, dword [esp + 0x60]
vmovss xmm4, dword [edx]
vmovss xmm1, dword [0x10129a08]
vmovss dword [esp + 0x50], xmm4
vfmadd213ss xmm1, xmm4, dword [0x10134e80]
vaddss xmm1, xmm1, dword [ecx + 0x110]
vmulps xmm5, xmm3, xmm2
vxorps xmm2, xmm2, xmm2
vmovups ymmword [esp + 0x174], ymm2
vmovaps ymmword [esp + 0x160], ymm2
vmovaps ymmword [esp + 0x140], ymm2
mov edx, dword [0x1017f608]
mov edx, dword [edx]
mov edi, dword [ecx + 0x34]
mov dword [esp + 0xe8], edi
mov dword [esp + 0xec], edx
mov dword [esp + 0xf0], 0
mov dword [esp + 0xf4], 0
vmovss xmm2, dword [esp + 0x70]
vmulss xmm2, xmm2, dword [0x10134f34]
vsubss xmm3, xmm1, xmm2
vmovsd xmm2, qword [ecx + 0x108]
vsubss xmm3, xmm3, xmm1
vbroadcastss xmm4, dword [0x10134f34]
vmovaps xmmword [esp + 0x60], xmm5
vmulps xmm4, xmm5, xmm4
vaddps xmm4, xmm4, xmm2
vsubps xmm4, xmm4, xmm2
vmulps xmm5, xmm4, xmm4
vmovshdup xmm5, xmm5
vfmadd231ss xmm5, xmm4, xmm4
vfmadd231ss xmm5, xmm3, xmm3
vucomiss xmm5, xmm0
vaddss xmm0, xmm1, xmm0
vxorps xmm1, xmm1, xmm1
vaddps xmm1, xmm2, xmm1
vmovlps qword [esp + 0xf8], xmm1
vmovss dword [esp + 0x100], xmm0
mov dword [esp + 0x104], 0
vmovlps qword [esp + 0x108], xmm4
vmovss dword [esp + 0x110], xmm3
mov dword [esp + 0x114], 0
vbroadcastss xmm0, dword [0x10129734]
vmovlps qword [esp + 0x118], xmm0
mov dword [esp + 0x120], 0x80000000
mov dword [esp + 0x124], 0
vbroadcastss xmm0, dword [0x1012984c]
vmovlps qword [esp + 0x128], xmm0
mov ecx, dword [0x1017f630]
mov dword [esp + 0x130], 0x40000000
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
mov byte [esp + 0x13c], 0
setp dl
setne dh
or dh, dl
mov byte [esp + 0x13d], dh
mov edx, dword [ecx]
lea edi, [esp + 0x140]
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
mov dword [esp], ebx
mov dword [esp + 4], 0x208400b
vzeroupper
call dword [edx + 0x14]
sub esp, 0x10
mov eax, dword [0x1017f5c0]
mov eax, dword [eax + 0x150]
vmovss xmm0, dword [eax + 0x110]
mov eax, dword [0x1017f610]
vmovss xmm6, dword [eax + 0x10]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e84]
test al, 1
je 0x100b7f98
mov edi, dword [0x10184e80]
vmulss xmm0, xmm0, dword [0x101307c0]
add esi, 0x270
vmovss xmm1, dword [0x10132410]
vmaxss xmm1, xmm1, xmm0
vmovss xmm2, dword [0x10134f38]
vcmpltss xmm0, xmm2, xmm0
vbroadcastss xmm2, dword [0x10134f38]
vblendvps xmm0, xmm1, xmm2, xmm0
vmovss xmm1, dword [0x101299a0]
vmovss xmm2, dword [esp + 0x50]
vfmadd213ss xmm1, xmm2, dword [0x101299f4]
vmulss xmm0, xmm1, xmm0
mov eax, dword [edi + 4]
vmovss xmm1, dword [eax + ebx + 8]
vmulss xmm1, xmm1, dword [0x1012987c]
vbroadcastss xmm2, xmm0
vmovaps xmm5, xmmword [esp + 0x60]
vmulps xmm2, xmm5, xmm2
vmovss xmm4, dword [esp + 0x70]
vmulss xmm0, xmm0, xmm4
vsubss xmm0, xmm1, xmm0
vmovsd xmm1, qword [eax + ebx]
vbroadcastss xmm3, dword [0x1012987c]
vmulps xmm1, xmm1, xmm3
vaddps xmm1, xmm2, xmm1
vmovlps qword [esp + 0xf8], xmm1
vmovss dword [esp + 0x100], xmm0
vmulss xmm0, xmm4, dword [0x10129788]
vaddss xmm0, xmm0, dword [esp + 0x154]
vbroadcastss xmm1, dword [0x10134df4]
vmulps xmm1, xmm5, xmm1
vmovsd xmm2, qword [esp + 0x14c]
vaddps xmm1, xmm2, xmm1
vmovlps qword [esp + 0xdc], xmm1
vmovss dword [esp + 0xe4], xmm0
vmovss dword [esp + 8], xmm6
lea eax, [esp + 0xf8]
mov dword [esp + 4], eax
lea eax, [esp + 0xdc]
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov ecx, esi
call fcn.100aa2c0
sub esp, 0x10
jmp 0x100b7cfc
mov eax, dword [0x1017f5c0]
mov ebx, dword [eax + 0x14c]
mov eax, dword [0x1017f73c]
test al, 1
je 0x100b8028
mov edi, dword [0x1017f738]
mov eax, dword [edi + 4]
vmovss xmm0, dword [eax + ebx]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100b77e0
jp 0x100b77e0
mov ecx, dword [esp + 0x1a8]
xor ecx, ebp
vzeroupper
call fcn.100d7fe0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x40], xmm0
vmovsd qword [esp], xmm0
vmovapd xmmword [esp + 0x50], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp st(0)
vmovsd xmm0, qword [esp + 0x40]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp st(0)
vmovapd xmm2, xmmword [esp + 0x50]
jmp 0x100b768e
vcvtss2sd xmm0, xmm0, xmm0
vmovsd qword [esp + 0x40], xmm0
vmovsd qword [esp], xmm0
vmovapd xmmword [esp + 0x50], xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
fstp st(0)
vmovsd xmm0, qword [esp + 0x40]
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
fstp st(0)
vmovapd xmm2, xmmword [esp + 0x50]
jmp 0x100b7962
vzeroupper
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
vmovaps xmmword [esp + 0xa0], xmm1
vmovss dword [esp + 0x84], xmm3
or ecx, 1
mov dword [0x1017f704], ecx
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x4c], eax
mov dword [esp], str.CBaseAttributableItem__m_iItemDefinitionIndex
lea ecx, [esp + 0x140]
mov dword [esp + 0x40], ecx
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x150]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x154], 0x10
jb 0x100b7df0
mov eax, dword [esp + 0x140]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x60], 0
je 0x100b80a4
mov eax, dword [esp + 0x60]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x50], eax
cmp ecx, 3
jae 0x100b80b5
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8107
or eax, 1
mov dword [0x10185010], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x3c], eax
mov dword [esp], str.CBaseCSGrenade__m_bPinPulled
lea ecx, [esp + 0x140]
mov dword [esp + 0x50], ecx
vzeroupper
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x150]
mov dword [esp + 0x70], eax
cmp dword [esp + 0x154], 0x10
jb 0x100b7e6c
mov eax, dword [esp + 0x140]
mov dword [esp + 0x50], eax
cmp dword [esp + 0x70], 0
je 0x100b80ab
mov eax, dword [esp + 0x70]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x60], eax
cmp ecx, 3
jae 0x100b81c0
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8212
or eax, 1
mov dword [0x1017f704], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x3c], eax
mov dword [esp], str.CBaseAttributableItem__m_iItemDefinitionIndex
lea ecx, [esp + 0x140]
mov dword [esp + 0x50], ecx
vzeroupper
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x150]
mov dword [esp + 0x70], eax
cmp dword [esp + 0x154], 0x10
jb 0x100b7ee8
mov eax, dword [esp + 0x140]
mov dword [esp + 0x50], eax
cmp dword [esp + 0x70], 0
je 0x100b82b1
mov eax, dword [esp + 0x70]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x60], eax
cmp ecx, 3
jae 0x100b82cf
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8321
vmovapd xmmword [esp + 0x50], xmm2
or eax, 1
mov dword [0x10185018], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xa0], eax
mov dword [esp], str.CBaseCSGrenade__m_flThrowStrength
lea ecx, [esp + 0x140]
mov dword [esp + 0x4c], ecx
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x150]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x154], 0x10
jb 0x100b7f6a
mov eax, dword [esp + 0x140]
mov dword [esp + 0x4c], eax
cmp dword [esp + 0x40], 0
je 0x100b82bb
mov eax, dword [esp + 0x40]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x3c], eax
cmp ecx, 3
jae 0x100b83c0
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8418
vmovss dword [esp + 0x88], xmm0
vmovss dword [esp + 0x8c], xmm6
or eax, 1
mov dword [0x10184e84], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xa0], eax
mov dword [esp], str.CBasePlayer__m_vecVelocity_0_
lea edi, [esp + 0xf8]
mov ecx, edi
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x108]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x10c], 0x10
mov dword [esp + 0x4c], edi
jb 0x100b7ffa
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x4c], eax
cmp dword [esp + 0x40], 0
je 0x100b82c5
mov eax, dword [esp + 0x40]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x3c], eax
cmp ecx, 3
jae 0x100b84c3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b851b
or eax, 1
mov dword [0x1017f73c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x3c], eax
mov dword [esp], str.CBaseCSGrenade__m_fThrowTime
lea ecx, [esp + 0x140]
mov dword [esp + 0x50], ecx
vzeroupper
call fcn.10005ce0
sub esp, 4
mov eax, dword [esp + 0x150]
mov dword [esp + 0x70], eax
cmp dword [esp + 0x154], 0x10
jb 0x100b8076
mov eax, dword [esp + 0x140]
mov dword [esp + 0x50], eax
cmp dword [esp + 0x70], 0
je 0x100b85cc
mov eax, dword [esp + 0x70]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x60], eax
cmp ecx, 3
jae 0x100b85d3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b8625
mov ecx, 0x811c9dc5
jmp 0x100b8127
mov ecx, 0x811c9dc5
jmp 0x100b8232
mov eax, dword [esp + 0x60]
and eax, 0xfffffffc
mov dword [esp + 0x3c], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x40]
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 + 0x3c], edx
jne 0x100b80cb
cmp dword [esp + 0x50], 0
je 0x100b8127
add edx, dword [esp + 0x40]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x50], edi
jne 0x100b8114
mov edx, dword [esp + 0x4c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x60]
cmp eax, dword [edi + 0x18]
jne 0x100b817a
cmp dword [edi + 0x1c], 0x10
jb 0x100b815b
mov eax, dword [edi + 8]
jmp 0x100b815e
lea eax, [edi + 8]
mov ecx, dword [esp + 0x60]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b8189
cmp edi, dword [esp + 0x50]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b8147
add edi, 0x20
lea ecx, [esp + 0x140]
call fcn.100026e0
mov dword [0x1017f700], edi
mov eax, dword [0x1017f5c0]
mov eax, dword [eax + 0x150]
vmovss xmm3, dword [esp + 0x84]
vmovaps xmm1, xmmword [esp + 0xa0]
jmp 0x100b7707
mov eax, dword [esp + 0x70]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x50]
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 0x100b81d6
cmp dword [esp + 0x60], 0
je 0x100b8232
add edx, dword [esp + 0x50]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x60], edi
jne 0x100b821f
mov edx, dword [esp + 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x70]
cmp eax, dword [edi + 0x18]
jne 0x100b8285
cmp dword [edi + 0x1c], 0x10
jb 0x100b8266
mov eax, dword [edi + 8]
jmp 0x100b8269
lea eax, [edi + 8]
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b8294
cmp edi, dword [esp + 0x60]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b8252
add edi, 0x20
lea ecx, [esp + 0x140]
call fcn.100026e0
mov dword [0x1018500c], edi
mov edx, dword [ebp + 8]
jmp 0x100b77d3
mov ecx, 0x811c9dc5
jmp 0x100b8341
mov ecx, 0x811c9dc5
jmp 0x100b8438
mov ecx, 0x811c9dc5
jmp 0x100b853b
mov eax, dword [esp + 0x70]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x50]
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 0x100b82e5
cmp dword [esp + 0x60], 0
je 0x100b8341
add edx, dword [esp + 0x50]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x60], edi
jne 0x100b832e
mov edx, dword [esp + 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x70]
cmp eax, dword [edi + 0x18]
jne 0x100b8394
cmp dword [edi + 0x1c], 0x10
jb 0x100b8375
mov eax, dword [edi + 8]
jmp 0x100b8378
lea eax, [edi + 8]
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b83a3
cmp edi, dword [esp + 0x60]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b8361
add edi, 0x20
lea ecx, [esp + 0x140]
call fcn.100026e0
mov dword [0x1017f700], edi
mov edx, dword [ebp + 8]
jmp 0x100b780b
mov eax, dword [esp + 0x40]
and eax, 0xfffffffc
mov dword [esp + 0x84], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x4c]
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 + 0x84], edx
jne 0x100b83d9
cmp dword [esp + 0x3c], 0
je 0x100b8438
add edx, dword [esp + 0x4c]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x3c], edi
jne 0x100b8425
mov edx, dword [esp + 0xa0]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b848e
cmp dword [edi + 0x1c], 0x10
jb 0x100b846f
mov eax, dword [edi + 8]
jmp 0x100b8472
lea eax, [edi + 8]
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b849d
cmp edi, dword [esp + 0x3c]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b845b
add edi, 0x20
lea ecx, [esp + 0x140]
call fcn.100026e0
mov dword [0x10185014], edi
mov ecx, dword [0x1017f5c0]
vmovapd xmm2, xmmword [esp + 0x50]
jmp 0x100b7997
mov eax, dword [esp + 0x40]
and eax, 0xfffffffc
mov dword [esp + 0x84], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x4c]
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 + 0x84], edx
jne 0x100b84dc
cmp dword [esp + 0x3c], 0
je 0x100b853b
add edx, dword [esp + 0x4c]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x3c], edi
jne 0x100b8528
mov edx, dword [esp + 0xa0]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x40]
cmp eax, dword [edi + 0x18]
jne 0x100b8591
cmp dword [edi + 0x1c], 0x10
jb 0x100b8572
mov eax, dword [edi + 8]
jmp 0x100b8575
lea eax, [edi + 8]
mov ecx, dword [esp + 0x40]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x4c]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b85a0
cmp edi, dword [esp + 0x3c]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b855e
add edi, 0x20
lea ecx, [esp + 0xf8]
call fcn.100026e0
mov dword [0x10184e80], edi
vmovss xmm6, dword [esp + 0x8c]
vmovss xmm0, dword [esp + 0x88]
jmp 0x100b7baf
mov ecx, 0x811c9dc5
jmp 0x100b8645
mov eax, dword [esp + 0x70]
and eax, 0xfffffffc
mov dword [esp + 0x40], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp + 0x50]
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 0x100b85e9
cmp dword [esp + 0x60], 0
je 0x100b8645
add edx, dword [esp + 0x50]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x60], edi
jne 0x100b8632
mov edx, dword [esp + 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b86bc
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x70]
cmp eax, dword [edi + 0x18]
jne 0x100b8694
cmp dword [edi + 0x1c], 0x10
jb 0x100b8675
mov eax, dword [edi + 8]
jmp 0x100b8678
lea eax, [edi + 8]
mov ecx, dword [esp + 0x70]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x50]
mov dword [esp], eax
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x100b869f
cmp edi, dword [esp + 0x60]
je 0x100b86bc
mov edi, dword [edi + 4]
jmp 0x100b8661
add edi, 0x20
lea ecx, [esp + 0x140]
call fcn.100026e0
mov dword [0x1017f738], edi
mov edx, dword [ebp + 8]
jmp 0x100b7ce0
mov dword [esp], 0x1016ba76
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
int3