Function at 0x1400e5c90
Capabilities:
Contain obfuscated stackstrings
Delete registry key
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov rax, qword [0x1403f20c0]
xor rax, rsp
mov qword [rbp + 0x88], rax
mov r14, rcx
xor r13d, r13d
lea rcx, [0x14048d6c2]
call fcn.140289ea0
mov dword [rsp + 0x40], 0x64746e31
mov dword [rsp + 0x44], 0x642e6c6c
mov word [rsp + 0x48], 0x6c6c
mov byte [rsp + 0x4a], r13b
lea rcx, [rsp + 0x41]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov r12, rax
test rax, rax
je 0x1400e60f8
lea rdx, [rbp - 0x40]
call fcn.1400e6140
mov r8, rax
lea r9, [rax + 2]
lea rcx, [rax + 4]
mov r10d, 4
nop word [rax + rax]
movsx edx, byte [r8]
xor word [rcx - 2], dx
movsx edx, byte [r8]
xor word [rcx], dx
movsx eax, byte [r8]
xor word [rcx + 2], ax
movsx eax, byte [r8]
xor word [rcx + 4], ax
movsx eax, byte [r8]
xor word [rcx + 6], ax
movsx eax, byte [r8]
xor word [rcx + 8], ax
movsx eax, byte [r8]
xor word [rcx + 0xa], ax
movsx eax, byte [r8]
xor word [rcx + 0xc], ax
movsx eax, byte [r8]
xor word [rcx + 0xe], ax
movsx eax, byte [r8]
xor word [rcx + 0x10], ax
movsx eax, byte [r8]
xor word [rcx + 0x12], ax
movsx eax, byte [r8]
xor word [rcx + 0x14], ax
movsx eax, byte [r8]
xor word [rcx + 0x16], ax
lea rcx, [rcx + 0x1a]
sub r10, 1
jne 0x1400e5d30
mov word [r9 + 0x68], r13w
mov rsi, 0xffffffffffffffff
mov rcx, rsi
inc rcx
cmp word [r9 + rcx*2], r13w
jne 0x1400e5db0
mov rdx, qword [r14 + 0x10]
movabs r15, 0x7ffffffffffffffe
mov rax, r15
sub rax, rdx
cmp rax, rcx
jb 0x1400e612e
mov rax, r14
cmp qword [r14 + 0x18], 7
jbe 0x1400e5de4
mov rax, qword [r14]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rbp + 0x58]
call fcn.1400e1890
nop
lea rdx, [rbp + 0x58]
cmp qword [rbp + 0x70], 7
cmova rdx, qword [rbp + 0x58]
lea rcx, [rbp + 0x78]
call qword [sym.imp.ntdll.dll_RtlInitUnicodeString]
mov cl, 0x33
mov word [rsp + 0x70], gethostname
movsx edi, cl
movzx ebx, di
xor bx, 0x60
mov word [rsp + 0x72], bx
movzx eax, di
xor ax, 0x6a
mov word [rsp + 0x74], ax
mov word [rsp + 0x76], bx
movzx eax, di
xor ax, 0x67
mov word [rsp + 0x78], ax
movzx eax, di
xor ax, 0x76
mov word [rsp + 0x7a], ax
movzx eax, di
xor ax, 0x7e
mov word [rsp + 0x7c], ax
movzx r11d, di
xor r11w, 0x6f
mov word [rsp + 0x7e], r11w
movzx r8d, di
xor r8w, 0x70
mov word [rbp - 0x80], r8w
movzx eax, di
xor ax, 0x46
mov word [rbp - 0x7e], ax
movzx r9d, di
xor r9w, 0x41
mov word [rbp - 0x7c], r9w
mov word [rbp - 0x7a], r9w
movzx r10d, di
xor r10w, 0x56
mov word [rbp - 0x78], r10w
movzx ecx, di
xor cx, 0x5d
mov word [rbp - 0x76], cx
movzx edx, di
xor dx, 0x47
mov word [rbp - 0x74], dx
mov word [rbp - 0x72], r8w
movzx eax, di
xor ax, 0x5c
mov word [rbp - 0x70], ax
mov word [rbp - 0x6e], cx
mov word [rbp - 0x6c], dx
mov word [rbp - 0x6a], r9w
mov word [rbp - 0x68], ax
movzx eax, di
xor ax, 0x5f
mov word [rbp - 0x66], ax
mov word [rbp - 0x64], bx
mov word [rbp - 0x62], r10w
mov word [rbp - 0x60], dx
mov word [rbp - 0x5e], r11w
mov word [rbp - 0x5c], bx
mov word [rbp - 0x5a], r10w
mov word [rbp - 0x58], r9w
movzx eax, di
xor ax, 0x45
mov word [rbp - 0x56], ax
movzx eax, di
xor ax, 0x5a
mov word [rbp - 0x54], ax
movzx eax, di
xor ax, 0x50
mov word [rbp - 0x52], ax
mov word [rbp - 0x50], r10w
xor di, 0x40
mov word [rbp - 0x4e], di
mov word [rbp - 0x4c], r11w
mov word [rbp - 0x4a], r13w
lea rax, [rsp + 0x72]
nop word [rax + rax]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x1400e5f50
mov rax, qword [r14 + 0x10]
sub r15, rax
cmp r15, rsi
jb 0x1400e6128
cmp qword [r14 + 0x18], 7
jbe 0x1400e5f74
mov r14, qword [r14]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x72]
lea rcx, [rbp + 0x38]
call fcn.1400e1890
nop
lea rdx, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova rdx, qword [rbp + 0x38]
lea r8, [rbp + 0x30]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyW]
test eax, eax
je 0x1400e5fc0
cmp eax, 2
sete bl
jmp 0x1400e60e2
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
movdqa xmm0, xmmword [0x1403bf870]
movdqu xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x51]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp + 0x78]
call rax
mov ebx, eax
movdqa xmm0, xmmword [0x1403c0590]
movdqu xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0x20726576
mov dword [rsp + 0x64], 0x74617453
mov dword [rsp + 0x68], 0x30207375
mov word [rsp + 0x6c], 0x78
lea rdx, [rsp + 0x51]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.1400e0670
lea rdx, [0x1400d5f40]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::ios_base____ptr64____cdecl___class_std::ios_base____ptr64_____ptr64]
mov edx, ebx
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___long_int____ptr64]
lea rdx, [0x1400e0620]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
test ebx, ebx
je 0x1400e60c1
movdqa xmm0, xmmword [0x1403c06b0]
movdqu xmmword [rsp + 0x50], xmm0
mov dword [rsp + 0x60], 0x46206461
mov dword [rsp + 0x64], 0x656c6961
mov dword [rsp + 0x68], 0x212164
lea rdx, [rsp + 0x51]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t___std::wcout]
call fcn.1400e0670
lea rdx, [0x1400e0620]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64___cdecl_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t__::operator___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64____cdecl___class_std::basic_ostream_wchar_t__struct_std::char_traits_wchar_t______ptr64_____ptr64]
lea rdx, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova rdx, qword [rbp + 0x38]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegDeleteTreeW]
xor bl, bl
jmp 0x1400e60e2
lea rdx, [rbp + 0x38]
cmp qword [rbp + 0x50], 7
cmova rdx, qword [rbp + 0x38]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegDeleteTreeW]
test eax, eax
jne 0x1400e60bd
mov bl, 1
lea rcx, [rbp + 0x38]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x58]
call fcn.1400d1160
movzx eax, bl
mov rcx, qword [rbp + 0x88]
xor rcx, rsp
call fcn.1402889f0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140041a10
nop
call fcn.140041a10
int3