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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xf0
mov rsi, rcx
xor edi, edi
mov rax, qword [rdx + 8]
cmp qword [rdx], rax
jne 0x14003f797
movdqa xmm0, xmmword [0x1401ceba0]
movdqu xmmword [rbp - 0x69], xmm0
mov dword [rbp - 0x59], 0x54504d45
mov word [rbp - 0x55], 0x59
xorps xmm0, xmm0
movups xmmword [rbp - 0x51], xmm0
mov qword [rbp - 0x41], rdi
mov qword [rbp - 0x39], rdi
lea rax, [rbp - 0x68]
mov rbx, 0xffffffffffffffff
mov r8, rbx
inc r8
cmp byte [rax + r8], dil
jne 0x14003f695
lea rdx, [rbp - 0x68]
lea rcx, [rbp - 0x51]
call fcn.1400126a0
nop
lea rcx, [rbp - 0x51]
cmp qword [rbp - 0x39], 0xf
cmova rcx, qword [rbp - 0x51]
movabs r9, 0xcbf29ce484222325
mov rdx, qword [rbp - 0x41]
test rdx, rdx
je 0x14003f6f3
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rdi]
xor r9, rax
imul r9, r8
inc rdi
cmp rdi, rdx
jb 0x14003f6e0
lea r8, [rbp - 0x51]
lea rdx, [rbp - 0x69]
lea rcx, [rsi + 0x108]
call fcn.1400355c0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x14003f728
cmp rdx, qword [rsi + 0x110]
je 0x14003f728
add rdx, 0x30
lea rcx, [rbp - 0x29]
call fcn.140010f30
jmp 0x14003f768
lea rcx, [rbp - 9]
call fcn.140127370
mov rcx, rax
call fcn.140126e80
xorps xmm0, xmm0
movups xmmword [rbp - 0x29], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x19], xmm1
nop dword [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14003f750
mov r8, rbx
mov rdx, rax
lea rcx, [rbp - 0x29]
call fcn.1400126a0
mov rcx, qword [rbp - 0x29]
lea rax, [rbp - 0x29]
cmp qword [rbp - 0x11], 0xf
cmovbe rcx, rax
call fcn.1400b9f40
nop
lea rcx, [rbp - 0x29]
call fcn.140011ad0
nop
lea rcx, [rbp - 0x51]
call fcn.140011ad0
jmp 0x14003f92e
movdqa xmm0, xmmword [0x1401cec30]
movdqu xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x59], 0x62
xor edx, edx
lea rcx, [rbp - 0x68]
call fcn.1400d55b0
mov rdx, qword [0x1401f26f8]
mov rax, qword [rdx + 0x4140]
cmp byte [rax + 0xf8], dil
jne 0x14003f877
mov rbx, qword [rdx + 0x5068]
test rbx, rbx
je 0x14003f877
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
lea rdx, str.playerStats
mov rcx, rbx
call fcn.1400d76c0
test al, al
je 0x14003f870
movsx rax, word [rbx + 0x78]
imul rdx, rax, 0x38
mov rcx, qword [rbx + 8]
mov ecx, dword [rdx + rcx]
call fcn.1400f5310
lea rcx, [rsi + 0x158]
call fcn.140068400
mov rax, qword [rsi + 0x158]
lea rcx, [rsi + 0x158]
call qword [rax + 0x18]
mov rdx, qword [0x1401f26f8]
mov r9, qword [rdx + 0x4140]
cmp byte [r9 + 0xf8], dil
jne 0x14003f877
mov r8, qword [rdx + 0x5068]
test r8, r8
je 0x14003f877
movsx rax, word [r8 + 0x78]
imul rcx, rax, 0x38
mov rax, qword [r8 + 8]
test byte [rcx + rax + 4], 8
jne 0x14003f877
dec dword [r9 + 0x130]
jmp 0x14003f877
mov rdx, qword [0x1401f26f8]
mov rax, qword [rdx + 0x4140]
cmp byte [rax + 0xf8], dil
jne 0x14003f929
mov rbx, qword [rdx + 0x5068]
test rbx, rbx
je 0x14003f929
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
lea rdx, str.compactStats
mov rcx, rbx
call fcn.1400d76c0
test al, al
je 0x14003f929
movsx rax, word [rbx + 0x78]
imul rdx, rax, 0x38
mov rcx, qword [rbx + 8]
mov ecx, dword [rdx + rcx]
call fcn.1400f5310
lea rcx, [rsi + 0x2a0]
call fcn.140069c50
mov rax, qword [rsi + 0x2a0]
lea rcx, [rsi + 0x2a0]
call qword [rax + 0x18]
mov rdx, qword [0x1401f26f8]
mov r8, qword [rdx + 0x4140]
cmp byte [r8 + 0xf8], dil
jne 0x14003f929
mov rdx, qword [rdx + 0x5068]
test rdx, rdx
je 0x14003f929
movsx rax, word [rdx + 0x78]
imul rcx, rax, 0x38
mov rax, qword [rdx + 8]
test byte [rcx + rax + 4], 8
jne 0x14003f929
dec dword [r8 + 0x130]
call fcn.1400d5ba0
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret