Function at 0x1401b4f10
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2b0
mov rax, qword [0x140672360]
xor rax, rsp
mov qword [rsp + 0x2a0], rax
mov qword [rsp + 0x58], r8
mov r12, rdx
mov r14, rcx
xor esi, esi
mov r13d, esi
mov dword [rsp + 0x50], esi
mov eax, dword [rcx + 8]
test eax, eax
jne 0x1401b4f65
mov rcx, qword [rcx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401cd220.0]
jmp 0x1401b5512
cmp eax, 1
jne 0x1401b5643
xorps xmm0, xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x1d8], xmm1
mov qword [rsp + 0x1e8], rsi
xor eax, eax
movups xmmword [rsp + 0x268], xmm0
movups xmmword [rsp + 0x278], xmm0
movups xmmword [rsp + 0x288], xmm0
mov qword [rsp + 0x298], rax
lea rcx, [rsp + 0x268]
call fcn.14016ac40
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x230], xmm0
movups xmmword [rsp + 0x240], xmm0
movups xmmword [rsp + 0x250], xmm0
mov qword [rsp + 0x260], rax
lea rdx, [rsp + 0x230]
lea rcx, [rsp + 0x268]
call fcn.14016aa10
nop
cmp qword [r14 + 0x10], 0
je 0x1401b5619
cmp qword [r14 + 0x18], 0
je 0x1401b5619
mov r15, rsi
nop dword [rax]
mov rcx, qword [rsp + 0x258]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x1401cd220.0]
test al, al
je 0x1401b503a
cmp dword [rsp + 0x238], 0xff00
jne 0x1401b503a
xor al, al
jmp 0x1401b503c
mov al, 1
test al, al
je 0x1401b5301
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], rax
movdqu xmmword [rsp + 0x1f0], xmm0
mov qword [rsp + 0x200], rsi
mov qword [rsp + 0x208], 0xffffffffffffffff
mov dword [rsp + 0x210], 1
lea rdx, [rsp + 0x1f0]
lea rcx, [rsp + 0x230]
call fcn.14016ace0
mov rbx, qword [r14 + 0x18]
mov rax, qword [rsp + 0x208]
mov r10, qword [rsp + 0x1f8]
mov r11, qword [rsp + 0x1f0]
cmp rax, 0xffffffffffffffff
jne 0x1401b5110
mov rax, r10
sub rax, r11
sar rax, 3
mov r8d, 1
test rax, rax
je 0x1401b5108
lea rdi, [r11 - 8]
lea rdi, [rdi + rax*8]
mov r9, rax
nop dword [rax + rax]
mov rcx, qword [rdi]
lea rdx, [rcx - 1]
shr rdx, 0x3f
not rcx
shr rcx, 0x3f
and rdx, rcx
neg rdx
and r8, rdx
sub rax, r8
lea rdi, [rdi - 8]
sub r9, 1
jne 0x1401b50e0
mov qword [rsp + 0x208], rax
test rax, rax
jne 0x1401b511d
mov rax, rsi
jmp 0x1401b51eb
mov rsi, rax
shl rsi, 6
cmp rax, 0xffffffffffffffff
jne 0x1401b5180
mov rax, r10
sub rax, r11
sar rax, 3
mov r8d, 1
test rax, rax
je 0x1401b5178
lea rdi, [rax - 1]
lea rdi, [r11 + rdi*8]
mov r9, rax
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, [rcx - 1]
shr rdx, 0x3f
not rcx
shr rcx, 0x3f
and rdx, rcx
neg rdx
and r8, rdx
sub rax, r8
lea rdi, [rdi - 8]
sub r9, 1
jne 0x1401b5150
mov qword [rsp + 0x208], rax
lea rdx, [rax - 1]
sub r10, r11
sar r10, 3
cmp rdx, r10
jae 0x1401b5196
mov rdx, qword [r11 + rdx*8]
jmp 0x1401b5198
xor edx, edx
xor r8d, r8d
mov edi, 0x20
mov rax, rdx
mov rcx, rdi
shr rax, cl
lea rcx, [rax - 1]
shr rcx, 0x3f
not rax
shr rax, 0x3f
and rcx, rax
dec rcx
and ecx, 1
imul rcx, rdi
add r8, rcx
shr rdx, cl
shr rdi, 1
jne 0x1401b51a0
lea rax, [rdx - 0x40]
add rax, r8
add rax, rsi
mov rcx, rax
and ecx, 7
je 0x1401b51e9
sub rax, rcx
add rax, 8
xor esi, esi
shr rax, 3
cmp rax, rbx
ja 0x1401b5535
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x38], xmm1
mov qword [rsp + 0x48], rsi
test rbx, rbx
je 0x1401b5259
movabs rax, 0x7fffffffffffffff
cmp rbx, rax
ja 0x1401b556e
lfence
mov edx, 1
mov rcx, rbx
call fcn.140371340
test rax, rax
je 0x1401b5573
mov qword [rsp + 0x38], rax
lea rdi, [rax + rbx]
mov qword [rsp + 0x48], rdi
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.14035c350
mov qword [rsp + 0x40], rdi
jmp 0x1401b525e
mov rdi, qword [rsp + 0x40]
or r13d, 1
mov rdx, qword [rsp + 0x38]
sub rdi, rdx
mov r8, rdi
lea rcx, [rsp + 0x1f0]
call fcn.14017ad20
nop
mov r9, qword [rsp + 0x40]
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x1e0]
lea rcx, [rsp + 0x1d8]
call fcn.1401c9150
nop
mov rdx, qword [rsp + 0x38]
test rdx, rdx
je 0x1401b52ca
mov rcx, qword [rsp + 0x48]
sub rcx, rdx
mov rdi, rdx
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rdx
call fcn.1403683a0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rsi
inc r15
mov rdx, qword [rsp + 0x1f0]
test rdx, rdx
je 0x1401b5010
mov rcx, qword [rsp + 0x200]
sub rcx, rdx
and rcx, 0xfffffffffffffff8
mov rdi, rdx
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rdx
call fcn.1403683a0
jmp 0x1401b5010
mov r8, qword [r14 + 0x10]
cmp r15, r8
jne 0x1401b558f
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x218], xmm0
mov qword [rsp + 0x228], rax
mov r9, qword [r14 + 0x18]
lea rdx, [rsp + 0x1d8]
lea rcx, [rsp + 0x218]
call fcn.1401b4a70
nop
mov rdi, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x218]
sub rdi, rdx
cmp rdi, qword [rsp + 0x58]
jne 0x1401b55da
mov byte [rsp + 0x30], 0
test rdi, rdi
je 0x1401b538c
sub r12, rdx
nop dword [rax + rax]
movzx ecx, byte [r12 + rdx]
xor cl, byte [rdx]
movzx eax, byte [rsp + 0x30]
or al, cl
mov byte [rsp + 0x30], al
lea rdx, [rdx + 1]
sub rdi, 1
jne 0x1401b5370
movzx eax, byte [rsp + 0x30]
test al, al
jne 0x1401b55da
mov rcx, qword [r14]
mov r8, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1d8]
sub r8, rdx
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x1401cd220.0]
movzx ebx, al
mov rcx, qword [rsp + 0x218]
test rcx, rcx
je 0x1401b5415
mov rdx, qword [rsp + 0x228]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401b53fc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b55ce
call fcn.140359090
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x218], xmm0
mov qword [rsp + 0x228], rsi
mov rcx, qword [rsp + 0x260]
test rcx, rcx
je 0x1401b5434
mov rax, qword [rcx]
mov edx, 1
mov rax, qword [rax + 0x30]
call qword [case.0x1401cd220.0]
mov rdx, qword [rsp + 0x240]
test rdx, rdx
je 0x1401b546f
mov rcx, qword [rsp + 0x250]
sub rcx, rdx
mov rdi, rdx
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rdx
call fcn.1403683a0
mov qword [rsp + 0x240], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x248], xmm0
mov rcx, qword [rsp + 0x298]
test rcx, rcx
je 0x1401b548e
mov rax, qword [rcx]
mov edx, 1
mov rax, qword [rax + 0x30]
call qword [case.0x1401cd220.0]
mov rdx, qword [rsp + 0x278]
test rdx, rdx
je 0x1401b54c9
mov rcx, qword [rsp + 0x288]
sub rcx, rdx
mov rdi, rdx
xor eax, eax
rep stosb byte [rdi], al
mov rcx, rdx
call fcn.1403683a0
mov qword [rsp + 0x278], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x280], xmm0
mov rcx, qword [rsp + 0x1d8]
test rcx, rcx
je 0x1401b550b
mov rdx, qword [rsp + 0x1e8]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401b5506
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401b55d4
call fcn.140359090
movzx eax, bl
jmp 0x1401b5512
mov rcx, qword [rsp + 0x2a0]
xor rcx, rsp
call fcn.140359070
add rsp, 0x2b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rdx, str.encode_1363:_n_is_too_large_to_encode_properly
lea rcx, [rsp + 0x78]
call fcn.140073260
nop
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0xf8]
call fcn.1401c1860
lea rdx, [0x140669298]
lea rcx, [rsp + 0xf8]
call fcn.14035c4f0
nop
call fcn.1400710c0
lea rcx, [rsp + 0x60]
call fcn.140160250
lea rdx, [0x140669ad8]
lea rcx, [rsp + 0x60]
call fcn.14035c4f0
nop
lea rdx, str.PK_Verifier:_signature_size_invalid
lea rcx, [rsp + 0x98]
call fcn.140073260
nop
lea rdx, [rsp + 0x98]
lea rcx, [rsp + 0x130]
call fcn.1401c19c0
lea rdx, [0x140669518]
lea rcx, [rsp + 0x130]
call fcn.14035c4f0
nop
call fcn.140368068
nop
call fcn.140368068
nop
lea rdx, str.PK_Verifier:_signature_is_not_the_canonical_DER_encoding
lea rcx, [rsp + 0xb8]
call fcn.140073260
nop
lea rdx, [rsp + 0xb8]
lea rcx, [rsp + 0x168]
call fcn.1401c19c0
lea rdx, [0x140669518]
lea rcx, [rsp + 0x168]
call fcn.14035c4f0
nop
mov dword [rsp + 0x20], 0x6d75
lea r9, str.C:workspaceproductswindows_endpointprotectionhmpa_thirdparty_botanlib_botan_x64.cpp
lea r8, str.check_signature
lea rdx, [0x1405e4ea8]
lea rcx, str.m_parts___0__m_part_size___0
call fcn.1401bfc50
nop
lea rdx, str.PK_Verifier:_Invalid_signature_format_enum
lea rcx, [rsp + 0xd8]
call fcn.140073260
nop
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x1a0]
call fcn.1401c09a0
lea rdx, [0x140669460]
lea rcx, [rsp + 0x1a0]
call fcn.14035c4f0
int3