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

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x170
mov rax, qword [0x1803435b8]
xor rax, rsp
mov qword [rsp + 0x160], rax
mov r11d, edx
mov dword [rsp + 0x38], edx
mov r15, rcx
mov qword [rsp + 0x88], rcx
mov qword [rsp + 0xa0], rcx
mov qword [rsp + 0x40], rcx
lea rax, [rcx + 8]
mov qword [rsp + 0x98], rax
mov rcx, qword [rax + 8]
mov rdx, qword [rax]
cmp rdx, rcx
je 0x180062fc8
cmp r11d, r8d
jge 0x180062fc8
xorps xmm0, xmm0
movups xmmword [rsp + 0x140], xmm0
xor r14d, r14d
mov qword [rsp + 0x150], r14
mov qword [rsp + 0x158], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x140], r14b
mov qword [rsp + 0xb0], r14
mov byte [rsp + 0xb8], r14b
movdqa xmmword [rsp + 0xc0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0xd0], xmm1
mov qword [rsp + 0xe0], r14
mov byte [rsp + 0xe8], r14b
movdqa xmmword [rsp + 0xf0], xmm0
mov byte [rsp + 0x100], r14b
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x110], r14
mov byte [rsp + 0x118], r14b
movups xmmword [rsp + 0x120], xmm0
mov qword [rsp + 0x130], r14
mov r13d, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x138], r13
mov byte [rsp + 0x120], r14b
sub rcx, rdx
movabs rbx, 0x2aaaaaaaaaaaaaab
mov rax, rbx
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r8d, edx
cmovl edx, r8d
mov eax, r14d
test edx, edx
cmovg eax, edx
mov dword [rsp + 0x70], eax
mov r12, qword [rsp + 0x120]
mov dword [rsp + 0x48], r11d
cmp r11d, dword [rsp + 0x70]
jge 0x180062f1d
mov rdx, qword [rsp + 0x98]
movsxd rax, r11d
lea rcx, [rax + rax*2]
mov rax, qword [rdx]
lea rsi, [rax + rcx*8]
mov qword [rsp + 0x80], rsi
mov rcx, qword [rsi + 8]
mov rax, qword [rsi]
cmp rax, rcx
je 0x180062f10
sub rcx, rax
mov rax, rbx
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [rsp + 0x150]
ja 0x180062850
lea rax, [rsp + 0x140]
cmp qword [rsp + 0x158], 0x10
cmovae rax, qword [rsp + 0x140]
mov qword [rsp + 0x150], rdx
mov byte [rax + rdx], 0
jmp 0x1800628c9
mov rdi, rdx
mov rcx, qword [rsp + 0x150]
sub rdi, rcx
mov r8, qword [rsp + 0x158]
mov rax, r8
sub rax, rcx
cmp rdi, rax
ja 0x1800628ae
mov qword [rsp + 0x150], rdx
lea rbx, [rsp + 0x140]
cmp r8, 0x10
cmovae rbx, qword [rsp + 0x140]
add rbx, rcx
mov r8, rdi
xor edx, edx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memset
mov byte [rdi + rbx], 0
movabs rbx, 0x2aaaaaaaaaaaaaab
jmp 0x1800628c9
mov byte [rsp + 0x20], 0
mov r9, rdi
xor r8d, r8d
mov rdx, rdi
lea rcx, [rsp + 0x140]
call fcn.18005cea0
mov r8, r14
mov r10, qword [rsi]
mov rcx, qword [rsi + 8]
sub rcx, r10
mov rax, rbx
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x180062941
mov r9, r14
nop
movzx ecx, byte [r10 + r9]
lea rax, [rsp + 0x140]
cmp qword [rsp + 0x158], 0x10
cmovae rax, qword [rsp + 0x140]
mov byte [rax + r8], cl
mov dword [r10 + r9 + 4], r14d
inc r8
lea r9, [r9 + 0xc]
mov r10, qword [rsi]
mov rcx, qword [rsi + 8]
sub rcx, r10
mov rax, rbx
imul rcx
sar rdx, 1
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r8, rdx
jb 0x1800628f0
lea rdx, [rsp + 0x140]
cmp qword [rsp + 0x158], 0x10
cmovae rdx, qword [rsp + 0x140]
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x90], rdx
mov rcx, qword [rsp + 0x150]
add rcx, rdx
mov qword [rsp + 0x68], rcx
mov rsi, rdx
mov r12, qword [rsp + 0x120]
mov r13, qword [rsp + 0x138]
mov qword [rsp + 0x50], rsi
cmp rsi, rcx
je 0x180062f01
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], r14
mov dword [rsp + 0x34], r14d
xor dil, dil
mov byte [rsp + 0x30], dil
mov rax, qword [r15 + 0x270]
test rax, rax
je 0x1800629e5
lea rdx, [rsp + 0x34]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x60]
lea r8, [rsp + 0x58]
mov rdx, rcx
mov rcx, rsi
call rax
test al, al
jne 0x180062a8b
mov rcx, qword [rsp + 0x68]
mov rbx, qword [r15 + 0x298]
mov r14, qword [r15 + 0x2a0]
cmp rbx, r14
je 0x180062a47
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x40
mov r9, rbx
lea r8, [rsp + 0xb0]
mov rdx, rcx
mov rcx, rsi
call fcn.18005d030
test al, al
je 0x180062a49
mov dil, 1
mov byte [rsp + 0x30], dil
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x60], rax
mov eax, dword [rbx + 0x28]
mov dword [rsp + 0x34], eax
jmp 0x180062a76
add rbx, 0x30
mov rcx, qword [rsp + 0x68]
jmp 0x1800629f3
xor r14d, r14d
test dil, dil
jne 0x180062a8b
inc rsi
mov rcx, qword [rsp + 0x68]
jmp 0x18006297b
mov r8, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x58]
sub r8, rdx
mov qword [rsp + 0x50], r8
cmp dword [rsp + 0x34], 7
jne 0x180062e86
lea rcx, [rsp + 0x120]
call fcn.18000a920
mov r12, qword [rsp + 0x120]
mov r13, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x130]
cmp byte [r15 + 0x290], 0
jne 0x180062b3d
lea r14, [rsp + 0x120]
cmp r13, 0x10
cmovae r14, r12
lea r15, [rsp + 0x120]
cmovae r15, r12
add r15, rbx
lea rdi, [rsp + 0x120]
cmp r13, 0x10
cmovae rdi, r12
cmp rdi, r15
je 0x180062b3d
sub r14, rdi
nop
movsx ecx, byte [rdi]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
mov byte [r14 + rdi], al
inc rdi
cmp rdi, r15
jne 0x180062b10
mov r13, qword [rsp + 0x138]
mov rbx, qword [rsp + 0x130]
mov r12, qword [rsp + 0x120]
sub rsi, qword [rsp + 0x78]
lea rcx, [rsi + rsi*2]
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
lea r8, [rsp + 0x120]
test byte [rax + rcx*4 + 8], 4
jne 0x180062dc7
cmp r13, 0x10
cmovae r8, r12
movabs r10, 0xcbf29ce484222325
mov rdx, r10
xor r14d, r14d
mov ecx, r14d
movabs r15, 0x100000001b3
test rbx, rbx
je 0x180062ba4
nop
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r15
inc rcx
cmp rcx, rbx
jb 0x180062b90
mov r9, qword [rsp + 0x40]
mov rcx, qword [r9 + 0x178]
and rcx, rdx
add rcx, rcx
mov rax, qword [r9 + 0x160]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r9 + 0x150]
je 0x180062c2e
mov rsi, qword [rax + rcx*8]
nop
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180062be2
mov rdx, qword [rdx]
lea rcx, [rsp + 0x120]
cmp r13, 0x10
cmovae rcx, r12
cmp rbx, rax
jne 0x180062c03
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180062c0e
cmp rdi, rsi
je 0x180062c1f
mov rdi, qword [rdi + 8]
jmp 0x180062bd0
mov r9, qword [rsp + 0x40]
movabs r10, 0xcbf29ce484222325
jmp 0x180062c31
mov r9, qword [rsp + 0x40]
movabs r10, 0xcbf29ce484222325
mov rdi, r14
test rdi, rdi
je 0x180062c43
mov dword [rsp + 0x34], 1
jmp 0x180062e96
lea r8, [rsp + 0x120]
cmp r13, 0x10
cmovae r8, r12
mov rdx, r10
mov rcx, r14
test rbx, rbx
je 0x180062c74
nop
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r15
inc rcx
cmp rcx, rbx
jb 0x180062c60
mov rcx, qword [r9 + 0x1b8]
and rcx, rdx
add rcx, rcx
mov rax, qword [r9 + 0x1a0]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r9 + 0x190]
je 0x180062cfe
mov rsi, qword [rax + rcx*8]
nop word [rax + rax]
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180062cb2
mov rdx, qword [rdx]
lea rcx, [rsp + 0x120]
cmp r13, 0x10
cmovae rcx, r12
cmp rbx, rax
jne 0x180062cd3
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180062cde
cmp rdi, rsi
je 0x180062cef
mov rdi, qword [rdi + 8]
jmp 0x180062ca0
mov r9, qword [rsp + 0x40]
movabs r10, 0xcbf29ce484222325
jmp 0x180062d01
mov r9, qword [rsp + 0x40]
movabs r10, 0xcbf29ce484222325
mov rdi, r14
test rdi, rdi
je 0x180062d13
mov dword [rsp + 0x34], 8
jmp 0x180062e96
lea r8, [rsp + 0x120]
cmp r13, 0x10
cmovae r8, r12
mov rdx, r10
mov rcx, r14
test rbx, rbx
je 0x180062d44
nop
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r15
inc rcx
cmp rcx, rbx
jb 0x180062d30
mov rcx, qword [r9 + 0x1f8]
and rcx, rdx
add rcx, rcx
mov rax, qword [r9 + 0x1e0]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r9 + 0x1d0]
je 0x180062dae
mov rsi, qword [rax + rcx*8]
nop word [rax + rax]
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180062d82
mov rdx, qword [rdx]
lea rcx, [rsp + 0x120]
cmp r13, 0x10
cmovae rcx, r12
cmp rbx, rax
jne 0x180062da3
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180062db1
cmp rdi, rsi
je 0x180062dae
mov rdi, qword [rdi + 8]
jmp 0x180062d70
mov rdi, r14
test rdi, rdi
je 0x180062e96
mov dword [rsp + 0x34], 9
jmp 0x180062e96
cmp r13, 0x10
cmovae r8, r12
movabs rdx, 0xcbf29ce484222325
xor r14d, r14d
mov ecx, r14d
test rbx, rbx
je 0x180062e0c
movabs r13, 0x100000001b3
nop
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r13
inc rcx
cmp rcx, rbx
jb 0x180062df0
mov r13, qword [rsp + 0x138]
mov r15, qword [rsp + 0x40]
mov rcx, qword [r15 + 0x1f8]
and rcx, rdx
add rcx, rcx
mov rax, qword [r15 + 0x1e0]
mov rdi, qword [rax + rcx*8 + 8]
cmp rdi, qword [r15 + 0x1d0]
je 0x180062dae
mov rsi, qword [rax + rcx*8]
nop dword [rax + rax]
lea rdx, [rdi + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180062e52
mov rdx, qword [rdx]
lea rcx, [rsp + 0x120]
cmp r13, 0x10
cmovae rcx, r12
cmp rbx, rax
jne 0x180062e77
mov r8, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x180062db1
cmp rdi, rsi
je 0x180062dae
mov rdi, qword [rdi + 8]
jmp 0x180062e40
mov r13, qword [rsp + 0x138]
mov r12, qword [rsp + 0x120]
mov r8, r14
mov r9, qword [rsp + 0x50]
test r9, r9
je 0x180062eea
mov r14, qword [rsp + 0x80]
nop dword [rax + rax]
mov rax, r8
sub rax, qword [rsp + 0x90]
add rax, qword [rsp + 0x58]
lea rdx, [rax + rax*2]
mov rcx, qword [r14]
mov eax, dword [rsp + 0x34]
mov dword [rcx + rdx*4 + 4], eax
inc r8
cmp r8, r9
jb 0x180062eb0
mov r13, qword [rsp + 0x138]
mov r12, qword [rsp + 0x120]
xor r14d, r14d
mov rsi, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
mov r15, qword [rsp + 0x88]
jmp 0x18006298b
mov r11d, dword [rsp + 0x38]
movabs rbx, 0x2aaaaaaaaaaaaaab
inc r11d
mov dword [rsp + 0x38], r11d
jmp 0x1800627ca
cmp r13, 0x10
jb 0x180062f58
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x180062f50
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180062f50
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r12
call fcn.1800ef630
mov qword [rsp + 0x130], r14
mov qword [rsp + 0x138], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x120], 0
lea rcx, [rsp + 0xc0]
call fcn.180060560
nop
mov rdx, qword [rsp + 0x158]
cmp rdx, 0x10
jb 0x180062fc8
inc rdx
mov rcx, qword [rsp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180062fc3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180062fc3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800ef630
mov rcx, qword [rsp + 0x160]
xor rcx, rsp
call fcn.1800ef750
lea r11, [rsp + 0x170]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret