Function at 0x140021130
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r14
sub rsp, 0x60
mov rax, qword [0x1401940c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rdi, rcx
mov qword [rsp + 0x48], rcx
mov rsi, rcx
cmp qword [rcx + 0x18], 0xf
jbe 0x14002116c
mov rsi, qword [rcx]
mov rbp, qword [rcx + 0x10]
mov rbx, 0xffffffffffffffff
cmp rbp, 6
jb 0x140021205
lea r14, [rsi + rbp]
lea r8, [r14 - 5]
sub r8, rsi
lea edx, [rbx + 0x78]
mov rcx, rsi
call fcn.140123bd0
mov r9, rax
test rax, rax
je 0x140021205
lea r12, str.weapon
nop word [rax + rax]
xor ecx, ecx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
cmp al, byte [r12 + rcx - 1]
jne 0x1400211d9
cmp rcx, 6
jne 0x1400211c0
xor eax, eax
jmp 0x1400211de
sbb eax, eax
or eax, 1
test eax, eax
je 0x1400212aa
inc r9
lea r8, [r14 - 5]
sub r8, r9
mov edx, 0x77
mov rcx, r9
call fcn.140123bd0
mov r9, rax
test rax, rax
jne 0x1400211b0
mov r9, rbx
cmp r9, rbx
je 0x140021274
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
cmp rbp, 7
jb 0x14002188a
lea rax, [rbp - 7]
cmp rax, rbx
cmovb rbx, rax
mov rdx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x140021240
mov rdx, qword [rdi]
add rdx, 7
mov r8, rbx
lea rcx, [rsp + 0x28]
call fcn.140003300
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rcx, qword [rsp + 0x28]
movsx eax, byte [rcx]
test al, al
jne 0x1400212b2
lea rcx, [rsp + 0x28]
call fcn.14000e650
nop
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140150bcd]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1400f1a50
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop r12
pop rdi
ret
sub r9, rsi
jmp 0x140021208
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
inc rcx
call fcn.1400025b0
mov ebx, eax
lea rcx, [rsp + 0x28]
call fcn.14000e650
cmp ebx, 0x77f7a82d
ja 0x140021594
je 0x140021447
cmp ebx, 0x3e63f834
ja 0x140021483
je 0x14002146f
cmp ebx, 0x13a92779
ja 0x1400213bd
je 0x1400213a9
cmp ebx, 0x6712a28
ja 0x14002136d
je 0x140021359
cmp ebx, 0x4ad66f2
je 0x140021345
cmp ebx, 0x59dd57d
je 0x14002175a
cmp ebx, 0x5befa98
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017259c]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172598]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172588]
jmp 0x140021283
cmp ebx, 0xcb5861b
je 0x140021395
cmp ebx, 0x11a3af3c
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172584]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172548]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725a0]
jmp 0x140021283
cmp ebx, 0x1f92d085
ja 0x140021433
je 0x14002141f
cmp ebx, 0x15e108b2
je 0x14002140b
cmp ebx, 0x16d89054
je 0x1400213f7
cmp ebx, 0x19683b23
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172590]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172530]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172554]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017252c]
jmp 0x140021283
cmp ebx, 0x2e132027
je 0x14002145b
cmp ebx, 0x2f631ffe
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017256c]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725c8]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017257c]
jmp 0x140021283
cmp ebx, 0x5f9d5c39
ja 0x140021524
je 0x140021510
cmp ebx, 0x58c8462e
ja 0x1400214d4
je 0x1400214c0
cmp ebx, 0x4c34bf6e
je 0x1400216e6
cmp ebx, 0x524d1fe4
je 0x140021580
cmp ebx, 0x54ded1e4
je 0x1400214e8
jmp 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725a8]
jmp 0x140021283
cmp ebx, 0x593dd9b1
je 0x1400214fc
cmp ebx, 0x5c3dde6a
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172578]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172574]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725c0]
jmp 0x140021283
cmp ebx, 0x69001f93
je 0x140021580
cmp ebx, 0x6d1ea065
je 0x14002156c
cmp ebx, 0x7183f6da
je 0x14002183a
cmp ebx, 0x7289f1ae
je 0x1400215f2
cmp ebx, 0x72f8b44e
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172544]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172580]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172594]
jmp 0x140021283
cmp ebx, 0xa0793e7d
ja 0x140021722
je 0x14002170e
cmp ebx, 0x8c421473
ja 0x14002167e
je 0x14002166a
cmp ebx, 0x85bc0e4b
ja 0x14002162e
je 0x14002161a
cmp ebx, 0x7bb430e7
je 0x140021606
cmp ebx, 0x7ed14f6d
je 0x1400215f2
cmp ebx, 0x8193e2df
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725a4]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172518]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172540]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172570]
jmp 0x140021283
cmp ebx, 0x8a04e7fe
je 0x140021656
cmp ebx, 0x8b29e492
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725cc]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017258c]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172558]
jmp 0x140021283
cmp ebx, 0x8c895c97
je 0x1400216fa
cmp ebx, 0x8d02b171
je 0x1400216e6
cmp ebx, 0x922ec500
je 0x1400216d2
cmp ebx, 0x92792873
je 0x1400216be
cmp ebx, 0x9607b596
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172568]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172560]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, str.__ABDEFGHIJKLMNOxPQRSTUVWXYZabcdefghijklmnor
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172550]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725d0]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017255c]
jmp 0x140021283
cmp ebx, 0xd68b8bec
ja 0x1400217fa
je 0x1400217e6
cmp ebx, 0xce657752
ja 0x1400217aa
je 0x140021796
cmp ebx, 0xac3d51c4
je 0x140021782
cmp ebx, 0xb03095d8
je 0x14002176e
cmp ebx, 0xbf204b6e
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172538]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172564]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725b0]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017253c]
jmp 0x140021283
cmp ebx, 0xcf2de3f7
je 0x1400217d2
cmp ebx, 0xd4da8047
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725b4]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725c4]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725bc]
jmp 0x140021283
cmp ebx, 0xe3b6f096
je 0x140021876
cmp ebx, 0xe3ffb41c
je 0x140021862
cmp ebx, 0xe534dbb1
je 0x14002184e
cmp ebx, 0xe9a52cb1
je 0x14002183a
cmp ebx, 0xf99d64c5
jne 0x140021274
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725ac]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172528]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x140172534]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x1401725b8]
jmp 0x140021283
mov rcx, rdi
call fcn.14000e650
lea rax, [0x14017254c]
jmp 0x140021283
call fcn.14000efe0
int3