Function at 0x18004ab10
Capabilities:
Create directory

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0xf0]
sub rsp, 0x1f0
mov rax, qword [0x180090010]
xor rax, rsp
mov qword [rbp + 0xe0], rax
mov rbx, rcx
lea rdx, [rsp + 0x78]
lea rcx, str.C:Pegasus
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__stat64i32]
test eax, eax
jne 0x18004ad26
mov edi, 0x4000
test word [rsp + 0x7e], di
je 0x18004ad26
lea rdx, [rsp + 0x78]
lea rcx, str.C:Pegasuscfg
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__stat64i32]
test eax, eax
jne 0x18004ab85
test word [rsp + 0x7e], di
jne 0x18004ab92
lea rcx, [0x180084fa0]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wmkdir]
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memset
lea rdx, str.C:Pegasuscfgdefault.ini
lea rcx, [rbp - 0x30]
call fcn.18004d3d0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x58], xmm0
movdqa xmm1, xmmword [0x180085b70]
movdqu xmmword [rsp + 0x68], xmm1
mov byte [rsp + 0x58], 0
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, [rbp - 0x30]
mov dl, 0xa
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
movzx r8d, al
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 0x30]
call fcn.18004e350
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator_bool_void_const___ptr64]
test al, al
je 0x18004ac9d
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.1800413a0
mov r8, rax
lea rdx, [rbp - 0x58]
call fcn.18004c320
nop
lea rdx, [rbp - 0x58]
lea rcx, [rsp + 0x78]
call fcn.1800413a0
movss xmm0, dword [rbp - 0x38]
movss dword [rbp - 0x68], xmm0
movzx eax, byte [rbp - 0x34]
mov byte [rbp - 0x64], al
lea rdx, [rsp + 0x78]
call fcn.18004be40
nop
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x18004abcf
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004ac8c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18004ac96
call fcn.18005c3a4
jmp 0x18004abcf
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rdx, qword [rsp + 0x70]
cmp rdx, 0x10
jb 0x18004acde
inc rdx
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004acd8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18004acd8
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18005c3a4
nop
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x30], rax
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x20]
call fcn.18004d360
lea rcx, [rbp - 0x18]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_istream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x80]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x18004ad33
lea rcx, str.C:Pegasus_
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wmkdir]
mov rax, rbx
mov rcx, qword [rbp + 0xe0]
xor rcx, rsp
call fcn.18005bea0
lea r11, [rsp + 0x1f0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret