Function at 0x10bae85
Capabilities:
Create directory

Disassembly:
mov eax, 0x10d189d
call fcn.01077798
sub esp, 0xc
push ebx
push esi
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::CString_4
and dword [ebp - 4], 0
lea ecx, [ebp - 0x14]
call sub.MFC42u.DLL_CString::CString_4
mov esi, dword [ebp + 8]
push esi
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::operator_1
push 0x3a
push esi
call dword [sym.imp.msvcrt.dll_wcschr]
pop ecx
pop ecx
lea ecx, [esi + 2]
cmp eax, ecx
jne 0x10baf24
cmp word [esi + 4], 0x5c
jne 0x10baf24
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 sub.MFC42u.DLL_CString::operator_2
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 sub.MFC42u.DLL_CString::operator_2
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
call sub.MFC42u.DLL_CString::CString
jmp 0x10bafd9
push 2
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Left
mov eax, dword [eax]
push 0x1004528
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 0x10bb092
push 4
pop ebx
push 0x100205c
call sub.MFC42u.DLL_CString::operator_1
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
jmp 0x10bafd4
test ebx, ebx
je 0x10bafd9
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 fcn.010761d8
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 sub.MFC42u.DLL_CString::operator_2
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 0x10baf76
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
mov ebx, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x10bb067
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 fcn.010761d8
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 sub.MFC42u.DLL_CString::operator_2
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 0x10bb050
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x10bb08f
push 0x1004204
lea ecx, [ebp - 0x14]
call fcn.010761f0
push 0x5c
lea ecx, [ebp - 0x10]
call sub.MFC42u.DLL_CString::Find_2
mov esi, eax
cmp esi, 0xffffffff
jne 0x10bafeb
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
call fcn.010761d8
push 0
push dword [ebp - 0x14]
call ebx
test eax, eax
jne 0x10bb08f
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [ebp - 0x14]
mov 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