Function at 0x101d080
Capabilities:
Create directory
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 0xc]
push edi
neg eax
sbb eax, eax
push 3
pop ecx
and eax, 0x7ff8ffa9
mov edi, 0x80070057
add eax, edi
mov dword [ebp - 8], ecx
lea ecx, [ebp - 8]
mov dword [ebp - 4], eax
call dword [sym.imp.mmcbase.DLL_public:_bool___thiscall_mmcerror::SC::operator_bool_void_const]
test al, al
jne 0x103cdb6
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_int_const_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::npos]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push dword [eax]
mov ecx, ebx
push 0
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::erase_unsigned_int__unsigned_int_]
push 0x5c
push dword [ebp + 0xc]
call dword [sym.imp.msvcrt.dll_wcsrchr]
mov esi, eax
test esi, esi
pop ecx
pop ecx
je 0x103cdc9
inc esi
inc esi
xor eax, eax
mov ax, word [esi]
test ax, ax
je 0x103cde4
push eax
call dword [sym.imp.msvcrt.dll_iswspace]
test eax, eax
pop ecx
jne 0x103cdd1
cmp word [esi], 0
je 0x103cde4
push ebx
lea eax, [ebp - 0x10]
push eax
call fcn.0101b6a3
mov ecx, dword [eax]
mov dword [ebp - 8], ecx
mov eax, dword [eax + 4]
lea ecx, [ebp - 8]
mov dword [ebp - 4], eax
call dword [sym.imp.mmcbase.DLL_public:_bool___thiscall_mmcerror::SC::operator_bool_void_const]
test al, al
jne 0x101d1a0
mov eax, dword [ebx + 4]
test eax, eax
je 0x103cdf6
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov ecx, eax
and ecx, 0x10
test cl, cl
je 0x103ce00
cmp eax, 0xffffffff
je 0x103ce00
mov edi, dword [sym.imp.msvcrt.dll_wcslen]
push esi
call edi
push dword [0x1031430]
mov ebx, eax
call edi
cmp ebx, eax
pop ecx
pop ecx
jle 0x101d18b
mov edi, ebx
sub edi, eax
lea eax, [esi + edi*2]
push eax
push dword [0x1031430]
call dword [sym.imp.msvcrt.dll__wcsicmp]
test eax, eax
pop ecx
pop ecx
jne 0x101d18b
lea ebx, [edi + 1]
mov ecx, dword [ebp + 0x10]
push 0x5c
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::operator_unsigned_short_int_]
mov ecx, dword [ebp + 0x10]
push ebx
push esi
call fcn.0101d1b5
mov ecx, dword [ebp - 8]
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov ecx, dword [ebp - 4]
mov dword [eax + 4], ecx
pop esi
pop ebx
pop edi
leave
ret 0xc
mov ecx, dword [ebp - 8]
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov ecx, dword [ebp - 4]
mov dword [eax + 4], ecx
jmp 0x101d1b0
mov esi, dword [ebp + 0xc]
jmp 0x101d0e3
inc esi
inc esi
mov ax, word [esi]
test ax, ax
jne 0x101d0f1
jmp 0x101d101
mov eax, dword [ebp + 8]
push 3
pop ecx
mov edx, edi
mov dword [eax], ecx
mov dword [eax + 4], edx
jmp 0x101d1ae
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_short_int_const__private:_static_unsigned_short_int_const____cdecl_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Nullstr_void_::_2::_C]
jmp 0x101d138
mov eax, dword [ebx + 4]
test eax, eax
jne 0x103ce0c
mov eax, dword [sym.imp.MSVCP60.dll_unsigned_short_int_const__private:_static_unsigned_short_int_const____cdecl_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::_Nullstr_void_::_2::_C]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x101d155
lea ecx, [ebp - 8]
call dword [sym.imp.mmcbase.DLL_public:_class_mmcerror::SC____thiscall_mmcerror::SC::FromLastError_void_]
mov edx, dword [eax]
mov ecx, dword [ebp + 8]
mov dword [ecx], edx
mov eax, dword [eax + 4]
mov dword [ecx + 4], eax
mov eax, ecx
jmp 0x101d1ae