Function at 0x30408c0
Capabilities:
Create directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x10
lea eax, [ebp - 0x10]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0306dbe7
test eax, eax
jne 0x30408e5
push 0x57
call fcn.0306dbe7
jmp 0x3040ac3
cmp dword [ebp - 0x10], 0
jne 0x30408f7
push 0x57
call fcn.0306dbe7
jmp 0x3040ac3
lea edx, [ebp - 0x10]
push edx
push 1
mov eax, dword [ebp - 0x10]
push eax
call fcn.0306dbe7
test eax, eax
jge 0x3040911
xor eax, eax
jmp 0x3040ac3
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.0306dbe7
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x304092a
xor eax, eax
jmp 0x3040ac3
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp + 8]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.0306dbe7
test eax, eax
jne 0x304094f
mov edx, dword [ebp - 0xc]
push edx
call fcn.0306dbe7
xor eax, eax
jmp 0x3040ac3
mov eax, dword [ebp - 0xc]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
movsx edx, byte [ecx]
cmp edx, 0x5c
jne 0x30409f4
mov eax, dword [ebp - 4]
movsx ecx, byte [eax + 1]
cmp ecx, 0x5c
jne 0x30409f4
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
movsx edx, byte [ecx]
test edx, edx
je 0x30409a9
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
cmp ecx, 0x5c
je 0x30409a9
mov edx, dword [ebp - 4]
push edx
call fcn.0306dbe7
mov dword [ebp - 4], eax
jmp 0x3040986
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x30409bc
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x30409df
mov edx, dword [ebp - 4]
movsx eax, byte [edx]
cmp eax, 0x5c
je 0x30409df
mov ecx, dword [ebp - 4]
push ecx
call fcn.0306dbe7
mov dword [ebp - 4], eax
jmp 0x30409bc
mov edx, dword [ebp - 4]
movsx eax, byte [edx]
test eax, eax
je 0x30409f2
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
jmp 0x3040a30
mov edx, dword [ebp - 4]
movsx eax, byte [edx + 1]
cmp eax, 0x3a
jne 0x3040a30
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
movsx ecx, byte [eax]
test ecx, ecx
je 0x3040a30
mov edx, dword [ebp - 4]
movsx eax, byte [edx]
cmp eax, 0x5c
jne 0x3040a30
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
movsx eax, byte [edx]
test eax, eax
je 0x3040ab5
mov ecx, dword [ebp - 4]
movsx edx, byte [ecx]
cmp edx, 0x5c
jne 0x3040aa4
mov eax, dword [ebp - 4]
mov byte [eax], 0
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.0306dbe7
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0xffffffff
jne 0x3040a89
push 0
mov edx, dword [ebp - 0xc]
push edx
call dword [sym.imp.kernel32.dll_CreateDirectoryA]
test eax, eax
jne 0x3040a87
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0xb7
je 0x3040a87
mov eax, dword [ebp - 0xc]
push eax
call fcn.0306dbe7
xor eax, eax
jmp 0x3040ac3
jmp 0x3040a9e
mov ecx, dword [ebp - 8]
and ecx, 0x10
jne 0x3040a9e
mov edx, dword [ebp - 0xc]
push edx
call fcn.0306dbe7
xor eax, eax
jmp 0x3040ac3
mov eax, dword [ebp - 4]
mov byte [eax], 0x5c
mov ecx, dword [ebp - 4]
push ecx
call fcn.0306dbe7
mov dword [ebp - 4], eax
jmp 0x3040a30
mov edx, dword [ebp - 0xc]
push edx
call fcn.0306dbe7
mov eax, 1
mov esp, ebp
pop ebp
ret 4