Function at 0x18003d140
Capabilities:
Hash data using fnv

Disassembly:
test rcx, rcx
je 0x18003d3e7
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], r14
push r15
sub rsp, 0x20
mov rbx, rcx
mov rax, qword [rcx]
test rax, rax
je 0x18003d3ba
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x18003d3c6
call rdx
test rax, rax
je 0x18003d3d2
cmp byte [rax], 0
je 0x18003d3d2
movsx ecx, byte [rax]
xor ecx, 0x811c9dc5
imul edx, ecx, 0x1000193
lea rcx, [rax + 1]
call fcn.18003c468
cmp eax, 0xa6abe875
jne 0x18003d3d2
mov rax, qword [rbx]
test rax, rax
jne 0x18003d1c7
lea rcx, str.Tried_getting_virtual_function_from_a_null_vtable._n
call fcn.1800066c8
jmp 0x18003d1d3
mov r8, qword [rax + 0x80]
test r8, r8
jne 0x18003d1e3
lea rcx, str.Tried_calling_a_null_virtual_function._n
call fcn.1800066c8
xor esi, esi
jmp 0x18003d1f3
lea rdx, str.attacker
mov rcx, rbx
call r8
mov rsi, rax
mov rax, qword [rbx]
test rax, rax
jne 0x18003d209
lea rcx, str.Tried_getting_virtual_function_from_a_null_vtable._n
call fcn.1800066c8
jmp 0x18003d215
mov r8, qword [rax + 0x80]
test r8, r8
jne 0x18003d225
lea rcx, str.Tried_calling_a_null_virtual_function._n
call fcn.1800066c8
xor eax, eax
jmp 0x18003d232
lea rdx, str.userid
mov rcx, rbx
call r8
cmp rsi, rax
je 0x18003d3d2
mov rax, qword [0x1800e4dc8]
test rax, rax
je 0x18003d3d2
or ecx, 0xffffffff
call rax
test rax, rax
je 0x18003d3d2
cmp rsi, rax
jne 0x18003d3d2
mov rcx, rax
call fcn.1800374d0
mov rcx, rax
call fcn.18003fea8
mov rsi, rax
test rax, rax
je 0x18003d3d2
mov edx, dword [0x1800e4b88]
mov rcx, qword gs:[0x58]
mov r15d, 4
mov r14, qword [rcx + rdx*8]
mov ecx, dword [r14 + r15]
cmp dword [0x1800e4dd8], ecx
jle 0x18003d2e9
lea rcx, [0x1800e4dd8]
call fcn.18009c99c
cmp dword [0x1800e4dd8], 0xffffffff
jne 0x18003d2e9
mov r9d, 0x51b23a93
lea r8, str.m_pWeaponServices
mov edx, 0x4ab1b579
lea rcx, str.C_BasePlayerPawn
call fcn.180040988
mov word [0x1800e4e0c], ax
lea rcx, [0x1800e4dd8]
call fcn.18009c93c
movsx rax, word [0x1800e4e0c]
mov rsi, qword [rax + rsi]
test rsi, rsi
je 0x18003d3d2
mov eax, dword [r14 + r15]
cmp dword [0x1800e4dd0], eax
jle 0x18003d350
lea rcx, [0x1800e4dd0]
call fcn.18009c99c
cmp dword [0x1800e4dd0], 0xffffffff
jne 0x18003d350
mov r9d, 0x940131c5
lea r8, str.m_hActiveWeapon
mov edx, 0x634d2280
lea rcx, str.CPlayer_WeaponServices
call fcn.180040988
mov word [0x1800e4e64], ax
lea rcx, [0x1800e4dd0]
call fcn.18009c93c
movsx rcx, word [0x1800e4e64]
add rcx, rsi
call fcn.18003fea8
test rax, rax
je 0x18003d3d2
mov rcx, rax
call fcn.1800375d8
test rax, rax
je 0x18003d3d2
mov rcx, rax
call fcn.180037554
test rax, rax
je 0x18003d3d2
mov rcx, qword [rax]
test rcx, rcx
je 0x18003d3ba
mov rdx, qword [rcx + 0x68]
test rdx, rdx
je 0x18003d3c6
mov rcx, rax
call rdx
mov r11, rax
test rax, rax
je 0x18003d3d2
mov dl, 1
mov rcx, rax
call fcn.18003fde8
test al, al
je 0x18003d3d2
mov r8, qword [r11 + 0x210]
mov rax, qword [rbx]
test rax, rax
jne 0x18003d3e8
lea rcx, str.Tried_getting_virtual_function_from_a_null_vtable._n
call fcn.1800066c8
lea rcx, str.Tried_calling_a_null_virtual_function._n
call fcn.1800066c8
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
add rsp, 0x20
pop r15
ret
mov rax, qword [rax + 0xc0]
test rax, rax
je 0x18003d3c6
lea rdx, str.weapon
mov rcx, rbx
call rax
jmp 0x18003d3d2