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

Disassembly:
mov rdx, qword [rcx + 0x10]
mov r9, rcx
add rdx, 1
mov r8, qword [rcx + 0x38]
vxorps xmm0, xmm0, xmm0
js 0x1800c148c
vcvtsi2ss xmm0, xmm0, rdx
jmp 0x1800c14a1
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vdivss xmm0, xmm0, dword [rcx]
vxorps xmm1, xmm1, xmm1
vroundss xmm1, xmm1, xmm0, 2
vmovss xmm0, dword [0x18020a620]
xor ecx, ecx
vcomiss xmm1, xmm0
jb 0x1800c14d6
vsubss xmm1, xmm1, xmm0
vcomiss xmm1, xmm0
jae 0x1800c14d6
movabs rax, 0x8000000000000000
mov rcx, rax
vcvttss2si rax, xmm1
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp r8, rcx
jae 0x1800c1508
cmp r8, 0x200
jae 0x1800c1505
lea r8, [r8*8]
cmp r8, rcx
jae 0x1800c1508
mov r8, rcx
mov rdx, r8
mov rcx, r9
jmp fcn.1800c1520
Function at 0x1800c1520
Capabilities:
Hash data using fnv

Disassembly:
push rsi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov r9d, 1
bsr r8, rax
mov rsi, rcx
shlx rax, r9, r8
cmp rdx, rax
jbe 0x1800c1555
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 8]
or rax, r9
bsr rcx, rax
mov qword [rsp + 0x40], rdi
mov r8, rbx
inc ecx
mov qword [rsp + 0x48], r14
shlx rdi, r9, rcx
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.180091ef0
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1800c16a4
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rbp
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, qword [rsi + 0x30]
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1800c161d
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800c1693
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x1800c165a
mov r10, qword [rdx]
cmp r10, rax
je 0x1800c1654
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1800c1693
cmp r9, rdx
je 0x1800c166f
nop
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x1800c16b9
cmp r9, rdx
jne 0x1800c1660
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
jne 0x1800c15d0
mov rbp, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1800c1693
Function at 0x1800c3130
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rbx, qword [rsp + 0x70]
mov rbp, rcx
lea rcx, [r8 - 1]
mov qword [rsp + 0x58], r13
mov r14, rcx
mov qword [rsp + 0x50], rcx
sar r14, 1
mov r15, r9
mov r13, r8
mov rdi, rdx
mov r12, rdx
cmp rdx, r14
jge 0x1800c31d0
nop dword [rax]
nop word [rax + rax]
lea rsi, [rdx + rdx]
mov rcx, rbx
lea rdx, [rsi + 2]
shl rdx, 4
add rdx, rbp
lea r8, [rdx - 0x10]
call fcn.1800c2900
add rdi, rdi
movzx edx, al
xor rdx, 1
inc rdx
add rdx, rsi
mov rcx, rdx
add rcx, rcx
mov rax, qword [rbp + rcx*8]
mov qword [rbp + rdi*8], rax
mov eax, dword [rbp + rcx*8 + 8]
mov dword [rbp + rdi*8 + 8], eax
mov rdi, rdx
cmp rdx, r14
jl 0x1800c3180
mov rcx, qword [rsp + 0x50]
jne 0x1800c31f4
test r13b, 1
jne 0x1800c31f4
add r13, r13
add rdi, rdi
mov rax, qword [rbp + r13*8 - 0x10]
mov qword [rbp + rdi*8], rax
mov eax, dword [rbp + r13*8 - 8]
mov dword [rbp + rdi*8 + 8], eax
mov rdi, rcx
mov r13, qword [rsp + 0x58]
cmp r12, rdi
jge 0x1800c323e
nop
lea rsi, [rdi - 1]
mov r8, r15
sar rsi, 1
mov rcx, rbx
mov r14, rsi
shl r14, 4
add r14, rbp
mov rdx, r14
call fcn.1800c2900
test al, al
je 0x1800c323e
mov rax, qword [r14]
add rdi, rdi
mov qword [rbp + rdi*8], rax
mov eax, dword [r14 + 8]
mov dword [rbp + rdi*8 + 8], eax
mov rdi, rsi
cmp r12, rsi
jl 0x1800c3200
mov rax, qword [r15]
add rdi, rdi
mov rbx, qword [rsp + 0x60]
mov qword [rbp + rdi*8], rax
mov eax, dword [r15 + 8]
mov dword [rbp + rdi*8 + 8], eax
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
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 [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234de0], edx
jle 0x1800c3421
lea rcx, [0x180234de0]
call fcn.180184cfc
cmp dword [0x180234de0], 0xffffffff
jne 0x1800c3421
mov rcx, qword [0x180234b88]
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, 0x47697bc5
je 0x1800c33fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c33a1
jmp 0x1800c340e
lea r8, str.m_flModelScale
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234df4], r11d
lea rcx, [0x180234de0]
call fcn.180184c90
movsxd rax, dword [0x180234df4]
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 [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e04], edx
jle 0x1800c3521
lea rcx, [0x180234e04]
call fcn.180184cfc
cmp dword [0x180234e04], 0xffffffff
jne 0x1800c3521
mov rcx, qword [0x180234b88]
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, 0xc262c48c
je 0x1800c34fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c34a1
jmp 0x1800c350e
lea r8, str.m_iHealth
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234e18], r11d
lea rcx, [0x180234e04]
call fcn.180184c90
movsxd rax, dword [0x180234e18]
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 [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e14], edx
jle 0x1800c3621
lea rcx, [0x180234e14]
call fcn.180184cfc
cmp dword [0x180234e14], 0xffffffff
jne 0x1800c3621
mov rcx, qword [0x180234b88]
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, 0xc262c48c
je 0x1800c35fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c35a1
jmp 0x1800c360e
lea r8, str.m_iMaxHealth
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234dec], r11d
lea rcx, [0x180234e14]
call fcn.180184c90
movsxd rax, dword [0x180234dec]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3640
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234df8], edx
jle 0x1800c3721
lea rcx, [0x180234df8]
call fcn.180184cfc
cmp dword [0x180234df8], 0xffffffff
jne 0x1800c3721
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c370e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c36b2
mov rdx, r11
test rax, rax
je 0x1800c36f0
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 0x1800c36d0
cmp r9d, 0xc262c48c
je 0x1800c36fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c36a1
jmp 0x1800c370e
lea r8, str.m_bHasSapper
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234de8], r11d
lea rcx, [0x180234df8]
call fcn.180184c90
movsxd rax, dword [0x180234de8]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234df0], edx
jle 0x1800c3821
lea rcx, [0x180234df0]
call fcn.180184cfc
cmp dword [0x180234df0], 0xffffffff
jne 0x1800c3821
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c380e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c37b2
mov rdx, r11
test rax, rax
je 0x1800c37f0
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 0x1800c37d0
cmp r9d, 0xc262c48c
je 0x1800c37fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c37a1
jmp 0x1800c380e
lea r8, str.m_bMiniBuilding
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234dd8], r11d
lea rcx, [0x180234df0]
call fcn.180184c90
movsxd rax, dword [0x180234dd8]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3840
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e08], edx
jle 0x1800c3921
lea rcx, [0x180234e08]
call fcn.180184cfc
cmp dword [0x180234e08], 0xffffffff
jne 0x1800c3921
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c390e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c38b2
mov rdx, r11
test rax, rax
je 0x1800c38f0
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 0x1800c38d0
cmp r9d, 0xc262c48c
je 0x1800c38fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c38a1
jmp 0x1800c390e
lea r8, str.m_iUpgradeLevel
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234dfc], r11d
lea rcx, [0x180234e08]
call fcn.180184c90
movsxd rax, dword [0x180234dfc]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234ddc], edx
jle 0x1800c3a27
lea rcx, [0x180234ddc]
call fcn.180184cfc
cmp dword [0x180234ddc], 0xffffffff
jne 0x1800c3a27
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c3a0e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c39b2
mov rdx, r11
test rax, rax
je 0x1800c39f0
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 0x1800c39d0
cmp r9d, 0xc262c48c
je 0x1800c39fb
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c39a1
jmp 0x1800c3a0e
lea r8, str.m_iUpgradeLevel
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
lea eax, [r11 - 0x154]
mov dword [0x180234e34], eax
lea rcx, [0x180234ddc]
call fcn.180184c90
movsxd rax, dword [0x180234e34]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c3a40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
mov r15, r9
mov rsi, r8
mov rdi, rdx
mov r14, rcx
call fcn.1800c3740
movzx ebp, byte [rax]
mov r10d, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rbx, qword [rax + r10*8]
add rbx, rcx
mov eax, dword [rbx]
cmp dword [0x180234e24], eax
jle 0x1800c3b31
lea rcx, [0x180234e24]
call fcn.180184cfc
cmp dword [0x180234e24], 0xffffffff
jne 0x1800c3b31
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800c3b1d
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800c3ad5
xor edx, edx
test rcx, rcx
je 0x1800c3b14
nop word [rax + rax]
movsx eax, byte [r8 + rdx]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800c3af0
cmp r9d, 0x80133484
je 0x1800c3b94
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c3ac4
xor eax, eax
mov dword [0x180234e38], eax
lea rcx, [0x180234e24]
call fcn.180184c90
movsxd rax, dword [0x180234e38]
mov ecx, dword [rax + r14]
mov dword [rdi], ecx
mov rcx, r14
call fcn.1800c3840
cmp dword [rax], 1
je 0x1800c3b5d
mov rcx, r14
call fcn.1800c3740
cmp byte [rax], 0
mov eax, 0xc8
je 0x1800c3b62
mov eax, 0x96
mov dword [rsi], eax
test bpl, bpl
je 0x1800c3ba9
mov dword [r15], 0
mov rax, qword [rsp + 0x60]
mov dword [rax], 0
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
lea r8, str.m_iAmmoShells
mov rdx, qword [r10 + 0x18]
call fcn.180184890
jmp 0x1800c3b1f
mov eax, dword [rbx]
cmp dword [0x180234e20], eax
jle 0x1800c3c4d
lea rcx, [0x180234e20]
call fcn.180184cfc
cmp dword [0x180234e20], 0xffffffff
jne 0x1800c3c4d
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800c3c39
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], 0
jne 0x1800c3bf6
xor edx, edx
test rax, rax
je 0x1800c3c30
nop word [rax + rax]
movsx ecx, byte [r8 + rdx]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800c3c10
cmp r9d, 0x80133484
je 0x1800c3c7c
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c3be5
xor eax, eax
mov dword [0x180234e1c], eax
lea rcx, [0x180234e20]
call fcn.180184c90
movsxd rax, dword [0x180234e1c]
mov ecx, dword [rax + r14]
mov dword [r15], ecx
mov rcx, r14
call fcn.1800c3840
cmp dword [rax], 3
jl 0x1800c3b70
mov rax, qword [rsp + 0x60]
mov dword [rax], 0x14
jmp 0x1800c3b7b
lea r8, str.m_iAmmoRockets
mov rdx, qword [r10 + 0x18]
call fcn.180184890
jmp 0x1800c3c3b
Function at 0x1800c3c90
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e0c], edx
jle 0x1800c3d71
lea rcx, [0x180234e0c]
call fcn.180184cfc
cmp dword [0x180234e0c], 0xffffffff
jne 0x1800c3d71
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c3d5e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c3d02
mov rdx, r11
test rax, rax
je 0x1800c3d40
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 0x1800c3d20
cmp r9d, 0x7a1c884e
je 0x1800c3d4b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c3cf1
jmp 0x1800c3d5e
lea r8, str.m_hGroundEntity
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234de4], r11d
lea rcx, [0x180234e0c]
call fcn.180184c90
movsxd rax, dword [0x180234de4]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e00], edx
jle 0x1800c3e74
lea rcx, [0x180234e00]
call fcn.180184cfc
cmp dword [0x180234e00], 0xffffffff
jne 0x1800c3e74
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800c3e5e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800c3e02
mov rdx, r11
test rax, rax
je 0x1800c3e40
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 0x1800c3e20
cmp r9d, 0x24615a25
je 0x1800c3e4b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800c3df1
jmp 0x1800c3e5e
lea r8, str.m_nInspectStage
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
lea eax, [r11 + 0x1c]
mov dword [0x180234e28], eax
lea rcx, [0x180234e00]
call fcn.180184c90
movsxd rax, dword [0x180234e28]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800c9ca0
Capabilities:
Hash data using fnv

Disassembly:
mov rdx, qword [rcx + 0x10]
mov r9, rcx
add rdx, 1
mov r8, qword [rcx + 0x38]
vxorps xmm0, xmm0, xmm0
js 0x1800c9cbc
vcvtsi2ss xmm0, xmm0, rdx
jmp 0x1800c9cd1
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
vcvtsi2ss xmm0, xmm0, rax
vaddss xmm0, xmm0, xmm0
vdivss xmm0, xmm0, dword [rcx]
vxorps xmm1, xmm1, xmm1
vroundss xmm1, xmm1, xmm0, 2
vmovss xmm0, dword [0x18020a620]
xor ecx, ecx
vcomiss xmm1, xmm0
jb 0x1800c9d06
vsubss xmm1, xmm1, xmm0
vcomiss xmm1, xmm0
jae 0x1800c9d06
movabs rax, 0x8000000000000000
mov rcx, rax
vcvttss2si rax, xmm1
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp r8, rcx
jae 0x1800c9d38
cmp r8, 0x200
jae 0x1800c9d35
lea r8, [r8*8]
cmp r8, rcx
jae 0x1800c9d38
mov r8, rcx
mov rdx, r8
mov rcx, r9
jmp fcn.1800c9d70
Function at 0x1800c9d70
Capabilities:
Hash data using fnv

Disassembly:
push rsi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov r9d, 1
bsr r8, rax
mov rsi, rcx
shlx rax, r9, r8
cmp rdx, rax
jbe 0x1800c9da5
lea rcx, str.invalid_hash_bucket_count
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 8]
or rax, r9
bsr rcx, rax
mov qword [rsp + 0x40], rdi
mov r8, rbx
inc ecx
mov qword [rsp + 0x48], r14
shlx rdi, r9, rcx
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.180091ef0
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1800c9f24
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax]
nop word [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r9d, byte [rax + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rcx, qword [rcx]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x12]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x13]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x14]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x15]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x16]
imul r9, rdi
xor r9, rdx
movzx edx, byte [rax + 0x17]
imul r9, rdi
xor r9, rdx
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1800c9e9c
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800c9f13
mov rdx, qword [r11 + 8]
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x1800c9ed9
mov r10, qword [rdx]
cmp r10, rax
je 0x1800c9ed3
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1800c9f13
cmp r9, rdx
je 0x1800c9eef
nop
mov rdx, qword [rdx + 8]
cmp r8, qword [rdx + 0x10]
je 0x1800c9f39
cmp r9, rdx
jne 0x1800c9ee0
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
jne 0x1800c9e20
mov rbp, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1800c9f13
Function at 0x1800cb1d0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e3c], edx
jle 0x1800cb2b1
lea rcx, [0x180234e3c]
call fcn.180184cfc
cmp dword [0x180234e3c], 0xffffffff
jne 0x1800cb2b1
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800cb29e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800cb242
mov rdx, r11
test rax, rax
je 0x1800cb280
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 0x1800cb260
cmp r9d, 0xd134a6b7
je 0x1800cb28b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800cb231
jmp 0x1800cb29e
lea r8, str.m_iClip1
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234e44], r11d
lea rcx, [0x180234e3c]
call fcn.180184c90
movsxd rax, dword [0x180234e44]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18023328c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180234e48], edx
jle 0x1800cb3b1
lea rcx, [0x180234e48]
call fcn.180184cfc
cmp dword [0x180234e48], 0xffffffff
jne 0x1800cb3b1
mov rcx, qword [0x180234b88]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800cb39e
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800cb342
mov rdx, r11
test rax, rax
je 0x1800cb380
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 0x1800cb360
cmp r9d, 0x7723b200
je 0x1800cb38b
mov r10, qword [r10 + 0x20]
test r10, r10
jne 0x1800cb331
jmp 0x1800cb39e
lea r8, str.m_flChargeBeginTime
mov rdx, qword [r10 + 0x18]
call fcn.180184890
mov r11d, eax
mov dword [0x180234e50], r11d
lea rcx, [0x180234e48]
call fcn.180184c90
movsxd rax, dword [0x180234e50]
add rax, rbx
add rsp, 0x20
pop rbx
ret