Function at 0x1401f94d0
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
lea rbp, [rax - 0x118]
sub rsp, 0x1e0
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [0x1403bf028]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov r12d, r8d
mov r14, rdx
mov rdi, rcx
xor edx, edx
lea r8d, [rdx + 0x28]
lea rcx, [rsp + 0x78]
call fcn.140238d40
lea rax, [fcn.14001f310]
mov qword [rsp + 0x20], rax
lea r9, [0x1401f1790]
mov ebx, 3
mov r8d, ebx
lea edx, [rbx + 0x35]
lea rcx, [rbp - 0x10]
call fcn.140236ee4
lea rax, str.Token
mov qword [rbp - 0x10], rax
lea rax, [0x1402ca190]
mov qword [rbp - 8], rax
lea rax, str.CategoryName
mov qword [rbp + 0x28], rax
lea rax, str.CQNPGT
mov qword [rbp + 0x30], rax
xor r13d, r13d
mov byte [rbp + 0x59], r13b
lea rax, str.Severities
mov qword [rbp + 0x60], rax
lea rax, str.SMDB
mov qword [rbp + 0x68], rax
mov r8b, 1
mov rdx, r14
lea rcx, [rsp + 0x38]
call fcn.1401edb20
mov r8d, ebx
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x38]
call fcn.1401edc60
mov ebx, eax
lea rcx, [rsp + 0x38]
test eax, eax
jns 0x1401f920e
call fcn.1401edc00
jmp 0x1401f946e
call fcn.1401edc00
mov esi, r13d
cmp r12d, 0xe
jne 0x1401f92b8
cmp byte [rbp + 0x58], r13b
je 0x1401f9247
lea rbx, [rbp + 0x38]
cmp qword [rbp + 0x50], 8
cmovae rbx, qword [rbp + 0x38]
or rax, 0xffffffffffffffff
inc rax
cmp word [rbx + rax*2], r13w
jne 0x1401f9238
test rax, rax
jne 0x1401f9251
mov ebx, 0x80004005
jmp 0x1401f946e
mov rdx, rbx
mov rcx, rdi
call 0x1401f94d0
mov esi, eax
cmp eax, 0xc00
jb 0x1401f92b8
mov esi, 0x643
lea rax, vtable.Mso::Logging::StructuredObject_wchar_t_const____ptr64__1_.0
mov qword [rsp + 0x38], rax
lea rax, str.Category
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rbx
mov word [rsp + 0x50], r13w
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
lea rax, str.Unrecognized_category_specified_in_UlsCategorySeveritySource
mov qword [rsp + 0x20], rax
mov edx, 0x132
mov ecx, 0x1083195
mov r8d, 0xf
call fcn.140021310
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
xor r8d, r8d
xor edx, edx
call fcn.14000b6bc
mov qword [rsp + 0x38], rax
lea r8, [rbp + 0x70]
cmp qword [rbp + 0x88], 8
cmovae r8, qword [rbp + 0x70]
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.1401ed5ac
mov ebx, eax
test eax, eax
js 0x1401f9463
mov rax, qword [rdi + 0x78]
inc word [rax + 0x28]
movzx r14d, word [rax + 0x28]
mov r15, qword [rsp + 0x38]
mov rbx, qword [r15]
cmp rbx, r15
je 0x1401f937b
lea rdx, [rbx + 0x10]
cmp qword [rdx + 0x18], 8
jb 0x1401f9320
mov rdx, qword [rdx]
mov rcx, rdi
call fcn.1401f97f8
test al, al
je 0x1401f93a7
movzx r8d, r14w
cmp r12d, 0xe
jne 0x1401f935b
mov dword [rsp + 0x58], esi
mov byte [rsp + 0x5c], al
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x60], rax
lea rcx, [rdi + 0x100]
lea rdx, [rsp + 0x60]
call fcn.1401cb7d4
jmp 0x1401f9370
mov byte [rsp + 0x30], al
lea rcx, [rdi + 0x140]
lea rdx, [rsp + 0x30]
call fcn.1401cb9e8
mov rax, qword [rbx]
mov rbx, rax
cmp rax, r15
jne 0x1401f9312
mov byte [rbp - 0x6f], 1
movzx eax, r14w
mov qword [rsp + 0x78], rax
movups xmm0, xmmword [0x1403164c8]
movdqu xmmword [rbp - 0x80], xmm0
xor r8d, r8d
lea rdx, [rbp]
mov rcx, rdi
call fcn.1401f7e64
test eax, eax
js 0x1401f93b1
mov ebx, 0x80004005
jmp 0x1401f9463
xorps xmm0, xmm0
movdqa xmmword [rbp - 0x50], xmm0
lea rdx, [rbp]
lea rcx, [rbp - 0x60]
call fcn.14000b494
movups xmm6, xmmword [rsp + 0x78]
movaps xmmword [rbp - 0x40], xmm6
movups xmm7, xmmword [rbp - 0x78]
movaps xmmword [rbp - 0x30], xmm7
movsd xmm8, qword [rbp - 0x68]
movsd qword [rbp - 0x20], xmm8
lea r8, [rbp - 0x60]
lea rdx, [rsp + 0x60]
lea rcx, [rdi + 0x80]
call fcn.1401f8580
nop
mov rax, qword [rbp - 0x48]
cmp rax, 8
jb 0x1401f9434
lea rax, [rax*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rdx, rcx
cmp rax, 0x1000
jb 0x1401f942f
mov rcx, qword [rcx - 8]
sub rdx, rcx
lea rax, [rdx - 8]
cmp rax, 0x1f
ja 0x1401f94c2
call fcn.140261814
lea rcx, [rdi + 8]
mov rdx, qword [rcx + 8]
cmp qword [rcx + 0x10], rdx
je 0x1401f9456
movups xmmword [rdx], xmm6
movups xmmword [rdx + 0x10], xmm7
movsd qword [rdx + 0x20], xmm8
add qword [rcx + 8], 0x28
jmp 0x1401f9460
lea r8, [rsp + 0x78]
call fcn.1401bd604
mov ebx, r13d
lea rcx, [rsp + 0x38]
call fcn.14000b024
nop
lea r9, [fcn.14001f310]
mov edx, 0x38
lea r8d, [rdx - 0x35]
lea rcx, [rbp - 0x10]
call fcn.1402367dc
mov eax, ebx
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1402361b0
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x50]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140261a5c
nop
jmp 0x1401f94ca
nop
nop
nop
nop
nop
nop
mov r11, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
mov qword [r11 - 0x60], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rsi
mov rax, qword [0x1403bf028]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov r15, rdx
mov qword [rsp + 0x20], rcx
mov rdi, qword [rcx + 0x78]
movdqa xmm0, xmmword [0x140333fe0]
movdqu xmmword [rsp + 0x50], xmm0
xor ebx, ebx
mov word [rsp + 0x40], bx
lea rcx, [r11 - 0x58]
call fcn.14000b3a4
lea r8, [rsp + 0x40]
mov r9, qword [rsp + 0x40]
mov r12, qword [rsp + 0x58]
cmp r12, 8
cmovae r8, r9
movabs rcx, 0xcbf29ce484222325
mov r10, qword [rsp + 0x50]
lea r11, [r10 + r10]
mov edx, ebx
test r11, r11
je 0x1401f9578
movzx eax, byte [rdx + r8]
xor rcx, rax
movabs rbx, 0x100000001b3
imul rcx, rbx
inc rdx
cmp rdx, r11
jb 0x1401f955a
mov rsi, qword [rdi + 0xc8]
and rsi, rcx
add rsi, rsi
mov rax, qword [rdi + 0xb0]
mov qword [rsp + 0x30], rax
mov rbx, qword [rax + rsi*8]
mov r14, qword [rdi + 0xa0]
cmp qword [rax + rsi*8], r14
jne 0x1401f95a7
mov rax, r14
jmp 0x1401f95af
mov rax, qword [rax + rsi*8 + 8]
mov rax, qword [rax]
cmp rbx, rax
je 0x1401f967a
lea rax, [rbx + 0x10]
lea rcx, [rsp + 0x40]
cmp r12, 8
cmovae rcx, r9
mov rdi, qword [rax + 0x10]
mov r13, qword [rax + 0x18]
cmp r13, 8
jb 0x1401f95da
mov rax, qword [rax]
cmp rdi, r10
jne 0x1401f9618
mov r11, rdi
test rdi, rdi
je 0x1401f9625
movzx edx, word [rax]
movzx r8d, word [rcx]
cmp dx, r8w
jb 0x1401f9618
sub rax, rcx
cmp dx, r8w
ja 0x1401f9618
cmp r11, 1
je 0x1401f9625
dec r11
add rcx, 2
movzx edx, word [rcx + rax]
movzx r8d, word [rcx]
cmp dx, r8w
jae 0x1401f95fb
mov rbx, qword [rbx]
mov rax, qword [rsp + 0x30]
jmp 0x1401f959c
lea rax, [rbx + 0x10]
cmp r13, 8
jb 0x1401f9632
mov rax, qword [rax]
lea rcx, [rsp + 0x40]
cmp r12, 8
cmovae rcx, r9
cmp r10, rdi
jne 0x1401f967a
test r10, r10
je 0x1401f967d
movzx edx, word [rcx]
movzx r8d, word [rax]
cmp dx, r8w
jb 0x1401f967a
sub rcx, rax
cmp dx, r8w
ja 0x1401f967a
cmp r10, 1
je 0x1401f967d
dec r10
add rax, 2
movzx edx, word [rcx + rax]
movzx r8d, word [rax]
cmp dx, r8w
jae 0x1401f965d
mov rbx, r14
cmp r12, 8
jb 0x1401f96b4
lea rax, [r12*2 + 2]
mov rcx, r9
cmp rax, 0x1000
jb 0x1401f96ab
mov r9, qword [r9 - 8]
sub rcx, r9
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1401f97d9
mov rcx, r9
call fcn.140261814
nop
mov r13, qword [rsp + 0x20]
mov rcx, qword [r13 + 0x78]
cmp rbx, qword [rcx + 0xa0]
je 0x1401f96ce
mov eax, dword [rbx + 0x30]
jmp 0x1401f97b2
xor ebx, ebx
cmp ebx, 0xc00
jae 0x1401f97a6
cmp ebx, 0x952
jae 0x1401f96f1
lea rdi, str.Unit_Test
mov rdi, qword [rdi + rbx*8]
jmp 0x1401f96f8
lea rdi, str.Unknown_category
cmp rdi, r15
jne 0x1401f9701
xor eax, eax
jmp 0x1401f9722
test rdi, rdi
jne 0x1401f970b
or eax, 0xffffffff
jmp 0x1401f9722
test r15, r15
jne 0x1401f9716
lea eax, [r15 + 1]
jmp 0x1401f9722
mov rdx, r15
mov rcx, rdi
call fcn.140263880
nop
test eax, eax
jne 0x1401f979f
mov rsi, qword [r13 + 0x78]
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x28], ebx
mov rax, qword [rsi + 0xa0]
mov rdi, qword [rax]
mov r14, qword [rdi + 8]
lea r9, [rsp + 0x20]
mov r8, r14
mov rdx, rdi
call fcn.1401f9c58
mov rdx, qword [rsi + 0xa8]
movabs rcx, 0x492492492492491
sub rcx, rdx
cmp rcx, 1
jb 0x1401f97e3
inc rdx
mov qword [rsi + 0xa8], rdx
mov qword [rdi + 8], rax
mov qword [r14], rax
mov r9, qword [rsi + 0xa0]
mov r9, qword [r9]
lea r8, [r9 + 0x10]
lea rdx, [rsp + 0x20]
lea rcx, [rsi + 0x98]
call fcn.140045afc
mov eax, ebx
jmp 0x1401f97b2
inc ebx
jmp 0x1401f96d0
mov eax, 0xc00
jmp 0x1401f97b2
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1402361b0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.140261a5c
nop
jmp 0x1401f97e2
nop
lea rcx, str.list_T__too_long
call fcn.1402328c4
nop
jmp 0x1401f97f2
nop
nop
int3