joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1800beb50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x40
vmovaps xmmword [rsp + 0x30], xmm6
vmovaps xmmword [rsp + 0x20], xmm7
mov rdi, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov esi, 4
mov rbx, qword [rax + rdx*8]
mov eax, dword [rbx + rsi]
cmp dword [0x180243fe4], eax
jle 0x1800bebc6
lea rcx, [0x180243fe4]
call fcn.1801905cc
cmp dword [0x180243fe4], 0xffffffff
jne 0x1800bebc6
mov rcx, qword [0x180243ea0]
mov rax, qword [rcx]
lea rdx, str.tf_spy_invis_time
call qword [rax + 0x68]
mov qword [0x180243fc0], rax
lea rcx, [0x180243fe4]
call fcn.180190560
vmovss xmm7, dword [0x180218a50]
mov rax, qword [0x180243fc0]
test rax, rax
je 0x1800bebe5
mov rax, qword [rax + 0x38]
vmovss xmm6, dword [rax + 0x54]
jmp 0x1800bebe9
vmovaps xmm6, xmm7
mov eax, dword [rbx + rsi]
cmp dword [0x180243fe8], eax
jle 0x1800becb1
lea rcx, [0x180243fe8]
call fcn.1801905cc
cmp dword [0x180243fe8], 0xffffffff
jne 0x1800becb1
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800bec9e
nop dword [rax]
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], r11b
jne 0x1800bec41
mov rdx, r11
test rcx, rcx
je 0x1800bec80
nop dword [rax]
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800bec60
cmp r9d, 0x7c5cc931
je 0x1800bec8b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800bec30
jmp 0x1800bec9e
lea r8, str.m_flInvisChangeCompleteTime
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180243fec], r11d
lea rcx, [0x180243fe8]
call fcn.180190560
movsxd rax, dword [0x180243fec]
vmovss xmm0, dword [rax + rdi]
mov rax, qword [0x180243f18]
vsubss xmm1, xmm0, dword [rax + 0xc]
vxorps xmm3, xmm3, xmm3
vucomiss xmm6, xmm3
jp 0x1800becea
jne 0x1800becea
vcmpless xmm1, xmm3, xmm1
vmovss xmm0, dword [0x180218c08]
vblendvps xmm0, xmm3, xmm0, xmm1
jmp 0x1800bed37
vsubss xmm1, xmm1, xmm6
vsubss xmm0, xmm3, xmm6
vdivss xmm2, xmm1, xmm0
vmovss dword [rsp + 0x68], xmm2
vmovss dword [rsp + 0x70], xmm7
vmovss dword [rsp + 0x60], xmm3
lea rcx, [rsp + 0x60]
lea rax, [rsp + 0x68]
vcomiss xmm3, xmm2
cmovbe rcx, rax
lea rax, [rsp + 0x70]
vcomiss xmm2, xmm7
cmovbe rax, rcx
vmovss xmm0, dword [rax]
vmulss xmm1, xmm0, dword [0x180218c08]
vaddss xmm0, xmm1, xmm3
vmovaps xmm6, xmmword [rsp + 0x30]
vmovaps xmm7, xmmword [rsp + 0x20]
add rsp, 0x40
pop rdi
pop rsi
pop rbx
ret
Function at 0x1800c1870
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rbx, qword [rsp + 0x70]
lea r14, [r8 - 1]
sar r14, 1
mov rbp, r9
mov r13, r8
mov r10, rdx
mov rdi, rcx
mov r15, rdx
mov rsi, rdx
cmp rdx, r14
jge 0x1800c1920
nop
mov edx, dword [rbx]
add rsi, rsi
imul rcx, rsi, 0x1858
test edx, edx
je 0x1800c18dd
cmp edx, 1
je 0x1800c18c9
xor al, al
jmp 0x1800c18f2
vmovss xmm0, dword [rcx + rdi + 0x1880]
vcomiss xmm0, dword [rcx + rdi + 0x30d8]
jmp 0x1800c18ef
vmovss xmm0, dword [rcx + rdi + 0x187c]
vcomiss xmm0, dword [rcx + rdi + 0x30d4]
seta al
movzx eax, al
xor rax, 1
inc rax
add rsi, rax
imul rcx, r10, 0x1858
imul rdx, rsi, 0x1858
add rcx, rdi
add rdx, rdi
call fcn.1800c0860
mov r10, rsi
cmp rsi, r14
jl 0x1800c18b0
cmp rsi, r14
jne 0x1800c194f
test r13b, 1
jne 0x1800c194f
imul rdx, r13, 0x1858
imul rcx, r10, 0x1858
add rdx, 0xffffffffffffe7a8
add rdx, rdi
add rcx, rdi
call fcn.1800c0860
lea r10, [r13 - 1]
cmp r15, r10
jge 0x1800c19b0
nop dword [rax]
nop dword [rax + rax]
mov ecx, dword [rbx]
lea rsi, [r10 - 1]
sar rsi, 1
imul rdx, rsi, 0x1858
add rdx, rdi
test ecx, ecx
je 0x1800c1988
cmp ecx, 1
jne 0x1800c19b0
vmovss xmm0, dword [rbp + 0x28]
vcomiss xmm0, dword [rdx + 0x28]
jmp 0x1800c1992
vmovss xmm0, dword [rbp + 0x24]
vcomiss xmm0, dword [rdx + 0x24]
seta al
test al, al
je 0x1800c19b0
imul rcx, r10, 0x1858
add rcx, rdi
call fcn.1800c0860
mov r10, rsi
cmp r15, rsi
jl 0x1800c1960
imul rcx, r10, 0x1858
mov rdx, rbp
add rcx, rdi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
jmp fcn.1800c0860

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244060], edx
jle 0x1800c1f91
lea rcx, [0x180244060]
call fcn.1801905cc
cmp dword [0x180244060], 0xffffffff
jne 0x1800c1f91
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c1f7e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c1f22
mov rdx, r11
test rax, rax
je 0x1800c1f60
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c1f40
cmp r9d, 0x9dc483b8
je 0x1800c1f6b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c1f11
jmp 0x1800c1f7e
lea r8, str.m_flSimulationTime
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244088], r11d
lea rcx, [0x180244060]
call fcn.180190560
movsxd rax, dword [0x180244088]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c2680
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244054], edx
jle 0x1800c2761
lea rcx, [0x180244054]
call fcn.1801905cc
cmp dword [0x180244054], 0xffffffff
jne 0x1800c2761
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c274e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c26f2
mov rdx, r11
test rax, rax
je 0x1800c2730
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2710
cmp r9d, 0x47697bc5
je 0x1800c273b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c26e1
jmp 0x1800c274e
lea r8, str.m_nHitboxSet
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x18024408c], r11d
lea rcx, [0x180244054]
call fcn.180190560
movsxd rax, dword [0x18024408c]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x1802440b8], edx
jle 0x1800c2a31
lea rcx, [0x1802440b8]
call fcn.1801905cc
cmp dword [0x1802440b8], 0xffffffff
jne 0x1800c2a31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2a1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c29c2
mov rdx, r11
test rax, rax
je 0x1800c2a00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c29e0
cmp r9d, 0xb6acd98f
je 0x1800c2a0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c29b1
jmp 0x1800c2a1e
lea r8, str.m_hThrower
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244048], r11d
lea rcx, [0x1802440b8]
call fcn.180190560
movsxd rax, dword [0x180244048]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c2a50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x1802440ac], edx
jle 0x1800c2b31
lea rcx, [0x1802440ac]
call fcn.1801905cc
cmp dword [0x1802440ac], 0xffffffff
jne 0x1800c2b31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2b1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2ac2
mov rdx, r11
test rax, rax
je 0x1800c2b00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2ae0
cmp r9d, 0x941d2eb9
je 0x1800c2b0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2ab1
jmp 0x1800c2b1e
lea r8, str.m_bTouched
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x18024409c], r11d
lea rcx, [0x1802440ac]
call fcn.180190560
movsxd rax, dword [0x18024409c]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244094], edx
jle 0x1800c2c31
lea rcx, [0x180244094]
call fcn.1801905cc
cmp dword [0x180244094], 0xffffffff
jne 0x1800c2c31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2c1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2bc2
mov rdx, r11
test rax, rax
je 0x1800c2c00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2be0
cmp r9d, 0x941d2eb9
je 0x1800c2c0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2bb1
jmp 0x1800c2c1e
lea r8, str.m_iType
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x18024407c], r11d
lea rcx, [0x180244094]
call fcn.180190560
movsxd rax, dword [0x18024407c]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c2c50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244098], edx
jle 0x1800c2d31
lea rcx, [0x180244098]
call fcn.1801905cc
cmp dword [0x180244098], 0xffffffff
jne 0x1800c2d31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2d1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2cc2
mov rdx, r11
test rax, rax
je 0x1800c2d00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2ce0
cmp r9d, 0x7a1c884e
je 0x1800c2d0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2cb1
jmp 0x1800c2d1e
lea r8, str.m_nTickBase
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244068], r11d
lea rcx, [0x180244098]
call fcn.180190560
movsxd rax, dword [0x180244068]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244074], edx
jle 0x1800c2e31
lea rcx, [0x180244074]
call fcn.1801905cc
cmp dword [0x180244074], 0xffffffff
jne 0x1800c2e31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2e1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2dc2
mov rdx, r11
test rax, rax
je 0x1800c2e00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2de0
cmp r9d, 0x7a1c884e
je 0x1800c2e0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2db1
jmp 0x1800c2e1e
lea r8, str.m_iHealth
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244050], r11d
lea rcx, [0x180244074]
call fcn.180190560
movsxd rax, dword [0x180244050]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c2e50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x1802440c0], edx
jle 0x1800c2f31
lea rcx, [0x1802440c0]
call fcn.1801905cc
cmp dword [0x1802440c0], 0xffffffff
jne 0x1800c2f31
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c2f1e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2ec2
mov rdx, r11
test rax, rax
je 0x1800c2f00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2ee0
cmp r9d, 0x24615a25
je 0x1800c2f0b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2eb1
jmp 0x1800c2f1e
lea r8, str.m_flLastFireTime
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x1802440b0], r11d
lea rcx, [0x1802440c0]
call fcn.180190560
movsxd rax, dword [0x1802440b0]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244070], edx
jle 0x1800c3031
lea rcx, [0x180244070]
call fcn.1801905cc
cmp dword [0x180244070], 0xffffffff
jne 0x1800c3031
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c301e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c2fc2
mov rdx, r11
test rax, rax
je 0x1800c3000
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c2fe0
cmp r9d, 0xcd91f684
je 0x1800c300b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c2fb1
jmp 0x1800c301e
lea r8, str.m_iItemDefinitionIndex
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244078], r11d
lea rcx, [0x180244070]
call fcn.180190560
movsxd rax, dword [0x180244078]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3050
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x18024404c], edx
jle 0x1800c3134
lea rcx, [0x18024404c]
call fcn.1801905cc
cmp dword [0x18024404c], 0xffffffff
jne 0x1800c3134
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c311e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c30c2
mov rdx, r11
test rax, rax
je 0x1800c3100
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c30e0
cmp r9d, 0x24615a25
je 0x1800c310b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c30b1
jmp 0x1800c311e
lea r8, str.m_flEffectBarRegenTime
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
lea eax, [r11 + 0x10]
mov dword [0x1802440a0], eax
lea rcx, [0x18024404c]
call fcn.180190560
movsxd rax, dword [0x1802440a0]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3150
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
mov rsi, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov rbx, qword [rax + rdx*8]
mov r14d, 4
xor edi, edi
mov eax, dword [r14 + rbx]
cmp dword [0x1802440bc], eax
jle 0x1800c3234
lea rcx, [0x1802440bc]
call fcn.1801905cc
cmp dword [0x1802440bc], 0xffffffff
jne 0x1800c3234
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800c321d
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800c31d2
mov rdx, rdi
test rcx, rcx
je 0x1800c3214
nop dword [rax]
nop dword [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800c31f0
cmp r9d, 0xd134a6b7
je 0x1800c32db
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c31c1
mov eax, edi
add eax, 0xc
mov dword [0x18024405c], eax
lea rcx, [0x1802440bc]
call fcn.180190560
movsxd rax, dword [0x18024405c]
cmp byte [rax + rsi], 0
jne 0x1800c3325
mov eax, dword [r14 + rbx]
cmp dword [0x180244058], eax
jle 0x1800c3314
lea rcx, [0x180244058]
call fcn.1801905cc
cmp dword [0x180244058], 0xffffffff
jne 0x1800c3314
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800c3302
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], 0
jne 0x1800c3294
mov rdx, rdi
test rax, rax
je 0x1800c32d0
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c32b0
cmp r9d, 0x24615a25
je 0x1800c32f0
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c3283
jmp 0x1800c3302
lea r8, str.m_flNextPrimaryAttack
mov rdx, qword [r10 + 0x18]
call fcn.180190160
jmp 0x1800c321f
lea r8, str.m_iReloadMode
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov edi, eax
mov dword [0x18024406c], edi
lea rcx, [0x180244058]
call fcn.180190560
movsxd rax, dword [0x18024406c]
cmp dword [rax + rsi], 0
jne 0x1800c3325
xor al, al
jmp 0x1800c3327
mov al, 1
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
Function at 0x1800c3340
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244084], edx
jle 0x1800c3421
lea rcx, [0x180244084]
call fcn.1801905cc
cmp dword [0x180244084], 0xffffffff
jne 0x1800c3421
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c340e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c33b2
mov rdx, r11
test rax, rax
je 0x1800c33f0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c33d0
cmp r9d, 0x3c8b4007
je 0x1800c33fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c33a1
jmp 0x1800c340e
lea r8, str.m_iWeaponState
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x1802440a8], r11d
lea rcx, [0x180244084]
call fcn.180190560
movsxd rax, dword [0x1802440a8]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180244090], edx
jle 0x1800c3521
lea rcx, [0x180244090]
call fcn.1801905cc
cmp dword [0x180244090], 0xffffffff
jne 0x1800c3521
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c350e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c34b2
mov rdx, r11
test rax, rax
je 0x1800c34f0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c34d0
cmp r9d, 0xdd43c60f
je 0x1800c34fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c34a1
jmp 0x1800c350e
lea r8, str.m_flChargedDamage
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x1802440b4], r11d
lea rcx, [0x180244090]
call fcn.180190560
movsxd rax, dword [0x1802440b4]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3540
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18024256c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x1802440a4], edx
jle 0x1800c3621
lea rcx, [0x1802440a4]
call fcn.1801905cc
cmp dword [0x1802440a4], 0xffffffff
jne 0x1800c3621
mov rcx, qword [0x180243e98]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c360e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c35b2
mov rdx, r11
test rax, rax
je 0x1800c35f0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c35d0
cmp r9d, 0x7c5cc931
je 0x1800c35fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c35a1
jmp 0x1800c360e
lea r8, str.m_vecOrigin
mov rdx, qword [r10 + 0x18]
call fcn.180190160
mov r11d, eax
mov dword [0x180244080], r11d
lea rcx, [0x1802440a4]
call fcn.180190560
movsxd rax, dword [0x180244080]
add rax, rbx
add rsp, 0x20
pop rbx
ret