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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101a7c3d
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push esi
push edi
mov eax, dword [0x104cdec0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x28], 0
push str.persistentKillfeed
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x24], 0
movups xmmword [ebp - 0x38], xmm0
call fcn.10018360
lea eax, [ebp - 0x38]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x20]
mov ecx, 0x105daf00
push eax
call fcn.100196a0
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [eax]
mov al, byte [eax + 0x20]
mov byte [ebp - 0xd], al
cmp ecx, 0xf
jbe 0x10037eec
mov edx, dword [ebp - 0x38]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10037edf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10037edf
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.101a3a33
mov al, byte [ebp - 0xd]
add esp, 8
test al, al
je 0x100380ce
mov ecx, dword [0x105d9ce8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x100380ce
mov edx, dword [0x105d9d6c]
xor ecx, ecx
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x14], ecx
mov eax, dword [edx + 0x28]
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x100380ce
mov eax, dword [edx + 0x1c]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov esi, eax
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10037f40
xor edx, edx
test ecx, ecx
je 0x10037f69
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10037f50
cmp edi, 0x5ff56dc5
je 0x10037f7e
mov ecx, dword [ebp - 0x14]
inc ecx
mov dword [ebp - 0x14], ecx
cmp ecx, dword [ebp - 0x1c]
jae 0x100380ce
mov edx, dword [ebp - 0x18]
jmp 0x10037f25
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov eax, dword [eax + 0x1c]
mov edi, dword [eax + ecx*4]
test edi, edi
je 0x100380ce
mov ecx, dword [0x105d9ce8]
mov esi, dword [0x105d9d70]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x10037fd8
mov eax, dword [esi]
test eax, eax
je 0x10037fd8
mov al, byte [eax + 0x21]
test al, al
je 0x10037fd8
mov ecx, dword [0x105d9fdc]
mov eax, dword [0x102f2748]
add ecx, 0xffffffce
xor ecx, 0x58f652e0
cmp dword [ecx + eax], 0
je 0x10037fd8
mov ecx, edi
call dword [0x105d9ec0]
mov edx, dword [edi + 0x88]
test edx, edx
je 0x100380ce
movss xmm1, dword [0x101bd410]
xor esi, esi
cmp edx, 4
jl 0x1003809a
mov ecx, dword [edi + 0x7c]
lea esi, [edx - 4]
shr esi, 2
add ecx, 0x1078
inc esi
lea eax, [esi*4]
mov dword [ebp - 0x1c], eax
movss xmm0, dword [ecx - 0xc60]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1003802e
mov dword [ecx - 0xc60], 0x7f7fffff
movss xmm0, dword [ecx - 0x840]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10038049
mov dword [ecx - 0x840], 0x7f7fffff
movss xmm0, dword [ecx - 0x420]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10038064
mov dword [ecx - 0x420], 0x7f7fffff
movss xmm0, dword [ecx]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10038077
mov dword [ecx], 0x7f7fffff
add ecx, 0x1080
sub esi, 1
jne 0x10038013
mov esi, dword [ebp - 0x1c]
cmp esi, edx
jl 0x1003809e
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret
test edx, edx
jle 0x100380ce
mov eax, dword [edi + 0x7c]
imul ecx, esi, 0x420
add eax, 0x418
add ecx, eax
sub edx, esi
movss xmm0, dword [ecx]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x100380c3
mov dword [ecx], 0x7f7fffff
add ecx, 0x420
sub edx, 1
jne 0x100380b0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret