Function at 0x140142b80
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov dword [rbp - 0x24], edx
mov qword [rbp - 0x18], rcx
mov eax, 0x10
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.1401426d0
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov qword [rbp - 0x10], rax
mov rcx, qword [rcx]
xor eax, eax
mov edx, eax
sub rdx, rcx
xor eax, eax
sub rax, 4
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rbp - 8], rax
mov r8, rcx
and r8, 0xffffffffffffffff
movabs rdx, 0xce42b7b68b5a4a71
movabs r9, 0xce42b7b68b5a4a73
xor rdx, r9
imul rdx, r8
movabs r8, 0xf976d471b2599158
movabs r9, 0x6892b8e4da66ea7
xor r8, r9
add rcx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140142c34
sub rsp, 0x20
call fcn.140008bc6
add rsp, 0x20
jmp 0x140142de1
mov rax, qword [rbp - 8]
cmp rax, 0
jge 0x140142c86
mov rcx, qword [rbp - 8]
movabs rdx, 0x4ea3eb4e5cef76a
movabs rax, 0x4ea3eb4e5cef76a
xor rdx, rax
movabs r8, 0x54ddb2c64761b18c
movabs rax, 0x2b224d39b89e4e73
xor r8, rax
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x140142de1
mov rcx, qword [rbp - 0x18]
mov rdx, qword [rbp - 8]
sub rsp, 0x20
call fcn.1400174d0
mov edx, dword [rbp - 0x24]
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x18]
add rsp, 0x20
mov dword [rax], edx
mov edx, 4
sub rsp, 0x20
call fcn.140142eb0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x10]
mov qword [rbp - 0x30], rcx
cmp byte [rax], 0
jne 0x140142de1
mov ecx, dword [0x14021f618]
mov eax, dword [0x14021f61c]
xor eax, 0x11667886
mov edx, 0xf84c1975
xor edx, 0x7b3e68a
xor eax, edx
add ecx, eax
add ecx, 1
mov eax, ecx
and eax, 0x9f4de13f
xor eax, 0xffffffff
and ecx, 0x9f4de13f
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov edx, 0xffffffff
xor edx, 0xa967b9aa
mov ecx, eax
and ecx, edx
mov r8d, 0xcc62972b
xor r8d, 0x65052e81
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
add eax, 0x13278143
sub eax, 0x750cb1ee
sub eax, 0x13278143
cmp eax, 0xbb882f33
jae 0x140142e99
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x30]
mov r8d, dword [0x14021f620]
mov eax, dword [0x14021f624]
xor eax, 0x9e2c730a
and r8d, eax
xor eax, eax
sub eax, 0xddbb5fa0
sub r8d, eax
mov eax, r8d
and eax, 0x6870cf2
mov r9d, 0x2806ecd2
xor r9d, 0x2806ecd0
imul eax, r9d
xor r8d, 0x6870cf2
add r8d, eax
mov r9d, 0x5bfeabc5
xor r9d, 0x699bbcca
mov eax, 0x45632bc7
xor eax, 0xba9cd438
xor r9d, eax
mov eax, r8d
xor eax, r9d
and eax, r8d
mov dword [rbp - 0x34], eax
mov r8d, 4
sub rsp, 0x20
call fcn.14014312e
mov eax, dword [rbp - 0x34]
add rsp, 0x20
cmp eax, 0xac29418f
ja 0x140142e99
jmp 0x140142de1
mov eax, dword [0x14021f628]
mov ecx, 0xa2a7a3c
xor ecx, 0xf9272f83
xor eax, ecx
mov ecx, dword [0x14021f62c]
xor ecx, 0x9daf9461
or eax, ecx
mov ecx, 0x5433d3d5
xor edx, edx
div ecx
xor eax, 0xff2315c8
imul eax, eax, 0x97b9ad26
mov ecx, 0xef43ce18
xor ecx, 0x8fca2adc
cmp eax, ecx
jbe 0x140142ea2
mov ecx, dword [0x14021f630]
xor ecx, 0x4f8edb7b
mov eax, dword [0x14021f634]
xor eax, 0x8c4a2f26
mov edx, 0x9f2b257
xor edx, 0xe8e546bd
sub ecx, edx
add ecx, eax
add ecx, 0xe117f4ea
or ecx, 0xd62e1813
mov eax, ecx
and eax, 0xb9f80fe0
mov edx, 0xc2320c11
xor edx, 0x3dcdf3ee
xor eax, edx
add ecx, 0xb9f80fe0
add ecx, 1
add ecx, eax
mov eax, ecx
and eax, 0xaee82141
or ecx, 0xaee82141
add eax, ecx
cmp eax, 0x1accafae
je 0x140142e29
shr edx, 0xf4
invalid
mov rsp, rbp
pop rbp
ret
push rcx
cmp al, byte [rbp - 0x15617]
call [rdi - 0x16558d5c]
jle 0x140142ea8
lahf
movsb byte [rdi], byte [rsi]
jb 0x140142e50
jmp 0x140142e29
invalid
invalid