Function at 0x519430
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x28
mov eax, dword [0x850160]
test eax, eax
je 0x519980
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x85016c]
sub esp, 8
mov ebx, eax
call fcn.0057d110
mov edi, dword fs:[0x18]
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa81
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.CreateJobObject_error__lu_n
mov dword [esp + 8], eax
xor eax, eax
test ebx, ebx
setne al
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 4], 0
mov dword [esp], 0
call dword [0x85016c]
sub esp, 8
mov esi, eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa84
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.CreateJobObject_error__lu_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
setne al
mov dword [esp], eax
call fcn.0050e8b0
lea ecx, [ebp - 0x1c]
mov edx, str.wait
mov eax, 0xa86
call fcn.0050e8d0
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 1
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa8a
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa8b
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], 0xa8c
call fcn.0050eab0
mov dword [esp], 0
xor ecx, ecx
mov edx, ebx
mov eax, 0xa8d
call fcn.00514d80
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 1
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa91
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa92
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], 0xa93
call fcn.0050eab0
mov dword [esp], 0
xor ecx, ecx
mov edx, esi
mov eax, 0xa94
call fcn.00514d80
mov eax, dword [ebp - 0x1c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call dword [0x850164]
sub esp, 8
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa97
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.AssignProcessToJobObject_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa9b
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xa9c
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0050e8b0
mov eax, dword [ebp - 0x14]
mov dword [esp + 8], 1
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
mov dword [esp], 0xa9d
call fcn.0050eab0
mov dword [esp], 1
mov ecx, 1
mov edx, ebx
mov eax, 0xa9e
call fcn.00514d80
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 1
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xaa2
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xaa3
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
test eax, eax
mov dword [esp + 8], eax
sete al
movzx eax, al
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], 0xaa4
call fcn.0050eab0
mov dword [esp], 0
xor ecx, ecx
mov edx, esi
mov eax, 0xaa5
call fcn.00514d80
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xaa9
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xaaa
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
sub esp, 8
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xaad
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call fcn.0057d980
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0
mov dword [esp + 8], eax
mov dword [esp + 4], ebx
mov eax, dword [ebp - 0x1c]
mov dword [esp], eax
call dword [0x850160]
sub esp, 0xc
mov dword [ebp - 0x24], eax
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xab1
mov eax, dword [edi + 0x34]
mov dword [esp + 4], str.IsProcessInJob_error__lu_n
mov dword [esp + 8], eax
mov edx, dword [ebp - 0x24]
mov dword [esp], edx
call fcn.0050e8b0
call fcn.0057d110
mov dword [eax], 0x5eee7f
mov dword [eax + 4], 0xab2
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], str.IsProcessInJob_returned_out_u_n
mov dword [esp + 8], eax
mov dword [esp], eax
call fcn.0050e8b0
mov dword [esp + 8], 0
mov dword [esp + 4], ebx
mov dword [esp], 0xab3
call fcn.0050eab0
mov dword [esp], 0
mov ecx, 1
mov edx, ebx
mov eax, 0xab4
call fcn.00514d80
mov eax, dword [ebp - 0x1c]
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
mov dword [esp], eax
call edi
mov eax, dword [ebp - 0x18]
sub esp, 4
mov dword [esp], eax
call edi
sub esp, 4
mov dword [esp], ebx
call edi
sub esp, 4
mov dword [esp], esi
call edi
sub esp, 4
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, 0xa7c
call fcn.0050dc60
mov dword [esp], str.IsProcessInJob_not_available._n
call fcn.0050e770
jmp 0x519975