Function at 0x1400ac934
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x20
mov r14d, r8d
mov rsi, rdx
mov rdi, rcx
test r8d, r8d
je 0x1400ac978
test rdx, rdx
jne 0x1400ac985
lea r8, str.pbVal___NULL
mov edx, 0x2c6
lea rcx, str.base_stor_blbcatalog_atomtbl.cpp
call fcn.14008ac24
jmp 0x1400ac97d
test rsi, rsi
jne 0x1400ac985
or eax, 0xffffffff
jmp 0x1400acb46
xor eax, eax
test r8d, r8d
je 0x1400ac99f
mov r8, r14
movzx ecx, byte [rdx]
inc rdx
rol eax, 1
xor eax, ecx
sub r8, 1
jne 0x1400ac98f
mov r9, qword [rdi + 0x10]
xor edx, edx
div dword [rdi]
mov ebx, edx
mov r12d, edx
lea rcx, [rdx*8]
add r9, rcx
mov qword [rbp + 0x58], rcx
mov r15, qword [r9]
test r15, r15
jne 0x1400ac9de
mov r8d, r14d
mov rdx, rsi
mov rcx, rdi
call fcn.1400aee98
test eax, eax
js 0x1400acb5c
jmp 0x1400acb00
mov rax, qword [rdi + 0x18]
mov ecx, ebx
and ecx, 0x1f
shr r12, 5
mov r13d, 1
shl r13d, cl
test dword [rax + r12*4], r13d
je 0x1400acac1
mov r13d, dword [r15]
lea r8, [r15 + 8]
xor r12d, r12d
mov qword [rbp + 0x48], r8
test r13d, r13d
je 0x1400aca70
lea rcx, [0x140160218]
mov rdx, qword [r8]
cmp byte [rdx], 9
jne 0x1400aca60
lea rax, [rdx + 1]
and eax, 7
mov ecx, dword [rcx + rax*4]
mov r9d, dword [rcx + rdx + 1]
add rcx, 5
add rdx, rcx
mov eax, r9d
neg eax
sbb rcx, rcx
and rcx, rdx
cmp r9d, r14d
jne 0x1400aca59
mov r8d, r9d
mov rdx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
je 0x1400aca8c
mov r8, qword [rbp + 0x48]
lea rcx, [0x140160218]
add r8, 8
inc r12d
mov qword [rbp + 0x48], r8
cmp r12d, r13d
jb 0x1400aca18
lea r9, [rbp + 0x48]
mov r8d, r14d
mov rdx, rsi
mov rcx, rdi
call fcn.1400aee98
test eax, eax
js 0x1400acb70
jmp 0x1400aca97
shl ebx, 0xb
or ebx, r12d
jmp 0x1400acb44
mov r9, qword [rbp + 0x58]
mov rdx, r15
add r9, qword [rdi + 0x10]
mov rcx, rdi
mov r8, qword [rbp + 0x48]
call fcn.1400aeb48
test eax, eax
js 0x1400acb84
shl ebx, 0xb
or ebx, r13d
jmp 0x1400acb44
cmp byte [r15], 9
jne 0x1400acb05
lea rax, [r15 + 1]
and eax, 7
lea rcx, [0x140160218]
mov ecx, dword [rcx + rax*4]
mov r8d, dword [rcx + r15 + 1]
lea rdx, [rcx + 5]
add rdx, r15
mov eax, r8d
neg eax
sbb rcx, rcx
and rcx, rdx
cmp r8d, r14d
jne 0x1400acb05
mov rdx, rsi
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x1400acb05
shl ebx, 0xb
jmp 0x1400acb44
lea r9, [rbp + 0x48]
mov r8d, r14d
mov rdx, rsi
mov rcx, rdi
call fcn.1400aee98
test eax, eax
js 0x1400acb98
mov r9, qword [rbp + 0x58]
mov rdx, r15
add r9, qword [rdi + 0x10]
mov rcx, rdi
mov r8, qword [rbp + 0x48]
call fcn.1400af1f4
test eax, eax
js 0x1400acbac
mov rax, qword [rdi + 0x18]
shl ebx, 0xb
or dword [rax + r12*4], r13d
or ebx, 1
mov eax, ebx
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
lea rdx, [0x140176980]
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x50]
call sub.msvcrt.dll__CxxThrowException
int3
lea rdx, [0x140176980]
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x50]
call sub.msvcrt.dll__CxxThrowException
int3
lea rdx, [0x140176980]
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x50]
call sub.msvcrt.dll__CxxThrowException
int3
lea rdx, [0x140176980]
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x50]
call sub.msvcrt.dll__CxxThrowException
int3
lea rdx, [0x140176980]
mov dword [rbp + 0x50], eax
lea rcx, [rbp + 0x50]
call sub.msvcrt.dll__CxxThrowException
int3