Function at 0x18004a870
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xb0]
sub rsp, 0x1b0
mov rax, qword [0x1800eb3c0]
xor rax, rsp
mov qword [rbp + 0xa0], rax
mov r12d, r9d
mov rdi, r8
mov r15, rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x78], rcx
xor ecx, ecx
lea rax, vtable.Module.0
mov qword [r15], rax
lea rbx, [r15 + 8]
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
mov qword [rbx + 0x10], rcx
mov qword [rbx + 0x18], 0xf
mov byte [rbx], cl
movups xmmword [r15 + 0x28], xmm0
mov qword [r15 + 0x38], 4
mov qword [r15 + 0x40], 0xf
mov eax, dword [0x1800c9d58]
mov dword [r15 + 0x28], eax
mov byte [r15 + 0x2c], cl
lea r14, [r15 + 0x48]
movups xmmword [r14], xmm0
mov qword [r14 + 0x10], rcx
mov qword [r14 + 0x18], 0xf
mov byte [r14], cl
mov byte [r15 + 0x6c], cl
lea rax, [r15 + 0x6d]
mov qword [rsp + 0x48], rax
mov byte [rax], 1
lea rax, [r15 + 0x70]
mov qword [rsp + 0x50], rax
mov dword [rax], ecx
lea r13, [r15 + 0x74]
mov qword [rsp + 0x28], r13
mov dword [r13], ecx
lea rsi, [r15 + 0x78]
mov qword [rsi], rcx
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], rcx
mov byte [r15 + 0x90], cl
mov dword [r15 + 0x94], ecx
lea rcx, [rbp - 0x80]
call fcn.180007c60
lea rcx, [rbp - 0x80]
mov r9, qword [rbp - 0x68]
cmp r9, 0xf
jbe 0x18004a976
mov rcx, qword [rbp - 0x80]
mov rdx, rcx
jmp 0x18004a97a
lea rdx, [rbp - 0x80]
mov r10, rcx
mov r8, qword [rbp - 0x70]
add r8, rdx
xor r11d, r11d
mov edx, r11d
mov rax, r8
sub rax, rcx
cmp rcx, r8
cmova rax, r11
test rax, rax
je 0x18004a9f3
cmp rax, 0x40
jb 0x18004a9f3
and rax, 0xffffffffffffffc0
movdqa xmm1, xmmword [0x1800d5230]
nop
movdqu xmm0, xmmword [rcx]
xorps xmm0, xmm1
movdqu xmmword [rcx], xmm0
movdqu xmm0, xmmword [rcx + 0x10]
xorps xmm0, xmm1
movdqu xmmword [rcx + 0x10], xmm0
movdqu xmm0, xmmword [rcx + 0x20]
xorps xmm0, xmm1
movdqu xmmword [rcx + 0x20], xmm0
movdqu xmm0, xmmword [rcx + 0x30]
xorps xmm0, xmm1
movdqu xmmword [rcx + 0x30], xmm0
add rcx, 0x40
add rdx, 0x40
cmp rdx, rax
jne 0x18004a9b0
mov r9, qword [rbp - 0x68]
cmp rcx, r8
je 0x18004aa0f
nop dword [rax + rax]
xor byte [rcx], 0x7f
inc rcx
cmp rcx, r8
jne 0x18004aa00
mov r9, qword [rbp - 0x68]
lea rax, [rbp - 0x80]
cmp rbx, rax
je 0x18004aa7d
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x18004aa51
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x18004aa49
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18004aaac
mov rcx, r8
call fcn.1800a6344
xor r11d, r11d
mov qword [rbx + 0x18], 0xf
mov byte [rbx], 0
movups xmm0, xmmword [rbp - 0x80]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rbp - 0x70]
movups xmmword [rbx + 0x10], xmm1
mov qword [rbp - 0x70], r11
mov r9d, 0xf
mov qword [rbp - 0x68], r9
mov byte [rbp - 0x80], 0
cmp r9, 0xf
jbe 0x18004aab8
lea rdx, [r9 + 1]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004aab3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004aab3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
cmp r14, rdi
je 0x18004aad6
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x18004aacb
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, r14
call fcn.180008450
mov dword [r15 + 0x68], r12d
mov eax, dword [rbp + 0x110]
mov dword [r13], eax
xorps xmm0, xmm0
movups xmmword [rbp], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov rdi, rax
mov qword [rbp], rax
mov qword [rbp + 0x10], 0x19
mov r13d, 0x1f
mov r15d, r13d
mov qword [rbp + 0x18], r13
movups xmm0, xmmword [str.Show_module_in_Arraylist.]
movups xmmword [rax], xmm0
movsd xmm0, qword [0x1800ccd00]
movsd qword [rax + 0x10], xmm0
movzx eax, byte [0x1800ccd08]
mov byte [rdi + 0x18], al
mov byte [rdi + 0x19], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], 7
mov r14d, 0xf
mov qword [rbp - 0x48], r14
mov rax, qword [str.Visible]
mov dword [rbp - 0x60], eax
movzx eax, word [0x1800ccd2c]
mov word [rbp - 0x5c], ax
movzx eax, byte [0x1800ccd2e]
mov byte [rbp - 0x5a], al
mov byte [rbp - 0x59], 0
mov ecx, 0xa0
call fcn.1800a5f90
mov rbx, rax
mov qword [rsp + 0x20], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r14
mov byte [rbx], al
lea r12, [rbx + 0x20]
movups xmmword [r12], xmm0
mov qword [r12 + 0x10], rax
mov qword [r12 + 0x18], r14
mov byte [r12], al
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rax
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x70], al
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov dword [rbx + 0x90], eax
mov qword [rbx + 0x94], rax
mov dword [rbx + 0x9c], eax
mov qword [rsp + 0x20], rbx
lea rax, [rbp - 0x60]
cmp rbx, rax
je 0x18004ac1b
lea rdx, [rbp - 0x60]
lea r8d, [r13 - 0x18]
mov rcx, rbx
call fcn.180008450
mov r14, qword [rbp - 0x48]
lea rax, [rbp]
cmp r12, rax
je 0x18004ac3d
mov r8d, 0x19
mov rdx, rdi
mov rcx, r12
call fcn.180008450
mov r15, qword [rbp + 0x18]
mov rdi, qword [rbp]
xor r12d, r12d
mov dword [rbx + 0x40], r12d
mov rax, qword [rsp + 0x48]
mov qword [rbx + 0x48], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x18004ac61
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x18004ac6f
lea r8, [rsp + 0x20]
mov rcx, rsi
call fcn.18000c000
nop
cmp r14, 0xf
jbe 0x18004acab
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004aca5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004aca5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
cmp r15, 0xf
jbe 0x18004ace2
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18004acda
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004aed5
mov rcx, rdi
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov rdi, rax
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x30], 0x17
mov r15, r13
mov qword [rbp + 0x38], r13
movups xmm0, xmmword [str.Changes_module_keybind.]
movups xmmword [rax], xmm0
mov eax, dword [0x1800ccd20]
mov dword [rdi + 0x10], eax
movzx eax, word [0x1800ccd24]
mov word [rdi + 0x14], ax
movzx eax, byte [0x1800ccd26]
mov byte [rdi + 0x16], al
mov byte [rdi + 0x17], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x30], 7
mov r14d, 0xf
mov qword [rbp - 0x28], r14
mov rax, qword [str.Keybind]
mov dword [rbp - 0x40], eax
movzx eax, word [0x1800ccccc]
mov word [rbp - 0x3c], ax
movzx eax, byte [0x1800cccce]
mov byte [rbp - 0x3a], al
mov byte [rbp - 0x39], 0
mov ecx, 0xa0
call fcn.1800a5f90
mov rbx, rax
mov qword [rsp + 0x20], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r14
mov byte [rbx], al
lea r12, [rbx + 0x20]
movups xmmword [r12], xmm0
mov qword [r12 + 0x10], rax
mov qword [r12 + 0x18], r14
mov byte [r12], al
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rax
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x70], al
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x88], rax
mov dword [rbx + 0x90], eax
mov qword [rbx + 0x94], rax
mov dword [rbx + 0x9c], eax
mov qword [rsp + 0x20], rbx
lea rax, [rbp - 0x40]
cmp rbx, rax
je 0x18004ae1a
lea rdx, [rbp - 0x40]
lea r8d, [r14 - 8]
mov rcx, rbx
call fcn.180008450
mov r14, qword [rbp - 0x28]
lea rax, [rbp + 0x20]
cmp r12, rax
je 0x18004ae3c
mov r8d, 0x17
mov rdx, rdi
mov rcx, r12
call fcn.180008450
mov r15, qword [rbp + 0x38]
mov rdi, qword [rbp + 0x20]
mov dword [rbx + 0x40], 4
mov rax, qword [rsp + 0x28]
mov qword [rbx + 0x48], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x18004ae60
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x18004ae6e
lea r8, [rsp + 0x20]
mov rcx, rsi
call fcn.18000c000
nop
cmp r14, 0xf
jbe 0x18004aeaa
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004aea4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004aea4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
cmp r15, 0xf
jbe 0x18004aee4
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18004aedc
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004aedc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.1800a6344
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], 6
mov qword [rbp + 0x78], 0xf
mov eax, dword [str.Normal]
mov dword [rbp + 0x60], eax
movzx eax, word [0x1800caf70]
mov word [rbp + 0x64], ax
mov byte [rbp + 0x66], 0
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x90], 4
mov qword [rbp + 0x98], 0xf
mov eax, dword [str.Hold]
mov dword [rbp + 0x80], eax
mov byte [rbp + 0x84], 0
movdqu xmmword [rsp + 0x30], xmm0
xor r12d, r12d
mov qword [rsp + 0x40], r12
lea edx, [r12 + 2]
lea rcx, [rsp + 0x30]
call fcn.18000bee0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rdi, [rbp + 0x60]
mov rbx, qword [rsp + 0x30]
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
lea rax, [rsp + 0x30]
mov qword [rsp + 0x70], rax
nop word [rax + rax]
mov rdx, rdi
mov rcx, rbx
call fcn.180007c60
add rbx, 0x20
mov qword [rsp + 0x68], rbx
add rdi, 0x20
lea rax, [rbp + 0xa0]
cmp rdi, rax
jne 0x18004af90
mov rdx, rbx
mov rcx, rbx
call fcn.18000bde0
mov qword [rsp + 0x38], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov ecx, 0x20
call fcn.1800a5f90
mov rdi, rax
mov qword [rbp + 0x40], rax
mov qword [rbp + 0x50], 0x15
mov qword [rbp + 0x58], r13
movups xmm0, xmmword [str.Changes_toggle_modes.]
movups xmmword [rax], xmm0
mov eax, dword [0x1800ccce8]
mov dword [rdi + 0x10], eax
movzx eax, byte [0x1800cccec]
mov byte [rdi + 0x14], al
mov byte [rdi + 0x15], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], 6
mov r14d, 0xf
mov qword [rbp - 8], r14
mov eax, dword [str.Toggle]
mov dword [rbp - 0x20], eax
movzx eax, word [0x1800cccd4]
mov word [rbp - 0x1c], ax
mov byte [rbp - 0x1a], 0
mov ecx, 0xa0
call fcn.1800a5f90
mov rbx, rax
mov qword [rsp + 0x28], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
movups xmmword [rbx], xmm0
xor eax, eax
mov qword [rbx + 0x10], rax
mov qword [rbx + 0x18], r14
mov byte [rbx], al
lea r15, [rbx + 0x20]
movups xmmword [r15], xmm0
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], r14
mov byte [r15], al
mov qword [rbx + 0x48], rax
mov qword [rbx + 0x50], rax
mov qword [rbx + 0x58], rax
mov qword [rbx + 0x60], rax
mov qword [rbx + 0x68], rax
mov byte [rbx + 0x70], al
lea r12, [rbx + 0x78]
mov qword [r12], rax
mov qword [r12 + 8], rax
mov qword [r12 + 0x10], rax
mov dword [rbx + 0x90], eax
mov qword [rbx + 0x94], rax
mov dword [rbx + 0x9c], eax
mov qword [rsp + 0x28], rbx
lea rax, [rbp - 0x20]
cmp rbx, rax
je 0x18004b0df
lea rdx, [rbp - 0x20]
lea r8d, [r14 - 9]
mov rcx, rbx
call fcn.180008450
mov r14, qword [rbp - 8]
lea rax, [rbp + 0x40]
cmp r15, rax
je 0x18004b101
mov r8d, 0x15
mov rdx, rdi
mov rcx, r15
call fcn.180008450
mov r13, qword [rbp + 0x58]
mov rdi, qword [rbp + 0x40]
mov dword [rbx + 0x40], 2
lea rax, [rsp + 0x30]
cmp r12, rax
je 0x18004b12b
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
sub r8, rdx
sar r8, 5
mov rcx, r12
call fcn.18000bb80
mov rax, qword [rsp + 0x50]
mov qword [rbx + 0x68], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x18004b148
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x18004b156
lea r8, [rsp + 0x28]
mov rcx, rsi
call fcn.18000c000
nop
cmp r14, 0xf
jbe 0x18004b192
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004b18c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004b18c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
nop
cmp r13, 0xf
jbe 0x18004b1cd
lea rdx, [r13 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x18004b1c4
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004b1c4
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.1800a6344
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x18004b28e
mov rsi, qword [rsp + 0x38]
xor r12d, r12d
cmp rcx, rsi
je 0x18004b247
lea rbx, [rcx + 0x18]
nop dword [rax]
mov rdx, qword [rbx]
cmp rdx, 0xf
jbe 0x18004b226
mov rcx, qword [rbx - 0x18]
inc rdx
cmp rdx, 0x1000
jb 0x18004b221
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18004b274
mov rcx, r8
call fcn.1800a6344
mov qword [rbx - 8], r12
mov qword [rbx], 0xf
mov byte [rbx - 0x18], r12b
add rbx, 0x20
lea rax, [rbx - 0x18]
cmp rax, rsi
jne 0x18004b1f0
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004b27b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004b27b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800a6344
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
lea r9, [fcn.180007bc0]
mov edx, 0x20
lea r8d, [rdx - 0x1e]
lea rcx, [rbp + 0x60]
call fcn.1800a6378
nop
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.1800a5e50
mov rbx, qword [rsp + 0x208]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret