Function at 0x14022d070
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x1415ae918]
mov ecx, dword [0x1415ae91c]
mov r8d, ecx
not r8d
mov r9d, eax
and r9d, r8d
or r8d, eax
not r8d
imul r8d, r9d
mov r9d, eax
and r9d, ecx
or eax, ecx
imul eax, r9d
add eax, r8d
imul rax, rax, 0x83a0173
shr rax, 0x39
mov ecx, eax
not ecx
mov r8d, eax
and r8d, 2
and ecx, 0xa20f8305
imul ecx, r8d
mov r8d, eax
and r8d, 0xfffffffd
or eax, 0xa20f8305
imul eax, r8d
add eax, ecx
not eax
and eax, 0x9d9d3ea8
cmp eax, 0xf1d64539
jbe 0x14022d110
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
nop
mov eax, dword [0x1415ae920]
mov ecx, dword [0x1415ae924]
mov r8d, ecx
not r8d
mov r9d, eax
and r9d, r8d
or r8d, eax
not r8d
imul r8d, r9d
mov r9d, eax
and r9d, ecx
or eax, ecx
imul eax, r9d
add eax, r8d
mov ecx, eax
not ecx
or ecx, 0xc7196840
add eax, ecx
inc eax
mov ecx, eax
xor ecx, 0x59a13907
and eax, 0x265ec6f8
add eax, eax
sub eax, ecx
shr eax, 5
imul rcx, rax, 0x95d9671
shr rcx, 0x36
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov rdi, rsp
mov eax, 0x20
call fcn.14021cf50
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x8fbb0ad1
ja 0x14022d110
cmp rdx, 0xffffffffffffffff
je 0x14022d4a3
inc rdx
mov rax, qword [rsi]
lea r8, [rax + rax]
nop
mov r9d, dword [0x1415ae928]
mov ecx, dword [0x1415ae92c]
mov r10d, r9d
not r10d
and r10d, ecx
mov r11d, ecx
not r11d
and r11d, r9d
imul r11d, r10d
mov r10d, r9d
and r10d, ecx
or r9d, ecx
imul r9d, r10d
add r9d, r11d
mov ecx, r9d
xor ecx, 0xa45bf02d
or r9d, 0x5ba40fd2
and r9d, ecx
mov ecx, r9d
xor ecx, 0x5090abac
or r9d, 0xaf6f5453
and r9d, ecx
cmp r8, rdx
mov rcx, rdx
cmova rcx, r8
cmp r9d, 0xb8e8b67b
je 0x14022d1b0
movabs rdx, 0x2aaaaaaaaaaaaaa
nop word cs:[rax + rax]
mov r8d, dword [0x1415ae934]
add r8d, dword [0x1415ae930]
mov r9d, r8d
not r9d
mov r10d, r8d
and r10d, 0xcaee7e7c
and r9d, 0x35118183
imul r9d, r10d
mov r10d, r8d
and r10d, 0x35118183
or r8d, 0x35118183
imul r8d, r10d
add r8d, r9d
imul r8d, r8d, 0x42de895d
mov r9d, r8d
not r9d
or r9d, 0x2f5d8d6d
add r9d, r8d
inc r9d
cmp rcx, 5
mov r12d, 4
cmovae r12, rcx
xor r14d, r14d
cmp r12, rdx
setbe r8b
cmp r9d, 0x9f5a6633
ja 0x14022d230
mov ecx, r12d
not ecx
mov rdx, r12
and rdx, 0xffffffffffffffcf
and ecx, 0x30
imul rcx, rdx
mov edx, r12d
and edx, 0x30
mov r15, r12
or r15, 0x30
imul r15, rdx
mov r14b, r8b
test rax, rax
je 0x14022d3de
shl rax, 4
lea r8, [rax + rax*2]
mov eax, dword [0x1415ae938]
mov edx, dword [0x1415ae93c]
mov r9d, eax
xor r9d, edx
not r9d
and r9d, edx
add r9d, r9d
sub edx, r9d
add edx, eax
mov eax, edx
and eax, 0x425ef0f4
or edx, 0x425ef0f4
add edx, eax
xor edx, 0xd21380d0
imul eax, edx, 0x17002026
cmp eax, 0x4809694c
jae 0x14022d340
mov rax, qword [rsi + 8]
mov qword [rdi], rax
mov qword [rdi + 0x10], r8
nop word cs:[rax + rax]
mov eax, dword [0x1415ae940]
xor edx, edx
div dword [0x1415ae944]
add eax, 0x1119dbae
mov edx, eax
and edx, 0x5713840c
or eax, 0x5713840c
add eax, edx
and eax, 0x5e5869cb
mov rdx, qword [rsi + 8]
mov qword [rdi], rdx
mov qword [rdi + 0x10], r8
cmp eax, 0xec6460a6
ja 0x14022d340
nop dword [rax]
mov eax, dword [0x1415ae94c]
add eax, dword [0x1415ae948]
mov edx, eax
not edx
and edx, 0x4b33f378
and eax, 0xb4cc0c87
sub eax, edx
add eax, 0x79108f3d
mov edx, eax
not edx
mov r8d, eax
and r8d, 0x9fe4cf98
and edx, 0x601b3067
imul edx, r8d
mov r8d, eax
and r8d, 0x601b3067
or eax, 0x601b3067
imul eax, r8d
add eax, edx
cmp eax, 0xdd14d8f6
ja 0x14022d380
mov r13d, 8
jmp 0x14022d3e1
xor r13d, r13d
mov qword [rbp], rsi
add r15, rcx
shl r14, 3
xor eax, eax
test al, al
je 0x14022d410
mov qword [rdi + 8], r13
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
mov r8, r15
mov r9, rdi
call fcn.140219c20
add rsp, 0x20
nop
mov eax, dword [0x1415ae950]
xor eax, dword [0x1415ae954]
mov esi, eax
xor esi, 0x8a5f9512
and esi, eax
add esi, 0xa6cbf6bd
and esi, 0x8e77fd31
mov qword [rdi + 8], r13
sub rsp, 0x20
mov rcx, rbx
mov rdx, r14
mov r8, r15
mov r9, rdi
call fcn.14013a410
add rsp, 0x20
cmp esi, 0x44a89804
jb 0x14022d410
cmp qword [rbx], 0
jne 0x14022d480
mov rax, qword [rbx + 8]
mov rcx, qword [rbp]
mov qword [rcx + 8], rax
mov qword [rcx], r12
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x1415ae958]
add eax, dword [0x1415ae95c]
imul rax, rax, 0x66463a2d
shr rax, 0x3d
or eax, 0xd72cf8d8
cmp eax, 0x50e00f77
jb 0x14022d480
mov eax, dword [0x1415ae960]
mov ecx, dword [str.q_tz]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
add ecx, 0xf8aee7b2
and ecx, 0xabfbe568
imul eax, ecx, 0x18043d73
cmp eax, 0x1a46e56d
jne 0x14022d4e0
ud2
mov eax, dword [0x1415ae968]
xor edx, edx
div dword [0x1415ae96c]
mov ecx, eax
and ecx, 0x2420f603
add ecx, ecx
sub eax, ecx
ud2