Function at 0x1400a6690
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], rdi
push rbx
mov qword [rsp], r14
neg rsp
sub rsp, 0xffffffffffffffa0
neg rsp
movsxd rax, dword [rcx + 0x3c]
mov r11, r11
xchg r14, rbx
mov rbx, rdx
xchg rbx, r14
mov rsi, r8
xchg rbx, rcx
mov rcx, rbx
xchg rcx, rbx
mov edx, dword [rax + rcx + 0x98]
mov r9, r9
test edx, edx
je 0x1400a6776
cmp dword [rax + rcx + 0x9c], 0
mov dword [rsp - 0x40], edx
je 0x1400a6776
call fcn.1400a1bc0
xchg rbp, rax
mov rdi, rbp
xchg rbp, rax
test rax, rax
xchg rsp, rsp
je 0x1400a6776
movzx r8d, word [rax + 0xe]
xor ebp, ebp
mov dword [rsp - 0x2c], 0x17dd072
movzx ecx, word [rax + 0xc]
mov edx, ebp
add r8d, ecx
je 0x1400a6776
mov rsi, rsi
lea rcx, [rax + 0x10]
mov eax, dword [rcx]
test eax, eax
js 0x1400a6751
mov dword [rsp - 0x34], esp
cmp ax, 0x10
je 0x1400a67b0
inc edx
xchg r13, r13
nop
add rcx, 0x30e6158c
sub rcx, 0x30e61584
cmp edx, r8d
mov dword [rsp - 0x20], 0x404db148
jb 0x1400a6739
xor al, al
lea r11, [rsp + 0x60]
xchg r12, rbx
mov r12, qword [r11 + 0x28]
xchg rbx, r12
xchg rbp, r10
mov r10, qword [r11 + 0x30]
xchg rbp, r10
mov rsp, r11
nop
mov r14, qword [rsp]
add rsp, 8
nop
mov rdi, qword [rsp]
add rsp, 8
nop
mov rsi, qword [rsp]
add rsp, 8
ret
mov edx, dword [rcx + 4]
mov dword [rsp - 0x18], edi
test edx, edx
jns 0x1400a6776
btr edx, 0x1f
mov dword [rsp - 0xc], esp
add rdx, rdi
je 0x1400a6776
mov r8d, 0x7cd857ca
xor r8d, 0x4803f3cb
add r8d, 0x1c75f5d8
sub r8d, 0x515199d8
mov rcx, rdi
call fcn.1400a6c70
test rax, rax
mov dword [rsp - 0x2c], ecx
je 0x1400a6776
mov r8d, 0x7d6e9c
xor r8d, 0x197bbfd5
add r8d, 0xe4e1944
sub r8d, 0x1ec552c5
sub r8d, 0x88f93bf
xchg r15, rax
mov rdx, r15
xchg r15, rax
xchg rdi, rcx
mov rdi, rcx
xchg rdi, rcx
call fcn.1400a6c00
xchg rbp, rbp
test rax, rax
je 0x1400a6776
mov edx, dword [rax]
mov rcx, rbx
mov dword [rsp - 0x3c], ebx
call fcn.1400a1bc0
xchg r8, rax
mov rax, r8
xchg r8, rax
test rax, rax
xchg r10, r10
je 0x1400a6776
mov eax, 0x1c4e978e
add eax, 0x16d79978
xor eax, 0xaa38f95
sub eax, 0x3985be67
mov dword [rsp + 0x20], 0x48aba4f9
sub dword [rsp + 0x20], 0x2fcde54e
add dword [rsp + 0x20], 0x43cd4664
xor dword [rsp + 0x20], 0x5c99061b
mov word [rsp + 0x3c], ax
mov dword [rsp + 0x24], 0x71285ba
add dword [rsp + 0x24], 0x1fb2c597
xor dword [rsp + 0x24], 0x12dbd96f
xor dword [rsp + 0x24], 0x340b9202
mov dword [rsp + 0x28], 0x4095e26b
xor dword [rsp + 0x28], 0xcaf03b3
sub dword [rsp + 0x28], 0x1a55348b
xor dword [rsp + 0x28], 0x3eec4dda
sub dword [rsp + 0x28], 0xed6e090
mov dword [rsp + 0x2c], 0x7339339
xor dword [rsp + 0x2c], 0x65300c3d
xor dword [rsp + 0x2c], 0x1b9cc227
xor dword [rsp + 0x2c], 0x649763ee
sub dword [rsp + 0x2c], 0x1cfe3e9d
mov dword [rsp + 0x30], 0x3a759e56
add dword [rsp + 0x30], 0x217e1eab
add dword [rsp + 0x30], 0xe80729e
xor dword [rsp + 0x30], 0x6a5b2f92
mov dword [rsp + 0x34], 0x15bd4c78
xor dword [rsp + 0x34], 0x52d2dae6
add dword [rsp + 0x34], 0x2fdea9cc
xor dword [rsp + 0x34], 0x77444056
mov dword [rsp + 0x38], 0x57c07827
xor dword [rsp + 0x38], 0x19a18bf4
add dword [rsp + 0x38], 0x392c9b3
sub dword [rsp + 0x38], 0x51cdbd7a
xchg r12, rbp
mov qword [rsp + 0x80], r12
xchg rbp, r12
xchg r14, rax
mov r14, qword [rsp + 0x80]
xchg r14, rax
nop dword [rax]
mov dword [rsp - 0x38], 0x15bf79d9
nop word [rax + rax]
mov rcx, qword [rsp + 0x80]
xchg rsi, rax
mov rsi, qword [rsp + 0x80]
xchg rsi, rax
and cl, 3
mov dword [rsp - 0x44], ebx
shl cl, 3
movzx edx, word [rsp + rax*2 + 0x20]
mov eax, 0x30d14d67
sub eax, 0xf40b36d
add eax, 0x5860ed0c
xor eax, 0x3a92e644
shr eax, cl
mov dword [rsp - 0x20], 0x4192235
movzx ecx, al
xchg rsi, rax
mov rsi, qword [rsp + 0x80]
xchg rsi, rax
xor cx, dx
mov dword [rsp - 0x10], ecx
mov word [rsp + rax*2 + 0x3e], cx
xchg rcx, rax
mov rcx, qword [rsp + 0x80]
xchg rcx, rax
inc rax
mov qword [rsp + 0x80], rax
xchg r15, r15
xchg rdx, rax
mov rdx, qword [rsp + 0x80]
xchg rdx, rax
cmp rax, 0xf
mov dword [rsp - 0x1c], ebp
jb 0x1400a699d
lea rax, [r8 + 6]
mov word [rsp + 0x5c], bp
mov dword [rsp - 0x44], 0x50bf8c33
lea rdi, [rsp + 0x3e]
sub rdi, rax
nop word [rax + rax]
mov r11, r11
movzx edx, word [rax]
movzx ecx, word [rax + rdi]
sub edx, ecx
mov dword [rsp - 0x3c], 0x3e2e7e7d
jne 0x1400a6a7e
nop
sub rax, 0x1683447b
add rax, 0x1683447d
test ecx, ecx
jne 0x1400a6a52
xor eax, eax
mov dword [rsp - 0x24], 0x22de9e17
lea rdi, [rsp + 0x3e]
mov ecx, 0x34daceb7
add ecx, 0x151030c9
xor ecx, 0xe2f6277
xor ecx, 0x47c59df8
rep stosb byte [rdi], al
test edx, edx
mov r11, r11
jne 0x1400a6776
mov eax, dword [r8 + 0x28]
xor eax, 0x255e503b
cmp eax, 0xdbb15486
xchg rcx, rcx
jne 0x1400a6776
cmp dword [r8 + 0x2c], 0x10000
jne 0x1400a6776
mov dword [rsp - 0x24], 0x27b93379
mov eax, dword [r8 + 0x30]
mov dword [r14], eax
mov eax, dword [r8 + 0x34]
xchg r11, r11
mov dword [rsi], eax
mov al, 0x71
sub al, 0x53
add al, 0x52
xor al, 0x6f
sub al, 0x1e
jmp 0x1400a6778