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

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x50
mov qword [rbp - 0x20], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rsi, rdx
mov r8, qword [rdx]
movzx ecx, byte [r8 + 0x18]
test ecx, ecx
je 0x14008909b
sub ecx, 1
je 0x140089083
sub ecx, 1
je 0x140089088
cmp ecx, 1
jne 0x140089248
mov dil, 1
jmp 0x1400890ae
cmp byte [r8 + 0x208], 0
je 0x14008909b
mov dil, byte [r8 + 0x209]
jmp 0x14008909e
xor dil, dil
test dil, dil
jne 0x1400890ae
mov rcx, r8
call fcn.14008ba98
mov r8, qword [rsi]
xor ebx, ebx
mov qword [rbp + 0x20], rbx
cmp byte [r8 + 0x18], bl
je 0x140089212
lea rcx, [0x1401d5e08]
mov qword [rbp - 0x18], rcx
and dword [rbp - 0x10], ebx
and dword [rbp - 0xc], ebx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [rbx + 1]
lock xadd dword [rbp - 0x10], eax
test eax, eax
jne 0x1400890f3
cmp dword [rbp - 0xc], ebx
jne 0x140089259
call qword [sym.imp.MSVCP140.dll__Thrd_id]
mov dword [rbp - 0xc], eax
mov r9, qword [rsi]
mov r10, qword [r9 + 0x20]
mov qword [rbp + 0x28], r10
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
movzx eax, byte [rbp + rcx + 0x28]
xor rdx, rax
movabs r8, 0x100000001b3
imul rdx, r8
inc rcx
cmp rcx, 8
jb 0x14008910a
and rdx, qword [0x1401d5dd0]
add rdx, rdx
mov r11, qword [0x1401d5db8]
mov rax, qword [r11 + rdx*8]
mov r8, qword [0x1401d5da8]
cmp qword [r11 + rdx*8], r8
jne 0x140089150
mov rcx, r8
jmp 0x140089158
mov rcx, qword [r11 + rdx*8 + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x140089168
cmp qword [rax + 0x10], r10
je 0x14008916b
mov rax, qword [rax]
jmp 0x140089145
mov rax, r8
cmp rax, r8
je 0x1400891cd
mov rcx, qword [rax + 0x18]
mov eax, dword [rcx + 0x20]
test eax, eax
je 0x140089238
dec eax
mov dword [rcx + 0x20], eax
test dil, dil
je 0x1400891ef
mov rdx, rsi
call 0x140089270
cmp byte [0x1401d5e30], bl
jne 0x1400891ef
mov rbx, qword [0x1401d5de0]
test rbx, rbx
je 0x1400891c0
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 8]
call qword [case.0x1400ee2b6.0]
jmp 0x1400891c4
mov rbx, qword [rbp + 0x20]
mov byte [0x1401d5e30], 1
jmp 0x1400891f3
mov qword [rsp + 0x28], r9
lea rax, str.DroppedAggregatedActivity
mov qword [rsp + 0x20], rax
mov ecx, 0x125308e
mov r8d, 0x32
call fcn.14008a424
nop
mov rbx, qword [rbp + 0x20]
lea rcx, [rbp - 0x18]
call fcn.14000ba40
test rbx, rbx
je 0x140089212
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x18]
call qword [case.0x1400ee2b6.0]
nop
test rbx, rbx
je 0x140089228
mov rax, qword [rbx]
mov rcx, rbx
mov rax, qword [rax + 0x10]
call qword [case.0x1400ee2b6.0]
nop
mov rbx, qword [rsp + 0x80]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
xor edx, edx
mov ecx, 0x125308d
call fcn.14000ad28
nop
jmp 0x140089247
nop
xor edx, edx
mov ecx, 0x130818b
call fcn.14000ad28
nop
jmp 0x140089258
nop
xor edx, edx
mov ecx, 0x131f4c4
call fcn.14000ad28
nop
jmp 0x140089268
nop
nop
nop
nop
nop
nop
nop
nop
mov rax, rsp
push rbp
push rdi
push r13
push r14
push r15
lea rbp, [rax - 0x168]
sub rsp, 0x240
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1401cd010]
xor rax, rsp
mov qword [rbp + 0x120], rax
mov rdi, rdx
mov r13, rcx
mov rax, qword [rdx]
mov qword [rsp + 0x28], rax
lea rax, str.AggregatingActivity
mov qword [rsp + 0x20], rax
mov ecx, 0x1253092
mov r8d, 0x64
call fcn.14008a424
mov rbx, qword [r13 + 8]
cmp rbx, qword [r13 + 0x10]
je 0x1400893d8
mov r14, qword [rdi]
mov r15b, byte [r14 + 0x18]
mov rdx, qword [rbx + 8]
cmp r15b, byte [rdx + 0x18]
jne 0x140089352
mov r8b, byte [r14 + 0x208]
test r8b, r8b
sete cl
cmp byte [rdx + 0x208], 0
sete al
cmp cl, al
jne 0x140089352
test r8b, r8b
je 0x140089327
mov al, byte [rdx + 0x209]
cmp byte [r14 + 0x209], al
jne 0x140089352
mov r8b, byte [r14 + 0x50]
test r8b, r8b
sete cl
cmp byte [rdx + 0x50], 0
sete al
cmp cl, al
jne 0x140089352
test r8b, r8b
je 0x14008935c
add rdx, 0x58
lea rcx, [r14 + 0x58]
call fcn.140087ed8
test al, al
je 0x14008935c
add rbx, 0x20
cmp rbx, qword [r13 + 0x10]
jne 0x1400892ee
cmp rbx, qword [r13 + 0x10]
je 0x1400893d8
inc dword [rbx + 0x18]
mov edx, dword [rbx + 0x18]
xorps xmm2, xmm2
cvtsi2sd xmm2, rdx
movsd xmm3, qword [0x1401867f8]
test rdx, rdx
jns 0x140089381
addsd xmm2, xmm3
mov rax, qword [rdi]
mov rcx, qword [rax + 0x220]
xorps xmm1, xmm1
cvtsi2sd xmm1, rcx
test rcx, rcx
jns 0x14008939c
addsd xmm1, xmm3
movsd xmm0, qword [0x1401867d0]
divsd xmm0, xmm2
mulsd xmm1, xmm0
lea rax, [rdx - 1]
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
test rax, rax
jns 0x1400893c1
addsd xmm0, xmm3
divsd xmm0, xmm2
mulsd xmm0, qword [rbx + 0x10]
addsd xmm1, xmm0
movsd qword [rbx + 0x10], xmm1
jmp 0x140089507
mov rdx, qword [rdi]
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [rdx + 0x220]
lea rcx, [rsp + 0x50]
call fcn.140088700
mov rbx, qword [rdi]
xor al, al
mov byte [rsp + 0x60], al
cmp byte [rbx + 0x50], al
je 0x140089414
lea rdx, [rbx + 0x58]
lea rcx, [rsp + 0x60]
call fcn.140027938
mov rbx, qword [rdi]
mov al, byte [rsp + 0x60]
cmp byte [rbx + 0x50], 0
je 0x140089434
lea rcx, [rbx + 0x60]
call fcn.14002059c
mov byte [rbx + 0x50], 0
mov rbx, qword [rdi]
mov al, byte [rsp + 0x60]
cmp byte [rbx + 0x50], 0
jne 0x140089448
test al, al
je 0x140089466
lea rdx, [rsp + 0x68]
lea rcx, [rbx + 0x50]
call fcn.140027938
jmp 0x140089466
lea rcx, [rbx + 0x60]
test al, al
jne 0x14008945b
call fcn.14002059c
mov byte [rbx + 0x50], 0
jmp 0x140089466
lea rdx, [rsp + 0x70]
call fcn.140089738
nop
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x30], rax
mov rcx, qword [rdi]
and qword [rdi], 0
mov qword [rsp + 0x38], rcx
movsd qword [rsp + 0x40], xmm6
mov dword [rsp + 0x48], 1
mov rdx, qword [r13 + 0x10]
cmp qword [r13 + 0x18], rdx
je 0x1400894c0
and qword [rsp + 0x30], 0
mov qword [rdx], rax
and qword [rsp + 0x38], 0
mov qword [rdx + 8], rcx
movsd xmm0, qword [rsp + 0x40]
movsd qword [rdx + 0x10], xmm0
mov dword [rdx + 0x18], 1
add qword [r13 + 0x10], 0x20
jmp 0x1400894cf
lea r8, [rsp + 0x30]
lea rcx, [r13 + 8]
call fcn.14008a0ec
nop
lea rcx, [rsp + 0x38]
call fcn.1400896a8
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1400894f5
mov rax, qword [rcx]
mov edx, 1
mov rax, qword [rax]
call qword [case.0x1400ee2b6.0]
nop
cmp byte [rsp + 0x60], 0
je 0x140089507
lea rcx, [rsp + 0x70]
call fcn.14002059c
nop
mov rcx, qword [rbp + 0x120]
xor rcx, rsp
call fcn.14012aa20
lea r11, [rsp + 0x240]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rbp
ret