Function at 0x180037820
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 [0x1800ae3c0]
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 [0x1800955a0]
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.180006ae0
lea rcx, [rbp - 0x80]
mov r9, qword [rbp - 0x68]
cmp r9, 0xf
jbe 0x180037926
mov rcx, qword [rbp - 0x80]
mov rdx, rcx
jmp 0x18003792a
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 0x1800379a3
cmp rax, 0x40
jb 0x1800379a3
and rax, 0xffffffffffffffc0
movdqa xmm1, xmmword [0x18009b970]
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 0x180037960
mov r9, qword [rbp - 0x68]
cmp rcx, r8
je 0x1800379bf
nop dword [rax + rax]
xor byte [rcx], 0x7f
inc rcx
cmp rcx, r8
jne 0x1800379b0
mov r9, qword [rbp - 0x68]
lea rax, [rbp - 0x80]
cmp rbx, rax
je 0x180037a2d
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x180037a01
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x1800379f9
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180037a5c
mov rcx, r8
call fcn.180083954
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 0x180037a68
lea rdx, [r9 + 1]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180037a63
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037a63
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083954
cmp r14, rdi
je 0x180037a86
mov r8, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0xf
jbe 0x180037a7b
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, r14
call fcn.180007500
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.1800835a0
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 [0x180096e88]
movsd qword [rax + 0x10], xmm0
movzx eax, byte [0x180096e90]
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 [0x180096e5c]
mov word [rbp - 0x5c], ax
movzx eax, byte [0x180096e5e]
mov byte [rbp - 0x5a], al
mov byte [rbp - 0x59], 0
mov ecx, 0xa0
call fcn.1800835a0
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 0x180037bcb
lea rdx, [rbp - 0x60]
lea r8d, [r13 - 0x18]
mov rcx, rbx
call fcn.180007500
mov r14, qword [rbp - 0x48]
lea rax, [rbp]
cmp r12, rax
je 0x180037bed
mov r8d, 0x19
mov rdx, rdi
mov rcx, r12
call fcn.180007500
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 0x180037c11
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x180037c1f
lea r8, [rsp + 0x20]
mov rcx, rsi
call fcn.18000a4a0
nop
cmp r14, 0xf
jbe 0x180037c5b
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180037c55
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037c55
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083954
nop
cmp r15, 0xf
jbe 0x180037c92
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180037c8a
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180037e85
mov rcx, rdi
call fcn.180083954
xorps xmm0, xmm0
movups xmmword [rbp + 0x20], xmm0
mov ecx, 0x20
call fcn.1800835a0
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 [0x180096e70]
mov dword [rdi + 0x10], eax
movzx eax, word [0x180096e74]
mov word [rdi + 0x14], ax
movzx eax, byte [0x180096e76]
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 [0x180096ebc]
mov word [rbp - 0x3c], ax
movzx eax, byte [0x180096ebe]
mov byte [rbp - 0x3a], al
mov byte [rbp - 0x39], 0
mov ecx, 0xa0
call fcn.1800835a0
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 0x180037dca
lea rdx, [rbp - 0x40]
lea r8d, [r14 - 8]
mov rcx, rbx
call fcn.180007500
mov r14, qword [rbp - 0x28]
lea rax, [rbp + 0x20]
cmp r12, rax
je 0x180037dec
mov r8d, 0x17
mov rdx, rdi
mov rcx, r12
call fcn.180007500
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 0x180037e10
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x180037e1e
lea r8, [rsp + 0x20]
mov rcx, rsi
call fcn.18000a4a0
nop
cmp r14, 0xf
jbe 0x180037e5a
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180037e54
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037e54
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083954
nop
cmp r15, 0xf
jbe 0x180037e94
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180037e8c
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180037e8c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.180083954
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 [0x180096ec4]
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.18000a410
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.180006ae0
add rbx, 0x20
mov qword [rsp + 0x68], rbx
add rdi, 0x20
lea rax, [rbp + 0xa0]
cmp rdi, rax
jne 0x180037f40
mov rdx, rbx
mov rcx, rbx
call fcn.18000a310
mov qword [rsp + 0x38], rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x40], xmm0
mov ecx, 0x20
call fcn.1800835a0
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 [0x180096eb0]
mov dword [rdi + 0x10], eax
movzx eax, byte [0x180096eb4]
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 [0x180096eec]
mov word [rbp - 0x1c], ax
mov byte [rbp - 0x1a], 0
mov ecx, 0xa0
call fcn.1800835a0
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 0x18003808f
lea rdx, [rbp - 0x20]
lea r8d, [r14 - 9]
mov rcx, rbx
call fcn.180007500
mov r14, qword [rbp - 8]
lea rax, [rbp + 0x40]
cmp r15, rax
je 0x1800380b1
mov r8d, 0x15
mov rdx, rdi
mov rcx, r15
call fcn.180007500
mov r13, qword [rbp + 0x58]
mov rdi, qword [rbp + 0x40]
mov dword [rbx + 0x40], 2
lea rax, [rsp + 0x30]
cmp r12, rax
je 0x1800380db
mov r8, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
sub r8, rdx
sar r8, 5
mov rcx, r12
call fcn.18000a0b0
mov rax, qword [rsp + 0x50]
mov qword [rbx + 0x68], rax
mov rdx, qword [rsi + 8]
cmp rdx, qword [rsi + 0x10]
je 0x1800380f8
mov qword [rdx], rbx
add qword [rsi + 8], 8
jmp 0x180038106
lea r8, [rsp + 0x28]
mov rcx, rsi
call fcn.18000a4a0
nop
cmp r14, 0xf
jbe 0x180038142
lea rdx, [r14 + 1]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003813c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18003813c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083954
nop
cmp r13, 0xf
jbe 0x18003817d
lea rdx, [r13 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180038174
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180038174
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.180083954
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x18003823e
mov rsi, qword [rsp + 0x38]
xor r12d, r12d
cmp rcx, rsi
je 0x1800381f7
lea rbx, [rcx + 0x18]
nop dword [rax]
mov rdx, qword [rbx]
cmp rdx, 0xf
jbe 0x1800381d6
mov rcx, qword [rbx - 0x18]
inc rdx
cmp rdx, 0x1000
jb 0x1800381d1
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180038224
mov rcx, r8
call fcn.180083954
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 0x1800381a0
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x40]
sub rdx, rcx
and rdx, 0xffffffffffffffe0
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003822b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18003822b
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.180083954
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], r12
lea r9, [fcn.180006a40]
mov edx, 0x20
lea r8d, [rdx - 0x1e]
lea rcx, [rbp + 0x60]
call fcn.180083988
nop
mov rax, qword [rsp + 0x58]
mov rcx, qword [rbp + 0xa0]
xor rcx, rsp
call fcn.180083460
mov rbx, qword [rsp + 0x208]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret