Function at 0x14002e8a0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x68], rcx
mov rax, qword [rcx]
mov qword [rsp + 0x70], rax
cmp rax, rdx
jle 0x14002e9f5
mov eax, dword [0x1402a9388]
mov r8d, dword [0x1402a938c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0xd1a7c518
mov ecx, eax
and ecx, 0x2c99f509
shl ecx, 1
mov edx, 0x8ef52841
xor edx, 0xa26cdd48
xor eax, edx
add eax, ecx
mov ecx, 0x959437f1
xor ecx, 0x6a7cbf59
or eax, ecx
mov ecx, 0x7603d684
xor ecx, 0x7c40b338
cmp eax, ecx
jb 0x14002ed57
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov r10d, dword [0x1402a9390]
mov eax, dword [0x1402a9394]
xor eax, 0xfb964aa0
imul r10d, eax
xor r10d, 0x2e4c8470
mov r8d, r10d
xor r8d, 0xffffffff
mov eax, 0xc1076a98
xor eax, 0x2ff6e0d
and eax, r8d
mov r9d, 0x50d34c9a
xor r9d, 0x932b480f
mov r8d, 0xf6e6eb63
xor r8d, 0x919149c
xor r9d, r8d
and r10d, r9d
mov r8d, 0xffffffff
xor r8d, 0xfe0dcb43
and r8d, 0xc3f80495
and r9d, 0xfe0dcb43
or eax, r10d
or r8d, r9d
xor eax, r8d
mov r8d, eax
xor r8d, 0x89c868af
mov r9d, 0xe9926fec
xor r9d, 0x166d9013
xor r8d, r9d
and r8d, 0x89c868af
shl r8d, 1
sub r8d, 0x89c868af
sub eax, r8d
mov qword [rcx], rdx
cmp eax, 0x30438edb
jbe 0x14002e934
jmp 0x14002ed4f
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x60]
cmp rax, rcx
jge 0x14002ed4f
mov rax, qword [rsp + 0x68]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x50], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x58], rax
cmp rax, 0
je 0x14002eb6e
mov eax, dword [0x1402a9398]
add eax, dword [0x1402a939c]
sub eax, 0x9f5c5c2d
sub eax, 0xd5c86ed8
add eax, 0x9f5c5c2d
or eax, 0x626521ea
mov edx, eax
xor edx, 0x26a50bfe
mov ecx, 0xa5da9118
xor ecx, 0x5a256ee7
xor edx, ecx
mov ecx, 0xd9728431
xor ecx, 0xffd78fcf
and ecx, edx
shl ecx, 1
sub ecx, 0x26a50bfe
sub eax, ecx
cmp eax, 0x3326de4d
jb 0x14002ed60
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
mov eax, dword [0x1402a93a0]
xor eax, 0xd29369ca
mov r8d, dword [0x1402a93a4]
mov r9d, 0xf122f6a0
xor r9d, 0xe5599048
xor r8d, r9d
add eax, r8d
imul edi, eax, 0xf5a01b31
sub edi, 0xe6b7f86b
mov r8d, edi
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x80b2c2ad
mov r9d, 0xffffffff
xor r9d, 0x1cec8252
mov eax, r8d
and eax, 0x1cec8252
and edi, r9d
mov r11d, r10d
and r11d, 0x1cec8252
mov esi, 0x1f57548c
xor esi, 0x9fe59621
and esi, r9d
or eax, edi
or r11d, esi
xor eax, r11d
or r8d, r10d
mov r10d, 0x2b4c2765
xor r10d, 0xd4b3d89a
xor r8d, r10d
or r9d, 0x1cec8252
and r8d, r9d
or eax, r8d
mov rcx, qword [rcx]
movabs r8, 0xa07c14383d041ea4
movabs r9, 0x1f83ebc7c2fbe15b
xor r8, r9
and rcx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xcd4636ee
ja 0x14002ed60
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x14002eb6e
jmp 0x14002ece9
mov rdx, qword [rsp + 0x70]
mov r8, qword [rsp + 0x60]
mov rcx, r8
sub rcx, rdx
mov qword [rsp + 0x40], rcx
mov rax, rcx
xor rax, r8
cmp rax, 0
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
mov dl, 1
xor dl, 0
xor al, dl
xor edx, edx
xor dl, 1
xor cl, dl
mov dl, 1
xor dl, 0
or al, cl
xor ecx, ecx
xor cl, 0
or cl, dl
xor al, 0xff
and al, cl
test al, 1
jne 0x14002ecdf
mov r11d, dword [0x1402a93a8]
mov eax, dword [0x1402a93ac]
xor eax, 0xd1850738
sub r11d, 0x7ad3753f
add r11d, eax
add r11d, 0x7ad3753f
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5ca6b25e
mov r8d, 0xffffffff
xor r8d, 0xd67be654
mov eax, ecx
and eax, 0xd67be654
and r11d, r8d
mov r9d, edx
and r9d, 0xd67be654
mov r10d, r8d
and r10d, 0x5ca6b25e
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xe437ede8
xor edx, 0x324c0bbc
or edx, r8d
and ecx, edx
or eax, ecx
add eax, 0xe1d5c63c
imul eax, eax, 0x19df1d00
cmp eax, 0x2e4bfa2b
jbe 0x14002ed69
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x1402a93b0]
mov r9d, 0x5ee9f02a
xor r9d, 0xddc939ac
xor eax, r9d
mov r9d, dword [0x1402a93b4]
mov r10d, 0x7c83b26b
xor r10d, 0x837c4d94
xor r9d, r10d
add eax, r9d
add eax, 1
or eax, 0xf64cb1e5
and eax, 0xe63ce99c
add eax, 0xfb4bfdb6
mov dword [rsp + 0x3c], eax
mov r9d, 1
mov qword [rsp + 0x20], 1
call fcn.140023a90
mov rcx, qword [rsp + 0x50]
mov rdx, rax
mov eax, dword [rsp + 0x3c]
mov qword [rcx], rdx
cmp eax, 0xc49b085
jb 0x14002ec57
jmp 0x14002ece9
call fcn.14000ee80
jmp 0x14002ed4f
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x60]
mov qword [rcx], rdx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x60]
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x28], rax
cmp rax, rcx
jge 0x14002ed4f
mov rdx, qword [rsp + 0x28]
mov rax, qword [rsp + 0x50]
mov rax, qword [rax]
mov byte [rax + rdx + 8], 0
mov rax, rdx
add rax, 1
xor rdx, 0xffffffffffffffff
mov rcx, rax
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x30], rax
jge 0x14002ed00
call fcn.14000ee80
nop
add rsp, 0x78
pop rdi
pop rsi
ret
xchg byte [rax - 0x2b168555], bl
sti
invalid
sub eax, 0xe9563518
sbb edi, ebp
invalid
and al, 0x46
xchg ebx, eax
jmp 0x14002ec57