Function at 0x402a40
Capabilities:
Delete directory
Get common file path

Disassembly:
sub esp, 0x420
mov eax, dword [0x4240c0]
xor eax, esp
mov dword [esp + 0x41c], eax
push ebx
push ebp
push edi
mov edi, dword [esp + 0x434]
xor ebp, ebp
push str._nJunction_v1.06___Windows_junction_creator_and_reparse_point_viewer_n
xor bl, bl
mov dword [esp + 0x10], ebp
call fcn.0040384b
push str.Copyright__C__2000_2010_Mark_Russinovich_n
call fcn.0040384b
push str.Sysinternals___www.sysinternals.com_n_n
call fcn.0040384b
push edi
lea eax, [esp + 0x440]
push eax
push 0x420258
call fcn.00401910
add esp, 0x18
test eax, eax
jne 0x402ab9
pop edi
lea eax, [ebp + 1]
pop ebp
pop ebx
mov ecx, dword [esp + 0x41c]
xor ecx, esp
call fcn.00403600
add esp, 0x420
ret
mov eax, dword [esp + 0x430]
cmp eax, 2
jge 0x402ae8
mov ecx, dword [edi]
push ecx
call fcn.004029e0
add esp, 4
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 0x41c]
xor ecx, esp
call fcn.00403600
add esp, 0x420
ret
push esi
mov esi, 1
cmp eax, esi
jle 0x402c22
mov edx, dword [edi + esi*4]
push 0x420250
push edx
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402c09
mov eax, dword [edi + esi*4]
push 0x420248
push eax
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402c09
mov ecx, dword [edi + esi*4]
push 0x420240
push ecx
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402bfc
mov edx, dword [edi + esi*4]
push 0x420238
push edx
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402bfc
mov eax, dword [edi + esi*4]
push 0x420230
push eax
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402be1
mov ecx, dword [edi + esi*4]
push 0x420228
push ecx
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402be1
mov edx, dword [edi + esi*4]
push 0x420220
push edx
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402c61
mov eax, dword [edi + esi*4]
push 0x420218
push eax
call fcn.004037b8
add esp, 8
test eax, eax
je 0x402c61
cmp dword [esp + 0x10], 0
jne 0x402bec
test ebp, ebp
je 0x402bdd
mov dword [esp + 0x10], esi
test esi, esi
je 0x402c14
test bl, bl
je 0x402c14
mov edx, dword [edi]
push edx
call fcn.004029e0
add esp, 4
jmp 0x402d21
mov ebp, esi
jmp 0x402c14
cmp byte [0x424fac], 0
mov bl, 1
je 0x402c14
mov ecx, dword [edi]
push ecx
call fcn.004029e0
add esp, 4
jmp 0x402d21
mov byte [0x424fad], 1
test bl, bl
jne 0x402bcd
jmp 0x402c14
mov byte [0x424fac], 1
test bl, bl
jne 0x402c61
inc esi
cmp esi, dword [esp + 0x434]
jl 0x402af6
push str.Wow64DisableWow64FsRedirection
push str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x402c44
lea ecx, [esp + 0x18]
push ecx
call eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x402c71
mov edx, dword [edi + eax*4]
mov eax, dword [edi + ebp*4]
push edx
push eax
call fcn.00402610
add esp, 8
jmp 0x402d21
mov eax, dword [edi]
push eax
call fcn.004029e0
add esp, 4
jmp 0x402d21
test bl, bl
je 0x402cb5
mov ecx, dword [edi + ebp*4]
push ecx
call dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
jne 0x402ca2
mov edx, dword [edi + ebp*4]
push edx
push str.Error_deleting__s:
call fcn.0040384b
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call fcn.004019c0
jmp 0x402d1c
mov eax, dword [edi + ebp*4]
push eax
push str.Deleted__s._n
call fcn.0040384b
add esp, 8
jmp 0x402d1f
test ebp, ebp
je 0x402cd4
mov eax, dword [edi + ebp*4]
lea ecx, [esp + 0x14]
push ecx
lea edx, [esp + 0x20]
push edx
push 0x104
push eax
call dword [sym.imp.KERNEL32.dll_GetFullPathNameW]
jmp 0x402ce4
lea ecx, [esp + 0x1c]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea edx, [esp + 0x224]
push edx
lea eax, [esp + 0x20]
push eax
call fcn.00401e10
add esp, 8
cmp dword [0x424fa4], 0
jne 0x402d09
push str.No_matching_files_were_found._n_n
jmp 0x402d17
cmp byte [0x424faf], 0
jne 0x402d1f
push str.No_reparse_points_found._n_n
call fcn.0040384b
add esp, 4
xor eax, eax
mov ecx, dword [esp + 0x42c]
pop esi
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.00403600
add esp, 0x420
ret