Function at 0x1400ae890
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rcx
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rax
add rax, 0x60
mov qword [rsp + 0x48], rax
mov qword [rcx], 0
mov qword [rcx + 8], 0
mov ecx, 8
call fcn.14009ced4
mov rcx, rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x58], rcx
mov cl, byte [rax + 0x60]
mov dl, 0x11
xor dl, 0x11
mov al, 1
cmp cl, dl
mov byte [rsp + 0x67], al
jne 0x1400aea87
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x30]
call fcn.1400ae6e0
mov rcx, qword [rsp + 0x48]
mov al, 1
cmp byte [rcx], 0
mov byte [rsp + 0x67], al
jne 0x1400aea87
mov eax, dword [0x1402771f8]
sub eax, dword [0x1402771fc]
mov r11d, eax
xor r11d, 0xffffffff
mov ecx, 0xcc4b769b
xor ecx, 0x7f118007
mov edx, 0x518b6d50
xor edx, 0xae7492af
xor ecx, edx
or r11d, ecx
xor eax, 0xffffffff
mov ecx, 0x3e1449f4
xor ecx, 0x8d4ebf68
mov edx, 0xcb02a184
xor edx, 0x34fd5e7b
xor ecx, edx
or eax, ecx
mov ecx, 0x5be4314b
xor ecx, 0xa41bceb4
xor r11d, ecx
xor eax, 0xffffffff
or r11d, eax
or r11d, 0x729d4931
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x32593431
mov edx, 0xffffffff
xor edx, 0x7f543e6d
mov eax, ecx
and eax, 0x7f543e6d
and r11d, edx
mov r9d, r8d
and r9d, 0x7f543e6d
mov r10d, 0x2c96c709
xor r10d, 0x1ecff338
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x660086dd
xor r8d, 0x99ff7922
xor ecx, r8d
or edx, 0x7f543e6d
and ecx, edx
or eax, ecx
mov ecx, 0x5e77be33
xor ecx, 0xf1bf9740
cmp eax, ecx
je 0x1400aec61
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x140277200]
xor eax, dword [0x140277204]
or eax, 0x5c521b5b
mov r8d, 0x8ac2baf1
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x58]
add edx, 0x54ab53c9
mov dword [rsp + 0x28], edx
mov rdx, qword [rax + 0x58]
mov qword [rsp + 0x68], rdx
mov rax, qword [rax + 0x60]
mov qword [rsp + 0x70], rax
lea rdx, [rsp + 0x68]
call fcn.1400344e0
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x28]
mov cl, byte [rcx]
mov byte [rsp + 0x2f], cl
cmp eax, 0x2fd0a665
je 0x1400aea12
mov al, byte [rsp + 0x2f]
mov byte [rsp + 0x67], al
jmp 0x1400aea87
mov al, byte [rsp + 0x67]
mov byte [rsp + 0x27], al
mov eax, dword [0x140277208]
xor eax, 0x21bdbd04
mov ecx, dword [0x14027720c]
xor ecx, 0x7155f7cf
xor edx, edx
div ecx
xor eax, 0x48f54d9f
mov ecx, eax
xor ecx, 0x3fef757f
mov edx, 0xb17071bc
xor edx, 0x4e8f8e43
xor ecx, edx
or eax, 0x3fef757f
and eax, ecx
mov ecx, eax
and ecx, 0x232ae5c9
shl ecx, 1
add eax, 0x232ae5c9
sub eax, ecx
cmp eax, 0x20f70faa
jb 0x1400aec6a
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x140277210]
or eax, dword [0x140277214]
mov r8d, 0xcf8f5f89
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x48]
sub edx, 0x433980bc
mov r9d, 0xc13f1826
xor r9d, 0x3ec0e7d9
mov r8d, edx
xor r8d, r9d
and r8d, 0x9366999d
mov r9d, 0xffffffff
xor r9d, 0x9366999d
and edx, r9d
sub edx, r8d
mov dword [rsp + 0x20], edx
mov dl, 0x30
xor dl, 0x30
mov byte [rax], dl
call fcn.14009c9a0
mov rcx, qword [rsp + 0x48]
mov eax, dword [rsp + 0x20]
mov cl, byte [rcx]
mov dl, 0x37
xor dl, 0x37
cmp cl, dl
sete cl
mov byte [rsp + 0x26], cl
cmp eax, 0x84a8b9d5
ja 0x1400aec6a
mov al, byte [rsp + 0x26]
test al, 1
jne 0x1400aeb83
jmp 0x1400aeb8e
mov rax, qword [rsp + 0x48]
mov cl, byte [rsp + 0x27]
mov byte [rax], cl
mov eax, dword [0x140277218]
mov ecx, dword [0x14027721c]
xor ecx, 0xb3b5e8ff
xor eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x5a77163c
mov r8d, 0xd8c9b3b2
xor r8d, 0x82bea58e
mov ecx, 0x94688656
xor ecx, 0x6b9779a9
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x5a77163c
or eax, 0x5a77163c
imul eax, edx
add eax, ecx
sub eax, 0x516a0bc0
add eax, 0x310a2851
add eax, 0x516a0bc0
mov ecx, 0xda16283c
xor edx, edx
div ecx
mov ecx, 0xa0db3089
xor ecx, 0xe543595c
cmp eax, ecx
je 0x1400aec73
mov eax, dword [0x140277220]
add eax, dword [0x140277224]
mov ecx, 0xbdc974f6
xor edx, edx
div ecx
add eax, 0xb368821
mov edx, 0xffffffff
xor edx, 0x739c93ec
mov ecx, eax
and ecx, edx
mov r8d, 0xa13ce069
xor r8d, 0xd2a07385
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
cmp eax, 0x97881ca4
je 0x1400aec73
mov rax, qword [rsp + 0x38]
add rsp, 0x78
ret
pop rdi
insd dword [rdi], dx
mov ebx, 0xfda8e9ff
invalid
hlt
mov edi, 0xe9f10373
xchg ecx, eax
invalid