Function at 0x180102500
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x20], rbp
mov qword [rsp + 8], rcx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x30
mov rbp, r9
mov rsi, rdx
xor edi, edi
cmp r8d, 0x1b30ddf0
je 0x1801025f9
cmp r8d, 0x910663ea
je 0x18010255c
cmp r8d, 0xb3dc0da2
je 0x1801025ed
cmp r8d, 0xc714bb79
je 0x18010255c
cmp r8d, 0xf0d60440
jne 0x1801027f6
lea rcx, [0x180252b48]
call fcn.180103730
mov qword [0x180252af0], rdi
mov byte [0x180252b38], dil
mov qword [0x180252b3c], rdi
mov dword [rsp + 0x70], 0xffffff00
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x60], eax
cmp byte [0x180261761], dil
je 0x1801027f6
mov rcx, qword [0x180257708]
mov rax, qword [rcx]
lea r9, str.Crithack
lea r8, str.__s_
lea rdx, [rsp + 0x60]
call qword [rax + 0xb8]
mov rcx, qword [0x180257708]
mov rax, qword [rcx]
mov dword [rsp + 0x70], 0xffffffff
lea r9, str.Resetting_all
lea r8, [0x18022c684]
lea rdx, [rsp + 0x70]
call qword [rax + 0xb8]
jmp 0x1801027f6
mov qword [0x180252af0], rdi
jmp 0x1801027f6
mov r14, qword [0x1802580c8]
test rbp, rbp
je 0x1801027f6
test r14, r14
je 0x1801027f6
mov rax, qword [0x180257748]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x48]
mov rax, qword [rdx]
xor r8d, r8d
lea rdx, str.userid
mov rcx, rsi
call qword [rax + 0x30]
mov edx, eax
mov rcx, qword [0x180257748]
call rbx
mov dword [rsp + 0x70], eax
mov rax, qword [0x180257748]
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x48]
mov rax, qword [rsi]
xor r8d, r8d
lea rdx, str.attacker
mov rcx, rsi
call qword [rax + 0x30]
mov edx, eax
mov rcx, qword [0x180257748]
call rbx
mov r12d, eax
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x28]
xor r8d, r8d
lea rdx, str.crit
mov rcx, rsi
call r9
test al, al
jne 0x1801026ac
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x28]
xor r8d, r8d
lea rdx, str.minicrit
mov rcx, rsi
call r9
test al, al
jne 0x1801026ac
xor r15b, r15b
jmp 0x1801026af
mov r15b, 1
mov edx, dword [rsp + 0x70]
movzx ecx, dl
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movabs r8, 0x100000001b3
imul rcx, r8
movzx eax, byte [rsp + 0x71]
xor rcx, rax
imul rcx, r8
movzx eax, byte [rsp + 0x72]
xor rcx, rax
imul rcx, r8
movzx eax, byte [rsp + 0x73]
xor rcx, rax
imul rcx, r8
mov r8, qword [0x180252b28]
and r8, rcx
add r8, r8
mov rcx, qword [0x180252b10]
mov rax, qword [rcx + r8*8 + 8]
cmp rax, qword [0x180252b00]
je 0x180102731
mov rcx, qword [rcx + r8*8]
cmp edx, dword [rax + 0x10]
je 0x18010272e
cmp rax, rcx
je 0x180102731
mov rax, qword [rax + 8]
cmp edx, dword [rax + 0x10]
jne 0x180102720
mov rdi, rax
test rdi, rdi
je 0x18010276d
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x20]
lea rcx, [0x180252af8]
call fcn.1800ac180
mov rbx, qword [rax]
mov rax, qword [rsi]
xor r8d, r8d
lea rdx, str.damageamount
mov rcx, rsi
call qword [rax + 0x30]
mov edi, eax
cmp dword [rbx + 0x14], eax
cmovl edi, dword [rbx + 0x14]
jmp 0x180102782
mov rax, qword [rsi]
xor r8d, r8d
lea rdx, str.damageamount
mov rcx, rsi
call qword [rax + 0x30]
mov edi, eax
mov rcx, qword [rsi]
mov r9, qword [rcx + 0x30]
xor r8d, r8d
lea rdx, str.weaponid
mov rcx, rsi
call r9
mov ebx, eax
cmp dword [rsp + 0x70], r12d
je 0x1801027f6
lea rcx, [rbp + 0x10]
mov rdx, qword [rcx]
call qword [rdx + 0x48]
cmp r12d, eax
jne 0x1801027f6
mov rdx, qword [r14]
mov r8, qword [rdx + 0xbe8]
mov rcx, r14
call r8
cmp ebx, eax
jne 0x1801027f6
mov rax, qword [r14]
mov rdx, qword [rax + 0xa50]
mov rcx, r14
call rdx
cmp eax, 2
je 0x1801027f6
add dword [0x180252af4], edi
test r15b, r15b
je 0x1801027f6
mov rcx, rbp
call fcn.1800be2c0
test al, al
jne 0x1801027f6
add dword [0x180252af0], edi
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret