Function at 0x413070
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x4a3d6b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
push ebx
push edi
mov edi, ecx
mov ebx, 1
lea ecx, [esp + 0x24]
mov dword [esp + 0x14], ebx
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::IsEmpty]
test al, al
jne 0x4130b2
lea eax, [esp + 0x24]
push eax
lea ecx, [edi + 0x4fc]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::operator_1]
lea ecx, [esp + 8]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
lea ecx, [esp + 0x20]
mov byte [esp + 0x14], 2
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::IsEmpty]
test al, al
jne 0x4130e9
mov ecx, 0x4cc110
call dword [sym.imp.MSVCP71.dll_public:_char_const____thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::c_str_void_const]
mov ecx, dword [0x4cbdc0]
push eax
push ecx
push str._s_s_
jmp 0x4130fb
mov eax, dword [0x4cc10c]
mov ecx, dword [0x4cbdc0]
push eax
push ecx
push str._s_lu_
lea edx, [esp + 0x14]
push edx
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Format]
add esp, 0x10
push ebp
push esi
push 0
lea ecx, [esp + 0x14]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryA]
lea ecx, [esp + 0x10]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
mov ecx, 0x4cc7a8
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
lea ecx, [esp + 0x28]
xor esi, esi
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::IsEmpty]
test al, al
mov ebp, dword [esp + 0x24]
jne 0x41314b
push ebx
jmp 0x413151
test ebp, ebp
jbe 0x413161
push 0
push 0x4cc108
call fcn.0042ae60
add esp, 8
movzx esi, al
push 0x4cc2ec
call fcn.0042af50
add esp, 4
test al, al
je 0x41317a
test esi, esi
jne 0x413252
mov ecx, 0x4cc948
mov byte [0x4cc5c4], bl
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
mov ecx, 0x4cc42c
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
mov ecx, dword [0x4cc2f0]
mov ax, word [0x4cc950]
and ecx, 0xfffff7ff
or ecx, 0x40000000
mov dword [0x4cc2f0], ecx
lea ecx, [esp + 0x28]
mov word [0x4cc448], ax
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::IsEmpty]
test al, al
jne 0x4131df
lea ecx, [esp + 0x28]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
mov ecx, 0x4cc110
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
test ebp, ebp
jbe 0x4131e9
mov dword [0x4cc10c], ebp
lea ecx, [esp + 0x2c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
mov ecx, 0x4cc2b0
call dword [sym.imp.MSVCP71.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char______thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::operator_char_const__]
push 0x4cc2ec
mov byte [0x4cc12c], bl
call fcn.0042af00
add esp, 4
lea ecx, [esp + 0x28]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::IsEmpty]
test al, al
jne 0x413233
lea ecx, [esp + 0x28]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
call fcn.0042bc10
push ebx
jmp 0x413245
test ebp, ebp
jbe 0x413252
mov edx, dword [0x4cc10c]
push edx
call fcn.0042bb20
push 0
push 0x4cc108
call fcn.0042adf0
add esp, 0xc
mov eax, dword [edi + 0x168]
test eax, eax
pop esi
pop ebp
jne 0x41326d
mov eax, dword [0x4cc10c]
test eax, eax
ja 0x41326d
mov dword [edi + 0x170], ebx
mov eax, dword [edi + 0x20]
push 0
push 0x493e0
push ebx
push eax
call dword [sym.imp.USER32.dll_SetTimer]
mov al, byte [0x4cc5e6]
test al, al
je 0x4132c7
push 0x2328
push 0
mov ecx, 0x4cbda8
call fcn.00466830
test eax, eax
je 0x4132b9
mov eax, dword [edi + 0x16c]
test eax, eax
jne 0x4132ed
mov ecx, 0x4cc840
call fcn.00433f60
mov dword [edi + 0x16c], ebx
jmp 0x4132ed
push 0
mov ecx, 0x4cbda8
call fcn.00466f30
jmp 0x4132ed
mov eax, dword [edi + 0x16c]
test eax, eax
jne 0x4132e1
mov ecx, 0x4cc840
call fcn.00433f60
mov dword [edi + 0x16c], ebx
push 0
mov ecx, 0x4cbda8
call fcn.00424380
lea ecx, [esp + 8]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x20]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
lea ecx, [esp + 0x24]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov ecx, dword [esp + 0xc]
pop edi
pop ebx
mov dword fs:[0], ecx
add esp, 0x10
ret 0xc