Function at 0x441f10
Capabilities:
Create directory

Disassembly:
sub esp, 0x14
push ebp
push esi
push edi
mov edi, dword [esp + 0x24]
mov eax, edi
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x441f20
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 2]
push esi
call fcn.0044285b
mov ebp, eax
add esp, 4
test ebp, ebp
mov dword [esp + 0x14], ebp
je 0x4421a0
push esi
push 0
push ebp
call fcn.004692d0
mov eax, edi
add esp, 0xc
lea edx, [eax + 2]
jmp 0x441f60
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x441f60
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 0x208]
push esi
call fcn.0044285b
add esp, 4
test eax, eax
mov dword [esp + 0xc], eax
je 0x441f93
push esi
push 0
push eax
call fcn.004692d0
add esp, 0xc
mov eax, edi
lea edx, [eax + 2]
jmp 0x441fa0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x441fa0
sub eax, edx
sar eax, 1
lea esi, [eax + eax + 0x208]
push ebx
push esi
call fcn.0044285b
mov ebx, eax
add esp, 4
test ebx, ebx
mov dword [esp + 0x14], ebx
je 0x441fd6
push esi
push 0
push ebx
call fcn.004692d0
add esp, 0xc
mov edx, ebp
mov eax, edi
sub edx, edi
lea esp, [esp]
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x441fe0
nop
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x441ff5
sub eax, edx
sar eax, 1
mov dword [esp + 0x1c], eax
mov eax, ebx
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x442010
sub eax, edx
sar eax, 1
mov esi, ebp
jne 0x442047
call fcn.00441cb0
mov edx, ebx
lea ebx, [ebx]
movzx ecx, word [eax]
mov word [edx], cx
add eax, 2
add edx, 2
test cx, cx
jne 0x442030
mov esi, dword [esp + 0x10]
jmp 0x442087
call fcn.00441cb0
mov esi, dword [esp + 0x10]
mov edx, esi
movzx ecx, word [eax]
mov word [edx], cx
add eax, 2
add edx, 2
test cx, cx
jne 0x442052
mov eax, ebx
mov ebx, esi
call fcn.00441d00
mov edx, dword [esp + 0x14]
mov eax, esi
sub edx, esi
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x442074
mov ebx, dword [esp + 0x14]
mov edi, ebp
call fcn.00441c00
movzx ecx, word [ebp + 2]
cmp cx, 0x3a
jne 0x44209f
cmp word [ebp], 0
jne 0x4420bb
movzx eax, word [ebp]
cmp ax, 0x2f
je 0x4420af
cmp ax, 0x5c
jne 0x4420c2
cmp cx, 0x2f
je 0x4420bb
cmp cx, 0x5c
jne 0x4420c2
cmp word [ebp + 4], 0
je 0x4420f1
mov eax, ebp
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4420c7
sub eax, edx
sar eax, 1
cmp eax, dword [esp + 0x1c]
jae 0x4420f1
push ebp
call fcn.00441e50
add esp, 4
test eax, eax
je 0x441ff0
mov esi, dword [esp + 0x10]
mov ebp, esi
sub ebp, dword [esp + 0x18]
mov edi, ebx
lea esp, [esp]
cmp word [edi], 0
je 0x442124
movzx eax, word [edi]
cmp ax, 0x2f
je 0x442124
cmp ax, 0x5c
je 0x442124
push edi
call dword [sym.imp.USER32.dll_CharNextW]
mov edi, eax
cmp word [edi], 0
jne 0x442106
mov eax, dword [esp + 0x18]
jmp 0x442130
movzx ecx, word [eax]
mov word [eax + ebp], cx
add eax, 2
test cx, cx
jne 0x442130
movzx esi, word [edi]
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x10]
mov word [edi], cx
call fcn.00441d00
mov word [edi], si
add edi, 2
test si, si
je 0x44216c
push 0
mov eax, ebx
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x442100
mov eax, dword [esp + 0x14]
test eax, eax
pop ebx
je 0x44217e
push eax
call fcn.00442886
add esp, 4
mov eax, dword [esp + 0xc]
test eax, eax
je 0x44218f
push eax
call fcn.00442886
add esp, 4
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00442886
mov edi, dword [esp + 0x28]
add esp, 4
push 0
push edi
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
pop edi
pop esi
pop ebp
add esp, 0x14
ret