Function at 0x100070f0
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88c
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 8], ecx
push 0x201
push eax
mov dword [ebp - 4], eax
mov edi, edx
lea eax, [ebp - 0x228]
push eax
call fcn.1001cf50
mov ebx, edi
add esp, 0xc
lea ecx, [ebx + 1]
mov al, byte [ebx]
inc ebx
test al, al
jne 0x10007120
sub ebx, ecx
mov dword [ebp - 0x18], ebx
lea esi, [ebx + 1]
cmp esi, 0x200
jbe 0x10007143
mov eax, 0xfffffffe
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x458
lea eax, [ebp - 0x888]
push 0
push eax
call fcn.1001cf50
add esp, 0xc
lea eax, [ebp - 0x228]
push edi
push 0x200
push eax
call fcn.100280dd
mov al, byte [ebp + ebx - 0x229]
add esp, 0xc
cmp al, 0x2f
je 0x1000718a
cmp al, 0x5c
je 0x1000718a
mov byte [ebp + ebx - 0x228], 0x5c
mov ebx, esi
mov dword [ebp - 0x18], esi
mov esi, dword [ebp - 8]
mov edi, 0x200
sub edi, ebx
mov eax, 0x200
cmp edi, eax
cmovae edi, eax
mov dword [ebp - 0x20], edi
test esi, esi
je 0x100074ae
mov eax, dword [esi + 0x10]
xor ebx, ebx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xc], ebx
test eax, eax
je 0x100074ae
xor eax, eax
mov dword [ebp - 4], eax
mov ecx, dword [esi + 0x48]
test ecx, ecx
je 0x100071d7
cmp ebx, dword [esi + 0x10]
jae 0x100071d7
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + ebx*4]
add eax, dword [ecx]
jmp 0x100071d9
xor eax, eax
push 0
lea ecx, [ebp - 0x888]
mov edx, ebx
push ecx
push eax
mov ecx, esi
call fcn.100062d0
add esp, 0xc
test eax, eax
je 0x100074a7
lea edx, [ebp - 0x838]
lea ecx, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x10007200
sub edx, ecx
lea edi, [ebp - 0x838]
xor esi, esi
xor ecx, ecx
test edx, edx
je 0x1000749b
nop dword [eax + eax]
mov dl, byte [edi]
cmp dl, 0x2f
je 0x1000722c
cmp dl, 0x5c
jne 0x1000722f
inc edi
jmp 0x10007220
inc edi
test dl, dl
je 0x10007286
cmp dl, 0x2f
je 0x1000724f
cmp dl, 0x5c
je 0x1000724f
lea eax, [ecx + esi]
mov byte [ebp + eax - 0x838], dl
test dl, dl
je 0x1000727f
inc ecx
jmp 0x1000727f
test ecx, ecx
je 0x1000727d
lea ebx, [ebp - 0x838]
xor eax, eax
add ebx, esi
nop dword [eax]
cmp byte [ebx + eax], 0x2e
jne 0x10007273
inc eax
cmp eax, ecx
jb 0x10007260
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x14], eax
jmp 0x1000727d
add esi, ecx
mov byte [ebp + esi - 0x838], dl
inc esi
xor ecx, ecx
mov dl, byte [edi]
inc edi
test dl, dl
jne 0x10007234
xor eax, eax
test ecx, ecx
je 0x1000729f
lea edx, [ebp - 0x838]
add edx, esi
cmp byte [edx + eax], 0x2e
jne 0x100072f0
inc eax
cmp eax, ecx
jb 0x10007294
mov byte [ebp + esi - 0x838], 0
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x838]
push eax
push ecx
push eax
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x228]
add eax, ecx
push eax
call fcn.10027bc7
mov bl, byte [ebp - 0x228]
add esp, 0x10
mov bh, byte [ebp - 0x227]
cmp bl, 0x41
jl 0x100072dd
cmp bl, 0x5a
jle 0x100072e4
lea eax, [ebx - 0x61]
cmp al, 0x19
ja 0x100072fd
cmp bh, 0x3a
jne 0x100072fd
mov esi, 1
jmp 0x100072ff
lea eax, [ecx + esi]
mov byte [ebp + eax - 0x838], 0
jmp 0x100072a7
xor esi, esi
push 0x201
lea eax, [ebp - 0x430]
mov dword [ebp - 0x10], esi
push 0
push eax
call fcn.1001cf50
add esp, 0xc
test esi, esi
je 0x10007328
mov byte [ebp - 0x430], bl
mov byte [ebp - 0x42f], bh
lea ebx, [esi + esi]
lea eax, [ebp - 0x228]
add eax, ebx
cmp byte [eax], 0
je 0x100073f5
sub eax, ebx
mov dword [ebp - 0x1c], eax
cmp ebx, 0x200
jge 0x100073f5
mov al, byte [eax + ebx]
cmp al, 0x2f
je 0x1000735c
cmp al, 0x5c
jne 0x100073da
test esi, esi
jne 0x10007369
test ebx, ebx
jg 0x1000736e
jmp 0x100073da
cmp ebx, 2
jle 0x100073da
push 0
push 0
push 0xffffffffffffffff
lea eax, [ebp - 0x430]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov esi, eax
lea ecx, [esi + esi]
push ecx
call fcn.10024f4d
add esp, 4
mov edi, eax
lea eax, [ebp - 0x430]
push esi
push edi
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push edi
call fcn.100275e0
add esp, 4
mov esi, eax
push edi
call fcn.10024f30
add esp, 4
cmp esi, 0xffffffff
jne 0x100073d7
call fcn.1002844c
cmp dword [eax], 0x11
jne 0x1000748f
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov al, byte [eax + ebx]
mov byte [ebp + ebx - 0x430], al
inc ebx
mov eax, dword [ebp - 0x1c]
cmp byte [eax + ebx], 0
jne 0x10007341
mov ax, word [ebp - 0x878]
shr ax, 8
cmp ax, 3
je 0x1000740c
cmp ax, 0x13
jne 0x10007418
test dword [ebp - 0x854], 0x20000000
jne 0x1000747a
mov esi, dword [ebp - 8]
mov ebx, dword [ebp - 0xc]
mov edx, dword [esi + 0x48]
test edx, edx
je 0x10007452
cmp ebx, dword [esi + 0x10]
jae 0x10007452
mov eax, dword [edx + 0x10]
mov ecx, dword [eax + ebx*4]
add ecx, dword [edx]
je 0x10007452
movzx edx, byte [ecx + 0x1d]
movzx eax, byte [ecx + 0x1c]
shl edx, 8
or edx, eax
je 0x1000744a
cmp byte [edx + ecx + 0x2d], 0x2f
je 0x10007480
test byte [ecx + 0x26], 0x10
je 0x10007459
jmp 0x10007480
mov dword [esi + 0x1c], 0x18
push ecx
lea eax, [ebp - 0x228]
mov edx, ebx
push eax
mov ecx, esi
call fcn.10006fe0
add esp, 8
test eax, eax
jne 0x10007480
mov dword [ebp - 4], 0xffffffed
jmp 0x100074ae
mov ebx, dword [ebp - 0xc]
mov esi, dword [ebp - 8]
inc ebx
mov dword [ebp - 0xc], ebx
cmp ebx, dword [ebp - 0x14]
jb 0x100071c1
jmp 0x100074ae
mov esi, dword [ebp - 8]
mov dword [ebp - 4], 0xffffffe9
jmp 0x100074ae
mov esi, dword [ebp - 8]
mov dword [ebp - 4], 0xfffffffe
jmp 0x100074ae
mov dword [ebp - 4], 0xfffffffd
mov edx, 1
mov ecx, esi
call fcn.10006030
pop edi
test eax, eax
mov ecx, 0xffffffe7
mov eax, dword [ebp - 4]
pop esi
cmove eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret