Function at 0x1400e3e60
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x50
mov rsi, rcx
xor ecx, ecx
xor edx, edx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov edi, eax
mov eax, 0xa4431787
nop word cs:[rax + rax]
mov ecx, dword [0x141f46e48]
or ecx, dword [0x141f46e4c]
xor ecx, 0x48c10088
or ecx, 0x313a9b23
imul rcx, rax
shr rcx, 0x3f
cmp ecx, 0xe2e07abf
ja 0x1400e3e90
test edi, edi
js 0x1400e4099
mov eax, dword [0x141f46e58]
add eax, dword [0x141f46e5c]
imul eax, eax, 0xbf29b21a
cmp eax, 0x72233855
jne 0x1400e3f16
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 0
xor ecx, ecx
mov edx, 0xffffffff
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
mov rbx, qword [sym.imp.ole32.dll_CoInitializeSecurity]
nop dword [rax]
mov ebp, dword [0x141f46e60]
xor ebp, dword [0x141f46e64]
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x38], 0
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 0
xor ecx, ecx
mov edx, 0xffffffff
xor r8d, r8d
xor r9d, r9d
call rbx
cmp ebp, 0xea1d1e3c
je 0x1400e3f20
mov edi, eax
nop
mov eax, dword [0x141f46e68]
add eax, dword [0x141f46e6c]
or eax, 0x592fe97f
imul eax, eax, 0x7b588261
cmp eax, 0x8c24c17f
ja 0x1400e3f70
test edi, edi
jns 0x1400e41e3
mov eax, dword [0x141f46e70]
add eax, dword [0x141f46e74]
imul rax, rax, 0x3d91fceb
shr rax, 0x3d
imul eax, eax, 0x2f661a2c
add eax, 0x7a04871d
cmp eax, 0x20e098d3
jae 0x1400e3fd5
mov qword [rsp + 0x48], 0
lea rdx, [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.oleaut32.dll_GetErrorInfo]
mov r14d, 0x859d0f27
lea rbx, [rsp + 0x48]
mov r15, qword [sym.imp.oleaut32.dll_GetErrorInfo]
nop word [rax + rax]
mov r12d, dword [0x141f46e78]
sub r12d, dword [0x141f46e7c]
add r12d, 0xc4c3dda7
xor r12d, 0x4c60ea09
imul r12, r14
shr r12, 0x3f
mov qword [rsp + 0x48], 0
xor ecx, ecx
mov rdx, rbx
call r15
cmp r12d, 0xf64e8146
ja 0x1400e3ff0
mov rbx, qword [rsp + 0x48]
test rbx, rbx
je 0x1400e41d7
nop dword [rax]
mov eax, dword [0x141f46e80]
sub eax, dword [0x141f46e84]
imul eax, eax, 0x74112a6b
or eax, 0x87a53b9b
imul rax, rax, 0x25301f83
shr rax, 0x3d
cmp eax, 0xe47db10e
ja 0x1400e4040
mov r14, qword [rbx]
mov eax, dword [0x141f46e88]
mov ecx, dword [str.ikWJ]
add eax, ecx
add eax, 0xda6d7d46
xor eax, 0xad7a2d0c
add eax, 0xf108b132
cmp eax, 0xc7067f83
jbe 0x1400e4176
jmp 0x1400e419e
mov qword [rsp + 0x48], 0
lea rdx, [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.oleaut32.dll_GetErrorInfo]
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x1400e40d8
mov r8, qword [rcx]
mov eax, dword [0x141f46e50]
xor edx, edx
div dword [0x141f46e54]
xor eax, eax
nop dword [rax]
test al, al
jne 0x1400e40d0
call qword [r8 + 0x10]
mov eax, dword [0x141f46ea0]
imul eax, dword [0x141f46ea4]
imul eax, eax, 0x91348bd2
cmp eax, 0xdc2455c0
je 0x1400e411e
mov eax, dword [0x141f46ea8]
sub eax, dword [0x141f46eac]
imul rax, rax, 0x57efb467
shr rax, 0x3e
imul eax, eax, 0xad298ca0
xor eax, 0x7491e5c9
mov byte [rsi], 0
cmp eax, 0x5738196c
jae 0x1400e4123
mov byte [rsi], 0
jmp 0x1400e40f2
mov eax, dword [0x141f46eb0]
xor eax, dword [0x141f46eb4]
and eax, 0x2cef1f2d
imul eax, eax, 0x8ec6cdcc
add eax, 0x993ae22d
cmp eax, 0x110713d7
jb 0x1400e4171
mov eax, dword [0x141f46eb8]
imul eax, dword [0x141f46ebc]
xor eax, 0x44022230
or eax, 0x99a5058b
imul eax, eax, 0xf8d3afbe
mov dword [rsi + 4], edi
cmp eax, 0xb28a4d48
jne 0x1400e4270
mov dword [rsi + 4], edi
jmp 0x1400e4146
mov ebp, dword [0x141f46e90]
imul ebp, dword [0x141f46e94]
or ebp, 0x8049d226
add ebp, 0x765e051e
mov rcx, rbx
call qword [r14 + 0x10]
cmp ebp, 0x5c099d42
jbe 0x1400e41b0
mov rcx, rbx
call qword [r14 + 0x10]
jmp 0x1400e4176
mov eax, dword [0x141f46e98]
add eax, dword [0x141f46e9c]
imul rcx, rax, 0x2b71b9c5
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
cmp eax, 0x44c7926
je 0x1400e41b0
cmp edi, 0x80010119
jne 0x1400e429e
mov eax, dword [0x141f46ee0]
xor eax, dword [0x141f46ee4]
or eax, 0x18e6d9c7
imul rax, rax, 0x4c037937
shr rax, 0x3b
cmp eax, 0x5e3bc8d0
jne 0x1400e4210
mov byte [rsi], 0x12
nop dword [rax]
mov eax, dword [0x141f46ee8]
or eax, dword [0x141f46eec]
or eax, 0x151177cb
add eax, 0xcd393075
or eax, 0x6738741e
mov byte [rsi], 0x12
cmp eax, 0x4c38521d
je 0x1400e4210
mov eax, 0x809a5de7
nop word [rax + rax]
mov ecx, dword [0x141f46ef0]
imul ecx, dword [0x141f46ef4]
add ecx, 0x163d1476
and ecx, 0xed23b930
imul rcx, rax
shr rcx, 0x3d
cmp ecx, 0xbc867c87
ja 0x1400e4240
nop dword [rax]
mov eax, dword [0x141f46ef8]
xor edx, edx
div dword [0x141f46efc]
or eax, 0xa9a35484
add eax, 0x2a599912
cmp eax, 0xdcce055
jb 0x1400e4270
add rsp, 0x50
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov eax, dword [0x141f46ec0]
xor eax, dword [0x141f46ec4]
or eax, 0x1fca1aec
add eax, 0x84c99f3d
imul rax, rax, 0x5f823801
shr rax, 0x3d
cmp eax, 0xa3789fef
je 0x1400e42e6
mov eax, dword [0x141f46ec8]
sub eax, dword [0x141f46ecc]
or eax, 0x49aa2a62
add eax, 0xfffb1d1d
mov byte [rsi], 0
cmp eax, 0xcb69a625
jae 0x1400e42eb
mov byte [rsi], 0
jmp 0x1400e42c6
mov eax, dword [0x141f46ed0]
add eax, dword [0x141f46ed4]
or eax, 0x72fad463
and eax, 0xfefad467
cmp eax, 0x79dd3ac4
jbe 0x1400e4310
mov dword [rsi + 4], edi
nop dword [rax + rax]
mov eax, dword [0x141f46ed8]
imul eax, dword [0x141f46edc]
add eax, 0xf396db39
and eax, 0x6bf1771e
add eax, 0xa7ba280c
mov dword [rsi + 4], edi
cmp eax, 0x1c2539e8
jae 0x1400e4310
jmp 0x1400e4270