Function at 0x4197c0
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x44f94a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x134
mov eax, dword [0x478c30]
push ebx
push esi
xor esi, esi
push 0x479140
lea ecx, [esp + 0x18]
mov dword [esp + 0x13c], eax
mov dword [esp + 0x18], esi
call fcn.0044bc90
cmp dword [0x47916c], esi
mov dword [esp + 0x144], esi
jne 0x4199cc
lea ecx, [esp + 0x11c]
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::constructor_void_]
lea eax, [esp + 0x11c]
push eax
mov byte [esp + 0x148], 1
call fcn.00418340
add esp, 4
test al, al
je 0x419940
push 0x457418
lea ecx, [esp + 0x120]
call dword [sym.imp.MSVCP71.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__::append_unsigned_short_int_const__]
mov ecx, dword [esp + 0x14c]
push ecx
lea ecx, [esp + 0x120]
call dword [sym.imp.MSVCP71.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__::append_unsigned_short_int_const__]
cmp dword [esp + 0x134], 8
mov eax, dword [esp + 0x120]
jae 0x41987c
lea eax, [esp + 0x120]
lea edx, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], edx
call fcn.004064a0
mov eax, dword [esp + 0x18]
push esi
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x4198af
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4198af
xor bl, bl
jmp 0x4198b1
mov bl, 1
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
cmp eax, ecx
je 0x4198c7
push eax
call dword [sym.imp.MSVCR71.dll_free]
add esp, 4
test bl, bl
je 0x4198e3
lea edx, [esp + 0x11c]
push edx
mov ecx, 0x479158
call dword [sym.imp.MSVCP71.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_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const__]
jmp 0x4199b7
push str.NeroMediaHome
lea ecx, [esp + 0xc]
call fcn.0040f0f0
mov eax, dword [esp + 8]
cmp eax, esi
mov byte [esp + 0x144], 2
je 0x419939
lea edx, [esp + 0x10]
push edx
mov edx, dword [esp + 0x10]
push edx
mov dword [esp + 0x18], esi
mov ecx, dword [eax]
push eax
call dword [ecx + 0x18]
cmp word [esp + 0x10], si
setne al
test al, al
je 0x419939
push 0x9f
push str.NeroHomeBurstNeroMediaManagerMediaServer_srcCommonSettingsBase.cpp
push str.Failed_to_create_application_settings_directory
lea ecx, [esp + 0x14]
call fcn.00419210
mov eax, dword [esp + 0xc]
push eax
jmp 0x41999b
push str.NeroMediaHome
lea ecx, [esp + 0xc]
call fcn.0040f0f0
mov eax, dword [esp + 8]
cmp eax, esi
mov byte [esp + 0x144], 3
je 0x419996
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [esp + 0x10]
push ecx
mov dword [esp + 0x18], esi
mov edx, dword [eax]
push eax
call dword [edx + 0x18]
cmp word [esp + 0x10], si
setne al
test al, al
je 0x419996
push 0xa4
push str.NeroHomeBurstNeroMediaManagerMediaServer_srcCommonSettingsBase.cpp
push str.Failed_to_create_general_settings_directory
lea ecx, [esp + 0x14]
call fcn.00419210
mov edx, dword [esp + 0xc]
push edx
mov byte [esp + 0x148], 1
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esp + 8]
cmp eax, esi
je 0x4199b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [esp + 0x11c]
mov byte [esp + 0x144], 0
call dword [sym.imp.MSVCP71.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
mov ecx, dword [esp + 0x150]
push 0x479158
call dword [sym.imp.MSVCP71.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_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const__]
cmp dword [0x47916c], esi
lea ecx, [esp + 0x14]
seta bl
mov dword [esp + 0x144], 0xffffffff
call fcn.0044bcb0
mov ecx, dword [esp + 0x13c]
pop esi
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x134]
mov al, bl
pop ebx
call fcn.0044d44d
add esp, 0x140
ret