Function at 0x1400a1620
Capabilities:
Encode data using xor

Disassembly:
push rbx
sub rsp, 0x80
mov qword [rsp + 0x58], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x68], rax
add rax, 0x60
mov qword [rsp + 0x60], rax
call fcn.14005989b
mov rcx, qword [rsp + 0x68]
mov byte [rsp + 0x77], al
xor eax, eax
cmp byte [rcx + 0x60], 0
mov qword [rsp + 0x78], rax
jne 0x1400a190e
mov al, byte [rsp + 0x77]
cmp al, 0xff
jle 0x1400a168a
mov al, byte [rsp + 0x77]
movzx eax, al
mov qword [rsp + 0x78], rax
jmp 0x1400a190e
mov al, byte [rsp + 0x77]
add al, 0x34
movzx ecx, al
mov qword [rsp + 0x50], rcx
sub al, 3
ja 0x1400a17da
mov rax, qword [rsp + 0x50]
lea rcx, [0x1400a1928]
movsxd rax, dword [rcx + rax*4]
add rax, rcx
jmp rax
mov rcx, qword [rsp + 0x58]
call fcn.14005989b
mov rcx, qword [rsp + 0x60]
mov cl, byte [rcx]
mov dl, 4
xor dl, 4
xor r8d, r8d
mov byte [rsp + 0x4e], r8b
cmp cl, dl
mov byte [rsp + 0x4f], al
je 0x1400a16e7
mov al, byte [rsp + 0x4e]
mov byte [rsp + 0x4f], al
mov al, byte [rsp + 0x4f]
movzx eax, al
mov qword [rsp + 0x78], rax
jmp 0x1400a190e
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x58]
mov qword [rsp + 0x40], rax
call fcn.140058eb2
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x60]
mov r11b, byte [rdx + 0x60]
rol ax, 8
mov bl, byte [rcx]
movzx eax, ax
mov ecx, eax
mov al, bl
xor al, 0xff
mov r8b, r11b
xor r8b, 0xff
mov r9b, 0xbe
xor r9b, 0xd
mov dl, 0x13
xor dl, 0xec
xor r9b, dl
mov r10b, 0x40
xor r10b, 0xf3
mov dl, al
and dl, r10b
and bl, r9b
mov r10b, r8b
and r10b, 0xb3
and r11b, r9b
or dl, bl
or r10b, r11b
xor dl, r10b
or al, r8b
xor al, 0xff
mov r8b, 0x6a
xor r8b, 0xd9
or r8b, r9b
and al, r8b
or dl, al
mov r8b, 8
xor r8b, 8
xor eax, eax
cmp dl, r8b
cmove rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x1400a190e
mov rcx, qword [rsp + 0x58]
call fcn.14009f7af
mov rcx, qword [rsp + 0x60]
mov dl, byte [rcx]
mov r8b, 0x70
xor r8b, 0x70
mov eax, eax
mov ecx, eax
xor eax, eax
cmp dl, r8b
cmove rax, rcx
mov qword [rsp + 0x78], rax
jmp 0x1400a190e
mov rcx, qword [rsp + 0x58]
call fcn.1400a1520
mov qword [rsp + 0x78], rax
jmp 0x1400a190e
mov eax, dword [0x140276b48]
mov ecx, dword [0x140276b4c]
add eax, 0xa55ef784
sub eax, ecx
sub eax, 0xa55ef784
mov ecx, 0x3e5c8abd
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0xd4939605
shl ecx, 1
add eax, 0xd4939605
sub eax, ecx
mov ecx, 0x5cf7f56a
xor ecx, 0x588a05e8
mov edx, eax
xor edx, ecx
xor edx, 0xffffffff
mov ecx, 0x2fb0957e
xor ecx, 0x2bcd65fc
and ecx, edx
shl ecx, 1
sub ecx, 0x47df082
sub eax, ecx
cmp eax, 0x3b0b5da2
jbe 0x1400a191c
mov eax, dword [str.jf]
xor eax, dword [0x140276b54]
mov ecx, 0xe388d9d4
xor ecx, 0xf53f1463
xor eax, ecx
and eax, 0x74bcaf34
mov ecx, 0x76af031
xor ecx, 0x6db57b77
mov edx, 0xb89a3041
xor edx, 0x4765cfbe
xor ecx, edx
add eax, ecx
add eax, 1
mov dword [rsp + 0x2c], eax
lea rcx, [0x140289778]
call fcn.1400a0559
mov rcx, qword [rsp + 0x60]
mov rdx, rax
mov eax, dword [rsp + 0x2c]
mov qword [rsp + 0x30], rdx
cmp byte [rcx], 0
sete cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x5507de92
je 0x1400a1842
mov cl, byte [rsp + 0x3f]
xor eax, eax
test cl, 1
mov qword [rsp + 0x78], rax
jne 0x1400a18cc
jmp 0x1400a190e
mov rcx, qword [rsp + 0x30]
movabs rax, 0x4d90174314753cc6
movabs rdx, 0x4d90174320dfdbde
xor rax, rdx
lea rdx, [0x1402896c5]
lea r8, [0x1402896f2]
lea r9, [0x1402896b5]
mov qword [rsp + 0x20], rax
call fcn.140028fa8
xor eax, eax
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
add rsp, 0x80
pop rbx
ret
adc al, 0x74
movsb byte [rdi], byte [rsi]
ret 0x1de9