Function at 0x670f2970
Capabilities:
Create directory

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 8], 0xfffffffffffffffe
mov qword [rsp + 0xa0], rbx
movzx ebx, dl
mov rdi, rcx
lea rdx, [rbp - 0x50]
call fcn.670e2690
nop
test bl, bl
je 0x670f2ba0
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x38]
call sym.QtCoreVBox4.dll_public:_static_class_QString___cdecl_QDir::cleanPath_class_QString_const____ptr64_
nop
mov rdx, rax
lea rcx, [rbp - 0x18]
call sym.QtCoreVBox4.dll_public:_static_class_QString___cdecl_QDir::toNativeSeparators_class_QString_const____ptr64_
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rax]
mov qword [rbp - 0x50], rcx
mov qword [rax], rdx
mov rcx, qword [rbp - 0x18]
or edi, 0xffffffff
lock dec dword [rcx]
jne 0x670f29e5
mov rcx, qword [rbp - 0x18]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
mov rax, qword [rbp - 0x38]
lock dec dword [rax]
jne 0x670f29f7
mov rcx, qword [rbp - 0x38]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
mov r12d, edi
lea rax, [0x671c7bb8]
mov qword [rbp - 0x10], rax
mov r8d, 1
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x50]
call sym.QtCoreVBox4.dll_public:_bool___cdecl_QString::startsWith_class_QLatin1String_const____ptr64__enum_Qt::CaseSensitivity_const___ptr64
test al, al
je 0x670f2a82
xor esi, esi
mov rax, qword [rbp - 0x50]
cmp dword [rax + 8], esi
jle 0x670f2a82
mov r13d, esi
nop word [rax + rax]
mov rcx, qword [rax + 0x10]
movzx ebx, word [r13 + rcx]
lea rcx, [rbp + 0x40]
call sym.QtCoreVBox4.dll_public:_static_class_QChar___cdecl_QDir::separator_void_
cmp bx, word [rax]
jne 0x670f2a59
inc esi
add r13, 2
mov rax, qword [rbp - 0x50]
cmp esi, dword [rax + 8]
jl 0x670f2a30
jmp 0x670f2a82
mov r12d, esi
cmp esi, 0xffffffff
je 0x670f2a82
lea rcx, [rbp + 0x48]
call sym.QtCoreVBox4.dll_public:_static_class_QChar___cdecl_QDir::separator_void_
mov r9d, 1
mov r8d, esi
movzx edx, word [rax]
lea rcx, [rbp - 0x50]
call sym.QtCoreVBox4.dll_public:_int___cdecl_QString::indexOf_class_QChar__int__enum_Qt::CaseSensitivity_const___ptr64
mov r12d, eax
lea rcx, [rbp - 0x40]
call sym.QtCoreVBox4.dll_public:_static_class_QChar___cdecl_QDir::separator_void_
lea r8d, [r12 + 1]
mov r9d, 1
movzx edx, word [rax]
lea rcx, [rbp - 0x50]
call sym.QtCoreVBox4.dll_public:_int___cdecl_QString::indexOf_class_QChar__int__enum_Qt::CaseSensitivity_const___ptr64
mov ebx, eax
cmp eax, 0xffffffff
jne 0x670f2ab9
mov rax, qword [rbp - 0x50]
mov ebx, dword [rax + 8]
cmp r12d, ebx
je 0x670f2b8a
test ebx, ebx
je 0x670f2b3c
mov r8d, ebx
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x50]
call sym.QtCoreVBox4.dll_public:_class_QString___cdecl_QString::left_int____ptr64
nop
mov byte [rbp + 0x38], 0
lea rdx, [rbp + 0x38]
lea rcx, [rbp - 0x48]
call fcn.670f0a70
test al, al
jne 0x670f2b2a
cmp byte [rbp + 0x38], al
jne 0x670f2b75
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x20]
call fcn.670ea5d0
nop
mov rcx, rax
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
setne sil
mov rax, qword [rbp - 0x20]
lock dec dword [rax]
jne 0x670f2b25
mov rcx, qword [rbp - 0x20]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
test sil, sil
je 0x670f2b49
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x670f2b3c
mov rcx, qword [rbp - 0x48]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
mov r12d, ebx
cmp ebx, 0xffffffff
je 0x670f2b8a
jmp 0x670f2a82
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x670f2b5c
mov rcx, qword [rbp - 0x48]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
mov rax, qword [rbp - 0x50]
lock dec dword [rax]
jne 0x670f2b6e
mov rcx, qword [rbp - 0x50]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
xor al, al
jmp 0x670f2c0d
mov rax, qword [rbp - 0x48]
lock dec dword [rax]
jne 0x670f2b88
mov rcx, qword [rbp - 0x48]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
jmp 0x670f2b5c
mov rax, qword [rbp - 0x50]
lock dec dword [rax]
jne 0x670f2b9c
mov rcx, qword [rbp - 0x50]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
mov al, 1
jmp 0x670f2c0d
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.670e2690
nop
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.670ea5d0
nop
mov rcx, rax
call sym.QtCoreVBox4.dll_public:_unsigned_short_int_const____ptr64___cdecl_QString::utf16_void_const___ptr64
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
setne bl
mov rcx, qword [rbp - 0x30]
lock dec dword [rcx]
jne 0x670f2be5
mov rcx, qword [rbp - 0x30]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
mov rax, qword [rbp - 0x28]
lock dec dword [rax]
jne 0x670f2bf8
mov rcx, qword [rbp - 0x28]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
nop
mov rcx, qword [rbp - 0x50]
lock dec dword [rcx]
jne 0x670f2c0a
mov rcx, qword [rbp - 0x50]
call sym.QtCoreVBox4.dll_private:_static_void___cdecl_QString::free_struct_QString::Data____ptr64_
movzx eax, bl
mov rbx, qword [rsp + 0xa0]
add rsp, 0x70
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret