Function at 0x1400bf1a0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rdi, rcx
mov dword [rsp + 0x78], 0
lea rcx, [rsp + 0x38]
lea r8, [rsp + 0x78]
call fcn.1400a1360
mov rbx, qword [rsp + 0x38]
mov rax, qword [rsp + 0x48]
cmp rax, 2
jne 0x1400bf248
nop dword [rax]
mov eax, dword [0x141dd54f8]
add eax, dword [0x141dd54fc]
imul rcx, rax, 0x461322e9
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1d
cmp eax, 0xc52d33e1
je 0x1400bf1e0
xor eax, eax
test al, al
je 0x1400bf220
mov qword [rdi + 8], rbx
mov dword [rdi], 1
nop word [rax + rax]
mov eax, dword [0x141dd5500]
imul eax, dword [0x141dd5504]
and eax, 0x9702808
mov qword [rdi + 8], rbx
mov dword [rdi], 1
cmp eax, 0xc82554be
je 0x1400bf220
jmp 0x1400bf5b0
mov r15, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
mov r13, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], rdx
mov edx, dword [0x141dd5470]
imul edx, dword [0x141dd5474]
mov r8, qword [rsp + 0x68]
mov qword [rsp + 0x30], r8
imul edx, edx, 0x62620efb
or edx, 0xdc37fbb7
cmp edx, 0xeee14f12
nop word [rax + rax]
mov edx, dword [0x141dd5478]
xor edx, dword [0x141dd547c]
or edx, 0x48f674a5
cmp edx, 0x62396152
je 0x1400bf290
mov rsi, qword [rsp + 0x70]
test rax, rax
je 0x1400bf2ba
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [0x141dd5480]
xor eax, dword [0x141dd5484]
imul eax, eax, 0x4bd318a4
xor eax, 0xb26432a2
cmp eax, 0xfb4fa7d6
jbe 0x1400bf2e6
mov rcx, rbx
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov r14, qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
nop dword [rax]
mov eax, dword [0x141dd5488]
add eax, dword [0x141dd548c]
imul ebp, eax, 0x2d90e6b3
mov rcx, rbx
mov edx, 0xffffffff
call r14
cmp ebp, 0x81e772f4
je 0x1400bf2f0
test eax, eax
je 0x1400bf35d
call qword [sym.imp.KERNEL32.dll_GetLastError]
nop
mov ecx, dword [0x141dd5490]
and ecx, dword [0x141dd5494]
imul ecx, ecx, 0xcfc2af20
add ecx, 0x864a220
or ecx, 0x63836074
cmp ecx, 0xe435048c
jbe 0x1400bf320
shl rax, 0x20
or rax, 2
mov qword [rdi + 8], rax
mov r14d, 1
jmp 0x1400bf425
mov dword [rsp + 0x38], 0
lea rdx, [rsp + 0x38]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x1400bf3ca
mov ecx, dword [rsp + 0x38]
nop dword [rax + rax]
mov eax, dword [0x141dd54a8]
xor edx, edx
div dword [0x141dd54ac]
or eax, 0xffff6fdd
xor eax, 0x3eee373c
cmp eax, 0xa703c327
jb 0x1400bf380
mov eax, dword [0x141dd54b0]
imul eax, dword [0x141dd54b4]
or eax, 0x2e084008
and eax, 0xae3ad889
imul rax, rax, 0x23bf06af
shr rax, 0x3c
cmp eax, 0x744c962a
jne 0x1400bf415
jmp 0x1400bf420
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x141dd5498]
sub ecx, dword [0x141dd549c]
imul ecx, ecx, 0xe86cd2e6
cmp ecx, 0xc288a1ef
je 0x1400bf3d0
nop word [rax + rax]
mov ecx, dword [0x141dd54a0]
add ecx, dword [0x141dd54a4]
xor ecx, 0x10202
and ecx, 0x1034a02
cmp ecx, 0x9175c5cf
je 0x1400bf3f0
jmp 0x1400bf346
mov dword [rdi + 4], ecx
xor r14d, r14d
test r14b, r14b
je 0x1400bf425
mov dword [rdi + 4], ecx
jmp 0x1400bf415
mov eax, dword [0x141dd54b8]
imul eax, dword [0x141dd54bc]
xor eax, 0x8bb340e0
mov ecx, 0xdf695bf9
imul rcx, rax
shr rcx, 0x3f
or ecx, 0xe688dc28
cmp ecx, 0x31e63336
jae 0x1400bf468
mov dword [rdi], r14d
mov r12, qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call r12
mov rcx, r15
call r12
mov rbp, qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov eax, dword [0x141dd54c0]
xor edx, edx
div dword [0x141dd54c4]
imul r12d, eax, 0xbe0a9ec2
mov dword [rdi], r14d
mov rcx, rbx
call rbp
mov rcx, r15
call rbp
cmp r12d, 0xf0a4985a
je 0x1400bf470
test r13, r13
je 0x1400bf4d9
mov rcx, qword [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
mov eax, dword [0x141dd54c8]
imul eax, dword [0x141dd54cc]
add eax, 0x442f4041
imul rax, rax, 0x7744ecd7
shr rax, 0x3e
add eax, 0x797b0c1b
cmp eax, 0x80444217
ja 0x1400bf4b0
mov eax, dword [0x141dd54d0]
xor edx, edx
div dword [0x141dd54d4]
nop word [rax + rax]
mov eax, dword [0x141dd54d8]
xor edx, edx
div dword [0x141dd54dc]
imul eax, eax, 0x1444e69
add eax, 0x78d15767
and eax, 0xd3197817
cmp eax, 0xdd2dbde9
ja 0x1400bf4f0
cmp qword [rsp + 0x30], 0
je 0x1400bf5b0
mov eax, dword [0x141dd54e0]
imul eax, dword [0x141dd54e4]
or eax, 0xe1113384
xor eax, 0xfb4537fd
add eax, 0x5e4b2b27
cmp eax, 0x4db5a0b6
jae 0x1400bf550
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax]
mov eax, dword [0x141dd54e8]
mov ecx, dword [0x141dd54ec]
lea edi, [rax + rcx]
add edi, 0x8780ef29
and edi, 0x401510c0
mov rcx, rsi
call rbp
cmp edi, 0xacf0d34a
ja 0x1400bf550
nop dword [rax + rax]
mov eax, dword [0x141dd54f0]
sub eax, dword [0x141dd54f4]
add eax, 0x9e448362
or eax, 0x594789f7
and eax, 0x7d47adff
cmp eax, 0x9b66ec3a
ja 0x1400bf580
nop word cs:[rax + rax]
mov eax, dword [0x141dd5508]
xor eax, dword [0x141dd550c]
add eax, 0xce888890
cmp eax, 0x9b840b3d
ja 0x1400bf5b0
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret