Function at 0x1400e3510
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rsi, rcx
invalid
movzx eax, byte [rcx]
xor ecx, ecx
leave
nop dword [rax + rax]
test cl, cl
jne case.0x140097117.285
cmp rax, 0xf
ja case.default.0x1400e354c
xchg dword [rdi], edi
add byte [rax], al
lea rcx, [0x141db8200]
movsxd rax, dword [rcx + rax*4]
add al, 0x81
add rax, rcx
jmp rax
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov eax, dword [0x141dd6bf0]
xor edx, edx
div dword [0x141dd6bf4]
xor eax, 0x1809cfe8
add eax, 0xc435b2eb
invalid
cmp eax, 0xd39d9b6b
jb case.0x1400e354c.2
mov rax, qword [rsi + 8]
xor ecx, ecx
nop word cs:[rax + rax]
test cl, cl
jne 0x1400e3590
test rax, rax
je case.0x1400e354c.0
mov r8, qword [rsi + 0x10]
mov rcx, qword [0x141dd7fe0]
iretd
invalid
xor edx, edx
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp qword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, 0xbc774823
nop word cs:[rax + rax]
mov eax, dword [0x141dd6bd0]
xor edx, edx
div dword [0x141dd6bd4]
xor eax, 0x32501cf
cld
jno 0x1400e3621
xor eax, 0xd39c0a41
imul rax, rcx
shr rax, 0x3f
cmp eax, 0x8dc887ac
xchg eax, ecx
lea esi, [rdi - 0x27]
invalid
nop word [rax + rax]
mov eax, dword [0x141dd6bd8]
or eax, dword [0x141dd6bdc]
and eax, 0x99f71404
imul eax, eax, 0x46e83c67
cmp eax, 0xac375205
invalid
push rdx
invalid
lodsb al, byte [rsi]
je 0x1400e3600
mov eax, dword [0x141dd6be0]
or eax, dword [0x141dd6be4]
mov rsi, qword [rsi + 8]
or eax, 0x29f5f566
add eax, 0xf3a5bdcc
invalid
movsd dword [rdi], dword [rsi]
invalid
cmp eax, 0xb426d251
jbe 0x1400e380d
jmp 0x1400e3840
mov eax, 0xa21ff5e9
nop dword [rax]
mov ecx, dword [0x141dd6bf8]
and ecx, dword [0x141dd6bfc]
imul rcx, rax
imul ecx, eax
shr rcx, 0x3f
or ecx, 0x965d4b4a
pop rbp
xchg esi, eax
cmp ecx, 0xc6340120
ja case.0x140099728.213
mov rdi, qword [rsi + 0x10]
mov r14, qword [rsi + 0x18]
sbb byte [rbx - 0x30ca7ffb], cl
invalid
xor edx, edx
div dword [0x141dd6c04]
nop dword [rax + rax]
mov eax, dword [0x141dd6c08]
sub eax, dword [0x141dd6c0c]
xor eax, 0x840d01cf
invalid
mov bl, 0xcb
cmp eax, 0x5f1897c4
sbb byte [rdi + 0x74], bl
invalid
test r14, r14
je 0x1400e3767
invalid
xor r15d, r15d
mov r12d, 0xaa81a035
mov rbx, rdi
xor r13d, r13d
jmp 0x1400e36e0
add rbx, 0x20
inc r13
dec r14
je 0x1400e3767
test r15b, r15b
jne case.0x1400a818b.158
nop word cs:[rax + rax]
mov ebp, dword [0x141dd6c10]
sub ebp, dword [0x141dd6c14]
imul rbp, r12
shr rbp, 0x3f
or ebp, 0x95a712da
xor ebp, 0x63626ee2
cmc
loop case.0x14009eb52.186
invalid
invalid
mov rcx, rbx
call case.0x1400943bb.341
clc
std
invalid
inc dword [rcx - 0x30ed9703]
invalid
jae 0x1400e36d0
invalid
mov rcx, rbx
call case.0x1400943bb.341
jmp case.0x1400959c5.356
mov rcx, qword [rsi + 8]
mov rax, qword [rcx]
mov eax, dword [rcx]
call qword [rax + 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dd6c40]
and eax, dword [0x141dd6c44]
or eax, 0x5408c07f
add eax, 0x6f381f52
xor eax, 0x42decd95
int 0xde
cmp eax, 0xb1f13427
jae 0x1400e3740
jmp case.0x1400e354c.0
mov rax, qword [rsi + 8]
xor ecx, ecx
leave
nop dword [rax]
test cl, cl
jne 0x1400e3770
cld
test rax, rax
je case.0x1400e354c.0
invalid
mov eax, dword [0x141dd6c18]
imul eax, dword [0x141dd6c1c]
scasd eax, dword [rdi]
add eax, 0x1cf3492
and eax, 0xa96677
cmp eax, 0x3e8048e
jne 0x1400e379d
mov rax, qword [0x141dd7fe0]
mov eax, 0x8e97beff
nop word cs:[rax + rax]
invalid
mov ecx, dword [0x141dd6c20]
and ecx, dword [0x141dd6c24]
invalid
imul rcx, rax
shr rcx, 0x3d
imul ecx, ecx, 0xc32ff9f1
add ecx, 0xad6e2b2e
mov rsi, qword [0x141dd7fe0]
cmp ecx, 0x1b12460b
jb 0x1400e37b0
mov eax, dword [0x141dd6c28]
and eax, dword [0x141dd6c2c]
xor al, 0xcf
invalid
and eax, 0x99ab04a8
shr eax, 2
imul rax, rax, 0x135a356b
shr rax, 0x39
imul eax, eax, 0xb949d6c6
mov ecx, 0x4506d33d
or esi, dword [rbx + 0x40]
jmp 0x1400e387f
mov eax, dword [0x141dd6be8]
add eax, dword [0x141dd6bec]
imul edi, eax, 0xeb748112
and edi, 0x4f03122
add edi, 0xd4480f4
mov rax, qword [rsi]
mov eax, dword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
push rax
adc byte [rcx - 0x254f701], al
invalid
jbe case.0x1400e354c.0
xchg byte [rsi], cl
std
invalid
invalid
mov rax, qword [rsi]
mov rcx, rsi
call qword [rax + 0x10]
jmp 0x1400e380d
mov ebx, dword [0x141dd6c30]
xor ebx, dword [0x141dd6c34]
fnsave dword [rbx]
iretd
invalid
or ebx, 0x91d09696
add ebx, 0x5d032d67
xor ebx, 0x3087555f
mov rcx, rsi
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
pop rcx
mov edx, 0xfb810001
sti
jge 0x1400e3823
invalid
invalid
jae 0x1400e3890
invalid
mov rcx, rsi
xor edx, edx
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400e384b
mov eax, dword [0x141dd6c38]
sub eax, dword [str.d_G]
or eax, 0xb3d512e
push rcx
cmp eax, 0x67c0690b
scasb al, byte [rdi]
and eax, 0xf2d33d76
mov dword [rsp + rsi*2 - 0x1e], esp
jmp case.0x1400e354c.0