Function at 0x41f730
Capabilities:
Delete file
Read .ini file
Write file on windows

Disassembly:
mov eax, 0x2130
call fcn.00466d30
mov eax, dword [0x4bc4a0]
xor eax, esp
mov dword [esp + 0x212c], eax
push ebx
xor eax, eax
push ebp
mov ebp, dword [esp + 0x213c]
push esi
push edi
mov edi, dword [esp + 0x2148]
push 0x1fff
push eax
mov dword [esp + 0x21], eax
mov dword [esp + 0x25], eax
mov dword [esp + 0x29], eax
mov dword [esp + 0x2d], eax
mov dword [esp + 0x31], eax
mov dword [esp + 0x35], eax
mov dword [esp + 0x39], eax
mov word [esp + 0x3d], ax
mov byte [esp + 0x3f], al
mov byte [esp + 0x144], al
lea eax, [esp + 0x145]
xor bl, bl
push eax
mov byte [esp + 0x24], bl
call fcn.00466720
push 0x103
lea ecx, [esp + 0x49]
push 0
push ecx
mov byte [esp + 0x50], bl
call fcn.00466720
mov edx, dword [0x4bdcf8]
add esp, 0x18
add edx, 0x28c
push edx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esp + 0x214c]
push 0xa
lea eax, [esp + 0x1c]
push eax
push ecx
call fcn.004688e8
mov edx, dword [0x4bdcf8]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
add esp, 0xc
add edx, 0x16e
push edx
push 0x104
lea eax, [esp + 0x144]
push eax
push 0x49c432
push str.file
lea ecx, [esp + 0x2c]
push ecx
call esi
test eax, eax
je 0x41f8ff
mov edx, dword [0x4bdcf8]
add edx, 0x16e
push edx
push 0x104
lea eax, [esp + 0x40]
push eax
push 0x49c432
push 0x49e20c
lea ecx, [esp + 0x2c]
push ecx
call esi
test eax, eax
je 0x41f8ff
mov edx, dword [0x4bdcf8]
mov esi, dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
add edx, 0x16e
push edx
push edi
push str.file
lea eax, [esp + 0x24]
push eax
call esi
test eax, eax
je 0x41f8ff
mov ecx, dword [0x4bdcf8]
mov eax, dword [ebp + 0xa64]
add ecx, 0x16e
push ecx
mov ecx, dword [ebp + 0xa60]
push 0xa
lea edx, [esp + 0x144]
push edx
push eax
push ecx
call fcn.004689c2
add esp, 0x10
push eax
push str.size
lea edx, [esp + 0x24]
push edx
call esi
mov eax, dword [0x4bdcf8]
add eax, 0x16e
push eax
lea ecx, [ebp + 0xba8]
push ecx
push 0x49e214
lea edx, [esp + 0x24]
push edx
call esi
mov eax, dword [0x4bdcf8]
mov edx, dword [ebp + 0xa14]
add eax, 0x16e
push eax
push 0xa
lea ecx, [esp + 0x144]
push ecx
push edx
call fcn.004688e8
add esp, 0xc
push eax
push 0x49e210
lea eax, [esp + 0x24]
push eax
call esi
mov bl, 1
mov ecx, dword [0x4bdcf8]
add ecx, 0x28c
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test bl, bl
je 0x41fc49
cmp dword [ebp + 0xa14], 0
mov byte [esp + 0x13c], 0
mov dword [esp + 0x10], 0
jle 0x41fb81
mov edx, dword [ebp + 0xa18]
xor ebx, ebx
nop
mov ecx, dword [ebx + edx + 4]
push 0xa
lea eax, [esp + 0x1c]
push eax
push ecx
call fcn.004688e8
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41f956
lea edi, [esp + 0x13c]
sub eax, ecx
mov esi, ecx
dec edi
lea esp, [esp]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41f970
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x13c]
dec edi
mov edi, edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f990
mov dx, word [0x49d0d4]
push 0xa
lea eax, [esp + 0x1c]
push eax
mov eax, dword [ebp + 0xa18]
mov word [edi], dx
mov ecx, dword [eax + ebx + 0x14]
mov edx, dword [eax + ebx + 0x10]
push ecx
push edx
call fcn.004689c2
add esp, 0x10
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41f9c3
lea edi, [esp + 0x13c]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41f9d6
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x13c]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41f9f4
mov ax, word [0x49d0d4]
mov edx, dword [ebp + 0xa18]
push 0xa
lea ecx, [esp + 0x1c]
mov word [edi], ax
mov eax, dword [edx + ebx + 0x18]
push ecx
push eax
call fcn.004688e8
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41fa21
lea edi, [esp + 0x13c]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41fa34
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x13c]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41fa52
mov cx, word [0x49d0d4]
mov eax, dword [ebp + 0xa18]
push 0xa
lea edx, [esp + 0x1c]
mov word [edi], cx
mov ecx, dword [eax + ebx + 0x1c]
push edx
push ecx
call fcn.004688e8
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41fa80
lea edi, [esp + 0x13c]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41fa93
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x13c]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41fab1
mov dx, word [0x49d0d4]
mov ecx, dword [ebp + 0xa18]
push 0x10
lea eax, [esp + 0x1c]
mov word [edi], dx
mov edx, dword [ecx + ebx + 0xc]
push eax
push edx
call fcn.004688e8
add esp, 0xc
mov ecx, eax
nop
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x41fae0
lea edi, [esp + 0x13c]
sub eax, ecx
mov esi, ecx
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x41faf3
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x13c]
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x41fb11
mov ax, word [0x49d0d4]
mov edx, dword [ebp + 0xa18]
mov word [edi], ax
lea eax, [esp + 0x13c]
dec eax
cmp byte [ebx + edx + 0x20], 0
je 0x41fb50
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41fb37
mov ecx, dword [str.1_r_n]
mov dword [eax], ecx
mov cl, byte [0x49e2b4]
jmp 0x41fb66
mov cl, byte [eax + 1]
inc eax
test cl, cl
jne 0x41fb50
mov ecx, dword [str.0_r_n]
mov dword [eax], ecx
mov cl, byte [0x49e2ac]
mov byte [eax + 4], cl
mov eax, dword [esp + 0x10]
inc eax
add ebx, 0x28
cmp eax, dword [ebp + 0xa14]
mov dword [esp + 0x10], eax
jl 0x41f940
push 0
push 0x80
push 2
push 0
push 1
push 0x40000000
lea edx, [esp + 0x50]
push edx
call dword [sym.imp.KERNEL32.dll_CreateFileA]
push 0x238
mov esi, eax
push str...p2psrc_src_resume.cpp
lea eax, [esp + 0x40]
push eax
push esi
push str.__file_in:_0x_x:_s__file:__s:_u
call fcn.00416770
add esp, 0x14
cmp esi, 0xffffffff
je 0x41fc49
lea eax, [esp + 0x13c]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x41fbd0
push 0
sub eax, edx
lea ecx, [esp + 0x18]
push ecx
mov edi, eax
push edi
lea edx, [esp + 0x148]
push edx
push esi
call dword [sym.imp.KERNEL32.dll_WriteFile]
push 0x23f
push str...p2psrc_src_resume.cpp
push esi
push str.__handle_cls:_0x_x__file:__s:_u
mov ebx, eax
call fcn.00416770
add esp, 0x10
test esi, esi
je 0x41fc17
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x41fc3e
cmp edi, dword [esp + 0x14]
jne 0x41fc3e
lea eax, [esp + 0x38]
lea edx, [ebp + 0x10c]
mov ecx, eax
sub edx, ecx
nop
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x41fc30
mov al, 1
jmp 0x41fc4b
lea edx, [esp + 0x38]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor al, al
mov ecx, dword [esp + 0x213c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00466555
add esp, 0x2130
ret