Function at 0x140233c70
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 r8, rdx
mov rsi, rcx
mov eax, dword [0x141599bc8]
or eax, dword [0x141599bcc]
mov ecx, eax
not ecx
and ecx, 0xad491894
mov edx, eax
and edx, 0x52b6e76b
imul edx, ecx
mov ecx, eax
and ecx, 0xad491894
or eax, 0xad491894
imul eax, ecx
add eax, edx
add eax, 0x8dc0d1fe
or eax, 0x4cecce47
cmp eax, 0xd9fdee0e
ja 0x140233d14
mov eax, dword [0x141599bd0]
xor edx, edx
div dword [0x141599bd4]
mov ecx, eax
not ecx
or ecx, 0x6b40d444
or eax, 0x94bf2bbb
and eax, ecx
mov ecx, 0x931cc02d
imul rcx, rax
shr rcx, 0x3e
imul ecx, ecx, 0x49bf27a2
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x2d0d1106
jae 0x140233d23
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
jmp 0x140233cca
mov eax, 0x20
call fcn.14020e090
sub rsp, rax
mov rdi, rsp
mov rcx, qword [rsi]
lea rax, [rcx + rcx]
cmp rax, r8
cmova r8, rax
cmp r8, 5
mov r15d, 4
cmovae r15, r8
xor r14d, r14d
mov rax, r15
shr rax, 0x3a
sete r14b
test rcx, rcx
je 0x140233d94
mov eax, dword [0x141599bd8]
mov edx, dword [0x141599bdc]
mov r8d, eax
not r8d
and r8d, edx
not edx
and edx, eax
sub edx, r8d
add edx, 0x88b86dd1
xor edx, 0x61214c29
cmp edx, 0x3957ac99
jae 0x140233d9c
jmp 0x140233dfc
xor r13d, r13d
jmp 0x140233ea8
mov eax, dword [0x141599be0]
mov edx, dword [0x141599be4]
mov r8d, edx
not r8d
mov r9d, eax
and r9d, r8d
or r8d, eax
not r8d
imul r8d, r9d
mov r9d, eax
and r9d, edx
or eax, edx
imul eax, r9d
add eax, r8d
mov edx, eax
not edx
or edx, 0x10500094
or eax, 0xc224d200
and eax, edx
or eax, 0x2d8b2d6b
imul rax, rax, 0x4902cec7
shr rax, 0x3a
mov rdx, qword [rsi + 8]
mov qword [rbx], rdx
cmp eax, 0x62a8c0cf
jbe 0x140233e05
mov rax, qword [rsi + 8]
mov qword [rbx], rax
jmp 0x140233d9c
shl rcx, 5
mov eax, dword [0x141599be8]
xor edx, edx
div dword [0x141599bec]
mov edx, eax
xor edx, 0x10102018
xor eax, 0x66e81e41
mov r8d, eax
and r8d, 0xa987dda6
and edx, 0x56782259
imul edx, r8d
mov r8d, eax
and r8d, 0x56782259
or eax, 0x56782259
imul eax, r8d
add eax, edx
cmp eax, 0x9dc9a866
jne 0x140233e60
mov qword [rbx + 0x10], rcx
nop dword [rax + rax]
mov eax, dword [0x141599bf0]
mov edx, dword [0x141599bf4]
not eax
not edx
mov r8d, eax
or r8d, edx
not r8d
and edx, eax
or edx, r8d
not edx
or edx, 0xcf78df11
and edx, 0xfff8ff97
imul rax, rdx, 0x74fcd149
shr rax, 0x3e
mov qword [rbx + 0x10], rcx
cmp eax, 0xb0f5dbc0
ja 0x140233e60
mov r13d, 8
mov qword [rbp], r15
shl r15, 5
shl r14, 3
mov eax, dword [0x141599bf8]
mov ecx, dword [0x141599bfc]
add eax, ecx
add eax, 0x4f6aee5c
mov ecx, 0x8b1eca85
imul rcx, rax
shr rcx, 0x3f
imul eax, ecx, 0x3b114a0b
cmp eax, 0x7cfcd3c2
jne 0x140233f00
mov qword [rbx + 8], r13
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
mov r8, r15
mov r9, rbx
call fcn.14020b2a0
add rsp, 0x20
nop
mov eax, dword [0x141599c00]
add eax, dword [0x141599c04]
imul eax, eax, 0x83b05221
mov r12d, eax
xor r12d, 0xf784074c
and r12d, eax
add r12d, 0x1f93a4de
mov qword [rbx + 8], r13
sub rsp, 0x20
mov rcx, rdi
mov rdx, r14
mov r8, r15
mov r9, rbx
call fcn.14020b2a0
add rsp, 0x20
cmp r12d, 0xa7315fe8
ja 0x140233f00
cmp qword [rdi], 0
jne 0x140233fc0
mov r8, qword [rbp]
nop word cs:[rax + rax]
mov eax, dword [0x141599c10]
mov ecx, dword [0x141599c14]
mov edx, eax
and edx, ecx
xor eax, ecx
lea eax, [rax + rdx*2]
or eax, 0x2468cdfc
mov ecx, eax
xor ecx, 0x4101830
xor eax, 0x22c00184
or ecx, 0x3bc1a387
or eax, 0xc03e5448
and eax, ecx
cmp eax, 0xac1fcfea
ja 0x140233f60
mov rax, qword [rdi + 8]
mov qword [rsi + 8], rax
mov qword [rsi], r8
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141599c08]
xor eax, dword [0x141599c0c]
or eax, 0x10fbb5ed
add eax, 0x773fcf1c
not eax
or eax, 0x8070bf46
add eax, 0x2d26eedb
jb 0x140233fc0
ud2