Function at 0x1400abac0
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
lea rbp, [rsp - 0x60]
sub rsp, 0x160
mov rax, qword [0x14010d010]
xor rax, rsp
mov qword [rbp + 0x50], rax
mov qword [rsp + 0x78], r8
mov r13, rdx
mov qword [rbp - 0x48], rdx
mov qword [rbp - 0x68], rdx
mov edx, r9d
lea rcx, [rbp - 0x80]
call fcn.1400bb8f0
nop
lea rdx, [rbp + 0x18]
lea rcx, [0x1400fd940]
call fcn.1400acbf0
mov r14, rax
movsxd r12, dword [rax + 0x10]
cmp qword [rax + 0x18], 0x10
jb 0x1400abb28
mov r14, qword [rax]
xor esi, esi
test r14, r14
jne 0x1400abb36
mov edi, esi
mov r12d, esi
jmp 0x1400abb61
lea eax, [r12 + 1]
movsxd rcx, eax
test eax, eax
jne 0x1400abb47
mov rdi, rsi
jmp 0x1400abb4f
call fcn.1400dee90
mov rdi, rax
mov r8, r12
mov rdx, r14
mov rcx, rdi
call fcn.1400dc350
mov byte [r12 + rdi], sil
lea rax, [0x1400fdb18]
mov qword [rsp + 0x58], rax
mov eax, dword [rbp - 0x6c]
add eax, r12d
mov dword [rsp + 0x6c], eax
lea r14d, [rax + 1]
mov dword [rsp + 0x68], r14d
mov rbx, qword [rbp - 0x78]
je 0x1400abbf9
movsxd rcx, r14d
test r14d, r14d
jne 0x1400abb93
mov r15, rsi
jmp 0x1400abb9b
call fcn.1400dee90
mov r15, rax
mov qword [rsp + 0x60], r15
test rdi, rdi
je 0x1400abbca
mov r8, rdi
cmp byte [rdi], 0
je 0x1400abbb9
nop dword [rax]
inc r8
cmp byte [r8], 0
jne 0x1400abbb0
sub r8, rdi
inc r8
mov rdx, rdi
mov rcx, r15
call fcn.1400dc350
test rbx, rbx
je 0x1400abc02
mov ecx, r12d
add rcx, r15
mov r8, rbx
cmp byte [rbx], 0
je 0x1400abbe9
nop dword [rax]
inc r8
cmp byte [r8], 0
jne 0x1400abbe0
sub r8, rbx
inc r8
mov rdx, rbx
call fcn.1400dc350
jmp 0x1400abc02
mov qword [rsp + 0x60], rsi
mov dword [rsp + 0x68], esi
test rdi, rdi
je 0x1400abc0f
mov rcx, rdi
call fcn.1400dee7c
mov rdx, qword [rbp + 0x30]
cmp rdx, 0x10
jb 0x1400abc4a
inc rdx
mov rcx, qword [rbp + 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400abc45
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ac403
call fcn.1400d83b0
mov qword [rbp + 0x28], rsi
mov eax, 0xf
mov qword [rbp + 0x30], rax
mov byte [rbp + 0x18], 0
test rbx, rbx
je 0x1400abc68
mov rcx, rbx
call fcn.1400dee7c
mov rdi, qword [rsp + 0x78]
cmp dword [rdi + 8], 1
ja 0x1400abc99
mov qword [r13 + 0x10], 0
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [r13], xmm0
movsd xmm1, qword [rsp + 0x68]
movsd qword [r13 + 0x10], xmm1
mov rax, r13
jmp 0x1400ac3d6
mov ecx, 2
call fcn.1400dee90
mov r13, rax
mov qword [rsp + 0x50], rax
mov word [rax], 0x22
mov rdi, qword [rdi + 0x10]
mov ecx, 2
call fcn.1400dee90
mov rbx, rax
mov word [rax], 0x22
lea rax, [0x1400fdb18]
mov qword [rsp + 0x28], rax
mov ecx, dword [rdi + 0x2c]
add ecx, 2
mov dword [rsp + 0x3c], ecx
lea r14d, [rcx + 1]
mov dword [rsp + 0x38], r14d
je 0x1400abd8e
movsxd rcx, r14d
test r14d, r14d
jne 0x1400abd00
mov r13, rsi
mov qword [rsp + 0x30], rsi
mov r8, rbx
jmp 0x1400abd15
call fcn.1400dee90
mov r13, rax
mov qword [rsp + 0x30], rax
mov r8, rbx
cmp byte [rbx], 0
je 0x1400abd1e
inc r8
cmp byte [r8], 0
jne 0x1400abd15
sub r8, rbx
inc r8
mov rdx, rbx
mov rcx, r13
call fcn.1400dc350
mov rax, rdi
mov rdx, qword [rdi + 0x20]
test rdx, rdx
je 0x1400abd5e
lea rcx, [r13 + 1]
mov r8, rdx
cmp byte [rdx], 0
je 0x1400abd50
inc r8
cmp byte [r8], 0
jne 0x1400abd47
sub r8, rdx
inc r8
call fcn.1400dc350
mov rax, rdi
mov ecx, dword [rax + 0x2c]
inc ecx
add rcx, r13
mov r13, qword [rsp + 0x50]
mov r8, r13
cmp byte [r13], 0
je 0x1400abd7e
inc r8
cmp byte [r8], 0
jne 0x1400abd75
sub r8, r13
inc r8
mov rdx, r13
call fcn.1400dc350
jmp 0x1400abd97
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x38], esi
mov rcx, rbx
call fcn.1400dee7c
mov rcx, r13
call fcn.1400dee7c
mov ebx, 2
mov dword [rsp + 0x70], ebx
mov r13, qword [rsp + 0x78]
cmp dword [r13 + 8], ebx
jbe 0x1400ac173
nop
mov ecx, 2
call fcn.1400dee90
mov qword [rsp + 0x50], rax
mov word [rax], 0x22
mov ecx, ebx
lea rdx, [rcx + rcx*2]
mov rcx, qword [r13 + 0x10]
lea r13, [rcx + rdx*8]
mov qword [rbp - 8], rsi
mov ecx, 0xf
mov qword [rbp + 0x10], rcx
mov qword [rbp + 8], 2
lea rax, [rbp - 8]
movsx ecx, byte [rax]
add ecx, 0xb1cf18
lea rdx, [rbp - 8]
movsxd r14, dword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
mov eax, ecx
shr eax, 7
xor al, 0xbe
mov byte [rdx], al
imul eax, ecx, 0xbaf5
add eax, 0x907d7d1
shr eax, 7
xor al, 0xd1
mov byte [rdx + 1], al
lea r15, [rbp - 8]
cmp qword [rbp + 0x10], 0x10
setae byte [rsp + 0x20]
mov rax, qword [rbp - 8]
mov qword [rbp - 0x68], rax
jb 0x1400abe58
mov r15, rax
test rax, rax
jne 0x1400abe58
mov qword [rsp + 0x40], rsi
mov r12d, esi
jmp 0x1400abe91
mov r12, qword [rbp + 8]
lea eax, [r12 + 1]
movsxd rcx, eax
test eax, eax
jne 0x1400abe6d
mov rax, rsi
jmp 0x1400abe72
call fcn.1400dee90
mov qword [rsp + 0x40], rax
movsxd rbx, r12d
mov r8, rbx
mov rdx, r15
mov rcx, rax
call fcn.1400dc350
mov rax, qword [rsp + 0x40]
mov byte [rax + rbx], 0
mov eax, dword [r13 + 0x14]
inc eax
add eax, r12d
mov dword [rsp + 0x48], eax
lea ecx, [rax + 1]
mov dword [rsp + 0x24], ecx
mov ebx, ecx
je 0x1400abf51
movsxd rcx, ecx
test rcx, rcx
jne 0x1400abeba
mov r15, rsi
jmp 0x1400abec2
call fcn.1400dee90
mov r15, rax
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400abeee
mov r8, rax
cmp byte [rax], 0
je 0x1400abedd
inc r8
cmp byte [r8], 0
jne 0x1400abed4
sub r8, rax
inc r8
mov rdx, rax
mov rcx, r15
call fcn.1400dc350
mov rdx, qword [r13 + 8]
test rdx, rdx
je 0x1400abf19
mov ecx, r12d
add rcx, r15
mov r8, rdx
cmp byte [rdx], 0
je 0x1400abf0e
inc r8
cmp byte [r8], 0
jne 0x1400abf05
sub r8, rdx
inc r8
call fcn.1400dc350
mov ecx, dword [r13 + 0x14]
add ecx, r12d
add rcx, r15
mov r12, qword [rsp + 0x50]
mov r8, r12
cmp byte [r12], 0
je 0x1400abf3b
inc r8
cmp byte [r8], 0
jne 0x1400abf32
sub r8, r12
inc r8
mov rdx, r12
call fcn.1400dc350
mov eax, dword [rsp + 0x48]
mov ecx, ebx
jmp 0x1400abf5b
mov r15, rsi
mov ebx, esi
mov r12, qword [rsp + 0x50]
mov r13d, dword [rsp + 0x3c]
test r13d, r13d
jne 0x1400ac05a
test rdi, rdi
jne 0x1400abfa7
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x3c], eax
test ebx, ebx
je 0x1400abf9d
movsxd rcx, ebx
call fcn.1400dee90
mov rdi, rax
mov qword [rsp + 0x30], rax
mov r8d, ebx
mov rdx, r15
mov rcx, rax
call fcn.1400dc350
jmp 0x1400ac0f6
mov qword [rsp + 0x30], rsi
jmp 0x1400ac0f6
test r15, r15
jne 0x1400abfc3
mov rcx, rdi
call fcn.1400dee7c
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], r15
jmp 0x1400ac103
cmp ecx, r14d
jbe 0x1400ac03d
sub eax, r14d
inc eax
test r14d, r14d
je 0x1400ac017
lea ebx, [rax + r14]
movsxd rdx, ebx
cmp r14, rdx
je 0x1400ac011
test r14d, r14d
jne 0x1400abff4
mov rcx, rdx
call fcn.1400dee90
mov rdi, rax
mov dword [rsp + 0x38], ebx
jmp 0x1400ac038
mov rcx, rdi
test ebx, ebx
jne 0x1400ac009
call fcn.1400dee7c
mov rdi, rsi
mov dword [rsp + 0x38], ebx
jmp 0x1400ac038
call fcn.1400dee98
mov rdi, rax
mov dword [rsp + 0x38], ebx
jmp 0x1400ac038
lea r14d, [rax + 1]
movsxd rcx, r14d
test r14d, r14d
jne 0x1400ac028
mov rdi, rsi
jmp 0x1400ac030
call fcn.1400dee90
mov rdi, rax
mov dword [rsp + 0x38], r14d
mov byte [rdi], 0
mov qword [rsp + 0x30], rdi
mov ecx, dword [rsp + 0x48]
mov dword [rsp + 0x3c], ecx
mov r8d, dword [rsp + 0x24]
mov rdx, r15
mov rcx, rdi
call fcn.1400dc350
jmp 0x1400ac0f6
test eax, eax
je 0x1400ac0f6
test r14d, r14d
je 0x1400ac0b8
lea ebx, [rax + r14]
movsxd rdx, ebx
cmp r14, rdx
je 0x1400ac0ae
test r14d, r14d
jne 0x1400ac08d
mov rcx, rdx
call fcn.1400dee90
mov rdi, rax
mov dword [rsp + 0x38], ebx
mov eax, dword [rsp + 0x24]
jmp 0x1400ac0d8
mov rcx, rdi
test ebx, ebx
jne 0x1400ac0a6
call fcn.1400dee7c
mov rdi, rsi
mov dword [rsp + 0x38], ebx
mov eax, dword [rsp + 0x24]
jmp 0x1400ac0d8
call fcn.1400dee98
mov rdi, rax
mov dword [rsp + 0x38], ebx
mov eax, dword [rsp + 0x24]
jmp 0x1400ac0d8
movsxd rcx, ecx
test rcx, rcx
jne 0x1400ac0c5
mov rdi, rsi
jmp 0x1400ac0cd
call fcn.1400dee90
mov rdi, rax
mov eax, dword [rsp + 0x24]
mov dword [rsp + 0x38], eax
mov byte [rdi], 0
mov qword [rsp + 0x30], rdi
mov r8d, eax
lea rcx, [rdi + r13]
mov rdx, r15
call fcn.1400dc350
add r13d, dword [rsp + 0x48]
mov dword [rsp + 0x3c], r13d
test r15, r15
je 0x1400ac103
mov rcx, r15
call fcn.1400dee7c
mov rax, qword [rsp + 0x40]
test rax, rax
je 0x1400ac115
mov rcx, rax
call fcn.1400dee7c
cmp byte [rsp + 0x20], 0
je 0x1400ac152
mov rdx, qword [rbp + 0x10]
inc rdx
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400ac14c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ac409
call fcn.1400d83b0
nop
mov rcx, r12
call fcn.1400dee7c
mov ebx, dword [rsp + 0x70]
inc ebx
mov dword [rsp + 0x70], ebx
mov r13, qword [rsp + 0x78]
cmp ebx, dword [r13 + 8]
jb 0x1400abdc0
mov ecx, 0xf
mov qword [rbp - 0x10], rcx
mov r8d, 0xe
mov qword [rbp - 0x18], r8
xor edx, edx
mov qword [rbp - 0x28], rdx
mov dword [rbp - 0x20], edx
mov word [rbp - 0x1c], dx
mov byte [rbp - 0x1a], dl
lea rax, [rbp - 0x28]
movsx ecx, byte [rax]
add ecx, 0xb662fb
lea rdx, [rbp - 0x28]
mov r15, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x30]
movsxd r12, dword [rsp + 0x68]
lea r9, [0x1400fd950]
sub r9, rdx
mov eax, ecx
shr eax, 4
xor al, byte [r9 + rdx]
mov byte [rdx], al
imul ecx, ecx, 0xc6f5
add ecx, 0x9435a58
lea rdx, [rdx + 1]
sub r8, 1
jne 0x1400ac1c0
lea rax, [0x1400fdb18]
mov qword [rbp - 0x60], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x50], rax
cmp qword [rbp - 0x10], 0x10
setae byte [rsp + 0x20]
mov r13, qword [rbp - 0x28]
jb 0x1400ac21c
mov qword [rsp + 0x50], r13
test r13, r13
jne 0x1400ac21c
mov r14, rsi
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x50], r13
jmp 0x1400ac256
movsxd rbx, dword [rbp - 0x18]
lea eax, [rbx + 1]
mov dword [rbp - 0x50], eax
mov dword [rbp - 0x4c], ebx
movsxd rcx, eax
test eax, eax
jne 0x1400ac235
mov r14, rsi
jmp 0x1400ac23d
call fcn.1400dee90
mov r14, rax
mov qword [rbp - 0x58], r14
mov r8, rbx
mov rdx, qword [rsp + 0x50]
mov rcx, r14
call fcn.1400dc350
mov byte [rbx + r14], 0
lea rdx, [rsp + 0x28]
lea rcx, [rbp - 0x40]
call fcn.1400b07f0
mov r8, rax
lea rdx, [rbp - 0x60]
lea rcx, [rbp - 0x80]
call fcn.1400bb260
mov rax, qword [rbp - 0x78]
cmp dword [rsp + 0x6c], 0
jne 0x1400ac292
lea rdx, [rbp - 0x80]
lea rcx, [rsp + 0x58]
call fcn.1400bc1b0
jmp 0x1400ac338
mov ebx, dword [rbp - 0x6c]
test ebx, ebx
je 0x1400ac33c
test r12d, r12d
je 0x1400ac2f3
lea eax, [rbx + r12]
movsxd rdx, eax
cmp r12, rdx
je 0x1400ac2e9
test r12d, r12d
jne 0x1400ac2c8
mov rcx, rdx
call fcn.1400dee90
mov r15, rax
lea eax, [rbx + r12]
mov dword [rsp + 0x68], eax
jmp 0x1400ac315
mov rcx, r15
test eax, eax
jne 0x1400ac2e1
call fcn.1400dee7c
mov r15, rsi
lea eax, [rbx + r12]
mov dword [rsp + 0x68], eax
jmp 0x1400ac315
call fcn.1400dee98
mov r15, rax
lea eax, [rbx + r12]
mov dword [rsp + 0x68], eax
jmp 0x1400ac315
lea r12d, [rbx + 1]
movsxd rcx, r12d
test r12d, r12d
jne 0x1400ac304
mov r15, rsi
jmp 0x1400ac30c
call fcn.1400dee90
mov r15, rax
mov dword [rsp + 0x68], r12d
mov byte [r15], 0
mov qword [rsp + 0x60], r15
lea r8d, [rbx + 1]
mov r12d, dword [rsp + 0x6c]
lea rcx, [r15 + r12]
mov rdx, qword [rbp - 0x78]
call fcn.1400dc350
add r12d, ebx
mov dword [rsp + 0x6c], r12d
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x1400ac349
mov rcx, rax
call fcn.1400dee7c
lea r15, [0x1400fdb18]
mov qword [rbp - 0x40], r15
mov rcx, qword [rbp - 0x38]
test rcx, rcx
je 0x1400ac362
call fcn.1400dee7c
test r14, r14
je 0x1400ac36f
mov rcx, r14
call fcn.1400dee7c
cmp byte [rsp + 0x20], 0
je 0x1400ac3a6
mov rdx, qword [rbp - 0x10]
inc rdx
mov rax, r13
cmp rdx, 0x1000
jb 0x1400ac39e
add rdx, 0x27
mov r13, qword [r13 - 8]
sub rax, r13
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400ac3fd
mov rcx, r13
call fcn.1400d83b0
mov rbx, qword [rbp - 0x48]
mov qword [rbx + 0x10], 0
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rbx], xmm0
movsd xmm1, qword [rsp + 0x68]
movsd qword [rbx + 0x10], xmm1
test rdi, rdi
je 0x1400ac3d3
mov rcx, rdi
call fcn.1400dee7c
nop
mov rax, rbx
mov rcx, qword [rbp + 0x50]
xor rcx, rsp
call fcn.1400d8390
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1400ded50
nop
call fcn.1400ded50
nop
call fcn.1400ded50
int3