Function at 0x4ed930
Capabilities:
Create directory

Disassembly:
push 0xffffffffffffffff
push 0x57f858
mov eax, dword fs:[0]
push eax
sub esp, 0x54
mov eax, dword [0x5e95e0]
xor eax, esp
mov dword [esp + 0x50], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5e95e0]
xor eax, esp
push eax
lea eax, [esp + 0x68]
mov dword fs:[0], eax
xor ebx, ebx
mov edi, 7
mov eax, edx
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov word [esp + 0x4c], bx
lea esi, [eax + 2]
jmp 0x4ed980
mov cx, word [eax]
add eax, 2
cmp cx, bx
jne 0x4ed980
sub eax, esi
sar eax, 1
push eax
push edx
lea esi, [esp + 0x50]
call fcn.004edf00
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x5c]
lea esi, [eax - 1]
cmp esi, eax
jbe 0x4ed9b2
call fcn.00553698
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0x60], 8
mov ecx, dword [esp + 0x4c]
jae 0x4ed9c1
lea ecx, [esp + 0x4c]
cmp word [ecx + esi*2], 0x5c
je 0x4ed9d7
push 0x5c
lea esi, [esp + 0x4c]
call fcn.004edc60
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x44], edi
mov dword [esp + 0x40], ebx
mov word [esp + 0x30], bx
xor ebp, ebp
cmp eax, ebx
mov byte [esp + 0x70], 2
mov dword [esp + 0x28], ebx
jbe 0x4edb00
cmp ebp, eax
jbe 0x4eda10
call fcn.00553698
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x4c]
mov esi, 8
cmp dword [esp + 0x60], esi
jae 0x4eda23
lea ecx, [esp + 0x4c]
cmp word [ecx + ebp*2], 0x5c
je 0x4eda8b
cmp ebp, eax
jbe 0x4eda33
call fcn.00553698
cmp dword [esp + 0x60], esi
mov eax, dword [esp + 0x4c]
jae 0x4eda41
lea eax, [esp + 0x4c]
movzx esi, word [eax + ebp*2]
or eax, 0xffffffff
sub eax, dword [esp + 0x40]
cmp eax, 1
ja 0x4eda56
call fcn.00571800
mov edi, dword [esp + 0x40]
add edi, 1
lea eax, [esp + 0x2c]
call fcn.004eddb0
test al, al
je 0x4edaf1
mov eax, dword [esp + 0x30]
mov ecx, 8
cmp dword [esp + 0x44], ecx
jae 0x4eda81
lea eax, [esp + 0x30]
mov edx, dword [esp + 0x40]
mov word [eax + edx*2], si
jmp 0x4edadb
lea eax, [esp + 0x2c]
push eax
lea esi, [esp + 0x1c]
call fcn.004edd00
or ecx, 0xffffffff
sub ecx, dword [esp + 0x40]
cmp ecx, 1
ja 0x4edaaa
call fcn.00571800
mov edi, dword [esp + 0x40]
add edi, 1
lea eax, [esp + 0x2c]
call fcn.004eddb0
test al, al
je 0x4edaf1
mov eax, dword [esp + 0x30]
mov ecx, 8
cmp dword [esp + 0x44], ecx
jae 0x4edad1
lea eax, [esp + 0x30]
mov edx, dword [esp + 0x40]
mov word [eax + edx*2], 0x5c
cmp dword [esp + 0x44], ecx
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], edi
jae 0x4edaed
lea eax, [esp + 0x30]
mov word [eax + edi*2], bx
mov eax, dword [esp + 0x5c]
add ebp, 1
cmp ebp, eax
jb 0x4eda10
mov esi, dword [esp + 0x1c]
cmp esi, dword [esp + 0x20]
jbe 0x4edb0f
call fcn.00553698
mov ebx, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea edi, [esp + 0x18]
lea esp, [esp]
mov ebp, dword [esp + 0x20]
cmp dword [esp + 0x1c], ebp
jbe 0x4edb2f
call fcn.00553698
test edi, edi
je 0x4edb3b
lea eax, [esp + 0x18]
cmp edi, eax
je 0x4edb40
call fcn.00553698
cmp esi, ebp
je 0x4edb83
test edi, edi
jne 0x4edb4d
call fcn.00553698
cmp esi, dword [edi + 8]
jb 0x4edb57
call fcn.00553698
cmp dword [esi + 0x18], 8
jb 0x4edb62
mov eax, dword [esi + 4]
jmp 0x4edb65
lea eax, [esi + 4]
push 0
push eax
call ebx
neg eax
sbb eax, eax
neg eax
cmp esi, dword [edi + 8]
mov dword [esp + 0x28], eax
jb 0x4edb7e
call fcn.00553698
add esi, 0x1c
jmp 0x4edb20
mov ebx, 8
mov byte [esp + 0x70], 1
cmp dword [esp + 0x44], ebx
jb 0x4edba0
mov ecx, dword [esp + 0x30]
push ecx
call fcn.005308f6
add esp, 4
xor eax, eax
mov byte [esp + 0x70], al
mov esi, dword [esp + 0x1c]
cmp esi, eax
mov dword [esp + 0x44], 7
mov dword [esp + 0x40], eax
mov word [esp + 0x30], ax
je 0x4edc06
mov edi, dword [esp + 0x20]
cmp esi, edi
je 0x4edbf9
add esi, 0x18
lea ebx, [ebx]
cmp dword [esi], ebx
jb 0x4edbe0
mov eax, dword [esi - 0x14]
push eax
call fcn.005308f6
add esp, 4
xor eax, eax
mov dword [esi], 7
mov dword [esi - 4], eax
mov word [esi - 0x14], ax
add esi, 0x1c
lea edx, [esi - 0x18]
cmp edx, edi
jne 0x4edbd0
mov eax, dword [esp + 0x1c]
push eax
call fcn.005308f6
add esp, 4
xor eax, eax
mov dword [esp + 0x70], 0xffffffff
cmp dword [esp + 0x60], ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
jb 0x4edc2f
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.005308f6
add esp, 4
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x68]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x50]
xor ecx, esp
call fcn.00552101
add esp, 0x60
ret