Function at 0x42ca30
Capabilities:
Create directory
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x46c928
mov eax, dword fs:[0]
push eax
sub esp, 0x68
mov eax, dword [0x487550]
xor eax, esp
mov dword [esp + 0x60], eax
push ebx
push esi
push edi
mov eax, dword [0x487550]
xor eax, esp
push eax
lea eax, [esp + 0x78]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, 7
xor ebx, ebx
xor ecx, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x6c], edi
mov dword [esp + 0x68], ebx
mov word [esp + 0x58], cx
mov dword [esp + 0x80], ebx
xor edx, edx
push 2
mov eax, 0x47a338
lea esi, [esp + 0x3c]
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], ebx
mov word [esp + 0x40], dx
call fcn.00403ee0
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
mov ecx, esi
mov byte [esp + 0x84], 1
call fcn.0042d330
add esp, 4
mov byte [esp + 0x80], 3
cmp dword [esp + 0x50], 8
jb 0x42cae1
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.0044caf8
add esp, 4
mov esi, dword [esp + 0x2c]
xor edx, edx
mov dword [esp + 0x50], edi
mov edi, dword [esp + 0x28]
mov ecx, esi
sub ecx, edi
mov word [esp + 0x3c], dx
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x34], eax
je 0x42cc0d
mov dword [esp + 0x14], 0
mov ecx, esi
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0x42cb49
call fcn.0044cae8
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
mov ecx, esi
sub ecx, edi
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
cmp ebx, ecx
jb 0x42cb71
call fcn.0044cae8
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
cmp dword [edx + edi + 0x14], 0
je 0x42cbfd
sub esi, edi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ebx, eax
jb 0x42cba2
call fcn.0044cae8
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
push 0
add ecx, edi
push ecx
or eax, 0xffffffff
lea esi, [esp + 0x5c]
call fcn.00403d40
push 1
mov eax, 0x47a334
mov ecx, esi
call fcn.00403e00
test ebx, ebx
je 0x42cbf5
cmp dword [esp + 0x6c], 8
mov eax, dword [esp + 0x58]
jae 0x42cbd8
lea eax, [esp + 0x58]
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x42cbf5
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 3
je 0x42cc0d
cmp eax, 0x7b
je 0x42cc0d
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
add dword [esp + 0x14], 0x1c
inc ebx
cmp ebx, dword [esp + 0x34]
jb 0x42cb21
mov edx, dword [esp + 0x18]
push edx
call fcn.0042c870
mov esi, dword [esp + 0x2c]
xor ebx, ebx
add esp, 4
mov byte [esp + 0x13], al
cmp esi, ebx
je 0x42cc6a
mov edi, dword [esp + 0x2c]
cmp esi, edi
je 0x42cc61
add esi, 0x18
cmp dword [esi], 8
jb 0x42cc44
mov eax, dword [esi - 0x14]
push eax
call fcn.0044caf8
add esp, 4
xor ecx, ecx
mov dword [esi], 7
mov dword [esi - 4], ebx
mov word [esi - 0x14], cx
add esi, 0x1c
lea edx, [esi - 0x18]
cmp edx, edi
jne 0x42cc33
mov esi, dword [esp + 0x28]
push esi
call fcn.0044caf8
add esp, 4
mov eax, dword [esp + 0x1c]
push eax
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
call fcn.0044caf8
add esp, 4
cmp dword [esp + 0x6c], 8
jb 0x42cc97
mov ecx, dword [esp + 0x58]
push ecx
call fcn.0044caf8
add esp, 4
mov al, byte [esp + 0x13]
mov ecx, dword [esp + 0x78]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x60]
xor ecx, esp
call fcn.0044c790
mov esp, ebp
pop ebp
ret