Function at 0x495780
Capabilities:
Delete file

Disassembly:
sub esp, 0x250
mov eax, dword [0x52e144]
xor eax, esp
mov dword [esp + 0x24c], eax
push ebp
mov ebp, dword [esp + 0x258]
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x4957bc
xor al, al
pop ebp
mov ecx, dword [esp + 0x24c]
xor ecx, esp
call fcn.004b6da3
add esp, 0x250
ret
push esi
push edi
mov edi, dword [0x53ac78]
test edi, edi
je 0x4957d2
mov esi, dword [0x53ac7c]
test esi, esi
ja 0x4957ee
mov edi, dword [0x537f04]
test edi, edi
je 0x495caf
mov esi, dword [0x537f08]
test esi, esi
jbe 0x495caf
test edi, edi
je 0x495caf
test esi, esi
jbe 0x495caf
push 0x31
lea eax, [esp + 0x125]
push 0
push eax
mov byte [esp + 0x12c], 0
call fcn.004b6dc0
add esp, 0xc
lea ecx, [esp + 0x120]
push ecx
push ebp
mov ecx, 0x53ac78
call fcn.0042fbe0
push 0x103
lea edx, [esp + 0x159]
push 0
push edx
mov byte [esp + 0x160], 0
call fcn.004b6dc0
add esp, 0xc
push 0
push 0
push 0x104
lea eax, [esp + 0x160]
push eax
push 0xffffffffffffffff
push ebp
push 0
push 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test esi, esi
jbe 0x495c95
push ebx
mov bl, byte [esp + 0x268]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x18], esi
push 0x30
lea ecx, [esp + 0x128]
push ecx
lea edx, [edi + 4]
push edx
call fcn.004b9e25
add esp, 0xc
test eax, eax
jne 0x495c82
push ebp
push 0x520808
call fcn.00404690
add esp, 4
push eax
push 0x527e20
call fcn.00401350
push 0xff
lea eax, [esp + 0x35]
push 0
push eax
mov byte [esp + 0x2c], 1
mov byte [esp + 0x3c], 0
call fcn.004b6dc0
add esp, 0x18
cmp bl, 1
jne 0x4958e3
mov byte [esp + 0x14], 2
jmp 0x4958ed
cmp bl, 2
jne 0x4958ed
mov byte [esp + 0x14], 6
mov eax, dword [edi]
test al, 2
je 0x4959cb
mov dword [esp + 0x10], 0x42
test bl, bl
jne 0x495944
mov ecx, dword [0x5207e0]
mov edx, dword [0x5207e4]
mov eax, dword [0x5207e8]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x5207ec]
mov dword [esp + 0x28], edx
mov dx, word [0x5207f0]
mov dword [esp + 0x2c], eax
mov al, byte [0x5207f2]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
cmp bl, 1
jne 0x49598a
mov ecx, dword [0x5207cc]
mov edx, dword [0x5207d0]
mov eax, dword [0x5207d4]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x5207d8]
mov dword [esp + 0x28], edx
mov dx, word [0x5207dc]
mov dword [esp + 0x2c], eax
mov al, byte [0x5207de]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
mov ecx, dword [0x5207b8]
mov edx, dword [0x5207bc]
mov eax, dword [0x5207c0]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x5207c4]
mov dword [esp + 0x28], edx
mov dx, word [0x5207c8]
mov dword [esp + 0x2c], eax
mov al, byte [0x5207ca]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
test al, 4
je 0x495aa7
mov dword [esp + 0x10], 0x20
test bl, bl
jne 0x495a20
mov ecx, dword [0x5207a4]
mov edx, dword [0x5207a8]
mov eax, dword [0x5207ac]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x5207b0]
mov dword [esp + 0x28], edx
mov dx, word [0x5207b4]
mov dword [esp + 0x2c], eax
mov al, byte [0x5207b6]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
cmp bl, 1
jne 0x495a66
mov ecx, dword [0x520790]
mov edx, dword [0x520794]
mov eax, dword [0x520798]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x52079c]
mov dword [esp + 0x28], edx
mov dx, word [0x5207a0]
mov dword [esp + 0x2c], eax
mov al, byte [0x5207a2]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
mov ecx, dword [0x52077c]
mov edx, dword [0x520780]
mov eax, dword [0x520784]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x520788]
mov dword [esp + 0x28], edx
mov dx, word [0x52078c]
mov dword [esp + 0x2c], eax
mov al, byte [0x52078e]
mov dword [esp + 0x30], ecx
mov word [esp + 0x34], dx
mov byte [esp + 0x36], al
jmp 0x495c36
test al, 8
je 0x495c82
mov dword [esp + 0x10], 0x20
test bl, bl
jne 0x495b79
mov ecx, dword [0x520768]
mov edx, dword [0x52076c]
mov eax, dword [0x520770]
mov dword [esp + 0x24], ecx
mov ecx, dword [0x520774]
mov dword [esp + 0x30], ecx
mov dword [esp + 0x28], edx
mov dx, word [0x520778]
mov dword [esp + 0x2c], eax
mov al, byte [0x52077a]
lea ecx, [esp + 0x158]
push 0
push ecx
mov word [esp + 0x3c], dx
mov byte [esp + 0x3e], al
call fcn.00494dd0
add esp, 8
test al, al
je 0x495c36
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea edx, [esp + 0x158]
push edx
call ebp
mov ecx, 7
lea edi, [esp + 0x24]
test eax, eax
je 0x495b3c
mov esi, 0x52074c
jmp 0x495c34
lea eax, [esp + 0x158]
push 1
mov esi, 0x520730
push eax
rep movsd dword es:[edi], dword [esi]
call fcn.00494dd0
add esp, 8
test al, al
je 0x495c36
lea ecx, [esp + 0x158]
push ecx
call ebp
test eax, eax
je 0x495c36
mov esi, 0x520714
jmp 0x495c2b
cmp bl, 1
jne 0x495c0f
mov edx, dword [0x520700]
mov eax, dword [0x520704]
mov ecx, dword [0x520708]
mov dword [esp + 0x24], edx
mov edx, dword [0x52070c]
mov dword [esp + 0x28], eax
mov ax, word [0x520710]
mov dword [esp + 0x2c], ecx
mov cl, byte [0x520712]
mov dword [esp + 0x30], edx
mov word [esp + 0x34], ax
mov byte [esp + 0x36], cl
xor ebp, ebp
lea edx, [esp + 0x158]
push edx
call fcn.00494fe0
add esp, 4
test al, al
je 0x495be6
lea eax, [esp + 0x158]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x495bf3
inc ebp
cmp ebp, 0x14
jl 0x495bc0
mov esi, 0x5206e4
jmp 0x495c2b
cmp ebp, 0x14
mov ecx, 7
mov esi, 0x5206c8
lea edi, [esp + 0x24]
rep movsd dword es:[edi], dword [esi]
jl 0x495c36
mov esi, 0x5206e4
jmp 0x495c2b
lea ecx, [esp + 0x158]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov esi, 0x5206ac
test eax, eax
jne 0x495c2b
mov esi, 0x520690
lea edi, [esp + 0x24]
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
mov eax, dword [0x527d88]
push 0x30
lea edx, [esp + 0x128]
push edx
push eax
push 0x50d930
call fcn.00404690
add esp, 4
push eax
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x168]
push ecx
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x38]
push edx
push 0
push 0xe55c06
push eax
push ecx
call fcn.0043c0b0
mov ebp, dword [esp + 0x48]
mov edi, dword [esp + 0x44]
add esp, 0x28
add edi, 0x38
sub dword [esp + 0x18], 1
mov dword [esp + 0x1c], edi
jne 0x495882
pop ebx
pop edi
pop esi
mov al, 1
pop ebp
mov ecx, dword [esp + 0x24c]
xor ecx, esp
call fcn.004b6da3
add esp, 0x250
ret
mov ecx, dword [esp + 0x258]
pop edi
pop esi
pop ebp
xor ecx, esp
xor al, al
call fcn.004b6da3
add esp, 0x250
ret