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

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0xc8
mov r12, rdx
mov rbx, rcx
xor esi, esi
mov edi, esi
mov dword [rbp - 0x11], esi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x71], xmm0
mov r13d, esi
mov qword [rbp - 0x61], rsi
add rcx, 0x10
call fcn.1400ee7e0
mov r14d, eax
mov dword [rbp - 0x75], eax
lea rcx, [rbx + 0x14]
call fcn.1400ee7e0
sub eax, r14d
shr eax, 2
mov dword [rbp - 0x79], eax
cmp eax, 0xc8
jbe 0x140045fff
mov qword [r12], rsi
mov qword [r12 + 0x10], rsi
jmp 0x140046278
mov r15d, esi
mov rsi, qword [rbp - 0x69]
test eax, eax
je 0x14004626b
mov r12d, eax
lea eax, [r14 + r15*4]
mov ebx, eax
lea rdx, [rbp - 9]
mov ecx, eax
call fcn.140045d10
nop
test rbx, rbx
je 0x140046252
lea rdx, [rbp - 0x31]
mov ecx, ebx
call fcn.140045d10
or edi, 2
cmp qword [rax + 0x10], 0
je 0x140046246
mov ecx, ebx
call fcn.1400ee7e0
lea ecx, [rax + 0x24]
call fcn.1400ee7e0
test eax, eax
jle 0x140046246
lea rcx, [rbp - 0x31]
call fcn.140009900
and edi, 0xfffffffd
mov r14d, edi
mov ecx, ebx
call fcn.140045be0
test al, al
je 0x140046240
lea rdx, [rbp - 0x31]
mov ecx, ebx
call fcn.140045d10
nop
cmp qword [rbp - 0x21], 0
je 0x140046236
mov qword [rbp - 0x59], rbx
mov ecx, ebx
call fcn.1400ee7e0
mov edx, eax
add rdx, 4
xor edi, edi
lea r9d, [rdi + 4]
lea r8, [rbp + 0x67]
mov rcx, qword [0x14019e1e0]
mov qword [rsp + 0x20], rdi
mov rcx, qword [rcx]
cmp byte [0x14019e189], dil
je 0x1400460cb
call fcn.14011f0f0
jmp 0x1400460d1
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, edi
test eax, eax
cmovns ecx, dword [rbp + 0x67]
mov dword [rbp - 0x51], ecx
mov rcx, rbx
call fcn.140045ee0
mov dword [rbp - 0x4d], eax
mov rcx, rbx
call fcn.140045970
mov dword [rbp - 0x49], eax
mov rcx, rbx
call fcn.140045b10
movss dword [rbp - 0x41], xmm0
mov rcx, rbx
call fcn.1400ee7e0
mov edx, eax
add rdx, 0xc
mov qword [rsp + 0x20], rdi
mov r9d, 4
lea r8, [rbp + 0x77]
mov rcx, qword [0x14019e1e0]
mov rcx, qword [rcx]
cmp byte [0x14019e189], 0
je 0x140046136
call fcn.14011f0f0
jmp 0x14004613c
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
js 0x140046147
movss xmm0, dword [rbp + 0x77]
jmp 0x14004614a
xorps xmm0, xmm0
movss dword [rbp - 0x45], xmm0
mov rcx, rbx
call fcn.1400ee7e0
mov edx, eax
add rdx, 0x10
mov qword [rsp + 0x20], rdi
mov r9d, 4
lea r8, [rbp + 0x7f]
mov rcx, qword [0x14019e1e0]
mov rcx, qword [rcx]
cmp byte [0x14019e189], 0
je 0x140046186
call fcn.14011f0f0
jmp 0x14004618c
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
test eax, eax
js 0x140046197
movss xmm0, dword [rbp + 0x7f]
jmp 0x14004619a
xorps xmm0, xmm0
movss dword [rbp - 0x3d], xmm0
lea r9, [rbp - 0x31]
cmp qword [rbp - 0x19], 0x10
cmovae r9, qword [rbp - 0x31]
movabs r10, 0xcbf29ce484222325
movabs r12, 0x100000001b3
movzx r8d, byte [r9]
lea r9, [r9 + 1]
mov edi, r14d
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx rax, cl
xor r10, rax
imul r10, r12
test r8b, r8b
jne 0x1400461c1
mov qword [rbp - 0x39], r10
cmp rsi, r13
mov r12d, dword [rbp - 0x79]
je 0x14004621e
movups xmm0, xmmword [rbp - 0x59]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbp - 0x49]
movups xmmword [rsi + 0x10], xmm1
movsd xmm0, qword [rbp - 0x39]
movsd qword [rsi + 0x20], xmm0
add rsi, 0x28
mov qword [rbp - 0x69], rsi
jmp 0x140046236
lea r8, [rbp - 0x59]
mov rdx, rsi
lea rcx, [rbp - 0x71]
call fcn.1400f2450
mov r13, qword [rbp - 0x61]
mov rsi, qword [rbp - 0x69]
lea rcx, [rbp - 0x31]
call fcn.140009900
nop
mov r14d, dword [rbp - 0x75]
jmp 0x140046252
lea rcx, [rbp - 0x31]
call fcn.140009900
and edi, 0xfffffffd
lea rcx, [rbp - 9]
call fcn.140009900
inc r15d
cmp r15d, r12d
jb 0x140046011
mov r12, qword [rbp + 0x6f]
mov rax, qword [rbp - 0x71]
mov qword [r12], rax
mov qword [r12 + 0x10], r13
mov qword [r12 + 8], rsi
mov rax, r12
add rsp, 0xc8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret