Function at 0x140135e00
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r14
push rsi
push rdi
push rbx
mov rbp, rsp
mov rsi, rdx
mov rdi, rcx
mov eax, dword [0x14159ac90]
imul eax, dword [0x14159ac94]
imul eax, eax, 0xa40f5f17
mov ecx, 0x9ae15619
imul rcx, rax
shr rcx, 0x3f
or ecx, 0x5d4ae340
cmp ecx, 0xab969c96
je 0x140135eb5
mov eax, dword [0x14159ac98]
add eax, dword [0x14159ac9c]
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xe2918476
and ecx, 0x1d6e7b89
imul ecx, edx
mov edx, eax
and edx, 0x1d6e7b89
or eax, 0x1d6e7b89
imul eax, edx
add ecx, eax
add ecx, 0xf31b4419
mov eax, ecx
not eax
mov edx, ecx
and edx, 0xc49c1de9
and eax, 0x3b63e216
imul eax, edx
mov edx, ecx
and edx, 0x3b63e216
or ecx, 0x3b63e216
imul ecx, edx
add ecx, eax
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
mov rbx, rsp
cmp ecx, 0x87fa8949
jbe 0x140135ec7
mov eax, 0x10
call fcn.14020e090
sub rsp, rax
jmp 0x140135e3d
mov eax, dword [0x14159aca0]
sub eax, dword [0x14159aca4]
add eax, 0xb24bd20f
and eax, 0x2582000
cmp eax, 0xf0d6ceaa
ja 0x140135f7c
mov eax, dword [0x14159aca8]
mov ecx, dword [0x14159acac]
mov edx, eax
not edx
and edx, ecx
mov r8d, ecx
not r8d
and r8d, eax
imul r8d, edx
mov edx, eax
and edx, ecx
or eax, ecx
imul eax, edx
add eax, r8d
mov ecx, eax
not ecx
mov edx, eax
and edx, 0xa2aa4116
and ecx, 0x5d55bee9
imul ecx, edx
mov edx, eax
and edx, 0x5d55bee9
or eax, 0x5d55bee9
imul eax, edx
add eax, ecx
mov r14d, eax
xor r14d, 0x46eb2dc6
and r14d, eax
add r14d, 0xf0c8d354
mov qword [rbx], rdi
mov qword [rbx + 8], 0
sub rsp, 0x20
lea rdx, [0x1415787a0]
mov rcx, rbx
mov r8, rsi
call fcn.1400b0510
add rsp, 0x20
cmp r14d, 0xc5d4d3f9
jbe 0x140135fa6
mov qword [rbx], rdi
mov qword [rbx + 8], 0
sub rsp, 0x20
lea rdx, [0x1415787a0]
mov rcx, rbx
mov r8, rsi
call fcn.1400b0510
add rsp, 0x20
jmp 0x140135ee8
mov rbx, qword [rbx + 8]
test al, al
je 0x14013603a
test rbx, rbx
jne 0x1401362e0
xor eax, eax
test al, al
je 0x140135fd0
ud2
mov eax, dword [0x14159acf8]
xor eax, dword [0x14159acfc]
or eax, 0x447a78bc
add eax, 0x7aa80f2c
mov ecx, eax
and ecx, 0x10068243
add ecx, ecx
sub eax, ecx
add eax, 0x9056e243
ud2
test rbx, rbx
je 0x1401362d2
mov rax, rbx
xor rax, 0xfffffffffffffffc
and rax, rbx
cmp rax, 2
jg 0x140136280
cmp rax, 1
jne 0x1401362d6
lea rsi, [rbx - 1]
mov rdi, qword [rbx - 1]
nop dword [rax]
mov eax, dword [0x14159acc0]
mov ecx, dword [0x14159acc4]
add eax, ecx
add eax, 0x8ebacb10
or eax, 0x11a42a4f
mov ecx, eax
and ecx, 0x4dc6087b
add ecx, ecx
neg ecx
add eax, ecx
add eax, 0xcdc6087b
cmp eax, 0x87d30d52
ja 0x140136070
mov rbx, qword [rbx + 7]
mov rax, qword [rbx]
test rax, rax
je 0x1401360bb
sub rsp, 0x20
mov rcx, rdi
call rax
add rsp, 0x20
cmp qword [rbx + 8], 0
je 0x1401361a3
mov rax, qword [rbx + 0x10]
nop word [rax + rax]
mov ecx, dword [0x14159acc8]
mov edx, dword [0x14159accc]
mov r8d, ecx
and r8d, edx
add r8d, r8d
add ecx, edx
sub ecx, r8d
add ecx, 0x758b1f70
or ecx, 0xb2a3bfd5
xor ecx, 0x2c9e4533
cmp ecx, 0xf3ee35e1
ja 0x1401360d0
cmp rax, 0x11
jb 0x14013610e
mov rdi, qword [rdi - 8]
xor eax, eax
test al, al
je 0x14013612e
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
add rsp, 0x20
mov rbx, qword [sym.imp.KERNEL32.dll_HeapFree]
nop word cs:[rax + rax]
mov eax, dword [0x14159acd0]
add eax, dword [0x14159acd4]
or eax, 0x220a80da
mov r14d, eax
and r14d, 0x2f1ac2db
mov ecx, r14d
not ecx
and ecx, 0x15543a04
mov edx, eax
and edx, 0xa00c04b
imul edx, ecx
and eax, 0x251a0290
or r14d, 0x355e3a94
imul r14d, eax
add r14d, edx
mov rcx, qword [0x1415acb98]
sub rsp, 0x20
xor edx, edx
mov r8, rdi
call rbx
add rsp, 0x20
cmp r14d, 0xf53ebc0a
ja 0x140136140
mov eax, dword [0x14159acd8]
mov ecx, dword [0x14159acdc]
mov edx, eax
xor edx, ecx
not ecx
and ecx, eax
add ecx, ecx
sub ecx, edx
xor ecx, 0xbc911a2c
add ecx, 0x8e4606c3
mov eax, 0xdd3ba547
imul rax, rcx
shr rax, 0x3d
cmp eax, 0x627cfdae
jne 0x1401361f0
mov rax, qword [0x1415acb98]
nop word cs:[rax + rax]
mov eax, dword [0x14159ace0]
sub eax, dword [0x14159ace4]
or eax, 0x866315f1
mov edx, eax
xor edx, 0xa4ba3abf
add edx, eax
and eax, 0x5b45c540
sub edx, eax
mov eax, edx
and eax, 0x8a33d5da
or edx, 0x8a33d5da
add edx, eax
mov rcx, qword [0x1415acb98]
cmp edx, 0x4eabe7a7
je 0x1401361f0
sub rsp, 0x20
xor ebx, ebx
xor edx, edx
mov r8, rsi
call fcn.14020ae70
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x14159ace8]
and eax, dword [0x14159acec]
imul eax, eax, 0x1e1cc4c0
or eax, 0xf4cfde95
xor eax, 0x3dde4f09
cmp eax, 0xcc9069df
ja 0x140136250
jmp 0x1401362e0
mov eax, dword [0x14159acb0]
imul eax, dword [0x14159acb4]
or eax, 0xc59eef5f
add eax, 0x789ca734
cmp eax, 0x6983711e
ja 0x140136280
xor eax, eax
test al, al
jne 0x1401362a0
xor ebx, ebx
nop word cs:[rax + rax]
mov eax, dword [0x14159acb8]
xor edx, edx
div dword [0x14159acbc]
and eax, 0x477dac7c
imul eax, eax, 0x2b425a50
cmp eax, 0xa83b71a5
je 0x1401362b0
jmp 0x1401362e0
xor ebx, ebx
jmp 0x1401362e0
xor ebx, ebx
nop dword [rax + rax]
mov eax, dword [0x14159acf0]
xor edx, edx
div dword [0x14159acf4]
mov ecx, eax
not ecx
and ecx, 0x57afd9f
and eax, 0x1a850260
sub eax, ecx
add eax, 0x8844bd3d
or eax, 0xe33cfa94
cmp eax, 0xb8b8551c
jb 0x1401362e0
mov rax, rbx
mov rsp, rbp
pop rbx
pop rdi
pop rsi
pop r14
pop rbp
ret