Function at 0x478214
Capabilities:
Delete file
Read .ini file

Disassembly:
push ebp
sub esp, 0x58c
lea ebp, [esp - 4]
mov eax, dword [0x590cec]
xor eax, ebp
mov dword [ebp + 0x58c], eax
push 0x18
mov eax, 0x5367d3
call fcn.004f41f7
mov edi, dword [ebp + 0x59c]
mov esi, dword [ebp + 0x598]
and dword [ebp - 4], 0
mov ebx, ecx
and dword [ebx + 0x18], 0
push 1
lea ecx, [ebp + 0x438]
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x20], edi
call fcn.0049bf21
lea ecx, [ebp]
mov byte [ebp - 4], 1
call fcn.004063ed
mov byte [ebp - 4], 2
test esi, esi
je 0x478510
test edi, edi
je 0x478510
push 0xffffffffffffffff
push 0
mov ecx, esi
call fcn.004c7a39
and dword [ebp - 0x14], 0
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
push 1
call edi
cmp dword [ebp - 0x14], 0x3e8
jge 0x47835f
mov ecx, ebx
call fcn.00477b8b
mov dword [ebp - 0x1c], eax
cmp eax, 0x3e7
je 0x478382
test eax, eax
jge 0x478355
lea eax, [ebx + 0x1c]
push eax
lea ecx, [ebp]
call fcn.00489793
xor edi, edi
push edi
push edi
lea ecx, [ebp]
call fcn.004898dc
mov esi, str.flag
push esi
push edi
lea ecx, [ebp]
call fcn.00489e94
lea eax, [ebp]
push eax
push 0x100
lea eax, [ebx + 0x120]
push eax
push 0x5441cc
push 0x554c80
push esi
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebx + 0x18], 0x14
lea ecx, [ebp]
mov byte [ebp - 4], 1
call fcn.004064c1
lea ecx, [ebp + 0x438]
mov byte [ebp - 4], 0
call fcn.0049c363
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x58c]
xor ecx, ebp
call fcn.004f41b5
add ebp, 0x590
leave
ret 8
inc dword [ebp - 0x14]
push 0xa
jmp 0x478298
cmp dword [ebp - 0x1c], 0x3e7
je 0x478382
push dword [ebp - 0x1c]
lea eax, [ebx + 0x120]
push str.progress_status___d
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x47830c
lea eax, [ebx + 0x1c]
push 0x545dc8
push eax
lea ecx, [ebp + 0x438]
call fcn.0049c37f
test eax, eax
jne 0x4783a6
mov dword [ebx + 0x18], 0xe
jmp 0x478313
lea ecx, [ebp + 0x438]
call fcn.0049c0e5
mov dword [ebp - 0x14], eax
inc eax
push eax
call fcn.004b6e34
mov edi, eax
pop ecx
test edi, edi
jne 0x4783ce
mov dword [ebx + 0x18], 0xf
jmp 0x478313
push dword [ebp - 0x14]
lea ecx, [ebp + 0x438]
push edi
call fcn.0049bff5
cmp eax, dword [ebp - 0x14]
jne 0x47839a
lea ecx, [ebp + 0x438]
call fcn.0049c2ae
lea eax, [ebx + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x14]
push 0xa
push esi
push edi
mov byte [eax + edi], 0
call fcn.0040653d
add esp, 0xc
push edi
call fcn.004b6e29
mov eax, dword [esi + 8]
cmp eax, 2
pop ecx
jge 0x478425
mov dword [ebx + 0x18], 0x11
jmp 0x478313
xor edi, edi
cmp eax, edi
jg 0x478430
call fcn.004b8b2d
mov eax, dword [esi + 4]
mov eax, dword [eax]
push 8
push str.LDR_ERR
push eax
call fcn.004fafa3
add esp, 0xc
test eax, eax
jne 0x47847b
xor ebx, ebx
inc ebx
push ebx
push edi
mov ecx, esi
call fcn.004c7c1f
mov eax, dword [ebp - 0x20]
lea ecx, [ebp]
mov dword [eax], ebx
mov byte [ebp - 4], bl
call fcn.004064c1
lea ecx, [ebp + 0x438]
mov byte [ebp - 4], 0
call fcn.0049c363
mov eax, ebx
jmp 0x478330
cmp dword [esi + 8], edi
jle 0x47842b
mov eax, dword [esi + 4]
mov eax, dword [eax]
push 7
push str.LDR_OK
push eax
call fcn.004fafa3
add esp, 0xc
test eax, eax
jne 0x478419
cmp dword [esi + 8], edi
jle 0x47842b
mov ecx, dword [esi + 4]
push 7
lea eax, [ebp - 0x1c]
push eax
call fcn.0042b40e
mov eax, dword [eax]
mov edi, dword [esi + 8]
push eax
call fcn.004f648b
dec edi
pop ecx
mov ecx, dword [ebp - 0x1c]
cmp eax, edi
setne byte [ebp - 0x15]
add ecx, 0xfffffff0
call fcn.0040104c
cmp byte [ebp - 0x15], 0
je 0x4784dc
mov dword [ebx + 0x18], 0x12
jmp 0x478313
mov eax, dword [ebp - 0x20]
and dword [eax], 0
push 1
push 0
mov ecx, esi
call fcn.004c7c1f
lea ecx, [ebp]
mov byte [ebp - 4], 1
call fcn.004064c1
lea ecx, [ebp + 0x438]
mov byte [ebp - 4], 0
call fcn.0049c363
xor eax, eax
inc eax
jmp 0x478330
mov dword [ebx + 0x18], 0x10
jmp 0x478313