Function at 0x443f70
Capabilities:
Check if file exists
Create directory
Get file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x434
mov eax, dword [0x4db06c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x208
lea eax, [ebp - 0x210]
mov esi, ecx
push 0
push eax
call fcn.0048b570
add esp, 0xc
lea eax, [ebp - 0x418]
push 0x208
push 0
push eax
call fcn.0048b570
mov ecx, dword [esi + 0x22dc]
add esp, 0xc
test ecx, ecx
je 0x4441b9
cmp dword [esi + 0x22e0], 0
jne 0x443fdf
mov eax, dword [esi + 0x1388]
and eax, 0x2000000
or eax, 0
jne 0x4441b9
cmp ecx, 1
je 0x443ffd
lea eax, [esi + 0x1ec8]
push 0x5c
push eax
call fcn.00488e8b
add esp, 8
test eax, eax
jne 0x444091
push SysReAllocString
mov ecx, 0x488
call fcn.0045fe50
mov edx, dword [esi + 0x1af0]
lea ecx, [ebp - 0x210]
push eax
call fcn.00462880
add esp, 8
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL30.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x444042
push 0
lea eax, [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL30.dll_CreateDirectoryW]
cmp dword [esi + 0x22dc], 2
jne 0x444091
cmp word [esi + 0x1ec8], 0
lea edi, [esi + 0x1ec8]
je 0x444091
lea edx, [ebp - 0x418]
mov ecx, edi
sub edx, edi
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x444065
lea eax, [ebp - 0x418]
mov ecx, edi
push SysReAllocString
push eax
lea edx, [ebp - 0x210]
call fcn.00462880
add esp, 8
cmp dword [esi + 0x22dc], 1
je 0x4440cb
cmp word [esi + 0x1ec8], 0
lea eax, [esi + 0x1ec8]
je 0x4440cb
push 0
push 0
push 4
push 0
push 3
push 0x40000000
push eax
call dword [sym.imp.KERNEL30.dll_CreateFileW]
mov dword [esi + 0x23ac], eax
jmp 0x4441b9
movups xmm0, xmmword [esi + 0x2378]
xor edi, edi
lea ebx, [esi + 0x1ec8]
pextrw eax, xmm0, 6
movzx ecx, ax
pextrw eax, xmm0, 5
mov dword [ebp - 0x41c], ecx
movzx edx, ax
pextrw eax, xmm0, 4
mov dword [ebp - 0x42c], edx
movzx eax, ax
mov dword [ebp - 0x420], eax
pextrw eax, xmm0, 3
movzx eax, ax
mov dword [ebp - 0x424], eax
pextrw eax, xmm0, 1
movzx eax, ax
mov dword [ebp - 0x428], eax
movd eax, xmm0
movzx eax, ax
mov dword [ebp - 0x430], eax
nop dword [eax]
push edi
push ecx
push edx
push dword [ebp - 0x420]
mov ecx, 0x487
push dword [ebp - 0x424]
push dword [ebp - 0x428]
push eax
call fcn.0045fe50
push eax
lea eax, [ebp - 0x418]
push eax
call fcn.0040e140
add esp, 0x24
lea eax, [ebp - 0x418]
lea edx, [ebp - 0x210]
mov ecx, ebx
push SysReAllocString
push eax
call fcn.00462880
add esp, 8
push 0
push 0
push 1
push 0
push 3
push 0x40000000
push ebx
call dword [sym.imp.KERNEL30.dll_CreateFileW]
mov dword [esi + 0x23ac], eax
cmp eax, 0xffffffff
jne 0x4441b9
mov ecx, dword [ebp - 0x41c]
inc edi
mov edx, dword [ebp - 0x42c]
mov eax, dword [ebp - 0x430]
cmp edi, 0x64
jl 0x444130
mov ecx, dword [esi + 0x23ac]
cmp ecx, 0xffffffff
jne 0x4441e0
cmp dword [esi + 0x2304], 3
jge 0x4441e0
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00487555
mov esp, ebp
pop ebp
ret
xor eax, eax
cmp dword [esi + 0x2304], 3
setge al
push eax
push eax
push ecx
mov ecx, esi
call fcn.00444870
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00487555
mov esp, ebp
pop ebp
ret