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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c8c], edx
jle 0x1800b385f
lea rcx, [0x180229c8c]
call fcn.18017dd34
cmp dword [0x180229c8c], 0xffffffff
jne 0x1800b385f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b384c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b37f2
mov rdx, r11
test rax, rax
je 0x1800b3830
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3810
cmp r9d, 0xc262c48c
je 0x1800b3839
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b37df
lea r8, str.m_iMaxHealth
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229c64], r11d
lea rcx, [0x180229c8c]
call fcn.18017dcd4
movsxd rax, dword [0x180229c64]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c70], edx
jle 0x1800b394f
lea rcx, [0x180229c70]
call fcn.18017dd34
cmp dword [0x180229c70], 0xffffffff
jne 0x1800b394f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b393c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b38e2
mov rdx, r11
test rax, rax
je 0x1800b3920
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3900
cmp r9d, 0xc262c48c
je 0x1800b3929
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b38cf
lea r8, str.m_bHasSapper
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229c60], r11d
lea rcx, [0x180229c70]
call fcn.18017dcd4
movsxd rax, dword [0x180229c60]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800b3960
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c68], edx
jle 0x1800b3a3f
lea rcx, [0x180229c68]
call fcn.18017dd34
cmp dword [0x180229c68], 0xffffffff
jne 0x1800b3a3f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b3a2c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b39d2
mov rdx, r11
test rax, rax
je 0x1800b3a10
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b39f0
cmp r9d, 0xc262c48c
je 0x1800b3a19
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b39bf
lea r8, str.m_bMiniBuilding
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229c50], r11d
lea rcx, [0x180229c68]
call fcn.18017dcd4
movsxd rax, dword [0x180229c50]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c80], edx
jle 0x1800b3b2f
lea rcx, [0x180229c80]
call fcn.18017dd34
cmp dword [0x180229c80], 0xffffffff
jne 0x1800b3b2f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b3b1c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b3ac2
mov rdx, r11
test rax, rax
je 0x1800b3b00
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3ae0
cmp r9d, 0xc262c48c
je 0x1800b3b09
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3aaf
lea r8, str.m_iUpgradeLevel
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229c74], r11d
lea rcx, [0x180229c80]
call fcn.18017dcd4
movsxd rax, dword [0x180229c74]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800b3b40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c54], edx
jle 0x1800b3c25
lea rcx, [0x180229c54]
call fcn.18017dd34
cmp dword [0x180229c54], 0xffffffff
jne 0x1800b3c25
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b3c0c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b3bb2
mov rdx, r11
test rax, rax
je 0x1800b3bf0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3bd0
cmp r9d, 0xc262c48c
je 0x1800b3bf9
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3b9f
lea r8, str.m_iUpgradeLevel
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
lea eax, [r11 - 0x154]
mov dword [0x180229c48], eax
lea rcx, [0x180229c54]
call fcn.18017dcd4
movsxd rax, dword [0x180229c48]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800b3c40
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.1800b3960
movzx ebp, byte [rax]
mov r10d, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rbx, qword [rax + r10*8]
add rbx, rcx
mov eax, dword [rbx]
cmp dword [0x180229c9c], eax
jle 0x1800b3d3f
lea rcx, [0x180229c9c]
call fcn.18017dd34
cmp dword [0x180229c9c], 0xffffffff
jne 0x1800b3d3f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800b3d2b
mov r8, qword [r10 + 0x10]
mov rcx, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rcx
cmp byte [r8 + rcx], 0
jne 0x1800b3cd5
xor edx, edx
test rcx, rcx
je 0x1800b3d10
nop word [rax + rax]
movsx eax, byte [rdx + r8]
xor eax, r9d
imul r9d, eax, 0x1000193
inc rdx
cmp rdx, rcx
jb 0x1800b3cf0
cmp r9d, 0x80133484
je 0x1800b3d19
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3cc2
lea r8, str.m_iAmmoShells
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
jmp 0x1800b3d2d
xor eax, eax
mov dword [0x180229c4c], eax
lea rcx, [0x180229c9c]
call fcn.18017dcd4
movsxd rax, dword [0x180229c4c]
mov ecx, dword [rax + r14]
mov dword [rdi], ecx
mov rcx, r14
call fcn.1800b3a50
cmp dword [rax], 1
je 0x1800b3d6b
mov rcx, r14
call fcn.1800b3960
cmp byte [rax], 0
mov eax, 0xc8
je 0x1800b3d70
mov eax, 0x96
mov dword [rsi], eax
test bpl, bpl
je 0x1800b3da2
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
mov eax, dword [rbx]
cmp dword [0x180229c98], eax
jle 0x1800b3e50
lea rcx, [0x180229c98]
call fcn.18017dd34
cmp dword [0x180229c98], 0xffffffff
jne 0x1800b3e50
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
test rax, rax
je 0x1800b3e3c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop
inc rax
cmp byte [r8 + rax], 0
jne 0x1800b3df0
xor edx, edx
test rax, rax
je 0x1800b3e21
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3e01
cmp r9d, 0x80133484
je 0x1800b3e2a
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3ddc
lea r8, str.m_iAmmoRockets
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
jmp 0x1800b3e3e
xor eax, eax
mov dword [0x180229c94], eax
lea rcx, [0x180229c98]
call fcn.18017dcd4
movsxd rax, dword [0x180229c94]
mov ecx, dword [rax + r14]
mov dword [r15], ecx
mov rcx, r14
call fcn.1800b3a50
cmp dword [rax], 3
jl 0x1800b3d7e
mov rax, qword [rsp + 0x60]
mov dword [rax], 0x14
jmp 0x1800b3d89
Function at 0x1800b3e80
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c84], edx
jle 0x1800b3f5f
lea rcx, [0x180229c84]
call fcn.18017dd34
cmp dword [0x180229c84], 0xffffffff
jne 0x1800b3f5f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b3f4c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b3ef2
mov rdx, r11
test rax, rax
je 0x1800b3f30
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b3f10
cmp r9d, 0x7a1c884e
je 0x1800b3f39
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3edf
lea r8, str.m_hGroundEntity
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229c5c], r11d
lea rcx, [0x180229c84]
call fcn.18017dcd4
movsxd rax, dword [0x180229c5c]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229c78], edx
jle 0x1800b4052
lea rcx, [0x180229c78]
call fcn.18017dd34
cmp dword [0x180229c78], 0xffffffff
jne 0x1800b4052
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800b403c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800b3fe2
mov rdx, r11
test rax, rax
je 0x1800b4020
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800b4000
cmp r9d, 0x24615a25
je 0x1800b4029
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800b3fcf
lea r8, str.m_nInspectStage
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
lea eax, [r11 + 0x1c]
mov dword [0x180229ca0], eax
lea rcx, [0x180229c78]
call fcn.18017dcd4
movsxd rax, dword [0x180229ca0]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800b9f60
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x1800b9f98
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, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x40], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.180091060
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 0x1800ba104
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop
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 0x1800ba07c
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800ba0f3
mov rdx, qword [r11 + 8]
mov r8, qword [rax + 0x10]
cmp r8, qword [rdx + 0x10]
jne 0x1800ba0b9
mov r10, qword [rdx]
cmp r10, rax
je 0x1800ba0b3
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 0x1800ba0f3
cmp r9, rdx
je 0x1800ba0cf
nop
mov rdx, qword [rdx + 8]
cmp r8, qword [rdx + 0x10]
je 0x1800ba119
cmp r9, rdx
jne 0x1800ba0c0
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 0x1800ba000
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
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 0x1800ba0f3
Function at 0x1800bb2f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229cac], edx
jle 0x1800bb3cf
lea rcx, [0x180229cac]
call fcn.18017dd34
cmp dword [0x180229cac], 0xffffffff
jne 0x1800bb3cf
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800bb3bc
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800bb362
mov rdx, r11
test rax, rax
je 0x1800bb3a0
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800bb380
cmp r9d, 0xd134a6b7
je 0x1800bb3a9
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800bb34f
lea r8, str.m_iClip1
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229cb4], r11d
lea rcx, [0x180229cac]
call fcn.18017dcd4
movsxd rax, dword [0x180229cb4]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229cb8], edx
jle 0x1800bb4bf
lea rcx, [0x180229cb8]
call fcn.18017dd34
cmp dword [0x180229cb8], 0xffffffff
jne 0x1800bb4bf
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800bb4ac
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800bb452
mov rdx, r11
test rax, rax
je 0x1800bb490
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800bb470
cmp r9d, 0x7723b200
je 0x1800bb499
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800bb43f
lea r8, str.m_flChargeBeginTime
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229cc0], r11d
lea rcx, [0x180229cb8]
call fcn.18017dcd4
movsxd rax, dword [0x180229cc0]
add rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x1800bb4d0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229ccc], edx
jle 0x1800bb5af
lea rcx, [0x180229ccc]
call fcn.18017dd34
cmp dword [0x180229ccc], 0xffffffff
jne 0x1800bb5af
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800bb59c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800bb542
mov rdx, r11
test rax, rax
je 0x1800bb580
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800bb560
cmp r9d, 0x2a23083e
je 0x1800bb589
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800bb52f
lea r8, str.m_flDetonateTime
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229cb0], r11d
lea rcx, [0x180229ccc]
call fcn.18017dcd4
movsxd rax, dword [0x180229cb0]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov ebx, edx
mov rdi, rcx
mov r8d, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + r8*8]
mov r8d, dword [rcx + rax]
cmp dword [0x180229cbc], r8d
jle 0x1800bb6a0
lea rcx, [0x180229cbc]
call fcn.18017dd34
cmp dword [0x180229cbc], 0xffffffff
jne 0x1800bb6a0
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800bb68d
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
nop dword [rax + rax]
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800bb640
mov rdx, r11
test rax, rax
je 0x1800bb671
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800bb651
cmp r9d, 0xb47de3de
je 0x1800bb67a
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800bb628
lea r8, str.m_hMyWeapons
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229cc4], r11d
lea rcx, [0x180229cbc]
call fcn.18017dcd4
mov rcx, qword [0x180229a30]
mov rax, qword [rcx]
mov r9, qword [rax + 0x20]
lea eax, [rbx*4]
cdqe
movsxd r8, dword [0x180229cc4]
add rax, rdi
mov edx, dword [r8 + rax]
mov dword [rsp + 0x38], edx
lea rdx, [rsp + 0x38]
call r9
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1800c2b10
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
jbe 0x1800c2b48
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, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x40], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.180091060
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 0x1800c2c86
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop
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
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r9, qword [r11]
cmp r9, rbx
jne 0x1800c2c00
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1800c2c75
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x1800c2c3d
mov r10, qword [rdx]
cmp r10, rax
je 0x1800c2c37
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 0x1800c2c75
cmp r9, rdx
je 0x1800c2c51
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x1800c2c9b
cmp r9, rdx
jne 0x1800c2c42
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 0x1800c2bb0
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
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 0x1800c2c75
Function at 0x1800d3b70
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229d0c], edx
jle 0x1800d3c52
lea rcx, [0x180229d0c]
call fcn.18017dd34
cmp dword [0x180229d0c], 0xffffffff
jne 0x1800d3c52
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800d3c3c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800d3be2
mov rdx, r11
test rax, rax
je 0x1800d3c20
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800d3c00
cmp r9d, 0x9dc483b8
je 0x1800d3c29
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800d3bcf
lea r8, str.m_flSimulationTime
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
lea eax, [r11 + 4]
mov dword [0x180229d00], eax
lea rcx, [0x180229d0c]
call fcn.18017dcd4
movsxd rax, dword [0x180229d00]
add rax, rbx
add rsp, 0x20
pop rbx
ret

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

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
mov edx, dword [0x18022812c]
mov rax, qword gs:[0x58]
mov ecx, 4
mov rax, qword [rax + rdx*8]
mov edx, dword [rcx + rax]
cmp dword [0x180229d08], edx
jle 0x1800d3d4f
lea rcx, [0x180229d08]
call fcn.18017dd34
cmp dword [0x180229d08], 0xffffffff
jne 0x1800d3d4f
mov rcx, qword [0x180229a08]
mov rax, qword [rcx]
call qword [rax + 0x40]
mov r10, rax
xor r11d, r11d
test rax, rax
je 0x1800d3d3c
mov r8, qword [r10 + 0x10]
mov rax, 0xffffffffffffffff
mov r9d, 0x811c9dc5
inc rax
cmp byte [r8 + rax], r11b
jne 0x1800d3ce2
mov rdx, r11
test rax, rax
je 0x1800d3d20
nop dword [rax]
nop word [rax + rax]
movsx ecx, byte [rdx + r8]
xor ecx, r9d
imul r9d, ecx, 0x1000193
inc rdx
cmp rdx, rax
jb 0x1800d3d00
cmp r9d, 0xb47de3de
je 0x1800d3d29
mov r10, qword [r10 + 0x20]
test r10, r10
jmp 0x1800d3ccf
lea r8, str.m_hActiveWeapon
mov rdx, qword [r10 + 0x18]
call fcn.18017d7d0
mov r11d, eax
mov dword [0x180229cf8], r11d
lea rcx, [0x180229d08]
call fcn.18017dcd4
movsxd rax, dword [0x180229cf8]
add rax, rbx
add rsp, 0x20
pop rbx
ret