Function at 0x1400d5a50
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
lea rbp, [rsp + 0x20]
mov rdi, r9
mov r11, rdx
mov rsi, rcx
mov eax, dword [0x141dd7d58]
imul eax, dword [0x141dd7d5c]
xor eax, 0x7b81dba2
add eax, 0xb4da95dc
and eax, 0xb386bac6
cmp eax, 0xe77066a8
jne 0x1400d5a9e
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov r9, rdi
shr r9, 1
lea rbx, [r9 + 1]
nop dword [rax + rax]
mov ecx, dword [0x141dd7d60]
and ecx, dword [0x141dd7d64]
xor ecx, 0xb448c218
or ecx, 0x3a638e6
mov eax, 0x10
call fcn.1400ef330
sub rsp, rax
mov r14, rsp
cmp ecx, 0x7ce8ecca
je 0x1400d5ab0
movabs r13, 0x7ffffffffffffffe
mov eax, dword [0x141dd7d68]
xor edx, edx
div dword [0x141dd7d6c]
mov eax, 0x891f0029
lea r12, [rbx + rbx]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd7d70]
or ecx, dword [0x141dd7d74]
imul rcx, rax
shr rcx, 0x3f
or ecx, 0x70f949e2
xor ecx, 0x23ff69c2
cmp ecx, 0x3866af1
jb 0x1400d5b10
nop dword [rax + rax]
cmp r12, r13
seta cl
test rbx, rbx
sets r10b
mov eax, dword [0x141dd7d78]
xor edx, edx
div dword [0x141dd7d7c]
xor eax, 0x55367975
imul eax, eax, 0x2fb6e656
add eax, 0xcc0f93d8
cmp eax, 0x6883c2d8
jb 0x1400d5b40
or r10b, cl
jne 0x1400d5c1b
test r12, r12
mov qword [rbp - 0x18], r9
je 0x1400d5c0d
mov eax, dword [0x141dd7d88]
and eax, dword [0x141dd7d8c]
xor eax, 0x88155a0c
or eax, 0xe20531
cmp eax, 0x5ecb69aa
jne 0x1400d5bac
movzx eax, byte [0x141ddb278]
mov qword [rbp], r11
mov qword [rbp - 8], r8
mov qword [rbp - 0x10], rdi
nop dword [rax + rax]
mov eax, dword [0x141dd7d90]
and eax, dword [0x141dd7d94]
add eax, 0x768b2701
xor eax, 0x10300000
and eax, 0x147462a1
movzx ecx, byte [0x141ddb278]
cmp eax, 0x17c4a474
je 0x1400d5bc0
mov eax, dword [0x141dd7d98]
add eax, dword [0x141dd7d9c]
or eax, 0x4f85f302
add eax, 0xa4edb6bd
or eax, 0xafa71646
cmp eax, 0x61bfddd
jae 0x1400d5c3d
jmp 0x1400d5c74
mov r15d, 2
xor r12d, r12d
jmp 0x1400d5c9f
ud2
ud2
mov eax, dword [0x141dd7da0]
xor eax, dword [0x141dd7da4]
and eax, 0xdd38410b
imul edi, eax, 0xcd64504b
or edi, 0xabd26e7
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400c0180
add rsp, 0x20
cmp edi, 0xbdde5c73
jne 0x1400d5c88
sub rsp, 0x20
xor ecx, ecx
mov rdx, r12
call fcn.1400c0180
add rsp, 0x20
jmp 0x1400d5c3d
mov r15, rax
mov r12, rbx
test rax, rax
mov rdi, qword [rbp - 0x10]
mov r8, qword [rbp - 8]
mov r11, qword [rbp]
je 0x1400d5c3b
mov qword [r14], 0
sub rsp, 0x30
mov qword [rsp + 0x20], r14
mov rcx, r11
mov rdx, r8
mov r8, r15
mov r9, rdi
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
add rsp, 0x30
test eax, eax
je 0x1400d5d85
mov rcx, qword [r14]
mov eax, dword [0x141dd7da8]
xor edx, edx
div dword [0x141dd7dac]
mov eax, 0x930f7535
nop word cs:[rax + rax]
mov edx, dword [0x141dd7db0]
and edx, dword [0x141dd7db4]
add edx, 0x871a1700
imul rdx, rax
shr rdx, 0x3f
cmp edx, 0xdab69051
ja 0x1400d5cf0
nop word cs:[rax + rax]
mov eax, dword [0x141dd7db8]
xor edx, edx
div dword [0x141dd7dbc]
or eax, 0xbf46c925
imul eax, eax, 0xd9ff97b5
or eax, 0x631c023
cmp eax, 0xb42398a4
je 0x1400d5d20
cmp rcx, rdi
jne 0x1400d5e21
mov rax, qword [rbp - 0x18]
mov word [r15 + rax*2], 0
mov eax, dword [0x141dd7dd8]
imul eax, dword [0x141dd7ddc]
and eax, 0x2801efe3
xor eax, 0x8e6a751e
add eax, 0x5540af
cmp eax, 0x1d8c4ac4
jae 0x1400d5e58
jmp 0x1400d5e85
mov eax, dword [0x141dd7dc0]
and eax, dword [0x141dd7dc4]
add eax, 0x6778e592
imul rax, rax, 0x5a6210d9
shr rax, 0x3e
cmp eax, 0x3810f06
jbe 0x1400d5db6
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetLastError]
add rsp, 0x20
mov rdi, qword [sym.imp.KERNEL32.dll_GetLastError]
nop dword [rax]
mov ebx, dword [0x141dd7dc8]
imul ebx, dword [0x141dd7dcc]
add ebx, 0x202f3dfb
or ebx, 0xa5e89a68
sub rsp, 0x20
call rdi
add rsp, 0x20
cmp ebx, 0x7fa20905
jb 0x1400d5dc0
lea rax, [0x141db994a]
nop word cs:[rax + rax]
mov ecx, dword [0x141dd7dd0]
sub ecx, dword [0x141dd7dd4]
imul ecx, ecx, 0xdea43441
cmp ecx, 0xe356c93c
je 0x1400d5e00
mov ecx, 0x1b
jmp 0x1400d5e2d
mov ecx, 0x3a
lea rax, [0x141db9910]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rcx
add r13, 2
mov qword [rsi], r13
mov rcx, qword [0x141ddb260]
sub rsp, 0x20
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
jmp 0x1400d5e92
mov eax, dword [0x141dd7de0]
sub eax, dword [0x141dd7de4]
and eax, 0xfacad62d
add eax, 0xf2b7a9a4
and eax, 0xc2621e64
mov qword [rsi], r12
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], rbx
cmp eax, 0x7fe7771b
jbe 0x1400d5e92
mov qword [rsi], r12
mov qword [rsi + 8], r15
mov qword [rsi + 0x10], rbx
jmp 0x1400d5e58
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret