Function at 0x10039b10
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x100580e8
mov eax, dword fs:[0]
push eax
sub esp, 0x48
mov eax, dword [0x1006c3ac]
xor eax, esp
mov dword [esp + 0x44], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1006c3ac]
xor eax, esp
push eax
lea eax, [esp + 0x5c]
mov dword fs:[0], eax
mov esi, ecx
mov eax, dword [esi + 0x14]
xor edi, edi
mov dword [esp + 0x1c], esi
cmp eax, edi
je 0x10039c3e
cmp eax, 3
jb 0x10039c3e
cmp eax, 1
jae 0x10039b68
call fcn.1003f767
mov ebx, 8
cmp dword [esi + 0x18], ebx
jb 0x10039b77
mov eax, dword [esi + 4]
jmp 0x10039b7a
lea eax, [esi + 4]
cmp word [eax + 2], 0x3a
jne 0x10039c3e
xor eax, eax
push 0xffffffffffffffff
mov word [esp + 0x28], ax
push edi
mov eax, esi
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], 7
mov dword [esp + 0x3c], edi
call fcn.1000b980
mov dword [esp + 0x64], edi
mov eax, dword [esp + 0x34]
lea esi, [eax - 1]
cmp esi, eax
jbe 0x10039bba
call fcn.1003f767
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x38], ebx
jae 0x10039bc8
lea eax, [esp + 0x24]
movzx eax, word [eax + esi*2]
cmp ax, 0x5c
je 0x10039be3
cmp ax, 0x2f
je 0x10039be3
push 0x5c
lea esi, [esp + 0x24]
call fcn.10016220
lea ecx, [esp + 0x14]
push ecx
mov ebx, 1
xor eax, eax
lea edx, [esp + 0x24]
mov dword [esp + 0x18], 0x5c
call fcn.1002be30
lea edx, [esp + 0x14]
mov esi, eax
push edx
xor eax, eax
lea edx, [esp + 0x24]
mov dword [esp + 0x18], 0x2f
call fcn.1002be30
cmp esi, 0xffffffff
jne 0x10039c21
or esi, esi
cmp eax, 0xffffffff
jne 0x10039c28
or eax, eax
mov edi, esi
cmp esi, eax
jb 0x10039c30
mov edi, eax
cmp edi, 0xffffffff
jne 0x10039c5f
lea esi, [esp + 0x20]
call fcn.10002040
xor eax, eax
mov ecx, dword [esp + 0x5c]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.1003f2d1
add esp, 0x54
ret
mov ebp, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov eax, dword [esp + 0x1c]
push eax
mov ecx, edi
xor edx, edx
lea esi, [esp + 0x40]
call fcn.1002be00
mov eax, dword [esp + 0x40]
mov esi, 8
cmp dword [esp + 0x54], esi
jae 0x10039c8a
lea eax, [esp + 0x40]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
jne 0x10039cb9
mov eax, dword [esp + 0x40]
cmp dword [esp + 0x54], esi
jae 0x10039ca3
lea eax, [esp + 0x40]
push 0
push eax
call ebp
test eax, eax
jne 0x10039cb9
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x10039d29
lea ecx, [esp + 0x14]
lea esi, [edi + 1]
push ecx
mov ebx, 1
mov eax, esi
lea edx, [esp + 0x24]
mov dword [esp + 0x18], 0x5c
call fcn.1002be30
lea edx, [esp + 0x14]
mov edi, eax
push edx
mov eax, esi
lea edx, [esp + 0x24]
mov dword [esp + 0x18], 0x2f
call fcn.1002be30
cmp edi, 0xffffffff
jne 0x10039cfa
or edi, edi
cmp eax, 0xffffffff
jne 0x10039d01
or eax, eax
cmp edi, eax
jb 0x10039d07
mov edi, eax
cmp edi, 0xffffffff
je 0x10039d44
cmp dword [esp + 0x54], 8
jb 0x10039c65
mov eax, dword [esp + 0x40]
push eax
call fcn.1003f2c6
add esp, 4
jmp 0x10039c65
lea esi, [esp + 0x3c]
xor edi, edi
call fcn.10002040
lea esi, [esp + 0x20]
call fcn.10002040
mov eax, edi
jmp 0x10039c40
lea esi, [esp + 0x3c]
call fcn.10002040
lea esi, [esp + 0x20]
mov edi, ebx
call fcn.10002040
mov eax, edi
jmp 0x10039c40