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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x54
mov ebx, ecx
mov esi, dword [ebp + 0x14]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x1c], esp
mov dword [ebp - 0x10], 0xffffffff
lea eax, [ebp - 0x18]
mov dword [ebp - 0x14], 0x100b1c60
mov ecx, dword fs:[0]
mov dword [ebp - 0x18], ecx
mov dword fs:[0], eax
vmovss xmm0, dword [edx]
vmovss xmm1, dword [edx + 4]
vmulss xmm1, xmm1, dword [esi + 4]
vfmadd231ss xmm1, xmm0, dword [esi]
vmovss xmm5, dword [ebp + 0x10]
vmovss xmm2, dword [edx + 8]
vfmadd132ss xmm2, xmm1, dword [esi + 8]
vsubss xmm4, xmm5, xmm2
vxorps xmm3, xmm3, xmm3
vucomiss xmm3, xmm4
jae 0x100a8ab6
mov eax, dword [ebp + 8]
mov cl, 1
test byte [eax + 0x30], 4
jne 0x100a8807
mov eax, dword [0x1012d35c]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [0x10132ce8]
test al, 1
je 0x100a8b39
mov edi, dword [0x10132ce4]
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x28]
cmp byte [eax + edi], 0
jne 0x100a8807
mov eax, dword [0x1012d35c]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [0x1012d48c]
test al, 1
je 0x100a8d4a
mov edi, dword [0x1012d488]
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x28]
test byte [eax + edi], 2
jne 0x100a8807
mov al, 1
mov dword [ebp - 0x28], eax
xor ecx, ecx
mov eax, dword [ebp + 8]
test byte [eax + 0x32], 2
jne 0x100a880e
mov dword [ebp - 0x28], 0
vmovss xmm0, dword [0x100fe438]
vmaxss xmm5, xmm0, xmm5
mov eax, dword [0x1012d320]
mov edi, dword [eax + 0x1c8]
test edi, edi
je 0x100a88f4
vmovss dword [ebp - 0x24], xmm5
mov dword [ebp - 0x20], ecx
vmovss dword [ebp - 0x2c], xmm2
vmovss dword [ebp - 0x30], xmm4
mov ecx, dword [eax + 0x124]
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x10], 0xffffffff
call eax
test eax, eax
je 0x100a8900
mov dword [ebp - 0x3c], edi
mov eax, dword [0x1012d47c]
test al, 1
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov ecx, dword [ebp - 0x20]
vmovss xmm5, dword [ebp - 0x24]
je 0x100a8ba1
mov edi, dword [0x1012d478]
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x3c]
movzx eax, word [eax + edi]
mov dword [ebp - 0x38], eax
mov eax, dword [0x10132cf0]
test al, 1
je 0x100a8bff
mov edi, dword [0x10132cec]
mov eax, dword [edi + 4]
mov edi, dword [ebp - 0x3c]
cmp dword [eax + edi], 0
jle 0x100a8925
mov edi, dword [ebp - 0x38]
lea eax, [edi - 0xb]
cmp eax, 0x1d
ja 0x100a88ce
mov ecx, 0x38000001
bt ecx, eax
mov ecx, dword [ebp - 0x20]
jb 0x100a88d6
add edi, 0xfffffff8
cmp edi, 2
jae 0x100a8925
vmovss xmm0, dword [ebx + 0x48]
vmulss xmm0, xmm0, dword [0x100fe41c]
vmovss xmm1, dword [0x100fe43c]
vucomiss xmm1, xmm0
seta al
jmp 0x100a8927
xor eax, eax
vmovaps xmm0, xmm5
test cl, cl
jne 0x100a8966
jmp 0x100a897a
xor eax, eax
vmovss xmm5, dword [ebp - 0x24]
vmovaps xmm0, xmm5
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov ecx, dword [ebp - 0x20]
test cl, cl
jne 0x100a8966
jmp 0x100a897a
xor eax, eax
vmovss xmm0, dword [ebx + 0x48]
vdivss xmm0, xmm0, dword [0x100fe438]
vminss xmm0, xmm0, dword [0x100f54d0]
vmulss xmm0, xmm5, xmm0
test al, al
je 0x100a8948
vmovaps xmm5, xmm0
vmovaps xmm1, xmm5
cmp byte [ebp - 0x28], 0
jne 0x100a89ea
vmovaps xmm1, xmm0
test cl, cl
je 0x100a89f2
test cl, cl
je 0x100a897a
vmovss xmm1, dword [0x100fe418]
test al, al
jne 0x100a8976
vmulss xmm5, xmm5, xmm1
vmulss xmm0, xmm0, xmm1
vmovss xmm1, dword [ebp + 0x18]
cmp byte [ebp - 0x28], 0
je 0x100a8a0b
vmaxss xmm2, xmm3, xmm2
vmovss xmm3, dword [0x100fe41c]
test al, al
jne 0x100a899d
vmulss xmm5, xmm5, xmm3
vmulss xmm0, xmm0, xmm3
vaddss xmm3, xmm0, dword [0x100fe188]
vucomiss xmm3, xmm2
jbe 0x100a8a0b
vinsertps xmm0, xmm2, xmm0, 0x10
vbroadcastss xmm2, xmm3
vsubps xmm0, xmm0, xmm2
vxorps xmm2, xmm2, xmm2
vmaxps xmm0, xmm2, xmm0
vmovshdup xmm2, xmm0
vdivss xmm2, xmm0, xmm2
vmovss xmm0, dword [0x100f54d0]
vsubss xmm2, xmm0, xmm2
vxorps xmm3, xmm3, xmm3
vucomiss xmm2, xmm3
jae 0x100a8a03
vxorps xmm1, xmm1, xmm1
jmp 0x100a8a0b
test cl, cl
jne 0x100a8962
vmovaps xmm5, xmm1
test cl, cl
jne 0x100a8966
jmp 0x100a897a
vminss xmm0, xmm0, xmm2
vmulss xmm1, xmm0, xmm1
mov eax, dword [0x1012d364]
vmulss xmm0, xmm1, dword [eax + 0x20]
mov eax, dword [0x1012d35c]
mov ecx, dword [eax]
mov eax, dword [0x10132cf8]
test al, 1
je 0x100a8ac9
mov edi, dword [0x10132cf4]
vmulss xmm0, xmm5, xmm0
mov eax, dword [edi + 4]
vmulss xmm0, xmm0, dword [eax + ecx]
vminss xmm0, xmm0, xmm4
vmulss xmm1, xmm0, dword [edx + 8]
vmovsd xmm2, qword [edx]
vbroadcastss xmm0, xmm0
vmulps xmm0, xmm2, xmm0
vmovsd xmm2, qword [esi]
vaddps xmm0, xmm0, xmm2
vmovlps qword [esi], xmm0
vaddss xmm1, xmm1, dword [esi + 8]
vmulps xmm2, xmm0, xmm0
vmovshdup xmm2, xmm2
vfmadd231ss xmm2, xmm0, xmm0
vfmadd231ss xmm2, xmm1, xmm1
vcvtss2sd xmm2, xmm2, xmm2
vsqrtsd xmm2, xmm2, xmm2
vcvtsd2ss xmm2, xmm2, xmm2
vmovss dword [esi + 8], xmm1
vxorps xmm3, xmm3, xmm3
vucomiss xmm2, xmm3
jne 0x100a8a91
jnp 0x100a8ab6
vmovss xmm3, dword [ebx + 0x48]
vucomiss xmm2, xmm3
jbe 0x100a8ab6
vdivss xmm2, xmm3, xmm2
vbroadcastss xmm3, xmm2
vmulps xmm0, xmm0, xmm3
vmovlps qword [esi], xmm0
vmulss xmm0, xmm1, xmm2
vmovss dword [esi + 8], xmm0
mov eax, dword [ebp - 0x18]
mov dword fs:[0], eax
add esp, 0x54
pop esi
pop edi
pop ebx
pop ebp
ret 0x14
vmovss dword [ebp - 0x38], xmm0
mov dword [ebp - 0x3c], ecx
vmovss dword [ebp - 0x24], xmm5
vmovss dword [ebp - 0x30], xmm4
mov dword [ebp - 0x34], ebx
or eax, 1
mov dword [0x10132cf8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 8
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x28], ecx
push str.m_surfaceFriction
call fcn.100083b0
mov esi, dword [ebp - 0x4c]
cmp dword [ebp - 0x48], 0x10
jb 0x100a8b14
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x28], eax
test esi, esi
je 0x100a8c5d
mov eax, esi
and eax, 3
mov dword [ebp - 0x20], eax
cmp esi, 4
jae 0x100a8c64
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100a8cad
vmovss dword [ebp - 0x2c], xmm2
vmovss dword [ebp - 0x30], xmm4
mov dword [ebp - 0x34], ebx
or eax, 1
mov dword [0x10132ce8], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_bDucking
call fcn.100083b0
mov esi, dword [ebp - 0x4c]
cmp dword [ebp - 0x48], 0x10
jb 0x100a8b7c
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100a8db2
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100a8db9
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100a8e02
mov dword [ebp - 0x34], ebx
or eax, 1
mov dword [0x1012d47c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x10], 4
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x38], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.100083b0
mov esi, dword [ebp - 0x4c]
cmp dword [ebp - 0x48], 0x10
jb 0x100a8bda
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x38], eax
test esi, esi
je 0x100a8ea2
mov eax, esi
and eax, 3
mov dword [ebp - 0x40], eax
cmp esi, 4
jae 0x100a8eb3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100a8efc
mov dword [ebp - 0x34], ebx
or eax, 1
mov dword [0x10132cf0], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x10], 6
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x40], ecx
push str.CWeaponCSBaseGun__m_zoomLevel
call fcn.100083b0
mov esi, dword [ebp - 0x4c]
cmp dword [ebp - 0x48], 0x10
jb 0x100a8c38
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x40], eax
test esi, esi
je 0x100a8ea9
mov eax, esi
and eax, 3
mov dword [ebp - 0x44], eax
cmp esi, 4
jae 0x100a8f9d
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100a8fe6
mov ecx, 0x811c9dc5
jmp 0x100a8cca
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x28]
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 0x100a8c73
cmp dword [ebp - 0x20], 0
je 0x100a8cca
add edx, dword [ebp - 0x28]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x20], edi
jne 0x100a8cb8
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 0x100a9177
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100a8cfa
cmp edi, ebx
je 0x100a9177
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100a8cea
cmp dword [edi + 0x1c], 0x10
jb 0x100a8d05
mov eax, dword [edi + 8]
jmp 0x100a8d08
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100a8cea
add edi, 0x20
lea ecx, [ebp - 0x5c]
call fcn.100029d0
mov dword [0x10132cf4], edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm5, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x3c]
vmovss xmm0, dword [ebp - 0x38]
jmp 0x100a8a2f
vmovss dword [ebp - 0x2c], xmm2
vmovss dword [ebp - 0x30], xmm4
mov dword [ebp - 0x34], ebx
or eax, 1
mov dword [0x1012d48c], eax
mov eax, dword [0x1012d324]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 2
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x20], ecx
push str.CBasePlayer__m_fFlags
call fcn.100083b0
mov esi, dword [ebp - 0x4c]
cmp dword [ebp - 0x48], 0x10
jb 0x100a8d8d
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x20], eax
test esi, esi
je 0x100a9087
mov eax, esi
and eax, 3
mov dword [ebp - 0x24], eax
cmp esi, 4
jae 0x100a908e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100a90d7
mov ecx, 0x811c9dc5
jmp 0x100a8e1f
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 0x100a8dc8
cmp dword [ebp - 0x24], 0
je 0x100a8e1f
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 0x100a8e0d
mov edx, dword [ebp - 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100a918b
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100a8e4f
cmp edi, ebx
je 0x100a918b
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100a8e3f
cmp dword [edi + 0x1c], 0x10
jb 0x100a8e5a
mov eax, dword [edi + 8]
jmp 0x100a8e5d
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100a8e3f
add edi, 0x20
lea ecx, [ebp - 0x5c]
call fcn.100029d0
mov dword [0x10132ce4], edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov cl, 1
vmovss xmm5, dword [ebp + 0x10]
jmp 0x100a87c2
mov ecx, 0x811c9dc5
jmp 0x100a8f19
mov ecx, 0x811c9dc5
jmp 0x100a9003
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x38]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100a8ec2
cmp dword [ebp - 0x40], 0
je 0x100a8f19
add edx, dword [ebp - 0x38]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x40], edi
jne 0x100a8f07
mov edx, dword [ebp - 0x44]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100a919f
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100a8f49
cmp edi, ebx
je 0x100a919f
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100a8f39
cmp dword [edi + 0x1c], 0x10
jb 0x100a8f54
mov eax, dword [edi + 8]
jmp 0x100a8f57
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100a8f39
add edi, 0x20
lea ecx, [ebp - 0x5c]
call fcn.100029d0
mov dword [0x1012d478], edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov ecx, dword [ebp - 0x20]
vmovss xmm5, dword [ebp - 0x24]
jmp 0x100a888a
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [ebp - 0x40]
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 0x100a8fac
cmp dword [ebp - 0x44], 0
je 0x100a9003
add edx, dword [ebp - 0x40]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [ebp - 0x44], edi
jne 0x100a8ff1
mov edx, dword [ebp - 0x60]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100a91b3
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100a9033
cmp edi, ebx
je 0x100a91b3
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100a9023
cmp dword [edi + 0x1c], 0x10
jb 0x100a903e
mov eax, dword [edi + 8]
jmp 0x100a9041
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x40]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100a9023
add edi, 0x20
lea ecx, [ebp - 0x5c]
call fcn.100029d0
mov dword [0x10132cec], edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov ecx, dword [ebp - 0x20]
vmovss xmm5, dword [ebp - 0x24]
jmp 0x100a88aa
mov ecx, 0x811c9dc5
jmp 0x100a90f4
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 0x100a909d
cmp dword [ebp - 0x24], 0
je 0x100a90f4
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 0x100a90e2
mov edx, dword [ebp - 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100a91c7
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp esi, dword [edi + 0x18]
je 0x100a9124
cmp edi, ebx
je 0x100a91c7
mov edi, dword [edi + 4]
cmp esi, dword [edi + 0x18]
jne 0x100a9114
cmp dword [edi + 0x1c], 0x10
jb 0x100a912f
mov eax, dword [edi + 8]
jmp 0x100a9132
lea eax, [edi + 8]
push esi
push eax
push dword [ebp - 0x20]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100a9114
add edi, 0x20
lea ecx, [ebp - 0x5c]
call fcn.100029d0
mov dword [0x1012d488], edi
mov esi, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp + 0xc]
vmovss xmm4, dword [ebp - 0x30]
vmovss xmm2, dword [ebp - 0x2c]
vxorps xmm3, xmm3, xmm3
mov cl, 1
vmovss xmm5, dword [ebp + 0x10]
jmp 0x100a87eb
mov dword [ebp - 0x10], 9
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 1
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 5
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 7
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
mov dword [ebp - 0x10], 3
push 0x1011ed9d
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop dword [eax + eax]
push ebp
sub esp, 0xc
add ebp, 0xc
lea ecx, [ebp - 0x5c]
call fcn.100029d0
add esp, 0xc
pop ebp
ret