Function at 0x1400a3010
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x98
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x78], rdx
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rcx
call fcn.1400a2fd0
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
add rax, 0x50
mov qword [rsp + 0x80], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
cmp rdx, 0
je 0x1400a3355
mov rcx, qword [rsp + 0x60]
call fcn.1400a2669
mov ecx, eax
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x5c], ecx
cmp byte [rax], 0
jne 0x1400a3355
mov r9d, dword [rsp + 0x5c]
mov r8, qword [rsp + 0x78]
mov rax, qword [0x140276030]
mov ecx, 0xa69dba28
xor ecx, 0xa69d47c1
mov edx, 0xde940f89
xor edx, 0xde940f89
mov r10d, 0x449354d0
xor r10d, 0x449354d0
xor r11d, r11d
mov qword [rsp + 0x20], 0
mov dword [rsp + 0x28], r10d
call rax
mov ecx, eax
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x58], ecx
cmp byte [rax], 0
jne 0x1400a3355
mov eax, dword [0x14024fab8]
mov ecx, dword [0x14024fabc]
mov edx, 0x77378ade
xor edx, 0x670da3c7
xor ecx, edx
imul eax, ecx
mov ecx, 0xe3b91ef0
xor ecx, 0xc1a56926
or eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x99b01a15
mov ecx, 0xffffffff
xor ecx, 0x51190045
or eax, edx
or ecx, 0x51190045
mov edx, 0x5e0ecfe9
xor edx, 0xa1f13016
xor eax, edx
and eax, ecx
or eax, 0xff3df3e5
cmp eax, 0xc951890a
jbe 0x1400a3362
mov ecx, dword [rsp + 0x58]
mov eax, dword [0x14024fac0]
add eax, dword [0x14024fac4]
mov r8d, 0xdceb2fd0
xor edx, edx
div r8d
add eax, 0x2c6f6fde
mov edx, eax
add edx, 1
mov r8d, 0x503e7ce3
xor r8d, 0xafc1831c
xor eax, r8d
or eax, 0xedc7fe76
add eax, edx
movsxd rdx, ecx
mov qword [rsp + 0x48], rdx
cmp ecx, 0
setl cl
mov byte [rsp + 0x57], cl
cmp eax, 0x73d376a2
je 0x1400a3147
mov al, byte [rsp + 0x57]
test al, 1
jne 0x1400a31b1
jmp 0x1400a32a3
mov eax, dword [0x14024fac8]
add eax, dword [0x14024facc]
mov ecx, 0xc624b136
xor ecx, 0x3954659e
xor edx, edx
div ecx
mov r8d, eax
mov eax, 0x23b62e79
xor eax, 0xdc4c6535
xor r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xf10f1385
mov edx, 0xffffffff
xor edx, 0xf10f1385
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x61245ac
and ecx, 0xf10f1385
and edx, 0x61245ac
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xbd0f195d
xor ecx, 0xe67e4d78
cmp eax, ecx
je 0x1400a336b
mov rcx, qword [rsp + 0x48]
mov eax, dword [0x14024fad0]
mov edx, dword [0x14024fad4]
mov r8d, 0xe6ba1453
xor r8d, 0x9de8f6be
xor edx, r8d
xor eax, edx
or eax, 0x29fce7a0
add eax, 0x4571c004
sub eax, 0x601f3dc0
mov dword [rsp + 0x44], eax
movabs rdx, 0xf8130939b866ab67
movabs rax, 0xf8130939b866ab67
xor rdx, rax
movabs r8, 0x15f35a5af9fcaa25
movabs rax, 0x6a0ca5a5060355da
xor r8, rax
call fcn.14000d792
mov eax, dword [rsp + 0x44]
cmp eax, 0xc3a90e64
jae 0x1400a3226
jmp 0x1400a3355
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x70]
call fcn.1400a1c40
mov rax, qword [rsp + 0x80]
mov al, byte [rax]
mov cl, 0x16
xor cl, 0x16
cmp al, cl
jne 0x1400a3355
mov rcx, qword [rsp + 0x60]
call fcn.1400a2669
mov ecx, eax
mov rax, qword [rsp + 0x80]
mov dword [rsp + 0x40], ecx
cmp byte [rax], 0
jne 0x1400a3355
mov rax, qword [rsp + 0x70]
mov rcx, qword [rax]
mov qword [rsp + 0x88], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x90], rax
lea rcx, [rsp + 0x88]
call fcn.1400a2fde
mov rcx, rax
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x38], rcx
cmp byte [rax], 0
cmp byte [rax], al
jne 0x1400a3355
mov eax, dword [rsp + 0x58]
mov r10, qword [rsp + 0x38]
mov r9d, dword [rsp + 0x40]
mov r8, qword [rsp + 0x78]
mov ecx, 0xfde9
xor edx, edx
mov qword [rsp + 0x20], r10
mov dword [rsp + 0x28], eax
call qword [0x140276030]
mov rax, qword [rsp + 0x68]
add rsp, 0x98
ret
push 0xffffffff98c48148
add byte [rax], al
add bl, al
cmp esp, ecx
or al, 0x5d
jmp 0x1400a3147
movsd dword [rdi], dword [rsi]
jp 0x1400a3324
jle 0x1400a3359
mov dl, 0xfe
invalid