Function at 0x4478f0
Capabilities:
Check for time delay via gettickcount
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x14
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, ecx
push edi
test esi, esi
je 0x447c15
cmp byte [esi], 0
je 0x447c15
mov edi, dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsicmp]
push str.Exist
push esi
call edi
add esp, 8
test eax, eax
jne 0x447992
mov ecx, dword [ebp + 0xc]
cmp byte [ecx], al
je 0x447935
call fcn.0046dd60
jmp 0x44793b
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edi, eax
mov esi, dword [0x4ca738]
cmp byte [esi + 0x17], 0
jne 0x44794c
mov esi, dword [esi + 0xc]
mov al, byte [esi + 0x15]
test al, 2
je 0x447963
and al, 0x3d
mov byte [esi + 0x15], al
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov al, byte [esi + 0x15]
and al, 0x9b
or al, 0x18
mov byte [esi + 0x15], al
mov dword [esi + 4], 0
mov dword [esi], edi
jge 0x447bf7
mov ecx, esi
call fcn.004013b0
and byte [esi + 0x15], 0x8f
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Close
push esi
call edi
add esp, 8
test eax, eax
jne 0x447a3e
mov ecx, dword [ebp + 0xc]
call fcn.0046dd60
mov edi, eax
test edi, edi
je case.0x447a70.67
push edi
push 0
push 0x1f0fff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je case.0x447a70.67
push 0
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push esi
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [0x4ca738]
cmp byte [esi + 0x17], 0
jne 0x4479e8
mov esi, dword [esi + 0xc]
mov cl, byte [esi + 0x15]
test cl, 2
je 0x447a01
mov eax, dword [esi]
and cl, 0x3d
mov byte [esi + 0x15], cl
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov cl, byte [esi + 0x15]
xor eax, eax
test ebx, ebx
cmovne eax, edi
and cl, 0x9b
mov dword [esi], eax
or cl, 0x18
mov dword [esi + 4], 0
mov byte [esi + 0x15], cl
jmp 0x447973
mov ecx, dword [0x4ca738]
push 1
push 0
push 0xffffffffffffffff
push 0x4b6c08
call fcn.004a2db0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push str.Priority
push esi
call edi
add esp, 8
test eax, eax
jne 0x447b1c
mov eax, dword [ebp + 0x10]
movsx eax, byte [eax]
push eax
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbctoupper]
add eax, 0xffffffbf
add esp, 4
cmp eax, 0x11
ja case.0x447a70.67
movzx eax, byte [eax + 0x447c4c]
jmp dword [eax*4 + 0x447c30]
mov esi, 0x40
jmp 0x447a9f
mov esi, 0x4000
jmp 0x447a9f
mov esi, 0x20
jmp 0x447a9f
mov esi, 0x8000
jmp 0x447a9f
mov esi, 0x80
jmp 0x447a9f
mov esi, 0x100
mov ecx, dword [ebp + 0xc]
cmp byte [ecx], 0
je 0x447aae
call fcn.0046dd60
jmp 0x447ab4
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edi, eax
test edi, edi
je case.0x447a70.67
push edi
push 0
push 0x200
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov ebx, eax
test ebx, ebx
je case.0x447a70.67
push esi
push ebx
call dword [sym.imp.KERNEL32.dll_SetPriorityClass]
push ebx
mov dword [esp + 0x1c], eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [0x4ca738]
cmp byte [esi + 0x17], 0
jne 0x447af8
mov esi, dword [esi + 0xc]
mov cl, byte [esi + 0x15]
test cl, 2
je 0x447b11
mov eax, dword [esi]
and cl, 0x3d
mov byte [esi + 0x15], cl
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov cl, byte [esi + 0x15]
xor eax, eax
cmp dword [esp + 0x18], eax
jmp 0x447a05
push str.Wait
push esi
call edi
add esp, 8
test eax, eax
jne 0x447b30
lea esi, [eax + 4]
jmp 0x447b48
push str.WaitClose
push esi
call edi
add esp, 8
test eax, eax
jne 0x447c15
mov esi, 5
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x18], esi
cmp byte [ecx], 0
je 0x447b73
xor bl, bl
call fcn.00421130
mulsd xmm0, qword [0x4c2350]
cvttsd2si edi, xmm0
mov dword [esp + 0x10], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
jmp 0x447b81
mov eax, dword [esp + 0x1c]
mov bl, 1
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], eax
mov eax, dword fs:[0x24]
mov dword [esp + 0x1c], eax
nop
mov ecx, dword [ebp + 0xc]
call fcn.0046dd60
mov edi, eax
cmp esi, 4
jne 0x447ba9
test edi, edi
jne 0x44793d
jmp 0x447bb1
test edi, edi
je case.0x447a70.67
test bl, bl
jne 0x447bd2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x18]
sub ecx, eax
cmp ecx, 5
jle 0x44793d
mov eax, dword [esp + 0x1c]
cmp dword [0x4cc810], eax
jne 0x447bed
mov edx, 1
lea ecx, [edx + 0x63]
call fcn.00401730
jmp 0x447b90
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x447b90
cmp dword [0x4ca760], 0
je 0x447c07
mov ecx, esi
call fcn.004013b0
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push esi
push 0
push str.Parameter_1_invalid.
mov ecx, ebx
call fcn.0043eaa0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc