Function at 0x500501
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x40
push 8
call fcn.00535595
add esp, 4
mov dword [ebp - 4], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
push 0x18
call fcn.00535595
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x18
mov dword [ebp - 0x28], esp
call dword [sym.imp.kernel32.dll_GetCurrentProcess]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x5005b3
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x28], esp
push dword [ebp - 4]
push dword [ebp - 8]
push 0x40
lea eax, [ebp - 0x14]
push eax
call dword [0x637a79]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x5005e4
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x14], 0
jle 0x5007db
push 0x80000301
push 0
push 2
push 0x80000301
push 0
push 1
push 2
mov ebx, 0xc8
call fcn.00538490
add esp, 0x1c
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x28]
push 0
push 0
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0xc]
push dword [ebp + 0xc]
push dword [ebp - 0x14]
call dword [0x637a7d]
nop
nop
nop
nop
cmp dword [ebp - 0x2c], esp
je 0x500657
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0x10], eax
push dword [ebp - 0x10]
call fcn.004ffb70
test eax, eax
je 0x5007b9
mov dword [ebp - 0x28], esp
push dword [ebp - 0x18]
call dword [0x637a75]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x50068c
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x5007b9
push dword [ebp + 8]
call fcn.0050081c
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x5006b8
push ebx
call fcn.0053558f
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push reloc.oleaut32.dll_SysReAllocString
push 0
push 1
push 0
push 0
push 0
push SysStringLen
push 0
push str.explorer.exe
push SysStringLen
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x5006ed
mov eax, 0x618809
push eax
push 4
mov ebx, 0x148
call fcn.00538ab0
add esp, 0x34
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x50073c
mov dword [ebp - 0x34], esp
call dword [sym.imp.kernel32.dll_GetCurrentProcessId]
nop
nop
nop
nop
cmp dword [ebp - 0x34], esp
je 0x50072c
push 6
call fcn.0053559b
add esp, 4
cmp dword [ebp + 8], eax
je 0x50073c
mov eax, 1
jmp 0x500741
mov eax, 0
test eax, eax
je 0x5007b9
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov dword [ebp - 0x28], esp
push dword [ebp - 4]
push dword [ebp - 8]
push 1
lea eax, [ebp - 0x24]
push eax
call dword [0x637a79]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x500785
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x24], 0
je 0x5007b9
mov dword [ebp - 0x28], esp
push 0
push dword [ebp - 0x24]
call dword [sym.imp.kernel32.dll_TerminateProcess]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x5007b9
push 6
call fcn.0053559b
add esp, 4
mov dword [ebp - 0x28], esp
push dword [ebp - 0x14]
call dword [0x637a75]
nop
nop
nop
nop
cmp dword [ebp - 0x28], esp
je 0x5007db
push 6
call fcn.0053559b
add esp, 4
cmp dword [ebp - 0x1c], 0
mov eax, 0
setge al
jmp 0x5007ec
push eax
mov ebx, dword [ebp - 4]
push ebx
call fcn.0053558f
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
call fcn.0053558f
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x500815
push ebx
call fcn.0053558f
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0xc