Function at 0x1007b8e0
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x1009d5be
mov eax, dword fs:[0]
push eax
sub esp, 0x5d4
mov eax, dword [0x100cc8ec]
xor eax, esp
mov dword [esp + 0x5d0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x100cc8ec]
xor eax, esp
push eax
lea eax, [esp + 0x5e8]
mov dword fs:[0], eax
lea ecx, [esp + 0x138]
mov dword [esp + 0x5f0], 2
or edi, 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x5f0], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x11c]
mov byte [esp + 0x5f0], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
lea ecx, [esp + 0x100]
mov byte [esp + 0x5f0], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_void_]
mov byte [esp + 0x5f0], 6
call fcn.1006a190
mov esi, dword [sym.imp.MSVCP80.dll_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____cdecl_std::operator_char__struct_std::char_traits_char___class_std::allocator_char___class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const___char_const__]
push eax
lea eax, [esp + 0x5fc]
push eax
lea ecx, [esp + 0x98]
push ecx
call esi
push str.preference.cfg
push eax
lea edx, [esp + 0x6c]
mov bl, 7
push edx
mov byte [esp + 0x608], bl
call esi
add esp, 0x18
push eax
lea ecx, [esp + 0x13c]
mov byte [esp + 0x5f4], 8
call dword [sym.imp.MSVCP80.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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x58]
mov byte [esp + 0x5f0], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x90]
mov byte [esp + 0x5f0], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
call fcn.1006a190
push eax
lea eax, [esp + 0x618]
push eax
lea ecx, [esp + 0x60]
push ecx
call esi
push str.preference.cfg
push eax
lea edx, [esp + 0xa4]
mov bl, 9
push edx
mov byte [esp + 0x608], bl
call esi
add esp, 0x18
push eax
lea ecx, [esp + 0xe8]
mov byte [esp + 0x5f4], 0xa
call dword [sym.imp.MSVCP80.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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x90]
mov byte [esp + 0x5f0], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x58]
mov byte [esp + 0x5f0], 6
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
sub esp, 0x1c
lea eax, [esp + 0x100]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
sub esp, 0x1c
lea edx, [esp + 0x170]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
mov byte [esp + 0x62c], 0xb
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x18c]
mov byte [esp + 0x628], 6
call fcn.1007a670
mov eax, dword [esp + 0x618]
xor ebx, ebx
mov ebp, 0x10
cmp dword [esp + 0x62c], ebp
mov byte [esp + 0x5f0], 0xc
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], ebx
jae 0x1007baed
lea eax, [esp + 0x618]
mov ecx, dword [esp + 0x628]
push ecx
push eax
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x30]
push eax
push 0xfde9
call fcn.1007daf0
add esp, 0x14
test eax, eax
jne 0x1007c0ea
mov ecx, dword [esp + 0x24]
push ebx
push ecx
call dword [sym.imp.MSVCR80.dll__waccess]
add esp, 8
test eax, eax
je 0x1007bb52
cmp dword [esp + 0x62c], ebp
mov eax, dword [esp + 0x618]
jae 0x1007bb3f
lea eax, [esp + 0x618]
push eax
call fcn.10069c00
mov edi, eax
add esp, 4
cmp edi, ebx
jne 0x1007c0ea
call fcn.1006a190
push eax
lea edx, [esp + 0x618]
push edx
lea eax, [esp + 0x44]
push eax
call esi
push str.config
push eax
lea ecx, [esp + 0x88]
push ecx
mov byte [esp + 0x608], 0xd
call esi
mov edi, eax
mov byte [esp + 0x608], 0xe
call fcn.1006a190
push eax
lea edx, [esp + 0xe4]
push edi
push edx
call esi
add esp, 8
mov ecx, esp
mov dword [esp + 0x30], esp
push str.xecureweberror.cfg
push eax
push ecx
mov byte [esp + 0x618], 0xf
call esi
mov byte [esp + 0x618], 0x10
call fcn.1006a190
push eax
lea edx, [esp + 0x624]
push edx
lea eax, [esp + 0xdc]
push eax
call esi
push str.config
push eax
lea ecx, [esp + 0x94]
push ecx
mov byte [esp + 0x630], 0x11
call esi
mov edi, eax
mov byte [esp + 0x630], 0x12
call fcn.1006a190
push eax
lea edx, [esp + 0xd4]
push edi
push edx
call esi
add esp, 0x14
mov ecx, esp
mov dword [esp + 0x58], esp
push str.xecureweberror.cfg
push eax
push ecx
mov byte [esp + 0x634], 0x13
call esi
add esp, 0xc
mov byte [esp + 0x628], 0x16
call fcn.1007b6b0
add esp, 0x38
lea ecx, [esp + 0x90]
mov edi, eax
mov byte [esp + 0x5f0], 0x15
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x58]
mov byte [esp + 0x5f0], 0x14
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov byte [esp + 0x5f0], 0xf
lea ecx, [esp + 0xac]
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0xc8]
mov byte [esp + 0x5f0], 0xe
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x5f0], 0xd
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0xfc], ebp
mov eax, dword [esp + 0xe8]
jae 0x1007bcc2
lea eax, [esp + 0xe8]
mov edx, dword [esp + 0xf8]
push edx
push eax
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x34]
push ecx
push 0xfde9
call fcn.1007daf0
add esp, 0x14
test eax, eax
jne 0x1007c0ea
mov edx, dword [esp + 0x28]
push ebx
push edx
call dword [sym.imp.MSVCR80.dll__waccess]
add esp, 8
test eax, eax
je 0x1007bd4d
sub esp, 0x1c
lea eax, [esp + 0x630]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
sub esp, 0x1c
lea edx, [esp + 0x170]
mov ecx, esp
mov dword [esp + 0x58], esp
push edx
mov byte [esp + 0x62c], 0x17
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov byte [esp + 0x628], 0xc
call fcn.1007b3b0
mov edi, eax
add esp, 0x38
cmp edi, ebx
jne 0x1007c0ea
lea ecx, [esp + 0x154]
call fcn.1007a7d0
test eax, eax
jne 0x1007bd74
lea ecx, [esp + 0x154]
call fcn.1007aa80
test eax, eax
jne 0x1007bd74
xor edi, edi
jmp 0x1007c0ea
push 1
call fcn.1006a190
push eax
lea eax, [esp + 0x61c]
push eax
lea ecx, [esp + 0x48]
push ecx
call esi
sub esp, 0x10
mov edx, esp
mov dword [esp + 0x34], esp
push str.config
push eax
push edx
mov byte [esp + 0x61c], 0x18
call esi
add esp, 0xc
call fcn.1006b410
add esp, 0x20
lea ecx, [esp + 0x3c]
mov edi, eax
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp edi, ebx
je 0x1007bde1
push edi
call fcn.1006b030
add esp, 4
mov ecx, edi
call fcn.1006b330
push edi
call sub.MSVCR80.dll_void___cdecl_operator_delete_void__
add esp, 4
sub esp, 0x1c
lea eax, [esp + 0x630]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
mov byte [esp + 0x60c], 0x19
call fcn.1006a190
push eax
lea ecx, [esp + 0x618]
push ecx
lea edx, [esp + 0x60]
push edx
call esi
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x58], esp
push str.config
push eax
push ecx
mov byte [esp + 0x634], 0x1a
call esi
add esp, 0xc
mov byte [esp + 0x628], 0x1b
call fcn.1007b3b0
add esp, 0x38
lea ecx, [esp + 0x3c]
mov edi, eax
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp edi, ebx
jne 0x1007c0ea
push 0x3ff
lea edx, [esp + 0x1e9]
push ebx
push edx
mov byte [esp + 0x1f0], bl
call sub.MSVCR80.dll_memset
push ebx
push 0x400
lea eax, [esp + 0x1f8]
push eax
push 3
call fcn.1006acf0
lea eax, [esp + 0x200]
add esp, 0x1c
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
add eax, 1
cmp cl, bl
jne 0x1007bea0
sub eax, edx
mov ecx, 0x3ff
sub ecx, eax
push ecx
lea edx, [esp + 0x1e8]
push 0x100ace74
push edx
call dword [sym.imp.MSVCR80.dll_strncat]
sub esp, 0x10
lea eax, [esp + 0x200]
mov ecx, esp
mov dword [esp + 0x30], esp
push eax
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::constructor_char_const__]
mov byte [esp + 0x60c], 0x1c
call fcn.1006a190
push eax
lea ecx, [esp + 0x618]
push ecx
lea edx, [esp + 0x60]
push edx
call esi
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x58], esp
push str.certstorage
push eax
push ecx
mov byte [esp + 0x634], 0x1d
call esi
add esp, 0xc
mov byte [esp + 0x628], 0x1e
call fcn.1007b3b0
add esp, 0x38
lea ecx, [esp + 0x3c]
mov edi, eax
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp edi, ebx
jne 0x1007c0ea
call fcn.1006a190
push eax
lea edx, [esp + 0x618]
push edx
lea eax, [esp + 0x7c]
push eax
call esi
push 0x100ac98c
push eax
lea ecx, [esp + 0x50]
push ecx
mov byte [esp + 0x608], 0x1f
call esi
add esp, 0x18
push eax
lea ecx, [esp + 0x120]
mov byte [esp + 0x5f4], 0x20
call dword [sym.imp.MSVCP80.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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5f0], 0x1f
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x134], ebp
mov eax, dword [esp + 0x120]
jae 0x1007bfc1
lea eax, [esp + 0x120]
mov edx, dword [esp + 0x130]
push edx
push eax
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
push ecx
push 0xfde9
call fcn.1007daf0
add esp, 0x14
test eax, eax
jne 0x1007c0ea
mov edx, dword [esp + 0x1c]
push ebx
push edx
call dword [sym.imp.MSVCR80.dll__waccess]
mov ebp, dword [sym.imp.MSVCR80.dll__wmkdir]
add esp, 8
test eax, eax
je 0x1007c016
mov eax, dword [esp + 0x1c]
push eax
call ebp
mov edi, eax
add esp, 4
cmp edi, ebx
jne 0x1007c0ea
call fcn.1006a190
push eax
lea ecx, [esp + 0x618]
push ecx
lea edx, [esp + 0x7c]
push edx
call esi
push str.ipcs
push eax
lea eax, [esp + 0x50]
push eax
mov byte [esp + 0x608], 0x21
call esi
add esp, 0x18
push eax
lea ecx, [esp + 0x104]
mov byte [esp + 0x5f4], 0x22
call dword [sym.imp.MSVCP80.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_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [esp + 0x3c]
mov byte [esp + 0x5f0], 0x21
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x74]
mov byte [esp + 0x5f0], 0xc
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
cmp dword [esp + 0x118], 0x10
mov eax, dword [esp + 0x104]
jae 0x1007c095
lea eax, [esp + 0x104]
mov ecx, dword [esp + 0x114]
push ecx
push eax
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x24]
push eax
push 0xfde9
call fcn.1007daf0
add esp, 0x14
test eax, eax
jne 0x1007c0ea
mov ecx, dword [esp + 0x18]
push ebx
push ecx
call dword [sym.imp.MSVCR80.dll__waccess]
add esp, 8
test eax, eax
je 0x1007c0dc
mov edx, dword [esp + 0x18]
push edx
call ebp
mov edi, eax
add esp, 4
cmp edi, ebx
jne 0x1007c0ea
lea ecx, [esp + 0x154]
call fcn.1007ade0
mov edi, eax
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov esi, dword [sym.imp.MSVCR80.dll_free]
je 0x1007c0fe
push eax
call esi
add esp, 4
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x1007c10c
push eax
call esi
add esp, 4
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x1007c11a
push eax
call esi
add esp, 4
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x1007c128
push eax
call esi
add esp, 4
lea ecx, [esp + 0x154]
mov byte [esp + 0x5f0], 6
call fcn.1007a740
lea ecx, [esp + 0x100]
mov byte [esp + 0x5f0], 5
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x11c]
mov byte [esp + 0x5f0], 4
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0xe4]
mov byte [esp + 0x5f0], 3
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x138]
mov byte [esp + 0x5f0], 2
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x5f8]
mov byte [esp + 0x5f0], 1
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x614]
mov byte [esp + 0x5f0], bl
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
lea ecx, [esp + 0x630]
mov dword [esp + 0x5f0], 0xffffffff
call dword [sym.imp.MSVCP80.dll_public:_void___thiscall_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char__::destructor_void_]
mov eax, edi
mov ecx, dword [esp + 0x5e8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5d0]
xor ecx, esp
call fcn.10090524
add esp, 0x5e0
ret