Function at 0x1401205b0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push r15
lea rbp, [rsp - 0x4f]
sub rsp, 0x88
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
cmp byte [0x14023b713], 0
mov r15, rax
je 0x140120c21
mov rcx, qword [0x140252eb0]
cmp byte [rcx + 0x6011], 0
je 0x140120c21
cmp rax, qword [0x14023b6c8]
jb 0x140120c21
cmp byte [0x14023b382], 0
mov qword [rsp + 0xa8], rbx
jne 0x140120627
mov byte [0x14023b382], 1
mov r9b, 1
mov edx, dword [rcx + 0x5fe1]
xor r8d, r8d
call fcn.140130a30
mov rcx, qword [0x140252eb0]
mov eax, dword [reloc.WS2_32.dll_closesocket]
lea r8, [rbp + 0x67]
mov qword [rsp + 0xb0], rsi
lea rdx, [rbp - 0x19]
mov qword [rsp + 0xb8], rdi
add rcx, 0x5df8
mov qword [rsp + 0x70], r14
xor bl, bl
mov dword [rbp + 0x67], eax
call fcn.1400410e0
mov rcx, qword [rax]
cmp byte [rcx + 0x16], bl
ja 0x140120866
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, qword [0x140252eb0]
mov r14, rax
mov rbx, qword [rcx + 0x5f6c]
mov rsi, qword [rcx + 0x5f74]
cmp rbx, rsi
je 0x1401206c0
mov edx, dword [reloc.WS2_32.dll_closesocket]
mov rdi, qword [rbx]
movzx ecx, word [rdi]
cmp ecx, edx
jne 0x1401206b7
test edx, edx
je 0x1401206b7
movss xmm1, dword [rdi + 6]
movss xmm0, dword [rdi + 2]
call fcn.140122f60
test al, al
jne 0x140120725
mov edx, dword [reloc.WS2_32.dll_closesocket]
add rbx, 8
cmp rbx, rsi
jne 0x140120690
xor esi, esi
lea rdx, str._4AUTO_PLANT_STOPPED_
xorps xmm0, xmm0
mov dword [0x14023b724], esi
lea rcx, [rbp - 0x19]
mov dword [0x14023b738], esi
movups xmmword [rbp - 0x19], xmm0
lea r8d, [rsi + 0x15]
mov qword [rbp - 9], rsi
mov qword [rbp - 1], rsi
call fcn.14000d770
lea rcx, [rbp - 0x19]
call fcn.14011cc40
mov rcx, qword [0x140252eb0]
xor r9d, r9d
mov byte [0x14023b713], sil
xor r8d, r8d
mov byte [0x14023b382], sil
mov edx, dword [rcx + 0x5fe1]
call fcn.140130a30
jmp 0x140120c04
movss xmm0, dword [rdi + 6]
mulss xmm0, dword [0x1401d7838]
mov rcx, qword [0x140252eb0]
cvttss2si r8d, xmm0
movss xmm0, dword [rdi + 2]
mulss xmm0, dword [0x1401d7838]
cvttss2si edx, xmm0
call fcn.14012f3d0
movss xmm0, dword [rdi + 2]
xor esi, esi
movss xmm1, dword [rdi + 6]
xor eax, eax
mov qword [rbp + 0x1b], rax
mov eax, dword [rdi + 0xc]
mov dword [rbp - 5], eax
mov rax, qword [0x140252eb0]
movss dword [rbp - 1], xmm0
movss dword [rbp + 3], xmm1
mov word [rbp - 0x18], 0
mov rdi, qword [rax + 0x10]
mov rbx, qword [rax + 8]
mov byte [rbp - 0x16], 0
mov qword [rbp - 0x11], rsi
mov dword [rbp - 9], esi
mov qword [rbp + 7], rsi
mov qword [rbp + 0xf], rsi
mov dword [rbp + 0x17], esi
mov byte [rbp - 0x19], ntohl
mov dword [rbp - 0x15], 0xffffffff
test rdi, rdi
je 0x140120829
test rbx, rbx
je 0x140120829
lea edx, [rsi + 0x41]
xor ecx, ecx
lea r8d, [rsi + 1]
call fcn.140032270
movups xmm0, xmmword [rbp - 0x19]
mov edx, dword [rbp + 0x1f]
xor ecx, ecx
movups xmm1, xmmword [rbp - 9]
mov r8, qword [rax + 0x10]
mov dword [r8], 4
movups xmmword [r8 + 4], xmm0
movups xmm0, xmmword [rbp + 7]
movups xmmword [r8 + 0x14], xmm1
movsd xmm1, qword [rbp + 0x17]
movups xmmword [r8 + 0x24], xmm0
movsd qword [r8 + 0x34], xmm1
mov dword [r8 + 0x3c], edx
xor edx, edx
mov byte [r8 + 0x40], cl
mov r8, rax
mov rcx, rdi
call fcn.1400333a0
test eax, eax
je 0x140120821
mov edx, eax
lea rcx, str._SERVER_:_Error_Sending_Packet__Code:__d_n
call fcn.14000c8c0
mov rcx, rbx
call fcn.140033840
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x51eb851f
imul r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
sub r8d, ecx
movsxd rcx, dword [0x14022e1bc]
movsxd rax, r8d
add rcx, rax
add rcx, r14
mov qword [0x14023b740], rcx
jmp 0x140120c04
cmp byte [0x14023b73d], bl
movaps xmmword [rsp + 0x60], xmm6
movss xmm6, dword [0x1401d7838]
je 0x140120988
cmp dword [0x14023b724], 0
jne 0x140120895
cmp dword [0x14023b738], 0
je 0x140120988
cmp r15, qword [0x14023b740]
jb 0x140120986
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r10, qword [0x140252eb0]
mov r8d, eax
mov eax, 0x51eb851f
mov byte [0x14023b73d], bl
imul r8d
mov byte [0x14023b73c], bl
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
mov edx, dword [0x14023b724]
sub r8d, ecx
movsxd rcx, dword [0x14022e1bc]
movsxd rax, r8d
mov r8d, dword [0x14023b738]
add rcx, rax
add rcx, r15
mov qword [0x14023b740], rcx
movss xmm1, dword [r10 + 0x5ff1]
movzx ecx, byte [0x14022e147]
movss xmm0, dword [r10 + 0x5ff5]
shr ecx, 6
mulss xmm1, xmm6
mulss xmm0, xmm6
cvttss2si r11d, xmm1
cvttss2si r9d, xmm0
mov eax, r11d
sub eax, ecx
cmp edx, eax
jl 0x140120961
lea eax, [r11 + rcx]
cmp edx, eax
jg 0x140120961
mov eax, r9d
sub eax, ecx
cmp r8d, eax
jl 0x140120961
lea eax, [r9 + rcx]
cmp r8d, eax
jg 0x140120961
mov r9d, r8d
xor ecx, ecx
mov r8d, edx
mov edx, dword [reloc.WS2_32.dll_closesocket]
call fcn.14012fcc0
jmp 0x140120986
mov rcx, r10
call fcn.140122250
test al, al
je 0x140120986
mov r8d, dword [0x14023b738]
mov edx, dword [0x14023b724]
mov rcx, qword [0x140252eb0]
call fcn.14012f3d0
mov bl, 1
cmp r15, qword [0x14023b740]
jb 0x140120bff
test bl, bl
jne 0x140120bff
mov r9, qword [0x140252eb0]
xor esi, esi
mov qword [rsp + 0x80], r12
mov edi, esi
mov qword [rsp + 0x78], r13
cmp dword [r9 + 0x5f44], esi
jle 0x140120b64
mov r14, qword [0x14023ade8]
movabs r12, 0xcbf29ce484222325
movabs r13, 0x100000001b3
nop dword [rax]
mov ebx, esi
cmp dword [r9 + 0x5f40], esi
jle 0x140120b55
nop
mov edx, dword [r9 + 0x5f40]
mov eax, edi
imul eax, edx
add eax, ebx
cmp eax, 0xffffffff
jle 0x140120b46
mov r10, qword [r9 + 0x5f4c]
mov rcx, qword [r9 + 0x5f54]
sub rcx, r10
cdqe
sar rcx, 3
cmp rax, rcx
jae 0x140120b46
cmp ebx, 0xffffffff
jle 0x140120b46
cmp ebx, edx
jge 0x140120b46
cmp edi, 0xffffffff
jle 0x140120b46
mov r11d, dword [r9 + 0x5f44]
cmp edi, r11d
jge 0x140120b46
mov rax, qword [r10 + rax*8]
test rax, rax
je 0x140120b46
cmp word [rax], si
jne 0x140120b46
lea r8d, [rdi + 1]
mov eax, r8d
imul eax, edx
add eax, ebx
cmp eax, 0xffffffff
jle 0x140120b46
cdqe
cmp rax, rcx
jae 0x140120b46
cmp r8d, r11d
jge 0x140120b46
mov rax, qword [r10 + rax*8]
test rax, rax
je 0x140120b46
movzx ecx, word [rax]
test cx, cx
je 0x140120b46
mov edx, ecx
test cl, 1
jne 0x140120b46
mov eax, ecx
movzx r8d, dl
xor r8, r12
shr rax, 8
imul r8, r13
xor r8, rax
movabs rax, 0x8a97b0004e7feab
imul r8, rax
mov rax, qword [0x14023adf8]
and r8, qword [0x14023ae10]
add r8, r8
mov rcx, qword [rax + r8*8 + 8]
cmp rcx, r14
je 0x140120b10
mov rax, qword [rax + r8*8]
cmp edx, dword [rcx + 0x10]
je 0x140120b13
nop word [rax + rax]
cmp rcx, rax
je 0x140120b10
mov rcx, qword [rcx + 8]
cmp edx, dword [rcx + 0x10]
jne 0x140120b00
jmp 0x140120b13
mov rcx, rsi
test rcx, rcx
mov rax, r14
cmovne rax, rcx
cmp byte [rax + 0x78], sil
je 0x140120b46
mov r8d, edi
mov edx, ebx
mov rcx, r9
call fcn.140122250
test al, al
jne 0x140120c2c
mov r9, qword [0x140252eb0]
mov r14, qword [0x14023ade8]
inc ebx
cmp ebx, dword [r9 + 0x5f40]
jl 0x1401209f0
inc edi
cmp edi, dword [r9 + 0x5f44]
jl 0x1401209e0
xorps xmm0, xmm0
mov dword [0x14023b724], esi
mov r8d, reloc.WS2_32.dll_WSACleanup
mov dword [0x14023b738], esi
lea rdx, str._4Disabled__5Auto_Plant_Because_n_There_Arent_Any_Empty_Tile_Plant_Trees_Left._n_4__2_ap_5_To_Access_Auto_Plant_Page_
mov byte [0x14023b713], sil
lea rcx, [rbp - 0x19]
mov qword [rbp - 9], rsi
movups xmmword [rbp - 0x19], xmm0
mov qword [rbp - 1], rsi
call fcn.14000d770
lea rcx, [rbp - 0x19]
call fcn.14011cc40
xorps xmm0, xmm0
mov qword [rbp - 9], rsi
mov r8d, reloc.WS2_32.dll_WSACleanup
mov qword [rbp - 1], rsi
lea rdx, str._4Disabled__5Auto_Plant_Because__There_Arent_Any_Empty_Tile_Plant_Trees_Left.__4__2_ap_5_To_Access_Auto_Plant_Page_
lea rcx, [rbp - 0x19]
movups xmmword [rbp - 0x19], xmm0
call fcn.14000d770
lea rcx, [rbp - 0x19]
call fcn.14011cb40
mov rcx, qword [0x140252eb0]
xor r9d, r9d
mov byte [0x14023b382], sil
xor r8d, r8d
mov edx, dword [rcx + 0x5fe1]
call fcn.140130a30
mov r12, qword [rsp + 0x80]
mov r13, qword [rsp + 0x78]
movaps xmm6, xmmword [rsp + 0x60]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xb0]
mov r14, qword [rsp + 0x70]
mov rbx, qword [rsp + 0xa8]
add rsp, 0x88
pop r15
pop rbp
ret
mov dword [0x14023b724], ebx
mov dword [0x14023b738], edi
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movzx r9d, byte [0x14022e147]
mov r8d, eax
mov eax, 0x51eb851f
mov byte [0x14023b73d], 1
imul r8d
shr r9d, 6
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x64
mov edx, dword [0x14023b724]
sub r8d, ecx
movsxd rcx, dword [0x14022e1bc]
movsxd rax, r8d
mov r8d, dword [0x14023b738]
add rcx, rax
add rcx, r15
mov qword [0x14023b740], rcx
mov rcx, qword [0x140252eb0]
movss xmm1, dword [rcx + 0x5ff1]
movss xmm0, dword [rcx + 0x5ff5]
mulss xmm1, xmm6
mulss xmm0, xmm6
cvttss2si r11d, xmm1
cvttss2si r10d, xmm0
mov eax, r11d
sub eax, r9d
cmp edx, eax
jl 0x140120ce3
lea eax, [r11 + r9]
cmp edx, eax
jg 0x140120ce3
mov eax, r10d
sub eax, r9d
cmp r8d, eax
jl 0x140120ce3
lea eax, [r9 + r10]
cmp r8d, eax
jle 0x140120bf2
call fcn.14012f3d0
jmp 0x140120bf2