Function at 0x402053
Capabilities:
Delete directory

Disassembly:
push ebp
push ebx
mov edx, 0xa
sub esp, 4
mov dword [esp], 0
dec edx
jne 0x40205a
mov edx, dword [esp + 0x34]
lea ecx, [esp]
call fcn.004030f0
mov dword [esp + 4], 1
push dword [0x40b058]
call fcn.004065d0
mov eax, dword [0x40b2f8]
push eax
push eax
push 0x40a014
push dword [esp + 0x10]
push dword [esp + 0x10]
call fcn.00403410
lea ecx, [esp + 0xc]
pop edx
call fcn.00403100
mov edx, dword [esp + 8]
xor ecx, ecx
call fcn.00407c00
jne 0x40210d
mov ebx, dword [esp + 4]
and ebx, 1
and ebx, ebx
jne 0x4020e4
push dword [esp + 8]
call fcn.004034b0
push eax
mov ebx, dword [esp + 0x10]
mov ebp, dword [0x40b0f0]
shl ebx, 3
add ebp, ebx
pop eax
mov dword [ebp + 4], eax
inc dword [esp + 0xc]
jmp 0x40210b
mov edx, dword [esp + 8]
push dword [0x40b2f8]
call fcn.00407c30
mov ebx, dword [esp + 0x10]
mov ebp, dword [0x40b0f0]
shl ebx, 3
add ebp, ebx
lea ecx, [ebp]
pop edx
call fcn.00403100
jmp 0x40210f
jmp 0x402118
inc dword [esp + 4]
jmp 0x402086
mov eax, dword [esp + 0xc]
mov dword [0x40b060], eax
mov dword [esp + 0x10], 0
mov eax, dword [esp + 0xc]
cmp eax, dword [esp + 0x10]
jl 0x402346
mov ebx, dword [esp + 0x10]
mov ebp, dword [0x40b0f0]
shl ebx, 3
add ebp, ebx
mov edx, dword [ebp]
push dword [0x40b2f8]
call fcn.00407c30
lea ecx, [esp + 0x18]
pop edx
call fcn.00403100
push dword [0x40b2f8]
push dword [esp + 0x18]
push dword [0x40b2f8]
mov edx, str.b2eincfile_
call fcn.00407c30
mov eax, dword [0x40b2f8]
push eax
push eax
mov eax, dword [esp + 0x24]
cdq
push edx
push eax
add dword [esp], 1
adc dword [esp + 4], 0
pop eax
pop edx
push edx
push eax
call fcn.00403380
pop eax
mov edx, 0x40a012
call fcn.00407c30
inc dword [0x40b2f8]
mov edx, dword [0x40a1f0]
add dword [esp], edx
call fcn.00403cc4
pop dword [0x40b2f8]
mov ebx, dword [0x40b054]
cmp ebx, 1
je 0x4021e1
push dword [esp + 0x14]
push 1
call fcn.00406970
and eax, eax
je 0x4021e1
mov eax, 1
jmp 0x4021e3
xor eax, eax
and eax, eax
je 0x402283
push 1
call fcn.00406710
push dword [0x40b2f8]
push 0x23
mov edx, dword [0x40b080]
push dword [0x40b2f8]
call fcn.00407c30
mov edx, 0x40a010
call fcn.00407c30
mov edx, dword [esp + 0x20]
call fcn.00407c30
mov edx, 0x40a010
call fcn.00407c30
mov edx, dword [0x40b084]
call fcn.00407c30
inc dword [0x40b2f8]
push dword [0x40b07c]
mov edx, dword [0x40a1f0]
add dword [esp + 4], edx
call fcn.00403892
pop dword [0x40b2f8]
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x18]
cmp ebx, 7
jne 0x40226e
jmp 0x40233d
mov ebx, dword [esp + 0x18]
cmp ebx, 2
jne 0x402283
call fcn.00401f60
xor eax, eax
jmp 0x402440
push dword [esp + 0x14]
push 1
call fcn.004068b0
and eax, eax
je 0x402311
mov ebx, dword [esp + 0x10]
mov ebp, dword [0x40b0f0]
shl ebx, 3
add ebp, ebx
mov eax, dword [ebp + 4]
mov dword [esp + 0x1c], eax
push dword [esp + 0x1c]
mov ebx, dword [0x40b040]
add ebx, dword [esp + 0x24]
push ebx
push 1
call fcn.00406a10
push 1
call fcn.00406710
mov ebx, dword [esp + 0x20]
add ebx, dword [esp + 0x1c]
mov dword [esp + 0x20], ebx
push dword [0x40b0f8]
call fcn.004046e3
mov edx, dword [esp + 0x14]
push dword [0x40b2f8]
call fcn.00407c30
mov ebp, dword [0x40b0fc]
lea ecx, [ebp + 8]
pop edx
call fcn.00403100
push dword [esp + 0x14]
call fcn.004070a0
mov dword [ebp + 0xc], eax
jmp 0x40233d
mov edx, dword [esp + 0x24]
push dword [0x40b2f8]
call fcn.00407c30
mov edx, dword [esp + 0x18]
call fcn.00407c30
mov edx, 0x40a106
call fcn.00407c30
lea ecx, [esp + 0x28]
pop edx
call fcn.00403100
inc dword [esp + 0x10]
jmp 0x402129
mov eax, dword [0x40b2f8]
push eax
push eax
mov eax, dword [0x40b2f8]
push eax
push eax
push dword [0x40b2f8]
push 0x40a106
push dword [esp + 0x3c]
call fcn.004037c0
inc dword [0x40b2f8]
mov edx, dword [0x40a1f0]
add dword [esp], edx
call fcn.004037e0
inc dword [0x40b2f8]
mov edx, dword [0x40a1f0]
add dword [esp], edx
call fcn.004031e0
pop dword [0x40b2f8]
mov ebx, eax
and ebx, ebx
jle 0x402437
push dword [0x40b2f8]
push 0x24
mov edx, dword [0x40b070]
push dword [0x40b2f8]
call fcn.00407c30
mov edx, str._r_n_r_n
call fcn.00407c30
mov edx, dword [esp + 0x30]
call fcn.00407c30
mov edx, 0x40a106
call fcn.00407c30
mov edx, dword [0x40b068]
call fcn.00407c30
inc dword [0x40b2f8]
push dword [0x40b06c]
mov edx, dword [0x40a1f0]
add dword [esp + 4], edx
call fcn.00403892
pop dword [0x40b2f8]
mov dword [esp + 0x18], eax
mov ebx, dword [esp + 0x18]
cmp ebx, 7
jne 0x402437
call fcn.00401f60
push dword [0x40b0a4]
call fcn.004065e0
push dword [0x40b05c]
call sub.KERNEL32.dll_RemoveDirectoryA
push 0
jmp 0x401b3a
mov eax, 1
jmp 0x402440
push dword [esp]
call fcn.00407c90
push dword [esp + 8]
call fcn.00407c90
push dword [esp + 0x14]
call fcn.00407c90
push dword [esp + 0x24]
call fcn.00407c90
add esp, 0x28
pop ebx
pop ebp
ret 4