Function at 0x4521a0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b5ddd
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x50
mov ecx, dword [0x6c54f8]
push ebx
push esi
push edi
mov eax, dword [ecx + 0x10]
fild qword [eax]
fistp qword [ebp - 0x20]
nop
xor ebx, ebx
lea eax, [ecx + 0x20]
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x10], eax
xor edx, edx
xor ecx, ecx
mov eax, ebx
bts edx, eax
cmp eax, 0x20
cmovae ecx, edx
xor edx, ecx
cmp eax, 0x40
cmovae ecx, edx
and edx, dword [ebp - 0x20]
and ecx, dword [ebp - 0x1c]
or edx, ecx
je 0x4523b1
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov dword [ebp - 4], 0
mov eax, dword [str.terminate_app]
mov dword [ebp - 0x44], 0
mov byte [ebp - 0x44], 0
mov dword [ebp - 0x44], eax
mov eax, dword [0x5e7574]
mov dword [ebp - 0x40], eax
mov eax, dword [0x5e7578]
mov dword [ebp - 0x3c], eax
movzx eax, byte [0x5e757c]
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x34], 0xd
mov byte [ebp - 0x38], al
mov byte [ebp - 0x37], 0
mov eax, dword [str.restarter]
mov dword [ebp - 0x5c], 0
mov byte [ebp - 0x5c], 0
mov dword [ebp - 0x5c], eax
mov eax, dword [0x5e7584]
mov dword [ebp - 0x58], eax
movzx eax, byte [0x5e7588]
mov dword [ebp - 0x48], 0xf
mov dword [ebp - 0x4c], 9
mov byte [ebp - 0x54], al
mov byte [ebp - 0x53], 0
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 2
push eax
push 0x77
lea eax, [ebp - 0x44]
xor ecx, ecx
push str.AppRestarter.cpp
push eax
lea edx, [ebp - 0x5c]
call fcn.004d4b60
mov byte [ebp - 4], 1
add esp, 0x10
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x4522e7
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4522dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4523d3
push ecx
push edx
call fcn.00583877
add esp, 8
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x30]
cmp ecx, 0x10
jb 0x45231f
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x452315
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4523d3
push ecx
push edx
call fcn.00583877
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x2c]
test edi, edi
je 0x452388
mov ebx, dword [ebp - 0x28]
mov esi, edi
cmp esi, ebx
je 0x452344
mov ecx, esi
call fcn.00438e00
add esi, 0x40
cmp esi, ebx
jne 0x452336
mov ecx, dword [ebp - 0x24]
mov eax, edi
sub ecx, edi
and ecx, 0xffffffc0
cmp ecx, 0x1000
jb 0x452366
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4523d3
push ecx
push edi
call fcn.00583877
mov ebx, dword [ebp - 0x14]
add esp, 8
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x10]
push dword [eax]
push 0
push 0x1fffff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
cmp esi, 0xffffffff
je 0x4523b1
push 1
push esi
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
add dword [ebp - 0x10], 0x10
inc ebx
mov dword [ebp - 0x14], ebx
cmp ebx, 0x40
jb 0x4521d8
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00591c98
int3