Function at 0x40a100
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x674
mov eax, dword [0x410020]
xor eax, ebp
mov dword [ebp - 8], eax
mov dword [ebp - 0x674], ecx
cmp dword [ebp + 0xc], 0
je 0x40a12f
mov eax, dword [ebp + 0xc]
push eax
call fcn.00401160
add esp, 4
test eax, eax
jne 0x40a141
push 4
mov ecx, dword [ebp - 0x674]
call fcn.0040a0c0
jmp 0x40a391
cmp dword [ebp + 8], 0
je 0x40a1f2
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x670]
push edx
call fcn.00401144
add esp, 8
push 0x40edcc
lea eax, [ebp - 0x670]
push eax
call fcn.00401144
add esp, 8
lea ecx, [ebp - 0x258]
push ecx
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 0xffffffff
jne 0x40a1a7
push 4
mov ecx, dword [ebp - 0x674]
call fcn.0040a0c0
jmp 0x40a391
mov eax, dword [ebp - 0x25c]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x468]
push edx
call fcn.00401144
add esp, 8
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [ebp - 0x468]
push ecx
call fcn.0040111a
add esp, 8
mov edx, dword [ebp + 8]
push edx
call fcn.00401160
add esp, 4
lea eax, [ebp + eax*2 - 0x670]
mov dword [ebp - 4], eax
jmp 0x40a20e
mov ecx, dword [ebp + 0xc]
push ecx
lea edx, [ebp - 0x468]
push edx
call fcn.00401144
add esp, 8
lea eax, [ebp - 0x670]
mov dword [ebp - 4], eax
lea ecx, [ebp - 0x468]
push ecx
lea edx, [ebp - 0x670]
push edx
call fcn.00401144
add esp, 8
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebp - 0x670]
push ecx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x25c], eax
cmp dword [ebp - 0x25c], 0xffffffff
je 0x40a25e
mov edx, dword [ebp - 0x25c]
push edx
call dword [sym.imp.KERNEL32.dll_FindClose]
mov eax, 1
jmp 0x40a391
mov dword [ebp - 0x25c], 0
cmp dword [ebp - 0x25c], 0xffffffff
je 0x40a2e4
mov eax, dword [ebp - 0x25c]
push eax
call dword [sym.imp.KERNEL32.dll_FindClose]
lea ecx, [ebp - 0x468]
push ecx
lea edx, [ebp - 0x670]
push edx
call fcn.00401144
add esp, 8
mov eax, dword [ebp - 4]
add eax, 2
mov dword [ebp - 4], eax
push 0x5c
mov ecx, dword [ebp - 4]
push ecx
call fcn.00401030
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x40a2b6
jmp 0x40a2e4
mov edx, dword [ebp - 4]
mov word [edx + 2], 0x2a
mov eax, dword [ebp - 4]
mov word [eax + 4], 0
lea ecx, [ebp - 0x258]
push ecx
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_FindFirstFileW]
mov dword [ebp - 0x25c], eax
jmp 0x40a268
cmp dword [ebp - 4], 0
je 0x40a351
lea eax, [ebp - 0x468]
push eax
lea ecx, [ebp - 0x670]
push ecx
call fcn.00401144
add esp, 8
push 0x5c
mov edx, dword [ebp - 4]
push edx
call fcn.00401030
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x40a319
jmp 0x40a351
mov eax, dword [ebp - 4]
mov word [eax], 0
push 0
lea ecx, [ebp - 0x670]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x40a346
push 0x101
mov ecx, dword [ebp - 0x674]
call fcn.0040a0c0
jmp 0x40a391
mov edx, dword [ebp - 4]
add edx, 2
mov dword [ebp - 4], edx
jmp 0x40a2e4
lea eax, [ebp - 0x468]
push eax
lea ecx, [ebp - 0x670]
push ecx
call fcn.00401144
add esp, 8
push 0
lea edx, [ebp - 0x670]
push edx
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x40a38c
push 0x101
mov ecx, dword [ebp - 0x674]
call fcn.0040a0c0
jmp 0x40a391
mov eax, 1
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.004014e5
mov esp, ebp
pop ebp
ret 8