Function at 0x435778
Capabilities:
Delete file
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff88c
lea eax, [ebp - 0x530]
lea edx, [ebp - 0x430]
push ebx
push esi
push edi
push eax
push edx
push 0
push 0
mov ecx, dword [ebp + 8]
lea esi, [ebp - 0x14]
push ecx
call fcn.004a51bc
add esp, 0x14
cmp byte [ebp - 0x530], 0
jne 0x4357bf
push esi
lea edi, [ebp - 0x530]
mov eax, edi
mov esi, 0x4b5a1d
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop esi
push 0
push 0
lea edx, [ebp - 0x32c]
push edx
lea ecx, [ebp - 3]
push ecx
push 0x4d3764
call fcn.004a51bc
add esp, 0x14
lea eax, [ebp - 0x530]
lea edx, [ebp - 0x430]
lea ecx, [ebp - 0x32c]
push eax
push edx
push ecx
lea eax, [ebp - 3]
push eax
lea edx, [ebp - 0x22c]
push edx
call fcn.004a5198
add esp, 0x14
lea ecx, [ebp - 0x754]
push ecx
lea eax, [ebp - 0x22c]
push eax
call fcn.0045f1cc
add esp, 8
test eax, eax
je 0x435a7f
cmp dword [0x4d36d8], 2
je 0x435875
cmp dword [ebp + 0xc], 0
je 0x435875
lea edx, [ebp - 0x530]
lea ecx, [ebp - 0x430]
push edx
push ecx
lea eax, [ebp - 0x734]
push 0x4b7024
push eax
call fcn.004a6c2c
add esp, 0x10
lea edx, [ebp - 0x734]
mov ecx, dword [0x4d3b7c]
push 0x24
push 0x4b70a5
push edx
push ecx
call sub.USER32.DLL_MessageBoxA
cmp eax, 6
je 0x435a73
xor eax, eax
lea edx, [esi + 0xc]
mov dword [esi + 0xc], eax
mov dword [esi + 8], eax
mov dword [esi + 4], eax
mov dword [esi], eax
push edx
lea ecx, [esi + 8]
push ecx
lea eax, [esi + 4]
push eax
push esi
lea edx, [ebp - 0x754]
push str._i._i._i._i
push edx
call fcn.004a6ca8
add esp, 0x18
push 0x104
lea ecx, [ebp - 0x128]
push ecx
call sub.KERNEL32.DLL_GetSystemDirectoryA
mov ebx, eax
xor eax, eax
mov al, byte [ebp + ebx - 0x128]
cmp eax, 0x5c
je 0x4358d5
mov byte [ebp + ebx - 0x128], 0x5c
inc ebx
mov byte [ebp + ebx - 0x128], 0
lea edx, [ebp - 0x430]
push edx
lea ecx, [ebp - 0x128]
push ecx
call fcn.004a3644
add esp, 8
lea eax, [ebp - 0x530]
push eax
lea edx, [ebp - 0x128]
push edx
call fcn.004a3644
add esp, 8
lea ecx, [ebp - 0x774]
push ecx
lea eax, [ebp - 0x128]
push eax
call fcn.0045f1cc
add esp, 8
test eax, eax
jne 0x435995
push 0x104
lea edx, [ebp - 0x128]
push edx
call sub.KERNEL32.DLL_GetWindowsDirectoryA
xor ecx, ecx
mov cl, byte [ebp + ebx - 0x128]
cmp ecx, 0x5c
je 0x43594b
mov byte [ebp + ebx - 0x128], 0x5c
inc ebx
mov byte [ebp + ebx - 0x128], 0
lea eax, [ebp - 0x430]
push eax
lea edx, [ebp - 0x128]
push edx
call fcn.004a3644
add esp, 8
lea ecx, [ebp - 0x530]
push ecx
lea eax, [ebp - 0x128]
push eax
call fcn.004a3644
add esp, 8
lea edx, [ebp - 0x774]
push edx
lea ecx, [ebp - 0x128]
push ecx
call fcn.0045f1cc
add esp, 8
test eax, eax
je 0x435a7f
xor eax, eax
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], eax
push edx
lea ecx, [ebp - 0x1c]
push ecx
lea eax, [ebp - 0x20]
push eax
lea edx, [ebp - 0x24]
push edx
lea ecx, [ebp - 0x774]
push str._i._i._i._i
push ecx
call fcn.004a6ca8
add esp, 0x18
xor eax, eax
mov ecx, dword [esi]
mov edx, dword [ebp - 0x24]
cmp ecx, edx
jge 0x4359d9
add eax, 0x3e8
jmp 0x4359e2
cmp ecx, edx
jle 0x4359e2
sub eax, 0x3e8
mov ecx, dword [esi + 4]
mov edx, dword [ebp - 0x20]
cmp ecx, edx
jge 0x4359f1
add eax, 0x64
jmp 0x4359f8
cmp ecx, edx
jle 0x4359f8
sub eax, 0x64
mov ecx, dword [esi + 8]
mov edx, dword [ebp - 0x1c]
cmp ecx, edx
jge 0x435a07
add eax, 0xa
jmp 0x435a0e
cmp ecx, edx
jle 0x435a0e
sub eax, 0xa
mov ecx, dword [esi + 0xc]
mov edx, dword [ebp - 0x18]
cmp ecx, edx
jge 0x435a1b
inc eax
jmp 0x435a20
cmp ecx, edx
jle 0x435a20
dec eax
test eax, eax
jle 0x435a7f
lea eax, [ebp - 0x774]
lea edx, [ebp - 0x530]
push eax
lea eax, [ebp - 0x754]
push eax
push edx
lea ecx, [ebp - 0x430]
lea eax, [ebp - 0x734]
push ecx
push 0x4b70bb
push eax
call fcn.004a6c2c
add esp, 0x18
lea edx, [ebp - 0x734]
mov ecx, dword [0x4d3b7c]
push 0x24
push 0x4b71bd
push edx
push ecx
call sub.USER32.DLL_MessageBoxA
cmp eax, 6
jne 0x435a7f
lea eax, [ebp - 0x22c]
push eax
call sub.KERNEL32.DLL_DeleteFileA
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret