Function at 0x140133dd0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rsi, rcx
mov eax, dword [0x14022a340]
and eax, dword [0x14022a344]
mov ecx, eax
xor ecx, 0xb9b86e5f
and ecx, eax
xor ecx, 0xdbd3e19c
mov eax, 0xa0c78521
imul rax, rcx
shr rax, 0x3a
cmp eax, 0x9e358ea9
jne 0x140133e20
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
nop dword [rax]
mov eax, dword [0x14022a348]
xor edx, edx
div dword [0x14022a34c]
add eax, 0x140f0324
or eax, 0xd158a7c5
mov ecx, eax
and ecx, 0x61227707
xor eax, 0x61227707
lea ecx, [rax + rcx*2]
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov r14, rsp
cmp ecx, 0xff516e30
ja 0x140133e20
mov eax, 0x10
call fcn.1401516e0
sub rsp, rax
mov rbx, rsp
sub rsp, 0x20
xor ecx, ecx
xor edx, edx
call qword [sym.imp.ole32.dll_CoInitializeEx]
add rsp, 0x20
test eax, eax
js 0x140134065
sub rsp, 0x50
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]
add rsp, 0x50
mov edi, eax
nop word cs:[rax + rax]
mov eax, dword [0x14022a380]
sub eax, dword [0x14022a384]
or eax, 0x7dfeefee
cmp eax, 0x6ee26dd
je 0x140133ee0
test edi, edi
jns 0x140134000
mov qword [r14], 0
sub rsp, 0x20
xor ecx, ecx
mov rdx, r14
call qword [sym.imp.oleaut32.dll_GetErrorInfo]
add rsp, 0x20
mov rcx, qword [r14]
test rcx, rcx
je 0x140133fc0
nop word cs:[rax + rax]
mov eax, dword [0x14022a388]
xor eax, dword [0x14022a38c]
add eax, 0x60833195
cmp eax, 0xc0fb2c39
ja 0x140133f30
mov rax, qword [rcx]
sub rsp, 0x20
call qword [rax + 0x10]
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x14022a390]
xor eax, dword [0x14022a394]
mov ecx, eax
xor ecx, 0x43effb00
xor eax, 0x80000e3
and eax, 0xae6c3e3
mov edx, ecx
and edx, 0xf5193c1c
imul edx, eax
mov eax, ecx
and eax, 0xae6c3e3
or ecx, 0xae6c3e3
imul ecx, eax
add ecx, edx
mov eax, ecx
and eax, 0x1f123b14
add eax, eax
sub ecx, eax
add ecx, 0x9f123b14
cmp ecx, 0x5028d9a4
ja 0x140133f60
nop word cs:[rax + rax]
mov eax, dword [0x14022a3a8]
xor edx, edx
div dword [0x14022a3ac]
imul eax, eax, 0xb0e4dfaa
xor eax, 0x41461024
or eax, 0xb480af19
cmp eax, 0x5f6413c1
jb 0x140133fc0
xor eax, eax
nop word [rax + rax]
test al, al
jne 0x140133ff0
cmp edi, 0x80010119
jne 0x1401340b0
mov eax, dword [0x14022a3c8]
mov ecx, dword [0x14022a3cc]
mov edx, ecx
not edx
and edx, eax
xor ecx, eax
add ecx, eax
sub ecx, edx
mov eax, ecx
not eax
and eax, 0xf7575f7f
mov edx, ecx
and edx, 0x8a8a080
imul edx, eax
mov eax, ecx
and eax, 0xf7575f7f
or ecx, 0xf7575f7f
imul ecx, eax
add ecx, edx
imul eax, ecx, 0xc5211a2e
mov ecx, eax
not ecx
and ecx, 0x7318d3c4
and eax, 0x8ce72c3a
sub eax, ecx
cmp eax, 0xf6e5be1a
jne 0x1401343d5
jmp 0x1401343f9
mov edi, eax
mov eax, dword [0x14022a350]
mov ecx, dword [0x14022a354]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
add ecx, 0xb3a548a
mov eax, ecx
and eax, 0x26348fac
xor ecx, 0xa6348fac
lea eax, [rcx + rax*2]
imul rax, rax, 0xd42728d
shr rax, 0x3a
cmp eax, 0x9591e5e1
jbe 0x1401341af
jmp 0x1401341f0
mov eax, dword [0x14022a3b0]
or eax, dword [0x14022a3b4]
mov byte [rsi], 0
or eax, 0xf7ff1fff
imul eax, eax, 0xd0aa58f7
cmp eax, 0x6d1b017d
jne 0x1401340d4
mov dword [rsi + 4], edi
mov ecx, 0xc0ce8edd
nop dword [rax]
mov eax, dword [0x14022a3b8]
xor edx, edx
div dword [0x14022a3bc]
add eax, 0xf4a54e52
mov rdx, rax
imul rdx, rcx
shr rdx, 0x20
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 0x1d
not eax
or eax, 0xcb66e9b1
mov dword [rsi + 4], edi
cmp eax, 0x51bfcde0
je 0x1401340e0
nop dword [rax + rax]
mov ecx, dword [0x14022a3c0]
mov edx, dword [0x14022a3c4]
mov eax, ecx
not eax
mov r8d, edx
not r8d
mov r9d, eax
and r9d, 0xd3246394
and ecx, 0x24010862
or ecx, r9d
or eax, r8d
and r8d, 0xd3246394
and edx, 0x24010862
or edx, r8d
xor edx, ecx
not eax
or eax, edx
mov ecx, eax
not ecx
mov edx, eax
or edx, 0x8da9409
and ecx, 0x85006260
mov r8d, edx
and r8d, 0x72af9d97
imul r8d, ecx
and edx, 0x8d506268
or eax, 0x8ddaf669
imul eax, edx
add eax, r8d
mov ecx, eax
and ecx, 0x3f43be78
add ecx, ecx
sub eax, ecx
cmp eax, 0xf04be4c8
je 0x140134120
jmp 0x140134420
mov eax, dword [0x14022a358]
mov ecx, dword [0x14022a35c]
lea r14d, [rax + rcx]
add r14d, 0xf1752c70
xor r14d, 0x5ab2052
mov qword [rbx], 0
sub rsp, 0x20
xor ecx, ecx
mov rdx, rbx
call qword [sym.imp.oleaut32.dll_GetErrorInfo]
add rsp, 0x20
cmp r14d, 0x1b5a35d4
jae 0x140134210
mov qword [rbx], 0
sub rsp, 0x20
xor ecx, ecx
mov rdx, rbx
call fcn.14014ee70
add rsp, 0x20
jmp 0x1401341af
mov eax, dword [0x14022a360]
xor eax, dword [0x14022a364]
imul rcx, rax, 0x47897ed1
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1c
or eax, 0xabcda18d
imul eax, eax, 0x75b3c475
cmp eax, 0x334806c1
jb 0x140134210
mov rbx, qword [rbx]
test rbx, rbx
je 0x140134303
mov r14, qword [rbx]
mov eax, dword [0x14022a368]
xor eax, dword [0x14022a36c]
imul eax, eax, 0xd4acc8dd
or eax, 0x1808230
and eax, 0x99d4c2b3
cmp eax, 0x9e3520ed
jne 0x140134290
sub rsp, 0x20
mov rcx, rbx
call qword [r14 + 0x10]
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x14022a370]
add eax, dword [0x14022a374]
mov ecx, eax
and ecx, 0x5de0386b
or eax, 0x5de0386b
add eax, ecx
mov r15d, eax
xor r15d, 0x8405628
and r15d, eax
and r15d, 0xc85c5638
sub rsp, 0x20
mov rcx, rbx
call qword [r14 + 0x10]
add rsp, 0x20
cmp r15d, 0x8b4d1571
je 0x140134290
nop word [rax + rax]
mov eax, dword [0x14022a378]
add eax, dword [0x14022a37c]
imul eax, eax, 0x9bfc33d0
add eax, 0xce3df82d
and eax, 0xadcc1d4c
cmp eax, 0xa185f6d4
ja 0x1401342e0
mov byte [rsi], 0
mov eax, dword [0x14022a398]
mov ecx, dword [0x14022a39c]
mov edx, eax
xor edx, ecx
not edx
or eax, ecx
and eax, edx
mov ecx, eax
not ecx
and ecx, 0xffe91f01
mov edx, eax
and edx, 0x16e0fe
imul edx, ecx
mov ecx, eax
and ecx, 0xffe91f01
or eax, 0xffe91f01
imul eax, ecx
add eax, edx
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xde29e777
and ecx, 0x21d61888
imul ecx, edx
mov edx, eax
and edx, 0x21d61888
or eax, 0x21d61888
imul eax, edx
add eax, ecx
mov ecx, 0xf7f33637
imul rcx, rax
shr rcx, 0x3b
cmp ecx, 0xfde293e3
ja 0x1401343d0
mov eax, dword [0x14022a3a0]
mov ecx, eax
not ecx
or ecx, dword [0x14022a3a4]
add eax, ecx
inc eax
not eax
or eax, 0x42c7f41c
mov ecx, eax
not ecx
mov edx, ecx
and edx, 0x34280383
and eax, 0x8997dc68
imul eax, edx
mov edx, ecx
and edx, 0x89100860
or ecx, 0x8997dc68
imul ecx, edx
add eax, ecx
add eax, 0x523459c5
mov dword [rsi + 4], edi
cmp eax, 0xa9800362
jae 0x140134420
mov dword [rsi + 4], edi
jmp 0x14013437f
mov eax, dword [0x14022a3d4]
mov ecx, eax
xor ecx, eax
not ecx
and ecx, dword [0x14022a3d0]
xor ecx, eax
imul eax, ecx, 0x90466a64
mov byte [rsi], 0x12
cmp eax, 0xafcb5cb4
jne 0x140134400
mov byte [rsi], 0x12
jmp 0x1401343d5
mov eax, dword [0x14022a3d8]
sub eax, dword [0x14022a3dc]
add eax, 0x2a94e831
and eax, 0x93357ac3
cmp eax, 0xc7dd0bee
je 0x140134400
nop dword [rax]
mov eax, dword [0x14022a3e0]
imul eax, dword [0x14022a3e4]
add eax, 0xe16b44ee
mov ecx, eax
not ecx
and ecx, 0x66e28430
mov edx, eax
and edx, 0x991d7bcf
imul edx, ecx
mov ecx, eax
and ecx, 0x66e28430
or eax, 0x66e28430
imul eax, ecx
add eax, edx
cmp eax, 0xcf60ab2
jb 0x140134420
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret