Function at 0x10acb71
Capabilities:
Create directory

Disassembly:
mov eax, 0x10c1cb7
call fcn.0106f6c0
sub esp, 0xc
push ebx
push esi
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::CString_3
and dword [ebp - 4], 0
lea ecx, [ebp - 0x14]
call sub.MFC42u.DLL_CString::CString_3
mov esi, dword [ebp + 8]
push esi
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call fcn.0106e90a
push 0x3a
push esi
call dword [sym.imp.msvcrt.dll_wcschr]
pop ecx
pop ecx
lea ecx, [esi + 2]
cmp eax, ecx
jne 0x10acc10
cmp word [esi + 4], 0x5c
jne 0x10acc10
push 3
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Left
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 2
call fcn.0106e8f8
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
push 3
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Mid_1
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 3
call fcn.0106e8f8
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
jmp 0x10accc5
push 2
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Left
mov eax, dword [eax]
push 0x10045a8
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
mov ebx, eax
pop ecx
neg ebx
pop ecx
sbb bl, bl
lea ecx, [ebp + 8]
inc bl
call sub.MFC42u.DLL_CString::CString
test bl, bl
lea ecx, [ebp - 0x14]
je 0x10acd7e
push 4
pop ebx
push 0x10020dc
call fcn.0106e90a
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
jmp 0x10accc0
test ebx, ebx
je 0x10accc5
lea esi, [eax + 1]
push esi
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Left
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 4
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
push esi
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Mid_1
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 5
call fcn.0106e8f8
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
dec ebx
cmp eax, 0xffffffff
jne 0x10acc62
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
mov ebx, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x10acd53
push esi
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Left
push eax
lea ecx, [ebp - 0x14]
mov byte [ebp - 4], 6
call sub.MFC42u.DLL_CString::operator_2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
inc esi
push esi
lea eax, [ebp - 0x18]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Mid_1
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 7
call fcn.0106e8f8
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
push 0
push dword [ebp - 0x14]
call ebx
test eax, eax
jne 0x10acd3c
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x10acd7b
push 0x1004284
lea ecx, [ebp - 0x14]
call sub.MFC42u.DLL_CString::operator_1
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
mov esi, eax
cmp esi, 0xffffffff
jne 0x10accd7
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
call sub.MFC42u.DLL_CString::operator_2
push 0
push dword [ebp - 0x14]
call ebx
test eax, eax
jne 0x10acd7b
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [ebp - 0x14]
and byte [ebp - 4], 0
call sub.MFC42u.DLL_CString::CString
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::CString
mov ecx, dword [ebp - 0xc]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret 4