Function at 0x4b7311
Capabilities:
Move file
Read .ini file

Disassembly:
push ebp
sub esp, 0x54
mov eax, 0x6705fd
call fcn.004c5428
mov eax, 0x10190
call fcn.004c03f0
call dword [sym.imp.KERNEL32.dll_GetVersion]
cmp eax, 0x80000000
jae 0x4b7370
push 5
push dword [ebp + 0x64]
push dword [ebp + 0x60]
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
test eax, eax
jne 0x4b75e7
push eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0x148]
call fcn.004b547f
push 0x6e8b3c
lea eax, [ebp - 0x148]
push eax
call fcn.004beb93
push edi
push 0x68ae94
push 0x7fff
lea eax, [ebp - 0x1019c]
push eax
push str.rename
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionA]
mov edi, eax
mov dword [ebp + 0x54], edi
cmp edi, 0x7ffd
je 0x4b75e6
push ebx
push esi
push dword [ebp + 0x60]
lea eax, [ebp - 0x28]
push eax
call fcn.004b6379
pop ecx
pop ecx
push 0xf
pop esi
xor ebx, ebx
push 3
push 0x68ae90
lea ecx, [ebp + 0x38]
mov dword [ebp - 4], ebx
mov dword [ebp + 0x4c], esi
mov dword [ebp + 0x48], ebx
mov byte [ebp + 0x38], bl
call fcn.0040182b
mov byte [ebp - 4], 1
cmp dword [ebp + 0x64], ebx
je 0x4b7525
push dword [ebp + 0x64]
lea ecx, [ebp - 0x19c]
call fcn.004b7210
lea eax, [ebp - 0x144]
push eax
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 2
call fcn.004b5e95
lea ecx, [ebp - 0xd4]
push ecx
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.004b6f22
push eax
lea eax, [ebp - 0xf0]
push eax
mov byte [ebp - 4], 4
call fcn.004b63d2
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0xb4]
mov byte [ebp - 4], 5
call fcn.004b6e3f
lea eax, [ebp - 0x10c]
push eax
lea ecx, [ebp - 0x19c]
mov byte [ebp - 4], 6
call fcn.00404829
mov edi, eax
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0xb4]
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 7
mov dword [ebp - 0x68], esi
mov dword [ebp - 0x6c], ebx
mov byte [ebp - 0x7c], bl
call fcn.00401792
lea eax, [ebp - 0x98]
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 8
call fcn.00404964
push edi
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 9
call fcn.00404964
xor esi, esi
push ebx
inc esi
push esi
lea ecx, [ebp - 0x10c]
call fcn.004010ac
lea ecx, [ebp - 0xb4]
call fcn.0040480d
push ebx
push esi
lea ecx, [ebp - 0xf0]
call fcn.004010ac
push ebx
push esi
lea ecx, [ebp - 0xd4]
call fcn.004010ac
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x144]
call fcn.0040480d
lea eax, [ebp]
push eax
lea ecx, [ebp - 0x7c]
call fcn.004b709e
push eax
lea ecx, [ebp + 0x38]
mov byte [ebp - 4], 0x10
call fcn.0040173e
push ebx
push esi
lea ecx, [ebp]
call fcn.004010ac
push ebx
push esi
lea ecx, [ebp - 0x44]
call fcn.004010ac
lea ecx, [ebp - 0x7c]
call fcn.0040480d
push ebx
push esi
lea ecx, [ebp - 0x164]
mov byte [ebp - 4], 1
call fcn.004010ac
lea ecx, [ebp - 0x19c]
call fcn.0040480d
mov edi, dword [ebp + 0x54]
jmp 0x4b7528
xor esi, esi
inc esi
push 0x6e7374
lea eax, [ebp + 0x38]
push eax
lea eax, [ebp]
push eax
call fcn.00403133
lea ecx, [ebp - 0x28]
push ecx
push eax
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 0x11
call fcn.004b6ca1
add esp, 0x18
push ebx
push esi
lea ecx, [ebp]
mov byte [ebp - 4], 0x13
call fcn.004010ac
cmp dword [ebp + 0x30], 0x10
mov eax, dword [ebp + 0x1c]
jae 0x4b7569
lea eax, [ebp + 0x1c]
lea edx, [ebp + edi - 0x1019c]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
cmp cl, bl
jne 0x4b7572
mov eax, dword [ebp + 0x2c]
lea eax, [ebp + eax - 0x1019b]
mov byte [eax + edi], bl
push 0x68ae94
lea eax, [ebp - 0x1019c]
push eax
push str.rename
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileSectionA]
push ebx
test eax, eax
jne 0x4b75c7
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea ecx, [ebp - 0xb8]
call fcn.004b547f
push 0x6e8b3c
lea eax, [ebp - 0xb8]
jmp 0x4b736a
push esi
lea ecx, [ebp + 0x1c]
call fcn.004010ac
push ebx
push esi
lea ecx, [ebp + 0x38]
call fcn.004010ac
push ebx
push esi
lea ecx, [ebp - 0x28]
call fcn.004010ac
pop esi
pop ebx
pop edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
add ebp, 0x58
leave
ret