Function at 0x140030350
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x98
movzx eax, byte [rcx]
lea r13, [0x14010027b]
sub r13, rcx
lea r8, str.Press_INSERT_or_INS_or_HOME_or_DEL_in_your_keyboard_to_Show_or_Hide_Menu
mov qword [rsp + 0xe0], r13
lea r9, [0x140100271]
lea r13, [0x14010027c]
sub r8, rcx
sub r13, rcx
lea r10, [0x140100272]
mov qword [rsp + 0xf0], r13
lea r11, [0x140100273]
lea r13, [0x14010027d]
sub r9, rcx
sub r13, rcx
lea rbx, [0x140100274]
mov qword [rsp + 0xf8], r13
lea rdi, [0x140100275]
lea r13, [0x14010027e]
sub r10, rcx
sub r13, rcx
lea rsi, [0x140100276]
mov qword [rsp], r13
lea rbp, [0x140100277]
lea r13, [0x14010027f]
sub r11, rcx
sub r13, rcx
lea r14, [0x140100278]
mov qword [rsp + 8], r13
lea r15, [0x140100279]
lea r13, [0x140100280]
sub rbx, rcx
sub r13, rcx
lea r12, [0x14010027a]
mov qword [rsp + 0x10], r13
lea rdx, [rcx + 5]
lea r13, [0x140100281]
sub rdi, rcx
sub r13, rcx
sub rsi, rcx
mov qword [rsp + 0x18], r13
sub rbp, rcx
lea r13, [0x140100282]
sub r14, rcx
sub r13, rcx
sub r15, rcx
mov qword [rsp + 0x20], r13
sub r12, rcx
lea r13, [0x140100283]
sub r13, rcx
mov qword [rsp + 0x28], r13
lea r13, [0x140100284]
sub r13, rcx
mov qword [rsp + 0x30], r13
lea r13, [0x140100285]
sub r13, rcx
mov qword [rsp + 0x38], r13
lea r13, [0x140100286]
sub r13, rcx
mov qword [rsp + 0x40], r13
lea r13, [0x140100287]
sub r13, rcx
mov qword [rsp + 0x48], r13
lea r13, [0x140100288]
sub r13, rcx
mov qword [rsp + 0x50], r13
lea r13, [0x140100289]
sub r13, rcx
mov qword [rsp + 0x58], r13
lea r13, [0x14010028a]
sub r13, rcx
mov qword [rsp + 0x60], r13
lea r13, [0x14010028b]
sub r13, rcx
mov qword [rsp + 0x68], r13
lea r13, [0x14010028c]
sub r13, rcx
mov qword [rsp + 0x70], r13
lea r13, [0x14010028d]
sub r13, rcx
mov qword [rsp + 0x78], r13
lea r13, [0x14010028e]
mov qword [rsp + 0xe8], 2
sub r13, rcx
mov qword [rsp + 0x80], r13
mov r13, qword [rsp + 0xe0]
nop dword [rax + rax]
xor al, byte [r8 + rdx - 5]
xor al, byte [rcx + 2]
mov byte [rdx - 1], al
xor al, byte [r9 + rdx - 5]
mov byte [rdx], al
xor al, byte [r10 + rdx - 5]
mov byte [rdx + 1], al
xor al, byte [r11 + rdx - 5]
mov byte [rdx + 2], al
xor al, byte [rbx + rdx - 5]
mov byte [rdx + 3], al
xor al, byte [r8 + rdx]
mov byte [rdx + 4], al
xor al, byte [r9 + rdx]
mov byte [rdx + 5], al
xor al, byte [r10 + rdx]
mov byte [rdx + 6], al
xor al, byte [r11 + rdx]
mov byte [rdx + 7], al
xor al, byte [rbx + rdx]
mov byte [rdx + 8], al
xor al, byte [rdi + rdx]
mov byte [rdx + 9], al
xor al, byte [rsi + rdx]
mov byte [rdx + 0xa], al
xor al, byte [rdx + rbp]
mov byte [rdx + 0xb], al
xor al, byte [r14 + rdx]
mov byte [rdx + 0xc], al
xor al, byte [r15 + rdx]
mov byte [rdx + 0xd], al
xor al, byte [r12 + rdx]
mov byte [rdx + 0xe], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0xf0]
mov byte [rdx + 0xf], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0xf8]
mov byte [rdx + 0x10], al
xor al, byte [rdx + r13]
mov r13, qword [rsp]
mov byte [rdx + 0x11], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 8]
mov byte [rdx + 0x12], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x10]
mov byte [rdx + 0x13], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x18]
mov byte [rdx + 0x14], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x20]
mov byte [rdx + 0x15], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x28]
mov byte [rdx + 0x16], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x30]
mov byte [rdx + 0x17], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x38]
mov byte [rdx + 0x18], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x40]
mov byte [rdx + 0x19], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x48]
mov byte [rdx + 0x1a], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x50]
mov byte [rdx + 0x1b], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x58]
mov byte [rdx + 0x1c], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x60]
mov byte [rdx + 0x1d], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x68]
mov byte [rdx + 0x1e], al
xor al, byte [rdx + r13]
mov r13, qword [rsp + 0x70]
mov byte [rdx + 0x1f], al
lea rdx, [rdx + 0x24]
xor al, byte [rdx + r13 - 0x24]
mov r13, qword [rsp + 0x78]
mov byte [rdx - 4], al
xor al, byte [rdx + r13 - 0x24]
mov r13, qword [rsp + 0x80]
mov byte [rdx - 3], al
xor al, byte [rdx + r13 - 0x24]
mov r13, qword [rsp + 0xe0]
mov byte [rdx - 2], al
xor al, byte [rcx + 2]
sub qword [rsp + 0xe8], 1
jne 0x140030530
mov byte [rcx + 0x4c], 0
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret