Function at 0x5044a0
Capabilities:
Check if file exists
Check mutex on windows
Delete file
Get common file path
Get file attributes
Move file
Read .ini file

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x838
mov eax, dword [0x6f2220]
mov dword [ebp - 4], eax
push esi
push edi
call dword [sym.imp.cskill.dll_Ordinal_17]
mov dword [ebp - 0xa0], 0x94
lea eax, [ebp - 0xa0]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
je 0x5049f0
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ebp - 0x9c]
push edx
push 0x6a2b6c
push 0x104
push 0x6e55c0
call fcn.00675a05
add esp, 0x14
mov eax, dword [ebp - 0x9c]
shl eax, 0x10
or eax, dword [ebp - 0x98]
mov dword [ebp - 0xa4], eax
cmp dword [ebp - 0xa4], 0x4005a
ja 0x504572
cmp dword [ebp - 0xa4], 0x4005a
je 0x5046c6
cmp dword [ebp - 0xa4], 0x30033
je 0x504721
cmp dword [ebp - 0xa4], 0x40000
je 0x5045a7
cmp dword [ebp - 0xa4], 0x4000a
je 0x50466b
jmp 0x504872
cmp dword [ebp - 0xa4], 0x50000
je 0x504779
cmp dword [ebp - 0xa4], 0x50001
je 0x5047d4
cmp dword [ebp - 0xa4], 0x50002
je 0x50482f
jmp 0x504872
cmp dword [ebp - 0x90], 2
jne 0x504611
mov ecx, 0x6e55c0
add ecx, 0xffffffff
mov dword [ebp - 0xa8], ecx
mov edx, dword [ebp - 0xa8]
mov al, byte [edx + 1]
mov byte [ebp - 0xa9], al
inc dword [ebp - 0xa8]
cmp byte [ebp - 0xa9], 0
jne 0x5045be
mov edi, dword [ebp - 0xa8]
mov ecx, dword [0x6a2b5c]
mov dword [edi], ecx
mov edx, dword [0x6a2b60]
mov dword [edi + 4], edx
mov eax, dword [0x6a2b64]
mov dword [edi + 8], eax
mov cx, word [0x6a2b68]
mov word [edi + 0xc], cx
mov dl, byte [0x6a2b6a]
mov byte [edi + 0xe], dl
jmp 0x504666
mov eax, 0x6e55c0
add eax, 0xffffffff
mov dword [ebp - 0xb0], eax
mov ecx, dword [ebp - 0xb0]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xb1], dl
inc dword [ebp - 0xb0]
cmp byte [ebp - 0xb1], 0
jne 0x50461f
mov edi, dword [ebp - 0xb0]
mov eax, dword [0x6a2b50]
mov dword [edi], eax
mov ecx, dword [0x6a2b54]
mov dword [edi + 4], ecx
mov dx, word [0x6a2b58]
mov word [edi + 8], dx
mov al, byte [0x6a2b5a]
mov byte [edi + 0xa], al
jmp 0x5048d0
mov ecx, 0x6e55c0
add ecx, 0xffffffff
mov dword [ebp - 0xb8], ecx
mov edx, dword [ebp - 0xb8]
mov al, byte [edx + 1]
mov byte [ebp - 0xb9], al
inc dword [ebp - 0xb8]
cmp byte [ebp - 0xb9], 0
jne 0x504679
mov edi, dword [ebp - 0xb8]
mov ecx, dword [0x6a2b44]
mov dword [edi], ecx
mov edx, dword [0x6a2b48]
mov dword [edi + 4], edx
mov ax, word [0x6a2b4c]
mov word [edi + 8], ax
mov cl, byte [0x6a2b4e]
mov byte [edi + 0xa], cl
jmp 0x5048d0
mov edx, 0x6e55c0
add edx, 0xffffffff
mov dword [ebp - 0xc0], edx
mov eax, dword [ebp - 0xc0]
mov cl, byte [eax + 1]
mov byte [ebp - 0xc1], cl
inc dword [ebp - 0xc0]
cmp byte [ebp - 0xc1], 0
jne 0x5046d4
mov edi, dword [ebp - 0xc0]
mov edx, dword [0x6a2b38]
mov dword [edi], edx
mov eax, dword [0x6a2b3c]
mov dword [edi + 4], eax
mov cx, word [0x6a2b40]
mov word [edi + 8], cx
mov dl, byte [0x6a2b42]
mov byte [edi + 0xa], dl
jmp 0x5048d0
mov eax, 0x6e55c0
add eax, 0xffffffff
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebp - 0xc8]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xc9], dl
inc dword [ebp - 0xc8]
cmp byte [ebp - 0xc9], 0
jne 0x50472f
mov edi, dword [ebp - 0xc8]
mov eax, dword [0x6a2b28]
mov dword [edi], eax
mov ecx, dword [0x6a2b2c]
mov dword [edi + 4], ecx
mov edx, dword [0x6a2b30]
mov dword [edi + 8], edx
mov eax, dword [0x6a2b34]
mov dword [edi + 0xc], eax
jmp 0x5048d0
mov ecx, 0x6e55c0
add ecx, 0xffffffff
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0xd0]
mov al, byte [edx + 1]
mov byte [ebp - 0xd1], al
inc dword [ebp - 0xd0]
cmp byte [ebp - 0xd1], 0
jne 0x504787
mov edi, dword [ebp - 0xd0]
mov ecx, dword [0x6a2b18]
mov dword [edi], ecx
mov edx, dword [0x6a2b1c]
mov dword [edi + 4], edx
mov eax, dword [0x6a2b20]
mov dword [edi + 8], eax
mov cx, word [0x6a2b24]
mov word [edi + 0xc], cx
jmp 0x5048d0
mov edx, 0x6e55c0
add edx, 0xffffffff
mov dword [ebp - 0xd8], edx
mov eax, dword [ebp - 0xd8]
mov cl, byte [eax + 1]
mov byte [ebp - 0xd9], cl
inc dword [ebp - 0xd8]
cmp byte [ebp - 0xd9], 0
jne 0x5047e2
mov edi, dword [ebp - 0xd8]
mov edx, dword [0x6a2b0c]
mov dword [edi], edx
mov eax, dword [0x6a2b10]
mov dword [edi + 4], eax
mov cx, word [0x6a2b14]
mov word [edi + 8], cx
mov dl, byte [0x6a2b16]
mov byte [edi + 0xa], dl
jmp 0x5048d0
mov eax, 0x6e55c0
add eax, 0xffffffff
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0xe0]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xe1], dl
inc dword [ebp - 0xe0]
cmp byte [ebp - 0xe1], 0
jne 0x50483d
mov edi, dword [ebp - 0xe0]
mov ecx, 6
mov esi, 0x6a2af0
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x5048d0
mov eax, 0x6e55c0
add eax, 0xffffffff
mov dword [ebp - 0xe8], eax
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ecx + 1]
mov byte [ebp - 0xe9], dl
inc dword [ebp - 0xe8]
cmp byte [ebp - 0xe9], 0
jne 0x504880
mov edi, dword [ebp - 0xe8]
mov eax, dword [0x6a2ae0]
mov dword [edi], eax
mov ecx, dword [0x6a2ae4]
mov dword [edi + 4], ecx
mov edx, dword [0x6a2ae8]
mov dword [edi + 8], edx
mov ax, word [0x6a2aec]
mov word [edi + 0xc], ax
mov cl, byte [0x6a2aee]
mov byte [edi + 0xe], cl
mov edx, 0x6e55c0
add edx, 0xffffffff
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0xf0]
mov cl, byte [eax + 1]
mov byte [ebp - 0xf1], cl
inc dword [ebp - 0xf0]
cmp byte [ebp - 0xf1], 0
jne 0x5048de
mov edi, dword [ebp - 0xf0]
mov dx, word [0x692790]
mov word [edi], dx
lea eax, [ebp - 0x8c]
mov dword [ebp - 0xf8], eax
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0xfc], ecx
mov edx, dword [ebp - 0xf8]
mov al, byte [edx]
mov byte [ebp - 0xfd], al
inc dword [ebp - 0xf8]
cmp byte [ebp - 0xfd], 0
jne 0x504924
mov ecx, dword [ebp - 0xf8]
sub ecx, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xfc]
mov dword [ebp - 0x104], edx
mov dword [ebp - 0x108], ecx
mov eax, 0x6e55c0
add eax, 0xffffffff
mov dword [ebp - 0x10c], eax
mov ecx, dword [ebp - 0x10c]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x10d], dl
inc dword [ebp - 0x10c]
cmp byte [ebp - 0x10d], 0
jne 0x50496d
mov edi, dword [ebp - 0x10c]
mov esi, dword [ebp - 0x104]
mov eax, dword [ebp - 0x108]
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]
mov ecx, 0x6e55c0
add ecx, 0xffffffff
mov dword [ebp - 0x114], ecx
mov edx, dword [ebp - 0x114]
mov al, byte [edx + 1]
mov byte [ebp - 0x115], al
inc dword [ebp - 0x114]
cmp byte [ebp - 0x115], 0
jne 0x5049b9
mov edi, dword [ebp - 0x114]
mov cx, word [0x6945d0]
mov word [edi], cx
mov dl, byte [0x6945d2]
mov byte [edi + 2], dl
push 0x6a2ac4
push 0x6a2aa8
push 0x6a2a98
call fcn.00469220
add esp, 0xc
mov eax, dword [ebx + 0x10]
push eax
lea ecx, [ebp - 0x134]
call fcn.0041d580
mov dword [ebp - 0x138], 0
jmp 0x504a31
mov ecx, dword [ebp - 0x138]
add ecx, 1
mov dword [ebp - 0x138], ecx
mov edx, dword [ebp - 0x120]
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x138]
cmp eax, dword [ebp - 0x13c]
jae 0x504abc
cmp dword [ebp - 0x11c], 0x10
jb 0x504a62
mov ecx, dword [ebp - 0x130]
mov dword [ebp - 0x140], ecx
jmp 0x504a6e
lea edx, [ebp - 0x130]
mov dword [ebp - 0x140], edx
cmp dword [ebp - 0x11c], 0x10
jb 0x504a85
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x144], eax
jmp 0x504a91
lea ecx, [ebp - 0x130]
mov dword [ebp - 0x144], ecx
mov edx, dword [ebp - 0x140]
add edx, dword [ebp - 0x138]
movsx eax, byte [edx]
push eax
call fcn.006758a1
add esp, 4
mov ecx, dword [ebp - 0x144]
add ecx, dword [ebp - 0x138]
mov byte [ecx], al
jmp 0x504a22
push 0x6a2a90
mov edx, dword [ebx + 0x10]
push edx
call fcn.00674dd0
add esp, 8
test eax, eax
je 0x504b32
mov dword [ebp - 0x148], 0x699f84
mov eax, dword [ebp - 0x148]
inc eax
mov dword [ebp - 0x14c], eax
mov ecx, dword [ebp - 0x148]
mov dl, byte [ecx]
mov byte [ebp - 0x14d], dl
inc dword [ebp - 0x148]
cmp byte [ebp - 0x14d], 0
jne 0x504ae8
mov eax, dword [ebp - 0x148]
sub eax, dword [ebp - 0x14c]
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0x154]
push ecx
push 0x699f84
mov ecx, 0x70ece0
call fcn.004106e0
jmp 0x504c82
mov edx, dword [0x6e2730]
push edx
call fcn.00453bb0
add esp, 4
mov dword [ebp - 0x158], eax
cmp dword [ebp - 0x158], 1
je 0x504bc8
cmp dword [ebp - 0x158], 3
je 0x504b67
cmp dword [ebp - 0x158], 4
je 0x504bc8
jmp 0x504c26
mov dword [ebp - 0x15c], 0x6a2a8c
mov eax, dword [ebp - 0x15c]
inc eax
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x15c]
mov dl, byte [ecx]
mov byte [ebp - 0x161], dl
inc dword [ebp - 0x15c]
cmp byte [ebp - 0x161], 0
jne 0x504b7e
mov eax, dword [ebp - 0x15c]
sub eax, dword [ebp - 0x160]
mov dword [ebp - 0x168], eax
mov ecx, dword [ebp - 0x168]
push ecx
push 0x6a2a8c
mov ecx, 0x70ece0
call fcn.004106e0
jmp 0x504c82
mov dword [ebp - 0x16c], 0x69fac4
mov edx, dword [ebp - 0x16c]
inc edx
mov dword [ebp - 0x170], edx
mov eax, dword [ebp - 0x16c]
mov cl, byte [eax]
mov byte [ebp - 0x171], cl
inc dword [ebp - 0x16c]
cmp byte [ebp - 0x171], 0
jne 0x504bdf
mov edx, dword [ebp - 0x16c]
sub edx, dword [ebp - 0x170]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x178]
push eax
push 0x69fac4
mov ecx, 0x70ece0
call fcn.004106e0
jmp 0x504c82
mov dword [ebp - 0x17c], 0x699f84
mov ecx, dword [ebp - 0x17c]
inc ecx
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
mov al, byte [edx]
mov byte [ebp - 0x181], al
inc dword [ebp - 0x17c]
cmp byte [ebp - 0x181], 0
jne 0x504c3d
mov ecx, dword [ebp - 0x17c]
sub ecx, dword [ebp - 0x180]
mov dword [ebp - 0x188], ecx
mov edx, dword [ebp - 0x188]
push edx
push 0x699f84
mov ecx, 0x70ece0
call fcn.004106e0
push 0x6a2a80
lea ecx, [ebp - 0x1a4]
call fcn.0041d580
push 0xffffffffffffffff
push 0
push 0x70ece0
lea ecx, [ebp - 0x1a4]
call fcn.0041d700
cmp dword [ebp - 0x18c], 0x10
jb 0x504cbd
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
jmp 0x504cc9
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x1a8], ecx
mov edx, dword [ebp - 0x1a8]
push edx
call fcn.004b0ff0
add esp, 4
test eax, eax
je 0x504d10
cmp dword [ebp - 0x18c], 0x10
jb 0x504cf3
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1ac], eax
jmp 0x504cff
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp - 0x1ac]
push edx
call fcn.00564f00
add esp, 4
jmp 0x504d5b
push 0
push 0x5042e0
push 0
push 0xc5
mov eax, dword [ebx + 8]
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov dword [ebp - 0x1b0], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x1b0]
jmp 0x5058e2
call fcn.004c84e0
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [0x7119f4], eax
lea ecx, [ebp - 0x2b8]
push ecx
push 0x104
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
push 0x6a2a6c
lea edx, [ebp - 0x2b8]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push 4
push 0xfdfe
push 0x6a2a58
push 0x1006
push 0x50d690
lea eax, [ebp - 0x2b8]
push eax
call fcn.0062bd06
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 0
je 0x504f54
mov ecx, dword [ebp - 0x2bc]
mov dword [ebp - 0x2c0], ecx
cmp dword [ebp - 0x2c0], 0x103
jg 0x504e06
cmp dword [ebp - 0x2c0], 0x103
je 0x504e27
cmp dword [ebp - 0x2c0], 4
je 0x504ed1
cmp dword [ebp - 0x2c0], 0x101
je 0x504e53
jmp 0x504efa
cmp dword [ebp - 0x2c0], 0x105
je 0x504e7f
cmp dword [ebp - 0x2c0], 0x107
je 0x504ea8
jmp 0x504efa
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4cf
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x504f21
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d0
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x504f21
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d1
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x504f21
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d2
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x504f21
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d3
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x504f21
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d4
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2c4], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x2c4]
jmp 0x5058e2
call fcn.0062bf01
mov dword [ebp - 0x2bc], eax
cmp dword [ebp - 0x2bc], 0
je 0x504fc2
call fcn.004a6950
call fcn.004a7630
push 0
push 0x6a2a4c
push 0x4d4
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2c8], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x2c8]
jmp 0x5058e2
lea edx, [ebp - 0x2e4]
push edx
call fcn.0052ea90
add esp, 4
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x2e8]
cmp dword [eax + 0x18], 0x10
jb 0x504ff4
mov ecx, dword [ebp - 0x2e8]
mov edx, dword [ecx + 4]
mov dword [ebp - 0x2ec], edx
jmp 0x505003
mov eax, dword [ebp - 0x2e8]
add eax, 4
mov dword [ebp - 0x2ec], eax
mov ecx, dword [ebp - 0x2ec]
push ecx
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
push 0
push 1
lea ecx, [ebp - 0x2e4]
call fcn.0040e130
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x50507d
push 0x40
push 0
push 0x9a
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2f0], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x2f0]
jmp 0x5058e2
call fcn.004bcd50
mov edx, dword [ebx + 0x10]
mov dword [ebp - 0x2f4], edx
mov eax, dword [ebp - 0x2f4]
inc eax
mov dword [ebp - 0x2f8], eax
mov ecx, dword [ebp - 0x2f4]
mov dl, byte [ecx]
mov byte [ebp - 0x2f9], dl
inc dword [ebp - 0x2f4]
cmp byte [ebp - 0x2f9], 0
jne 0x505098
mov eax, dword [ebp - 0x2f4]
sub eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x300]
add ecx, 1
mov dword [ebp - 0x304], ecx
mov eax, dword [ebp - 0x304]
add eax, 3
and eax, 0xfffffffc
call fcn.00676300
mov dword [ebp - 0x308], esp
mov edx, dword [ebp - 0x308]
mov dword [ebp - 0x30c], edx
mov ecx, dword [ebp - 0x304]
mov esi, dword [ebx + 0x10]
mov edi, dword [ebp - 0x30c]
mov eax, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
push 0x692790
mov ecx, dword [ebp - 0x30c]
push ecx
call fcn.006766a0
add esp, 8
add eax, dword [ebp - 0x30c]
mov dword [ebp - 0x30c], eax
mov edx, dword [ebp - 0x30c]
push edx
call fcn.00505900
add esp, 4
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x314], 0x6a2a44
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x318], eax
mov ecx, dword [ebp - 0x318]
mov dl, byte [ecx]
mov byte [ebp - 0x319], dl
mov eax, dword [ebp - 0x314]
cmp dl, byte [eax]
jne 0x5051bf
cmp byte [ebp - 0x319], 0
je 0x5051b3
mov ecx, dword [ebp - 0x318]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x31a], dl
mov eax, dword [ebp - 0x314]
cmp dl, byte [eax + 1]
jne 0x5051bf
add dword [ebp - 0x318], 2
add dword [ebp - 0x314], 2
cmp byte [ebp - 0x31a], 0
jne 0x505161
mov dword [ebp - 0x320], 0
jmp 0x5051ca
sbb ecx, ecx
sbb ecx, 0xffffffff
mov dword [ebp - 0x320], ecx
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x324], edx
cmp dword [ebp - 0x324], 0
jne 0x50522a
push 0
push 0x503b30
push 0
push 0xa2
mov eax, dword [ebx + 8]
push eax
call dword [sym.imp.USER32.dll_DialogBoxParamA]
mov dword [ebp - 0x328], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x328]
jmp 0x5058e2
mov ecx, dword [ebp - 0x30c]
movsx edx, byte [ecx]
test edx, edx
je 0x5052d3
mov dword [ebp - 0x32c], 0x6a2a3c
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x330], eax
mov ecx, dword [ebp - 0x330]
mov dl, byte [ecx]
mov byte [ebp - 0x331], dl
mov eax, dword [ebp - 0x32c]
cmp dl, byte [eax]
jne 0x5052af
cmp byte [ebp - 0x331], 0
je 0x5052a3
mov ecx, dword [ebp - 0x330]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x332], dl
mov eax, dword [ebp - 0x32c]
cmp dl, byte [eax + 1]
jne 0x5052af
add dword [ebp - 0x330], 2
add dword [ebp - 0x32c], 2
cmp byte [ebp - 0x332], 0
jne 0x505251
mov dword [ebp - 0x338], 0
jmp 0x5052ba
sbb ecx, ecx
sbb ecx, 0xffffffff
mov dword [ebp - 0x338], ecx
mov edx, dword [ebp - 0x338]
mov dword [ebp - 0x33c], edx
cmp dword [ebp - 0x33c], 0
je 0x5053f7
push 0x6a2a2c
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x5053a1
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x6a2a1c
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
je 0x505311
push 0x6a2a1c
push 0x6a2a2c
call dword [sym.imp.KERNEL32.dll_MoveFileA]
push 0x6a2a0c
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x50534b
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x6a2a00
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
je 0x50534b
push 0x6a2a00
push 0x6a2a0c
call dword [sym.imp.KERNEL32.dll_MoveFileA]
push 0x30
push 0x71
call fcn.0053f560
add esp, 4
push eax
push 0xf1
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x340], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x340]
jmp 0x5058e2
push 0x30
push 0x71
call fcn.0053f560
add esp, 4
push eax
push 0x82
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x344], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x344]
jmp 0x5058e2
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x30c]
push ecx
call fcn.00505900
add esp, 4
mov dword [ebp - 0x310], eax
push 0x6a2a2c
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x5054ac
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x6a2a1c
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
je 0x505456
push 0x6a2a1c
push 0x6a2a2c
call dword [sym.imp.KERNEL32.dll_MoveFileA]
push 0x30
push 0x71
call fcn.0053f560
add esp, 4
push eax
push 0xf1
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x348], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x348]
jmp 0x5058e2
push 0x6a2a0c
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
je 0x5054e6
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x6a2a00
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
je 0x5054e6
push 0x6a2a00
push 0x6a2a0c
call dword [sym.imp.KERNEL32.dll_MoveFileA]
mov dword [ebp - 0x34c], 0
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0xa
lea edx, [ebp - 0x358]
push edx
lea eax, [ebp - 0x34c]
push eax
call fcn.0045b4f0
add esp, 0xc
mov dword [ebp - 0x35c], eax
cmp dword [ebp - 0x35c], 0
jl 0x50552b
cmp dword [ebp - 0x34c], 0x90002
jae 0x505578
push 0x40
push 0
push 0x97
call fcn.0053f560
add esp, 4
push eax
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x360], 0
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x360]
jmp 0x5058e2
mov ecx, dword [ebp - 0x30c]
movsx edx, byte [ecx]
test edx, edx
je 0x505786
mov dword [ebp - 0x364], 0x6a29f8
mov eax, dword [ebp - 0x30c]
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x368]
mov dl, byte [ecx]
mov byte [ebp - 0x369], dl
mov eax, dword [ebp - 0x364]
cmp dl, byte [eax]
jne 0x5055fd
cmp byte [ebp - 0x369], 0
je 0x5055f1
mov ecx, dword [ebp - 0x368]
mov dl, byte [ecx + 1]
mov byte [ebp - 0x36a], dl
mov eax, dword [ebp - 0x364]
cmp dl, byte [eax + 1]
jne 0x5055fd
add dword [ebp - 0x368], 2
add dword [ebp - 0x364], 2
cmp byte [ebp - 0x36a], 0
jne 0x50559f
mov dword [ebp - 0x370], 0
jmp 0x505608
sbb ecx, ecx
sbb ecx, 0xffffffff
mov dword [ebp - 0x370], ecx
mov edx, dword [ebp - 0x370]
mov dword [ebp - 0x374], edx
cmp dword [ebp - 0x374], 0
jne 0x505760
mov eax, dword [ebp - 0x310]
mov dword [ebp - 0x30c], eax
mov ecx, dword [ebp - 0x30c]
push ecx
call fcn.00505900
add esp, 4
mov dword [ebp - 0x310], eax
mov edx, dword [ebp - 0x30c]
mov dword [ebp - 0x378], edx
mov eax, dword [ebp - 0x378]
inc eax
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x378]
mov dl, byte [ecx]
mov byte [ebp - 0x37d], dl
inc dword [ebp - 0x378]
cmp byte [ebp - 0x37d], 0
jne 0x50565b
mov eax, dword [ebp - 0x378]
sub eax, dword [ebp - 0x37c]
mov dword [ebp - 0x384], eax
mov ecx, dword [ebp - 0x384]
push ecx
mov edx, dword [ebp - 0x30c]
push edx
mov ecx, 0x7dfc58
call fcn.004106e0
cmp dword [0x7dfc70], 0x10
jb 0x5056b8
mov eax, dword [0x7dfc5c]
mov dword [ebp - 0x388], eax
jmp 0x5056c2
mov dword [ebp - 0x388], 0x7dfc5c
mov dword [ebp - 0x38c], 0x6a29f0
mov ecx, dword [ebp - 0x388]
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x390]
mov al, byte [edx]
mov byte [ebp - 0x391], al
mov ecx, dword [ebp - 0x38c]
cmp al, byte [ecx]
jne 0x505736
cmp byte [ebp - 0x391], 0
je 0x50572a
mov edx, dword [ebp - 0x390]
mov al, byte [edx + 1]
mov byte [ebp - 0x392], al
mov ecx, dword [ebp - 0x38c]
cmp al, byte [ecx + 1]
jne 0x505736
add dword [ebp - 0x390], 2
add dword [ebp - 0x38c], 2
cmp byte [ebp - 0x392], 0
jne 0x5056d8
mov dword [ebp - 0x398], 0
jmp 0x505741
sbb edx, edx
sbb edx, 0xffffffff
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x398]
mov dword [ebp - 0x39c], eax
cmp dword [ebp - 0x39c], 0
jne 0x505760
mov dword [0x70eb88], 1
mov ecx, dword [ebp - 0x310]
mov dword [ebp - 0x30c], ecx
mov edx, dword [ebp - 0x30c]
push edx
call fcn.00505900
add esp, 4
mov dword [ebp - 0x310], eax
jmp 0x505578
push 0x697ccc
push 0
push 0x6a29dc
push 0x699048
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
je 0x5057ab
mov dword [0x70eba8], 1
lea ecx, [ebp - 0x820]
call fcn.00505950
lea eax, [ebp - 0x820]
mov dword [0x711a00], eax
mov ecx, dword [ebx + 8]
push ecx
lea ecx, [ebp - 0x820]
call fcn.00422b60
test eax, eax
jge 0x50582f
mov edx, 1
test edx, edx
je 0x5057df
jmp 0x5057ec
push 0x6a29c0
call fcn.00426670
add esp, 4
call fcn.004b1d30
mov dword [ebp - 0x824], 0
lea ecx, [ebp - 0x820]
call fcn.00505c40
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x824]
jmp 0x5058e2
mov eax, dword [ebp - 0x73c]
mov dword [0x711a08], eax
push fcn.004f2010
push fcn.004f20d0
push fcn.0062bf01
push fcn.0062bd06
push 0x50d690
push 5
call fcn.0062c1c4
add esp, 0x18
mov dword [ebp - 0x828], eax
lea ecx, [ebp - 0x820]
call fcn.00425810
mov dword [ebp - 0x82c], eax
mov ecx, dword [ebp - 0x82c]
mov dword [ebp - 0x830], ecx
mov edx, 1
test edx, edx
je 0x50588b
jmp 0x505898
push 0x6a29b0
call fcn.00426670
add esp, 4
call fcn.0062bf5a
call fcn.0062c071
call fcn.004b1d30
mov eax, dword [ebp - 0x830]
mov dword [ebp - 0x834], eax
lea ecx, [ebp - 0x820]
call fcn.00505c40
push 0
push 1
lea ecx, [ebp - 0x1a4]
call fcn.0040e130
push 0
push 1
lea ecx, [ebp - 0x134]
call fcn.0040e130
mov eax, dword [ebp - 0x834]
lea esp, [ebp - 0x840]
mov ecx, dword [ebp - 4]
call fcn.00674e87
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10