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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xd8
mov rax, qword [0x1402e6010]
xor rax, rsp
mov qword [rbp + 7], rax
mov r15, r9
mov r12, r8
mov rsi, rdx
mov r13, rcx
mov qword [rbp - 0x79], rcx
mov rcx, qword [rcx + 0xa0]
mov rax, qword [rcx]
mov rdx, r8
call qword [rax + 0x438]
mov r14, rax
test rax, rax
jne 0x140201dd4
mov rcx, qword [r13 + 0xa0]
mov rax, qword [rcx]
call qword [rax + 0x488]
mov r13, rax
mov r14, qword [rbp - 0x79]
mov rcx, qword [r14 + 0xa0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0x468]
mov rdx, qword [r14 + 0x170]
call r8
mov rdi, qword [r14 + 0xb8]
mov rcx, qword [rdi]
mov rbx, qword [rcx + 0x58]
xorps xmm0, xmm0
movups xmmword [rbp - 0x41], xmm0
mov qword [rbp - 0x31], 0
mov qword [rbp - 0x29], reloc.WSOCK32.dll_ntohs
mov byte [rbp - 0x41], 0
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], 0
mov qword [rbp - 1], reloc.WSOCK32.dll_ntohs
mov ecx, 0x20
call fcn.140241c38
mov qword [rbp - 0x19], rax
mov qword [rbp - 9], 0x18
mov qword [rbp - 1], 0x1f
movups xmm0, xmmword [str..._gamedata_Weapons.data]
movups xmmword [rax], xmm0
movsd xmm1, qword [0x140279918]
movsd qword [rax + 0x10], xmm1
mov byte [rax + 0x18], 0
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x19]
mov rcx, rdi
call rbx
mov rbx, rax
mov rdx, qword [rbp - 1]
cmp rdx, 0x10
jb 0x140201cfc
inc rdx
mov rcx, qword [rbp - 0x19]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140201cf7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140201cf7
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140241c74
xor edi, edi
mov qword [rbp - 9], rdi
mov qword [rbp - 1], reloc.WSOCK32.dll_ntohs
mov byte [rbp - 0x19], dil
mov rdx, qword [rbp - 0x29]
cmp rdx, 0x10
jb 0x140201d4c
inc rdx
mov rcx, qword [rbp - 0x41]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140201d47
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140201d47
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140241c74
mov qword [rbp - 0x31], rdi
mov qword [rbp - 0x29], reloc.WSOCK32.dll_ntohs
mov byte [rbp - 0x41], 0
cmp byte [r14 + 0x3c4], 0
jne 0x140201d74
mov rax, qword [rbx]
mov edx, 3
mov rcx, rbx
call qword [rax + 0x28]
mov rcx, qword [r14 + 0xa0]
mov rax, qword [rcx]
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], 0
mov r9, r12
mov r8, rsi
mov rdx, rbx
call qword [rax + 0x430]
mov r14, rax
mov rax, qword [rbx + 8]
movsxd rcx, dword [rax + 4]
add rcx, 8
add rcx, rbx
add dword [rcx + 8], 0xffffffff
jne 0x140201db9
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rcx, qword [rbp - 0x79]
mov rcx, qword [rcx + 0xa0]
mov rax, qword [rcx]
mov rdx, r13
call qword [rax + 0x468]
mov r13, qword [rbp - 0x79]
test r14, r14
jne 0x140201e60
mov rcx, qword [r13 + 0x90]
mov rax, qword [rcx]
call qword [rax + 0x58]
mov rbx, rax
mov rcx, qword [rax]
mov rdi, qword [rcx + 0x30]
mov rax, qword [r12 + 0x10]
movabs rcx, 0x7fffffffffffffff
sub rcx, rax
cmp rcx, 0x23
jb 0x1402021c5
cmp qword [r12 + 0x18], 0x10
jb 0x140201e1c
mov r12, qword [r12]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], 0x23
lea r9, str.Error_could_not_load_weapon_mesh_:
lea rcx, [rbp - 0x41]
call fcn.14003d8b0
nop
mov r8d, 0xffffffff
lea rdx, [rbp - 0x41]
mov rcx, rbx
call rdi
nop
lea rcx, [rbp - 0x41]
call fcn.140007550
xor eax, eax
jmp 0x14020219f
mov qword [rbp - 0x51], r14
mov rbx, qword [r13 + 0xa0]
mov rax, qword [rbx]
mov rdi, qword [rax + 0x438]
lea r9, [r15 + 0x80]
mov rcx, qword [r9 + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rcx
cmp rax, 0xb
jb 0x1402021cb
cmp qword [r9 + 0x18], 0x10
jb 0x140201ea1
mov r9, qword [r9]
mov qword [rsp + 0x30], recv
lea rax, str._Player.acm
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp - 0x41]
call fcn.14003d8b0
nop
lea rdx, [rbp - 0x41]
mov rcx, rbx
call rdi
mov rsi, rax
lea rcx, [rbp - 0x41]
call fcn.140007550
test rsi, rsi
jne 0x140201fa0
mov rcx, qword [r13 + 0x90]
mov rax, qword [rcx]
call qword [rax + 0x58]
mov rdi, rax
mov rcx, qword [rax]
mov rbx, qword [rcx + 0x30]
xorps xmm0, xmm0
movups xmmword [rbp - 0x41], xmm0
mov qword [rbp - 0x31], rsi
mov qword [rbp - 0x29], reloc.WSOCK32.dll_ntohs
lea ecx, [rsi + 0x30]
call fcn.140241c38
mov qword [rbp - 0x41], rax
mov qword [rbp - 0x31], 0x22
mov qword [rbp - 0x29], 0x2f
movups xmm0, xmmword [str.Error_could_not_load_weapon_mesh_2]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140292698]
movups xmmword [rax + 0x10], xmm1
movzx ecx, word [0x1402926a8]
mov word [rax + 0x20], cx
mov byte [rax + 0x22], sil
lea r8d, [rsi - 1]
lea rdx, [rbp - 0x41]
mov rcx, rdi
call rbx
nop
mov rdx, qword [rbp - 0x29]
cmp rdx, 0x10
jb 0x140201f99
inc rdx
mov rcx, qword [rbp - 0x41]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140201f94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140201f94
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140241c74
xor eax, eax
jmp 0x14020219f
xor r15d, r15d
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x80]
test eax, eax
je 0x14020216f
nop word [rax + rax]
xor edi, edi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x80]
test eax, eax
je 0x14020204d
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsi]
mov rdx, rdi
mov rcx, rsi
call qword [rax + 0x98]
lea rbx, [rax + 0x10]
mov rax, qword [r14]
mov rdx, r15
mov rcx, r14
call qword [rax + 0x98]
lea rcx, [rax + 0x10]
mov rax, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x140202014
mov rbx, qword [rbx]
mov r8, qword [rcx + 0x10]
cmp qword [rcx + 0x18], 0x10
jb 0x140202022
mov rcx, qword [rcx]
cmp r8, rax
jne 0x140202037
mov rdx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x140202155
inc rdi
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x80]
mov eax, eax
cmp rdi, rax
jb 0x140201fe0
mov rax, qword [r14]
mov rdx, r15
mov rcx, r14
call qword [rax + 0x98]
mov rbx, rax
mov rcx, qword [r14]
mov r8, qword [rcx + 0x98]
mov rdx, r15
mov rcx, r14
call r8
add rax, 0x10
mov rdx, qword [rax + 0x10]
mov r8, qword [r12 + 0x10]
movabs rcx, 0x7fffffffffffffff
sub rcx, rdx
cmp rcx, r8
jb 0x1402021bf
cmp qword [rax + 0x18], 0x10
jb 0x14020209f
mov rax, qword [rax]
mov rcx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x1402020ae
mov rcx, qword [r12]
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
mov r9, rax
lea rcx, [rbp - 0x71]
call fcn.14003d8b0
lea rax, [rbp - 0x71]
mov qword [rbp - 0x49], rax
lea rcx, [rbx + 0x10]
lea rax, [rbp - 0x71]
cmp rcx, rax
je 0x1402020f5
lea rdx, [rbp - 0x71]
cmp qword [rbp - 0x59], 0x10
cmovae rdx, qword [rbp - 0x71]
mov r8, qword [rbp - 0x61]
call fcn.1400075d0
lea r8, [rbp - 0x71]
cmp qword [rbp - 0x59], 0x10
cmovae r8, qword [rbp - 0x71]
movabs rcx, 0xcbf29ce484222325
xor edx, edx
mov r9, qword [rbp - 0x61]
test r9, r9
je 0x140202148
movabs r13, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + r8]
xor rcx, rax
imul rcx, r13
inc rdx
cmp rdx, r9
jb 0x140202130
mov r13, qword [rbp - 0x79]
mov qword [rbx + 0x30], rcx
lea rcx, [rbp - 0x71]
call fcn.140007550
inc r15
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x80]
mov eax, eax
cmp r15, rax
jb 0x140201fc0
lea rcx, [r13 + 0x4b0]
mov rdx, qword [r13 + 0x4b8]
cmp rdx, qword [r13 + 0x4c0]
je 0x140202193
mov qword [rdx], r14
add qword [r13 + 0x4b8], 8
jmp 0x14020219c
lea r8, [rbp - 0x51]
call fcn.14002e070
mov rax, r14
mov rcx, qword [rbp + 7]
xor rcx, rsp
call fcn.140241980
add rsp, 0xd8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.140002b20
int3
call fcn.140002b20
int3
call fcn.140002b20
int3