Function at 0x140023d50
Capabilities:
Authenticate hmac
Create process on windows
Execute command
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xb0
mov rax, qword [0x140111180]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov rdi, rax
mov dword [rbp - 0x39], 0x340099
vmovdqu ymm0, ymmword [0x1400fc780]
vmovdqu ymmword [rbp - 0x35], ymm0
mov word [rbp - 0x15], 0xaa
lea rcx, [rbp - 0x39]
vzeroupper
call fcn.140026740
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
xor r15d, r15d
lea r12, [r15 - 1]
test eax, eax
je 0x140024088
vmovups ymm0, ymmword [str.__rX]
vmovups ymmword [rbp - 0x39], ymm0
vmovsd xmm0, qword [0x1400f8f50]
vmovsd qword [rbp - 0x19], xmm0
mov eax, dword [str.ug_]
mov dword [rbp - 0x11], eax
mov byte [rbp - 0x39], 0xa
xor byte [rbp - 0x38], 0x35
xor byte [rbp - 0x37], 0x36
xor byte [rbp - 0x36], 0x37
xor byte [rbp - 0x35], 0x38
xor byte [rbp - 0x34], 0x39
xor byte [rbp - 0x33], 0x3a
xor byte [rbp - 0x32], 0x3b
xor byte [rbp - 0x31], 0x3c
xor byte [rbp - 0x30], 0x3d
xor byte [rbp - 0x2f], 0x3e
xor byte [rbp - 0x2e], 0x3f
xor byte [rbp - 0x2d], 0x40
xor byte [rbp - 0x2c], 0x41
xor byte [rbp - 0x2b], 0x42
xor byte [rbp - 0x2a], 0x43
xor byte [rbp - 0x29], 0x44
xor byte [rbp - 0x28], 0x45
xor byte [rbp - 0x27], 0x46
xor byte [rbp - 0x26], 0x47
xor byte [rbp - 0x25], 0x48
xor byte [rbp - 0x24], 0x49
xor byte [rbp - 0x23], 0x4a
xor byte [rbp - 0x22], 0x4b
xor byte [rbp - 0x21], 0x4c
xor byte [rbp - 0x20], 0x4d
xor byte [rbp - 0x1f], 0x4e
xor byte [rbp - 0x1e], 0x4f
xor byte [rbp - 0x1d], 0x50
xor byte [rbp - 0x1c], 0x51
xor byte [rbp - 0x1b], 0x52
xor byte [rbp - 0x1a], 0x53
xor byte [rbp - 0x19], 0x54
xor byte [rbp - 0x18], 0x55
xor byte [rbp - 0x17], 0x56
xor byte [rbp - 0x16], 0x57
xor byte [rbp - 0x15], 0x58
xor byte [rbp - 0x14], 0x59
xor byte [rbp - 0x13], 0x5a
xor byte [rbp - 0x12], 0x5b
xor al, 0x5c
mov byte [rbp - 0x11], al
xor byte [rbp - 0x10], 0x5d
xor byte [rbp - 0xf], 0x5e
xor byte [rbp - 0xe], 0x5f
lea rdx, [rbp - 0x39]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
vzeroupper
call fcn.14001ce10
lea rdx, [rbp - 0x49]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call fcn.1400297c0
movzx eax, byte [rbp - 0x49]
sub al, 0x59
test al, 0xdf
sete al
test al, al
je 0x140024088
lea edx, [r15 + 1]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea ecx, [r15 + 0x10]
call fcn.1400d91d8
mov dword [rax], 0x6e75614c
mov dword [rax + 4], 0x6e696863
mov dword [rax + 8], 0x74532067
mov dword [rax + 0xc], 0x6d6165
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 dword [rbp - 0x39], 0x340099
vmovdqu ymm0, ymmword [0x1400fc7c0]
vmovdqu ymmword [rbp - 0x35], ymm0
mov dword [rbp - 0x15], 0xb5d0fe93
mov word [rbp - 0x11], 0xa8cd
mov byte [rbp - 0xf], r15b
lea rcx, [rbp - 0x39]
vzeroupper
call fcn.140026570
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp + 7], xmm0
mov qword [rbp + 0x17], r15
mov qword [rbp + 0x1f], r15
mov r8, r12
inc r8
cmp byte [rax + r8], r15b
jne 0x140023f70
mov rdx, rax
lea rcx, [rbp + 7]
call fcn.140004870
nop
mov rcx, qword [rbp + 0x17]
inc rcx
mov eax, 2
mul rcx
cmovo rax, r12
mov rcx, rax
call fcn.1400d91d8
mov rbx, rax
lea rcx, [rbp + 7]
mov rdx, qword [rbp + 0x17]
cmp qword [rbp + 0x1f], 0xf
jbe 0x140023fbc
mov r9, qword [rbp + 7]
add rdx, r9
jmp 0x140023fc3
add rdx, rcx
lea r9, [rbp + 7]
mov r8, rbx
mov rcx, r9
call fcn.140029aa0
mov rax, qword [rbp + 0x17]
mov word [rbx + rax*2], r15w
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, rbx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov ecx, 0x3a98
call qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rbp - 0x39], 0x340099
vmovdqu ymm0, ymmword [0x1400fc780]
vmovdqu ymmword [rbp - 0x35], ymm0
mov word [rbp - 0x15], 0xaa
lea rcx, [rbp - 0x39]
vzeroupper
call fcn.140026740
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
test eax, eax
je 0x140024036
mov ecx, 0x1388
jmp 0x140023ff6
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, rbx
call fcn.1400d8fb4
nop
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0xf
jbe 0x140024088
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024083
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140024083
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400d8fb4
mov edx, 2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov ecx, reloc.WS2_32.dll_ntohs
call fcn.1400d91d8
mov dword [rax], 0x6e75614c
mov dword [rax + 4], 0x64656863
mov dword [rax + 8], 0x65745320
mov word [rax + 0xc], 0x6d61
mov byte [rax + 0xe], 0
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 dword [rbp - 0x39], 0x340099
vmovdqu ymm0, ymmword [0x1400fc740]
vmovdqu ymmword [rbp - 0x35], ymm0
lea rcx, [rbp - 0x39]
vzeroupper
call fcn.1400268b0
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
test eax, eax
je 0x1400243a1
mov edx, 1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov ecx, reloc.WS2_32.dll_ntohl
call fcn.1400d91d8
mov dword [rax], 0x6e75614c
mov dword [rax + 4], 0x6e696863
mov dword [rax + 8], 0x53432067
mov word [rax + 0xc], reloc.WLDAP32.dll_Ordinal_50
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 edx, 1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov ecx, 0xa
call fcn.1400d91d8
mov dword [rax], 0x656a6e49
mov dword [rax + 4], 0x6e697463
mov word [rax + 8], 0x67
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 dword [rbp + 7], 0x340099
vmovdqu xmm0, xmmword [0x1400fc530]
vmovdqu xmmword [rbp + 0xb], xmm0
mov dword [rbp + 0x1b], 0xb88bbc93
mov word [rbp + 0x1f], 0x88
lea rcx, [rbp + 7]
call fcn.140026470
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], r15
mov qword [rbp - 0x21], r15
mov r8, r12
inc r8
cmp byte [rax + r8], 0
jne 0x1400241f0
mov rdx, rax
lea rcx, [rbp - 0x39]
call fcn.140004870
nop
mov rcx, qword [rbp - 0x29]
inc rcx
mov eax, 2
mul rcx
cmovo rax, r12
mov rcx, rax
call fcn.1400d91d8
mov rbx, rax
lea rcx, [rbp - 0x39]
mov rdx, qword [rbp - 0x29]
cmp qword [rbp - 0x21], 0xf
jbe 0x14002423d
mov r9, qword [rbp - 0x39]
add rdx, r9
jmp 0x140024244
add rdx, rcx
lea r9, [rbp - 0x39]
mov r8, rbx
mov rcx, r9
call fcn.140029aa0
mov rax, qword [rbp - 0x29]
mov word [rbx + rax*2], r15w
mov dword [rsp + 0x28], r15d
mov qword [rsp + 0x20], r15
xor r9d, r9d
mov r8, rbx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov ecx, 0x7530
call qword [sym.imp.KERNEL32.dll_Sleep]
mov dword [rbp + 7], 0x340099
vmovdqu ymm0, ymmword [0x1400fc740]
vmovdqu ymmword [rbp + 0xb], ymm0
lea rcx, [rbp + 7]
vzeroupper
call fcn.1400268b0
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
test eax, eax
je 0x1400242b1
mov ecx, 0x1388
jmp 0x140024277
lea rcx, [rbp - 0x41]
call fcn.140005ae0
movabs rax, 0x7fffffffff67697f
mov rbx, qword [rbp - 0x41]
cmp rbx, rax
je 0x1400242dd
setl al
test al, al
je 0x1400242dd
add rbx, 0x989680
jmp 0x1400242e7
movabs rbx, 0x7fffffffffffffff
mov r15d, 0xff
movabs r12, 0x4e94914effff
movabs r13, 0x431bde82d7b634db
lea rcx, [rbp - 0x41]
call fcn.140005ae0
mov rax, qword [rbp - 0x41]
cmp rbx, rax
je 0x140024363
mov ecx, 1
cmovl ecx, r15d
test cl, cl
jle 0x140024363
mov rcx, rbx
sub rcx, rax
cmp rcx, r12
jg 0x140024357
mov rax, r13
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0xf4240
cmp rax, rcx
jge 0x14002434e
inc rdx
mov ecx, edx
call sub.KERNEL32.dll_Sleep
jmp 0x140024301
mov ecx, 0x5265c00
call sub.KERNEL32.dll_Sleep
jmp 0x140024301
mov rdx, qword [rbp - 0x21]
cmp rdx, 0xf
jbe 0x1400243a1
inc rdx
mov rcx, qword [rbp - 0x39]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002439c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14002439c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400d8fb4
mov edx, 2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov ecx, reloc.WS2_32.dll_listen
call fcn.1400d91d8
mov dword [rax], 0x6e75614c
mov dword [rax + 4], 0x64656863
mov dword [rax + 8], 0x32534320
mov byte [rax + 0xc], 0
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 edx, 2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp + 7], 0x340099
vmovdqu xmm0, xmmword [0x1400fc520]
vmovdqu xmmword [rbp + 0xb], xmm0
mov dword [rbp + 0x1b], 0xe38fe396
mov word [rbp + 0x1f], 0x9a
lea rcx, [rbp + 7]
call fcn.140026470
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 edx, 1
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rbx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
mov dword [rbp - 0x39], 0x340099
lea rcx, [rbp - 0x39]
call fcn.140028bc0
lea rcx, [rbp - 0x39]
call fcn.140026210
mov rdx, rax
mov rcx, rbx
call fcn.14001ce10
lea rdx, [0x14001cfe0]
mov rcx, rax
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 edx, 7
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1400d8d10
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret