Function at 0x472940
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52f07a
mov eax, dword fs:[0]
push eax
sub esp, 0x6a4
mov eax, dword [0x57254c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor edi, edi
mov dword [ebp - 0x67c], edi
cmp dword [esi + 0x10], edi
jne 0x472984
xor al, al
jmp 0x472cd7
push esi
lea ecx, [ebp - 0x678]
call fcn.00409750
mov dword [ebp - 4], 0
cmp dword [esi + 0x14], 8
mov eax, dword [esi + 0x10]
jb 0x4729a2
mov esi, dword [esi]
cmp word [esi + eax*2 - 2], 0x5c
je 0x4729e6
push 0x555afc
lea ecx, [ebp - 0x648]
call fcn.00406240
mov byte [ebp - 4], 1
mov ecx, eax
cmp dword [eax + 0x14], 8
jb 0x4729c8
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x678]
call fcn.00407ba0
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 0
call fcn.00406140
cmp dword [ebp - 0x664], 8
lea ecx, [ebp - 0x418]
push 0x100
push ecx
push 0x100
lea ecx, [ebp - 0x618]
push ecx
push 0x100
lea ecx, [ebp - 0x218]
push ecx
push 3
lea ecx, [ebp - 0x18]
lea eax, [ebp - 0x678]
cmovae eax, dword [ebp - 0x678]
push ecx
push eax
call fcn.00510263
add esp, 0x24
lea ecx, [ebp - 0x694]
push 0x555afc
call fcn.00406240
mov esi, eax
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x648]
call fcn.00406240
push esi
mov edx, eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x660]
call fcn.004733c0
add esp, 4
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 5
call fcn.00406140
lea ecx, [ebp - 0x694]
mov byte [ebp - 4], 6
call fcn.00406140
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x630]
call fcn.00406240
lea ecx, [ebp - 0x660]
mov byte [ebp - 4], 7
call fcn.004727e0
test al, al
je 0x472ca3
mov ebx, dword [ebp - 0x620]
test ebx, ebx
je 0x472ca3
mov ecx, dword [ebp - 0x61c]
lea eax, [ebp - 0x630]
mov edx, dword [ebp - 0x630]
cmp ecx, 8
cmovae eax, edx
cmp word [eax], 0x5c
jne 0x472b3b
cmp ecx, 8
lea esi, [ebp - 0x630]
lea eax, [ebp - 0x630]
cmovae esi, edx
cmovae eax, edx
sub esi, eax
sar esi, 1
cmp ebx, esi
jb 0x472cf3
mov eax, ebx
mov edx, 1
sub eax, esi
cmp eax, edx
cmovb edx, eax
cmp ecx, 8
lea eax, [ebp - 0x630]
cmovae eax, dword [ebp - 0x630]
sub ebx, edx
mov dword [ebp - 0x620], ebx
sub ebx, esi
lea ecx, [eax + esi*2]
lea eax, [ebx*2 + 2]
push eax
lea eax, [ecx + edx*2]
push eax
push ecx
call fcn.004fbe10
add esp, 0xc
sub esp, 8
lea ecx, [ebp - 0x630]
call fcn.00472e70
mov esi, eax
cmp esi, 0xffffffff
je 0x472c90
push esi
push 0
lea eax, [ebp - 0x648]
push eax
lea ecx, [ebp - 0x630]
call fcn.004125b0
mov byte [ebp - 4], 8
lea edx, [esi + 1]
mov eax, dword [ebp - 0x620]
lea ecx, [ebp - 0x630]
cmp eax, edx
cmovb edx, eax
cmp dword [ebp - 0x61c], 8
cmovae ecx, dword [ebp - 0x630]
sub eax, edx
mov dword [ebp - 0x620], eax
lea eax, [eax*2 + 2]
push eax
lea eax, [ecx + edx*2]
push eax
push ecx
call fcn.004fbe10
add esp, 0xc
lea ecx, [ebp - 0x6ac]
push 0x555afc
call fcn.00406240
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x648]
cmp dword [ebp - 0x634], 8
push dword [ebp - 0x638]
cmovae ecx, dword [ebp - 0x648]
push ecx
push ecx
mov ecx, eax
call fcn.00469740
push eax
lea ecx, [ebp - 0x694]
call fcn.00409710
or edi, 2
mov ecx, eax
mov dword [ebp - 0x67c], edi
cmp dword [eax + 0x14], 8
jb 0x472c02
mov ecx, dword [eax]
push dword [eax + 0x10]
push ecx
lea ecx, [ebp - 0x660]
call fcn.00407ba0
and edi, 0xfffffffd
lea ecx, [ebp - 0x694]
mov dword [ebp - 0x67c], edi
mov byte [ebp - 4], 9
call fcn.00406140
lea ecx, [ebp - 0x6ac]
mov byte [ebp - 4], 8
call fcn.00406140
lea ecx, [ebp - 0x660]
call fcn.004727e0
test al, al
jne 0x472c68
cmp dword [ebp - 0x64c], 8
lea eax, [ebp - 0x660]
cmovae eax, dword [ebp - 0x660]
push eax
call fcn.00511aea
add esp, 4
test eax, eax
jne 0x472c94
sub esp, 8
lea ecx, [ebp - 0x630]
call fcn.00472e70
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 7
mov esi, eax
call fcn.00406140
cmp esi, 0xffffffff
jne 0x472b54
mov bl, 1
jmp 0x472ca5
lea ecx, [ebp - 0x648]
mov byte [ebp - 4], 7
call fcn.00406140
xor bl, bl
lea ecx, [ebp - 0x630]
mov byte [ebp - 4], 6
call fcn.00406140
lea ecx, [ebp - 0x660]
mov byte [ebp - 4], 0
call fcn.00406140
lea ecx, [ebp - 0x678]
mov dword [ebp - 4], 0xffffffff
call fcn.00406140
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004f8955
mov esp, ebp
pop ebp
ret
call fcn.004089b0
int3