Function at 0x140024590
Capabilities:
Authenticate hmac
Execute command
Get common file path
Get startup folder
Hide graphical window
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x370
mov rax, qword [0x140111180]
xor rax, rsp
mov qword [rsp + 0x360], rax
xor ebx, ebx
mov ecx, 0xfffffff5
call qword [sym.imp.KERNEL32.dll_GetStdHandle]
mov r12, rax
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
mov r13, rax
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
lea r8d, [rbx + 7]
lea rdx, str.cs2.exe
lea rcx, [rsp + 0x40]
call fcn.140004870
lea rdx, [rsp + 0x40]
call fcn.140020b60
mov r14d, eax
lea rax, [rsp + 0x250]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea edx, [rbx + 5]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jne 0x140024ef2
lea rax, [rsp + 0x250]
mov rsi, 0xffffffffffffffff
mov rdi, rsi
nop word [rax + rax]
inc rdi
cmp byte [rax + rdi], bl
jne 0x140024650
mov rax, qword [reloc.WS2_32.dll_ntohs]
lea r15, [0x140172170]
cmp rdi, rax
ja 0x14002469c
mov rbx, r15
cmp rax, 0xf
cmova rbx, qword [0x140172170]
mov qword [0x140172180], rdi
mov r8, rdi
lea rdx, [rsp + 0x250]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [rbx + rdi], 0
xor ebx, ebx
jmp 0x1400246b8
lea r9, [rsp + 0x250]
movzx r8d, byte [rsp + 0x80]
mov rdx, rdi
mov rcx, r15
call fcn.14001d340
mov r8d, recv
lea rdx, [0x1400f9178]
mov rcx, r15
call fcn.14001c8f0
sub r14d, 1
je 0x140024e8c
sub r14d, 1
je 0x1400252b7
cmp r14d, 1
je 0x140025251
call fcn.14002b230
test al, al
je 0x140024f9e
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], rbx
mov qword [rsp + 0x58], rbx
mov r8d, 0xa
lea rdx, str.client.dll
lea rcx, [rsp + 0x40]
call fcn.140004870
lea rdx, [rsp + 0x40]
call fcn.14001fff0
mov rdx, rax
mov qword [0x14017f170], rax
mov ecx, dword [0x14012652c]
add rcx, rax
mov qword [0x14017f178], rcx
mov ecx, dword [0x14015b4a4]
add rcx, rax
mov qword [0x14017f180], rcx
mov ecx, dword [0x14015b4a0]
add rcx, rax
mov qword [0x14017f188], rcx
mov ecx, dword [0x14015b4b0]
add rcx, rax
mov qword [0x14017f198], rcx
mov ecx, dword [0x140126530]
add rcx, rax
mov qword [0x14017f1a0], rcx
mov eax, dword [0x14015b4ac]
add rax, rdx
mov qword [0x14017f1a8], rax
mov eax, dword [0x14015b4a8]
add rax, rdx
mov qword [0x14017f1b0], rax
test rdx, rdx
je 0x140025073
mov rdi, qword [0x140172180]
mov rbx, r15
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rbx, qword [0x140172170]
call fcn.1400d83fc
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rdi
lea r8, [rsp + 0x70]
mov edx, eax
lea rcx, [rsp + 0x88]
call fcn.140021200
nop
lea rcx, [rsp + 0x88]
call fcn.140021b80
movzx ebx, al
mov rdx, qword [rsp + 0xa0]
cmp rdx, 7
jbe 0x140024849
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024844
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140024844
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400d8fb4
test bl, bl
je 0x1400248d5
vmovups xmm0, xmmword [str.wZXQQ]
vmovups xmmword [rsp + 0x40], xmm0
vmovsd xmm0, qword [0x1400f8f20]
mov eax, dword [0x1400f8f28]
mov dword [rsp + 0x58], eax
movzx edx, byte [0x1400f8f2c]
xor byte [rsp + 0x41], 0x35
xor byte [rsp + 0x42], 0x36
xor byte [rsp + 0x43], 0x37
xor byte [rsp + 0x44], 0x38
xor byte [rsp + 0x45], 0x39
xor byte [rsp + 0x46], 0x3a
xor byte [rsp + 0x47], 0x3b
xor byte [rsp + 0x48], 0x3c
xor byte [rsp + 0x49], 0x3d
xor byte [rsp + 0x4a], 0x3e
xor byte [rsp + 0x4b], 0x3f
xor byte [rsp + 0x4c], 0x40
xor al, 0x4c
mov byte [rsp + 0x58], al
xor byte [rsp + 0x5a], 0x4e
xor byte [rsp + 0x5b], 0x4f
xor dl, 0x50
mov byte [rsp + 0x5c], dl
lea rdx, [rsp + 0x40]
jmp 0x1400249f9
mov rdi, qword [0x140172180]
mov rbx, r15
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova rbx, qword [0x140172170]
call fcn.1400d83fc
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x78], rdi
lea r8, [rsp + 0x70]
mov edx, eax
lea rcx, [rsp + 0x40]
call fcn.140021200
nop
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 7
cmova rcx, qword [rsp + 0x40]
call fcn.1400d865c
mov rbx, rax
shr rax, 0x20
test eax, eax
jne 0x140025158
mov rdx, qword [rsp + 0x58]
cmp rdx, 7
jbe 0x14002497a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024975
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140024975
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400d8fb4
test bl, bl
je 0x140025176
vmovups xmm0, xmmword [0x1400f8e90]
vmovups xmmword [rsp + 0x40], xmm0
vmovsd xmm0, qword [0x1400f8ea0]
movzx edx, word [0x1400f8ea8]
mov word [rsp + 0x58], dx
movzx eax, byte [0x1400f8eaa]
xor byte [rsp + 0x41], 0x35
xor byte [rsp + 0x42], 0x36
xor byte [rsp + 0x43], 0x37
xor byte [rsp + 0x44], 0x38
xor byte [rsp + 0x45], 0x39
xor byte [rsp + 0x46], 0x3a
xor byte [rsp + 0x47], 0x3b
xor byte [rsp + 0x48], 0x3c
xor byte [rsp + 0x49], 0x3d
xor byte [rsp + 0x4a], 0x3e
xor byte [rsp + 0x4b], 0x3f
xor byte [rsp + 0x4c], 0x40
xor dl, 0x4c
mov byte [rsp + 0x58], dl
xor al, 0x4e
mov byte [rsp + 0x5a], al
lea rdx, [rsp + 0x40]
mov byte [rsp + 0x40], 0x43
vmovsd qword [rsp + 0x50], xmm0
xor byte [rsp + 0x4d], 0x41
xor byte [rsp + 0x4e], 0x42
xor byte [rsp + 0x4f], 0x43
xor byte [rsp + 0x50], 0x44
xor byte [rsp + 0x51], 0x45
xor byte [rsp + 0x52], 0x46
xor byte [rsp + 0x53], 0x47
xor byte [rsp + 0x54], 0x48
xor byte [rsp + 0x55], 0x49
xor byte [rsp + 0x56], 0x4a
xor byte [rsp + 0x57], 0x4b
xor byte [rsp + 0x59], 0x4d
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.14001ce10
mov rdx, r15
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
mov r8, qword [0x140172180]
cmova rdx, qword [0x140172170]
mov rcx, rax
call fcn.14002ab60
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]
xor edx, edx
mov r8d, 0x110
lea rcx, [rsp + 0x140]
call sub.VCRUNTIME140.dll_memset
vmovups xmm0, xmmword [str.hQSQYLVO]
vmovups xmmword [rsp + 0x70], xmm0
vpextrb eax, xmm0, 0xf
test al, al
je 0x140024afb
mov byte [rsp + 0x70], 0x5c
xor byte [rsp + 0x71], 0x35
xor byte [rsp + 0x72], 0x36
xor byte [rsp + 0x73], 0x37
xor byte [rsp + 0x74], 0x38
xor byte [rsp + 0x75], 0x39
xor byte [rsp + 0x76], 0x3a
xor byte [rsp + 0x77], 0x3b
xor byte [rsp + 0x78], 0x3c
xor byte [rsp + 0x79], 0x3d
xor byte [rsp + 0x7a], 0x3e
xor byte [rsp + 0x7b], 0x3f
xor byte [rsp + 0x7c], 0x40
xor byte [rsp + 0x7d], 0x41
xor byte [rsp + 0x7e], 0x42
xor byte [rsp + 0x7f], 0x43
mov rdx, qword [0x140172180]
lea rax, [rsp + 0x70]
mov rcx, rsi
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x140024b10
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, rcx
jb 0x140025170
mov r9, r15
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova r9, qword [0x140172170]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
mov r8, r15
movzx edx, byte [rsp + 0x80]
lea rcx, [rsp + 0xb0]
call fcn.1400046c0
nop
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x140]
call fcn.1400282d0
nop
mov rdx, qword [rsp + 0xc8]
cmp rdx, 0xf
jbe 0x140024bcb
inc rdx
mov rcx, qword [rsp + 0xb0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024bc6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140024bc6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400d8fb4
vmovdqu xmm0, xmmword [0x1400fc320]
vmovdqu xmmword [rsp + 0xc0], xmm0
mov byte [rsp + 0xb0], 0
cmp qword [rsp + 0x1d0], 0
je 0x140024c2c
mov byte [0x14017e914], 1
lea rcx, [rsp + 0x150]
call fcn.1400290c0
test rax, rax
jne 0x140024c2c
mov rax, qword [rsp + 0x140]
movsxd rcx, dword [rax + 4]
lea rax, [rsp + 0x140]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
mov ecx, 0x1770
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 0x1f4
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Beep]
lea rcx, [0x1400f90d8]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
xor edx, edx
mov rcx, r13
call qword [sym.imp.USER32.dll_ShowWindow]
nop
lea rax, [rsp + 0x100]
mov qword [rsp + 0xf0], rax
lea rax, vtable.std::_Func_impl_no_alloc_void____cdecl___void___void___.0
mov qword [rsp + 0x100], rax
lea rax, [0x1400183e0]
mov qword [rsp + 0x108], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0x138], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x70], rax
mov rax, qword [str.gqzhYIJ_pvoXr_CPUI_]
mov qword [rsp + 0x60], rax
cmp byte [0x1400f8d57], 0
je 0x140024ce8
mov byte [rsp + 0x60], 0x53
xor byte [rsp + 0x61], 0x35
xor byte [rsp + 0x62], 0x36
xor byte [rsp + 0x63], 0x37
xor byte [rsp + 0x64], 0x38
xor byte [rsp + 0x65], 0x39
xor byte [rsp + 0x66], 0x3a
xor byte [rsp + 0x67], 0x3b
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0xd0], xmm0
xor ebx, ebx
mov qword [rsp + 0xe0], rbx
mov qword [rsp + 0xe8], rbx
lea rax, [rsp + 0x60]
mov r8, rsi
nop
inc r8
cmp byte [rax + r8], bl
jne 0x140024d10
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0xd0]
call fcn.140004870
nop
vmovups xmm0, xmmword [str.wZCYLH]
vmovups xmmword [rsp + 0x40], xmm0
movzx eax, byte [0x1400f8ec0]
mov byte [rsp + 0x40], 0x43
xor byte [rsp + 0x41], 0x35
xor byte [rsp + 0x42], 0x36
xor byte [rsp + 0x43], 0x37
xor byte [rsp + 0x44], 0x38
xor byte [rsp + 0x45], 0x39
xor byte [rsp + 0x46], 0x3a
xor byte [rsp + 0x47], 0x3b
xor byte [rsp + 0x48], 0x3c
xor byte [rsp + 0x49], 0x3d
xor byte [rsp + 0x4a], 0x3e
xor byte [rsp + 0x4b], 0x3f
xor byte [rsp + 0x4c], 0x40
xor byte [rsp + 0x4d], 0x41
xor byte [rsp + 0x4e], 0x42
xor byte [rsp + 0x4f], 0x43
xor al, 0x44
mov byte [rsp + 0x50], al
vpxor xmm0, xmm0, xmm0
vmovups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x40]
nop dword [rax]
inc rsi
cmp byte [rax + rsi], 0
jne 0x140024dc0
mov r8, rsi
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x88]
call fcn.140004870
nop
lea r9, [rsp + 0x100]
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x88]
call fcn.14007ccb0
nop
mov rax, qword [rsp + 0x140]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x140], rax
mov rax, qword [rsp + 0x140]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rsp + rcx + 0x13c], edx
lea rcx, [rsp + 0x150]
call fcn.140028260
lea rcx, [rsp + 0x158]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rsp + 0x1f0]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
mov rcx, qword [rsp + 0x360]
xor rcx, rsp
call fcn.1400d8d10
lea r11, [rsp + 0x370]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
mov edx, 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x70]
call fcn.140025350
movzx edx, byte [rax + 7]
test dl, dl
je 0x140024ed4
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor dl, 0x3b
mov byte [rax + 7], dl
mov rdx, rax
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]
call fcn.140022e70
int3
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, [rsp + 0x40]
call fcn.140025320
movzx edx, byte [rax + 0x1c]
test dl, dl
je 0x140024f80
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor byte [rax + 7], 0x3b
xor byte [rax + 8], 0x3c
xor byte [rax + 9], 0x3d
xor byte [rax + 0xa], 0x3e
xor byte [rax + 0xb], 0x3f
xor byte [rax + 0xc], 0x40
xor byte [rax + 0xd], 0x41
xor byte [rax + 0xe], 0x42
xor byte [rax + 0xf], 0x43
xor byte [rax + 0x10], 0x44
xor byte [rax + 0x11], 0x45
xor byte [rax + 0x12], 0x46
xor byte [rax + 0x13], 0x47
xor byte [rax + 0x14], 0x48
xor byte [rax + 0x15], 0x49
xor byte [rax + 0x16], 0x4a
xor byte [rax + 0x17], 0x4b
xor byte [rax + 0x18], 0x4c
xor byte [rax + 0x19], 0x4d
xor byte [rax + 0x1a], 0x4e
xor byte [rax + 0x1b], 0x4f
xor dl, 0x50
mov byte [rax + 0x1c], dl
mov rdx, rax
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]
call fcn.140022e70
int3
mov edx, 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x88]
call fcn.140025380
movzx edx, byte [rax + 0x21]
test dl, dl
je 0x140025055
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor byte [rax + 7], 0x3b
xor byte [rax + 8], 0x3c
xor byte [rax + 9], 0x3d
xor byte [rax + 0xa], 0x3e
xor byte [rax + 0xb], 0x3f
xor byte [rax + 0xc], 0x40
xor byte [rax + 0xd], 0x41
xor byte [rax + 0xe], 0x42
xor byte [rax + 0xf], 0x43
xor byte [rax + 0x10], 0x44
xor byte [rax + 0x11], 0x45
xor byte [rax + 0x12], 0x46
xor byte [rax + 0x13], 0x47
xor byte [rax + 0x14], 0x48
xor byte [rax + 0x15], 0x49
xor byte [rax + 0x16], 0x4a
xor byte [rax + 0x17], 0x4b
xor byte [rax + 0x18], 0x4c
xor byte [rax + 0x19], 0x4d
xor byte [rax + 0x1a], 0x4e
xor byte [rax + 0x1b], 0x4f
xor byte [rax + 0x1c], 0x50
xor byte [rax + 0x1d], 0x51
xor byte [rax + 0x1e], 0x52
xor byte [rax + 0x1f], 0x53
xor byte [rax + 0x20], 0x54
xor dl, 0x55
mov byte [rax + 0x21], dl
mov rdx, rax
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]
call fcn.140022e70
int3
mov edx, 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x88]
call fcn.1400253a0
movzx edx, byte [rax + 0x25]
test dl, dl
je 0x14002513a
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor byte [rax + 7], 0x3b
xor byte [rax + 8], 0x3c
xor byte [rax + 9], 0x3d
xor byte [rax + 0xa], 0x3e
xor byte [rax + 0xb], 0x3f
xor byte [rax + 0xc], 0x40
xor byte [rax + 0xd], 0x41
xor byte [rax + 0xe], 0x42
xor byte [rax + 0xf], 0x43
xor byte [rax + 0x10], 0x44
xor byte [rax + 0x11], 0x45
xor byte [rax + 0x12], 0x46
xor byte [rax + 0x13], 0x47
xor byte [rax + 0x14], 0x48
xor byte [rax + 0x15], 0x49
xor byte [rax + 0x16], 0x4a
xor byte [rax + 0x17], 0x4b
xor byte [rax + 0x18], 0x4c
xor byte [rax + 0x19], 0x4d
xor byte [rax + 0x1a], 0x4e
xor byte [rax + 0x1b], 0x4f
xor byte [rax + 0x1c], 0x50
xor byte [rax + 0x1d], 0x51
xor byte [rax + 0x1e], 0x52
xor byte [rax + 0x1f], 0x53
xor byte [rax + 0x20], 0x54
xor byte [rax + 0x21], 0x55
xor byte [rax + 0x22], 0x56
xor byte [rax + 0x23], 0x57
xor byte [rax + 0x24], 0x58
xor dl, 0x59
mov byte [rax + 0x25], dl
mov rdx, rax
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]
call fcn.140022e70
nop
shr rbx, 0x20
lea r8, [rsp + 0x40]
mov edx, ebx
lea rcx, str.create_directory
call fcn.140021ab0
nop
call fcn.1400045c0
int3
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
lea rdx, [rsp + 0x88]
call fcn.1400253d0
movzx edx, byte [rax + 0x26]
test dl, dl
je 0x140025233
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor byte [rax + 7], 0x3b
xor byte [rax + 8], 0x3c
xor byte [rax + 9], 0x3d
xor byte [rax + 0xa], 0x3e
xor byte [rax + 0xb], 0x3f
xor byte [rax + 0xc], 0x40
xor byte [rax + 0xd], 0x41
xor byte [rax + 0xe], 0x42
xor byte [rax + 0xf], 0x43
xor byte [rax + 0x10], 0x44
xor byte [rax + 0x11], 0x45
xor byte [rax + 0x12], 0x46
xor byte [rax + 0x13], 0x47
xor byte [rax + 0x14], 0x48
xor byte [rax + 0x15], 0x49
xor byte [rax + 0x16], 0x4a
xor byte [rax + 0x17], 0x4b
xor byte [rax + 0x18], 0x4c
xor byte [rax + 0x19], 0x4d
xor byte [rax + 0x1a], 0x4e
xor byte [rax + 0x1b], 0x4f
xor byte [rax + 0x1c], 0x50
xor byte [rax + 0x1d], 0x51
xor byte [rax + 0x1e], 0x52
xor byte [rax + 0x1f], 0x53
xor byte [rax + 0x20], 0x54
xor byte [rax + 0x21], 0x55
xor byte [rax + 0x22], 0x56
xor byte [rax + 0x23], 0x57
xor byte [rax + 0x24], 0x58
xor byte [rax + 0x25], 0x59
xor dl, 0x5a
mov byte [rax + 0x26], dl
mov rdx, rax
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]
call fcn.140022e70
int3
mov edx, 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x70]
call fcn.140025370
movzx edx, byte [rax + 7]
test dl, dl
je 0x140025299
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor dl, 0x3b
mov byte [rax + 7], dl
mov rdx, rax
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]
call fcn.140022e70
int3
mov edx, 4
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_SetConsoleTextAttribute]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, [rsp + 0x70]
call fcn.140025360
movzx edx, byte [rax + 7]
test dl, dl
je 0x1400252ff
xor byte [rax], 0x34
xor byte [rax + 1], 0x35
xor byte [rax + 2], 0x36
xor byte [rax + 3], 0x37
xor byte [rax + 4], 0x38
xor byte [rax + 5], 0x39
xor byte [rax + 6], 0x3a
xor dl, 0x3b
mov byte [rax + 7], dl
mov rdx, rax
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]
call fcn.140022e70
int3