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

Disassembly:
mov rax, rsp
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov rax, qword [0x1405420e0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rbx, rcx
mov qword [rbp - 0x48], rcx
mov qword [rbp - 0x38], rcx
lea rax, vtable.sense::GenericETW::Transformer.0
mov qword [rcx], rax
add rcx, 8
call fcn.1400932d4
nop
lea rax, vtable.sense::GenericETW::FileExtensionExtractTransformer.0
mov qword [rbx], rax
lea r12, [rbx + 0xd0]
xor r13d, r13d
mov qword [r12], r13
mov qword [r12 + 8], r13
mov qword [r12 + 0x10], r13
mov rax, qword [rbx + 0x38]
cmp qword [rbx + 0x30], rax
sete al
mov rcx, qword [rbp + 0x38]
lea rdx, str.TransformerValues_should_not_be_empty
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], al
mov r9d, 0x80070057
lea r8, str.amcorewcd_sourcegenericetw_src_fileextensionextracttransformer.cpp
lea edx, [r13 + 0x20]
call fcn.140060d74
mov rdi, qword [rbx + 0x30]
mov r14, qword [rbx + 0x38]
cmp rdi, r14
je 0x1400b5b33
mov rbx, r14
mov r8b, 1
mov rdx, rdi
lea rcx, [rbp - 0x30]
call fcn.14006d604
nop
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rdx, qword [rbp - 0x30]
movabs r8, 0xcbf29ce484222325
mov rcx, rdx
mov rsi, qword [rbp - 0x20]
lea r9, [rsi + rsi]
lea rax, [r9 + rdx]
cmp rdx, rax
cmova r9, r13
test r9, r9
je 0x1400b59a1
movzx eax, byte [rcx]
xor r8, rax
movabs r10, 0x100000001b3
imul r8, r10
inc rcx
mov rax, rcx
sub rax, rdx
cmp rax, r9
jne 0x1400b597f
and r8, qword [0x140549800]
shl r8, 4
mov rcx, qword [0x1405497e8]
mov rax, qword [r8 + rcx]
mov r15, qword [0x1405497d8]
cmp qword [r8 + rcx], r15
jne 0x1400b59c9
mov rcx, r15
jmp 0x1400b59d1
mov rcx, qword [r8 + rcx + 8]
mov rcx, qword [rcx]
cmp rax, rcx
je 0x1400b5aac
lea rcx, [rax + 0x10]
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rdx, qword [rbp - 0x30]
mov r10, rcx
mov r13, qword [rcx + 0x18]
cmp r13, 8
jb 0x1400b59fc
mov r10, qword [rcx]
mov r14, qword [rcx + 0x10]
cmp r14, rsi
jne 0x1400b5a40
mov r11, r14
test r14, r14
je 0x1400b5a4f
movzx ecx, word [r10]
movzx r9d, word [rdx]
cmp cx, r9w
jb 0x1400b5a40
sub r10, rdx
cmp cx, r9w
ja 0x1400b5a40
cmp r11, 1
je 0x1400b5a4f
dec r11
add rdx, 2
movzx ecx, word [rdx + r10]
movzx r9d, word [rdx]
cmp cx, r9w
jae 0x1400b5a22
mov rax, qword [rax]
mov rcx, qword [0x1405497e8]
jmp 0x1400b59be
lea rcx, [rax + 0x10]
cmp r13, 8
jb 0x1400b5a5c
mov rcx, qword [rcx]
lea rdx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rdx, qword [rbp - 0x30]
xor r13d, r13d
cmp rsi, r14
jne 0x1400b5aaf
test rsi, rsi
je 0x1400b5ab2
movzx r8d, word [rdx]
movzx r9d, word [rcx]
cmp r8w, r9w
jb 0x1400b5aaf
sub rdx, rcx
cmp r8w, r9w
ja 0x1400b5aaf
cmp rsi, 1
je 0x1400b5ab2
dec rsi
add rcx, 2
movzx r8d, word [rcx + rdx]
movzx r9d, word [rcx]
cmp r8w, r9w
jae 0x1400b5a8c
jmp 0x1400b5aaf
xor r13d, r13d
mov rax, r15
cmp rax, r15
jne 0x1400b5abc
mov al, r13b
jmp 0x1400b5ac4
mov ecx, dword [rax + 0x30]
mov dword [rbp - 0x50], ecx
mov al, 1
mov rcx, qword [rbp + 0x38]
lea rdx, str.ExtractPart_not_supported
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x20], al
mov r9d, 0x80070057
lea r8, str.amcorewcd_sourcegenericetw_src_fileextensionextracttransformer.cpp
mov edx, MsiGetActiveDatabase
call fcn.14006d3d8
nop
lea rcx, [rbp - 0x30]
call fcn.140055f70
mov rdx, qword [r12 + 8]
cmp qword [r12 + 0x10], rdx
je 0x1400b5b12
mov eax, dword [rbp - 0x50]
mov dword [rdx], eax
add qword [r12 + 8], 4
jmp 0x1400b5b1e
lea r8, [rbp - 0x50]
mov rcx, r12
call fcn.1400af650
add rdi, 0x20
cmp rdi, rbx
jne 0x1400b593c
mov rbx, qword [rbp - 0x48]
mov rdi, qword [rbx + 0x30]
mov rax, qword [rbx + 0x38]
sub rax, rdi
sar rax, 5
cmp rax, 1
jbe 0x1400b5b7b
mov rcx, qword [rbx + 0x70]
cmp qword [rbx + 0x68], rcx
sete dl
mov rcx, qword [rbp + 0x38]
lea rax, str.TargetFieldNames_should_not_be_empty
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x20], dl
mov r9d, 0x80070057
lea r8, str.amcorewcd_sourcegenericetw_src_fileextensionextracttransformer.cpp
mov edx, 0x30
call fcn.140060d74
nop
mov rax, rbx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140356560
mov rbx, qword [rsp + 0xd0]
add rsp, 0x80
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret