Function at 0x44c2ed
Capabilities:
Create directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x224
mov eax, dword [0x47c144]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0xc]
push edi
mov dword [ebp - 0x218], eax
xor eax, eax
mov ebx, 0x208
push ebx
push eax
mov word [ebp - 0x210], ax
lea eax, [ebp - 0x20e]
push eax
mov dword [ebp - 0x21c], esi
call fcn.00443420
mov edi, 0x104
push edi
push dword [ebp - 0x218]
lea eax, [ebp - 0x210]
push eax
call fcn.0044c195
add esp, 0x18
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveBackslashW]
push dword [ebp - 0x218]
lea eax, [ebp - 0x210]
push eax
call fcn.0043ff58
pop ecx
pop ecx
test eax, eax
je 0x44c386
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0043e052
leave
ret 8
push 0x40ee44
push esi
call fcn.0043f33a
pop ecx
pop ecx
test eax, eax
je 0x44c3ab
lea eax, [esi + 2]
push 0x40ee44
push eax
call fcn.0043f33a
pop ecx
pop ecx
test eax, eax
jne 0x44c373
cmp dword [ebp - 0x218], 0
je 0x44c373
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x44c3b9
sub eax, edx
sar eax, 1
lea esi, [eax + 1]
xor ecx, ecx
push 2
pop edx
mov eax, esi
mul edx
seto cl
mov dword [ebp - 0x220], esi
neg ecx
or ecx, eax
push ecx
call fcn.0043e65e
pop ecx
mov dword [ebp - 0x214], eax
test eax, eax
je 0x44c373
lea ecx, [esi + esi]
push ecx
push 0
push eax
call fcn.00443420
lea eax, [esi - 1]
push eax
push dword [ebp - 0x21c]
push esi
push dword [ebp - 0x214]
call fcn.0043fff0
add esp, 0x1c
push dword [ebp - 0x214]
call dword [sym.imp.SHLWAPI.dll_PathStripToRootW]
test eax, eax
jne 0x44c437
push dword [ebp - 0x214]
call fcn.0043e6e2
pop ecx
jmp 0x44c373
push ebx
call fcn.0043e65e
mov esi, eax
pop ecx
mov dword [ebp - 0x21c], esi
test esi, esi
je 0x44c426
push ebx
push 0
push esi
call fcn.00443420
add esp, 0xc
push esi
mov esi, dword [0x47e0a4]
push edi
call esi
mov ebx, eax
cmp ebx, edi
jl 0x44c4aa
push dword [ebp - 0x21c]
call fcn.0043e6e2
xor ecx, ecx
push 2
pop edx
mov eax, ebx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0043e65e
mov dword [ebp - 0x21c], eax
lea eax, [ebx + ebx]
push eax
push 0
push dword [ebp - 0x21c]
call fcn.00443420
add esp, 0x14
push dword [ebp - 0x21c]
push ebx
call esi
push dword [ebp - 0x214]
call dword [0x47e0dc]
test eax, eax
jne 0x44c4d6
push dword [ebp - 0x21c]
call fcn.0043e6e2
push dword [ebp - 0x214]
call fcn.0043e6e2
pop ecx
jmp 0x44c431
mov esi, dword [ebp - 0x218]
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x44c4e1
sub eax, edx
push 2
sar eax, 1
xor ecx, ecx
pop edi
inc eax
mov edx, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0043e65e
mov ebx, eax
pop ecx
test ebx, ebx
jne 0x44c52e
push dword [ebp - 0x21c]
call fcn.0043e6e2
xor esi, esi
pop ecx
push dword [ebp - 0x214]
call fcn.0043e6e2
pop ecx
mov eax, esi
jmp 0x44c375
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, edi
test cx, cx
jne 0x44c533
sub eax, edx
sar eax, 1
lea eax, [eax + eax + 2]
push eax
push 0
push ebx
call fcn.00443420
mov eax, esi
add esp, 0xc
lea ecx, [eax + 2]
mov dx, word [eax]
add eax, edi
test dx, dx
jne 0x44c556
sub eax, ecx
sar eax, 1
push esi
inc eax
push eax
push ebx
call fcn.0043e66e
mov eax, ebx
add esp, 0xc
and dword [ebp - 0x218], 0
lea ecx, [eax + 2]
mov dx, word [eax]
add eax, edi
test dx, dx
jne 0x44c57c
sub eax, ecx
sar eax, 1
lea esi, [ebx + eax*2]
xor edi, edi
push ebx
push dword [ebp - 0x220]
xor eax, eax
push dword [ebp - 0x214]
mov word [esi], ax
call fcn.0043e66e
add esp, 0xc
push dword [ebp - 0x214]
call dword [0x47e0dc]
mov word [esi], di
test eax, eax
je 0x44c5d5
mov dword [ebp - 0x218], 1
test di, di
je 0x44c5db
inc esi
inc esi
jmp 0x44c5db
cmp word [esi], 0x5c
je 0x44c5db
dec esi
dec esi
cmp esi, ebx
ja 0x44c5cf
cmp dword [ebp - 0x218], 0
push 0x5c
pop edi
je 0x44c58f
cmp word [esi], 0
mov dword [ebp - 0x224], esi
mov dword [ebp - 0x218], 1
je 0x44c6bb
xor eax, eax
cmp dword [ebp - 0x218], eax
je 0x44c679
jmp 0x44c615
cmp word [esi], 0x5c
je 0x44c61a
inc esi
inc esi
cmp word [esi], ax
jne 0x44c60d
movzx edi, word [esi]
push ebx
push dword [ebp - 0x220]
xor eax, eax
push dword [ebp - 0x214]
mov word [esi], ax
call fcn.0043e66e
add esp, 0xc
push 0
push dword [ebp - 0x214]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov word [esi], di
test eax, eax
je 0x44c672
test di, di
je 0x44c66a
inc esi
inc esi
movzx eax, word [esi]
test ax, ax
je 0x44c661
cmp ax, 0x5c
jne 0x44c66a
and dword [ebp - 0x218], 0
dec esi
dec esi
cmp word [esi], 0
jne 0x44c601
jmp 0x44c679
and dword [ebp - 0x218], 0
mov edi, dword [ebp - 0x224]
jmp 0x44c6b7
push ebx
push dword [ebp - 0x220]
xor eax, eax
push dword [ebp - 0x214]
mov word [esi], ax
call fcn.0043e66e
add esp, 0xc
push dword [ebp - 0x214]
call dword [0x47e0d8]
cmp esi, edi
jbe 0x44c6bb
cmp word [esi], 0x5c
je 0x44c6b7
dec esi
dec esi
cmp esi, edi
ja 0x44c6ab
cmp esi, edi
ja 0x44c681
push dword [ebp - 0x21c]
call dword [0x47e0dc]
push dword [ebp - 0x21c]
call fcn.0043e6e2
push ebx
call fcn.0043e6e2
mov esi, dword [ebp - 0x218]
pop ecx
jmp 0x44c51a