Function at 0x405f80
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x429a0b
mov eax, dword fs:[0]
push eax
mov eax, 0x18fc
call fcn.0041b950
mov eax, dword [0x436b68]
xor eax, ebp
mov dword [ebp - 0x20], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1900], ecx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x18e0], 0
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x18dc], 0
push 0x822
push 0
lea eax, [ebp - 0x18db]
push eax
call fcn.00419a10
add esp, 0xc
mov byte [ebp - 0xac], 0
push 0x81
push 0
lea ecx, [ebp - 0xab]
push ecx
call fcn.00419a10
add esp, 0xc
lea edx, [ebp - 0xac]
push edx
call fcn.004088f0
add esp, 4
lea eax, [ebp - 0xac]
push eax
mov ecx, dword [ebp - 0x1900]
mov edx, dword [ecx + 0x110]
push edx
push str.http:__update.purecodec.com_media_ver_ver_suid_s
push 0x823
lea eax, [ebp - 0x18dc]
push eax
call fcn.00418d7c
add esp, 0x14
push str.chek.ini
mov ecx, dword [ebp - 0x1900]
add ecx, 0x154
push ecx
lea edx, [ebp - 0x18fc]
push edx
call fcn.00402770
add esp, 0xc
mov dword [ebp - 0x1904], eax
mov eax, dword [ebp - 0x1904]
mov dword [ebp - 0x1908], eax
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x1908]
push ecx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.00402890
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18fc]
call fcn.00403130
push 5
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
lea edx, [ebp - 0x18dc]
push edx
call fcn.004090c0
add esp, 0xc
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jg 0x4060d8
jmp 0x4067d9
mov byte [ebp - 0x10ac], 0
push 0xfff
push 0
lea eax, [ebp - 0x10ab]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push 0x42f394
push 0x42f398
push 0x42f39c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
cmp dword [ebp - 0x10b4], 0
ja 0x40613c
jmp 0x4067d9
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x18c
call fcn.004022e0
push 0x1000
push 0
lea eax, [ebp - 0x10ac]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push 0x42f09b
push 0x42f3a4
push 0x42f3a8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
mov edx, dword [ebp - 0x1900]
add edx, 0x18c
push edx
mov eax, dword [ebp - 0x1900]
add eax, 0x118
push eax
call fcn.00406d70
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x4064e8
cmp dword [ebp - 0x10b4], 0
je 0x4064e8
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1a8
call fcn.004022e0
push 0x1000
push 0
lea eax, [ebp - 0x10ac]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push str.temp
push 0x42f3b8
push 0x42f3c0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x154
call fcn.004029f0
push eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1c4
call fcn.004022e0
push 0x42f3c8
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1c4
call fcn.004022e0
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1c4
call fcn.004022e0
push 0x1000
push 0
lea eax, [ebp - 0x10ac]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push 0x42f3cc
push str.argument
push 0x42f3e0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x134
call fcn.004022e0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0
push str.mode
push 0x42f3f0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x1900]
mov dword [ecx + 8], eax
push 0x1000
push 0
lea edx, [ebp - 0x10ac]
push edx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea eax, [ebp - 0x10ac]
push eax
push 0x42f09e
push 0x42f3f8
push 0x42f3fc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea ecx, [ebp - 0x10ac]
push ecx
call fcn.00409ab0
add esp, 4
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1e0
call fcn.004022e0
push 0x1000
push 0
lea eax, [ebp - 0x10ac]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push 0x42f09f
push 0x42f404
push 0x42f410
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea edx, [ebp - 0x10ac]
push edx
call fcn.00409ab0
add esp, 4
lea eax, [ebp - 0x10ac]
push eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x1fc
call fcn.004022e0
push 0x1000
push 0
lea ecx, [ebp - 0x10ac]
push ecx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea edx, [ebp - 0x10ac]
push edx
push 0x42f0a3
push str.text
push 0x42f420
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea eax, [ebp - 0x10ac]
push eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x21c
call fcn.004022e0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0
push str.slient
push 0x42f430
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x1900]
mov dword [ecx + 0x238], eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0
push str.must
push 0x42f440
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0x1900]
mov dword [edx + 0x23c], eax
mov eax, dword [ebp - 0x1900]
mov byte [eax + 0x150], 1
push 0x1000
push 0
lea ecx, [ebp - 0x10ac]
push ecx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea edx, [ebp - 0x10ac]
push edx
push 0x42f0b5
push 0x42f448
push 0x42f44c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea eax, [ebp - 0x10ac]
push eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x240
call fcn.004029d0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x240
call fcn.00402450
movzx ecx, al
test ecx, ecx
je 0x40656c
jmp 0x4067ba
push 0x1000
push 0
lea edx, [ebp - 0x10ac]
push edx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea eax, [ebp - 0x10ac]
push eax
push 0x42f0b6
push 0x42f454
push 0x42f458
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea ecx, [ebp - 0x10ac]
push ecx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x25c
call fcn.004029d0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x25c
call fcn.00402450
movzx edx, al
test edx, edx
je 0x4065f0
jmp 0x4067ba
push 0x1000
push 0
lea eax, [ebp - 0x10ac]
push eax
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea ecx, [ebp - 0x10ac]
push ecx
push 0x42f0b7
push str.file_hash
push 0x42f46c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea edx, [ebp - 0x10ac]
push edx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x278
call fcn.004029d0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x278
call fcn.00402450
movzx eax, al
test eax, eax
je 0x406674
jmp 0x4067ba
push 0x1000
push 0
lea ecx, [ebp - 0x10ac]
push ecx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea edx, [ebp - 0x10ac]
push edx
push 0x42f0c9
push str.file
push 0x42f47c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
push 0x43ad50
mov ecx, dword [ebp - 0x1900]
add ecx, 0x294
call fcn.004029d0
push 0x42f484
mov ecx, dword [ebp - 0x1900]
add ecx, 0x294
call fcn.004022e0
lea eax, [ebp - 0x10ac]
push eax
mov ecx, dword [ebp - 0x1900]
add ecx, 0x294
call fcn.004022e0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x294
call fcn.00402450
movzx ecx, al
test ecx, ecx
je 0x406724
jmp 0x4067ba
push 0x1000
push 0
lea edx, [ebp - 0x10ac]
push edx
call fcn.00419a10
add esp, 0xc
mov ecx, dword [ebp - 0x1900]
add ecx, 0x170
call fcn.004029f0
push eax
push 0x1000
lea eax, [ebp - 0x10ac]
push eax
push 0x42f0ca
push str.name
push str.extmod
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 0x10b4], eax
lea ecx, [ebp - 0x10ac]
push ecx
mov ecx, dword [ebp - 0x1900]
add ecx, 0x2b0
call fcn.004029d0
mov ecx, dword [ebp - 0x1900]
add ecx, 0x2b0
call fcn.00402450
movzx edx, al
test edx, edx
je 0x4067a5
jmp 0x4067ba
mov eax, dword [ebp - 0x1900]
mov dword [eax + 4], 1
xor ecx, ecx
jne 0x4064e8
mov dword [ebp - 0x10], 1
mov edx, dword [ebp - 0x1900]
mov dword [edx + 0x2cc], 1
xor eax, eax
jne 0x405fbc
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.00417fbe
mov esp, ebp
pop ebp
ret