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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1d34
call fcn.00405e50
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
xor esi, esi
mov dword [ebp - 0x1d34], eax
mov dword [eax], esi
xor eax, eax
push 0x206
mov word [ebp - 0x4c8], ax
lea eax, [ebp - 0x4c6]
push esi
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0xc6
mov word [ebp - 0xcc], ax
lea eax, [ebp - 0xca]
push esi
push eax
call sub.msvcrt.dll_memset
add esp, 0x18
lea eax, [ebp - 0x4c8]
push eax
call fcn.004041e0
test eax, eax
je 0x404b16
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyW]
push str.config
lea eax, [ebp - 0xcc]
push eax
call ebx
lea eax, [ebp - 0x4c8]
push eax
push esi
push str.count
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov esi, eax
push 0x18
pop eax
cmp esi, eax
mov ecx, esi
cmovg ecx, eax
mov eax, dword [ebp - 0x1d34]
mov dword [eax], ecx
test esi, esi
jle 0x404b08
xor eax, eax
push 0x62
push eax
mov word [ebp - 0x130], ax
lea eax, [ebp - 0x12e]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x62
push eax
mov word [ebp - 0x194], ax
lea eax, [ebp - 0x192]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x62
push eax
mov word [ebp - 0x2c0], ax
lea eax, [ebp - 0x2be]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x62
push eax
mov word [ebp - 0x1f8], ax
lea eax, [ebp - 0x1f6]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x62
push eax
mov word [ebp - 0x25c], ax
lea eax, [ebp - 0x25a]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x206
push eax
mov word [ebp - 0xae0], ax
lea eax, [ebp - 0xade]
push eax
call sub.msvcrt.dll_memset
add esp, 0x48
xor eax, eax
push 0x1046
push eax
mov word [ebp - 0x1d30], ax
lea eax, [ebp - 0x1d2e]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x8d8], ax
lea eax, [ebp - 0x8d6]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x206
push eax
mov word [ebp - 0xce8], ax
lea eax, [ebp - 0xce6]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x6d0], ax
lea eax, [ebp - 0x6ce]
push eax
call sub.msvcrt.dll_memset
xor eax, eax
add esp, 0x30
mov dword [ebp - 0x1d34], eax
test esi, esi
jle 0x404b08
cmp esi, 0x18
jge 0x404b08
push eax
lea eax, [ebp - 0x130]
push str.title_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
push dword [ebp - 0x1d34]
lea eax, [ebp - 0x194]
push str.url_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
push dword [ebp - 0x1d34]
lea eax, [ebp - 0x2c0]
push str.filename_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
push dword [ebp - 0x1d34]
lea eax, [ebp - 0x1f8]
push str.param_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
push dword [ebp - 0x1d34]
lea eax, [ebp - 0x25c]
push str.checkkey_d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x3c
lea eax, [ebp - 0x4c8]
push eax
push 0x104
lea eax, [ebp - 0xae0]
push eax
push 0x406394
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x4c8]
push eax
push 0x824
lea eax, [ebp - 0x1d30]
push eax
push 0x406394
lea eax, [ebp - 0x194]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x4c8]
push eax
push 0x104
lea eax, [ebp - 0x8d8]
push eax
push 0x406394
lea eax, [ebp - 0x2c0]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x4c8]
push eax
push 0x104
lea eax, [ebp - 0xce8]
push eax
push 0x406394
lea eax, [ebp - 0x1f8]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x4c8]
push eax
push 0x104
lea eax, [ebp - 0x6d0]
push eax
push 0x406394
lea eax, [ebp - 0x25c]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push 0x186c
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
mov dword [edi], eax
test eax, eax
je 0x404af3
lea ecx, [ebp - 0xae0]
push ecx
push eax
call ebx
lea eax, [ebp - 0x1d30]
push eax
mov eax, dword [edi]
add eax, 0x208
push eax
call ebx
lea eax, [ebp - 0x8d8]
push eax
mov eax, dword [edi]
add eax, 0x1250
push eax
call ebx
lea eax, [ebp - 0xce8]
push eax
mov eax, dword [edi]
add eax, 0x1458
push eax
call ebx
lea eax, [ebp - 0x6d0]
push eax
mov eax, dword [edi]
add eax, 0x1660
push eax
call ebx
mov eax, dword [edi]
and dword [eax + 0x1868], 0
add edi, 4
mov eax, dword [ebp - 0x1d34]
inc eax
mov dword [ebp - 0x1d34], eax
cmp eax, esi
jl 0x40492c
lea eax, [ebp - 0x4c8]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
pop ebx
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.004052f0
leave
ret 8