Function at 0x402d50
Capabilities:
Delete file

Disassembly:
push 0xffffffffffffffff
push 0x42e5b0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x328
push ebx
push ebp
mov ebp, dword [esp + 0x340]
push esi
push edi
mov edi, ebp
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x230]
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x230]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, str..
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
lea eax, [esp + 0x14]
and ecx, 3
push eax
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x234]
push ecx
call fcn.0040cdce
mov esi, eax
add esp, 8
cmp esi, 0xffffffff
mov dword [esp + 0x10], esi
je 0x402f5c
lea edx, [esp + 0x14]
push edx
push esi
call fcn.0040ce9b
add esp, 8
test eax, eax
jne 0x402f53
mov bl, 0x10
lea esi, [esp + 0x28]
mov eax, 0x43d2ac
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x402e36
test cl, cl
je 0x402e32
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x402e36
add eax, 2
add esi, 2
test cl, cl
jne 0x402e12
xor eax, eax
jmp 0x402e3b
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x402f35
lea esi, [esp + 0x28]
mov eax, 0x43d2cc
mov dl, byte [eax]
mov cl, dl
cmp dl, byte [esi]
jne 0x402e70
test cl, cl
je 0x402e6c
mov dl, byte [eax + 1]
mov cl, dl
cmp dl, byte [esi + 1]
jne 0x402e70
add eax, 2
add esi, 2
test cl, cl
jne 0x402e4c
xor eax, eax
jmp 0x402e75
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x402f35
or ecx, 0xffffffff
mov edi, ebp
xor eax, eax
lea edx, [esp + 0x12c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
lea edx, [esp + 0x12c]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
xor eax, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x43d1dc
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
lea edx, [esp + 0x12c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x28]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov al, byte [esp + 0x14]
mov ecx, edx
and ecx, 3
test bl, al
rep movsb byte es:[edi], byte [esi]
je 0x402f1c
lea eax, [esp + 0x12c]
push eax
call fcn.00402d50
add esp, 4
jmp 0x402f35
lea ecx, [esp + 0x12c]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [esp + 0x340], 0xffffffff
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
push eax
call fcn.0040ce9b
add esp, 8
test eax, eax
je 0x402e09
mov esi, dword [esp + 0x10]
push esi
call fcn.0040cf63
add esp, 4
push ebp
call fcn.0040cda4
mov ecx, dword [esp + 0x33c]
add esp, 4
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x334
ret