Function at 0x1001f900
Capabilities:
Create process on windows
Terminate process

Disassembly:
mov eax, 0x1068
call fcn.100378e0
mov eax, dword [0x1004f860]
xor eax, esp
mov dword [esp + 0x1064], eax
push ebp
push esi
push 0x800
lea eax, [esp + 0x70]
push eax
xor ebp, ebp
push ebp
push 0x1003bb30
call fcn.10004030
add esp, 0x10
test eax, eax
je 0x1001f93f
lea ecx, [esp + 0x6c]
push ecx
jmp 0x1001f944
push 0x1003a9fc
lea ecx, [esp + 0x14]
call fcn.10002e00
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], eax
cmp eax, ebp
je 0x1001f963
add eax, 8
push eax
call dword [sym.imp.kernel32.dll_InterlockedIncrement]
push 0xc
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
cmp esi, ebp
je 0x1001fa16
push ebx
mov ebx, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push edi
lea edi, [esi + 8]
push str.javaws.exe
mov dword [esi + 4], ebp
mov dword [edi], 1
call ebx
mov dword [esi], eax
cmp eax, ebp
jne 0x1001f9a2
push 0x8007000e
call fcn.10031220
lea edx, [esp + 0x10]
push edx
lea ecx, [esp + 0x20]
mov dword [esp + 0x14], esi
call fcn.10004760
push edi
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jne 0x1001f9e5
mov eax, dword [esi]
cmp eax, ebp
je 0x1001f9cc
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001f9dc
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push 0xc
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
cmp esi, ebp
je 0x1001f998
push 0x1003a9fc
mov dword [esi + 4], ebp
mov dword [esi + 8], 1
call ebx
mov dword [esi], eax
cmp eax, ebp
jne 0x1001fa20
push 0x8007000e
call fcn.10031220
push 0x8007000e
call fcn.10031220
push 0xc
mov dword [esp + 0x14], esi
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
cmp esi, ebp
je 0x1001f998
lea edi, [esi + 8]
push 0x1003c448
mov dword [esi + 4], ebp
mov dword [edi], 1
call ebx
mov dword [esi], eax
cmp eax, ebp
jne 0x1001fa5b
push 0x8007000e
call fcn.10031220
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], esi
call fcn.10004760
push edi
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jne 0x1001fa9e
mov eax, dword [esi]
cmp eax, ebp
je 0x1001fa85
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001fa95
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x14]
call fcn.10004760
push 0xc
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
cmp esi, ebp
je 0x1001f998
lea edi, [esi + 8]
push 0x1003c448
mov dword [esi + 4], ebp
mov dword [edi], 1
call ebx
mov dword [esi], eax
cmp eax, ebp
jne 0x1001fae3
push 0x8007000e
call fcn.10031220
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], esi
call fcn.10004760
push edi
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jne 0x1001fb26
mov eax, dword [esi]
cmp eax, ebp
je 0x1001fb0d
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001fb1d
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push 0xc
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
mov esi, eax
add esp, 4
cmp esi, ebp
je 0x1001f998
lea edi, [esi + 8]
push str.__wait__fix__shortcut__silent
mov dword [esi + 4], ebp
mov dword [edi], 1
call ebx
mov dword [esi], eax
cmp eax, ebp
jne 0x1001fb5d
push 0x8007000e
call fcn.10031220
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x14]
mov dword [esp + 0x18], esi
call fcn.10004760
push edi
call dword [sym.imp.kernel32.dll_InterlockedDecrement]
test eax, eax
jne 0x1001fba0
mov eax, dword [esi]
cmp eax, ebp
je 0x1001fb87
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001fb97
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
push 0x40
lea ecx, [esp + 0x38]
push ebp
push ecx
call sub.MSVCR100.dll_memset
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x24]
add esp, 0xc
mov dword [esp + 0x30], 0x44
mov dword [esp + 0x20], ebp
cmp eax, ebp
je 0x1001fbd6
mov edx, dword [eax]
jmp 0x1001fbd8
xor edx, edx
mov esi, dword [esp + 0x10]
cmp esi, ebp
je 0x1001fbe4
mov ecx, dword [esi]
jmp 0x1001fbe6
xor ecx, ecx
mov ebx, dword [esp + 0x1c]
cmp ebx, ebp
je 0x1001fbf2
mov eax, dword [ebx]
jmp 0x1001fbf4
xor eax, eax
lea edi, [esp + 0x20]
push edi
lea edi, [esp + 0x34]
push edi
push edx
push ebp
push 0x8000000
push ebp
push ebp
push ebp
push ecx
push eax
call dword [sym.imp.kernel32.dll_CreateProcessW]
test eax, eax
je 0x1001fc51
mov edx, dword [esp + 0x20]
push 0x2bf20
push edx
call dword [sym.imp.kernel32.dll_WaitForSingleObject]
cmp eax, 0x102
jne 0x1001fc3d
mov eax, dword [esp + 0x20]
push 1
push eax
call dword [sym.imp.kernel32.dll_TerminateProcess]
call fcn.10014cc0
mov ecx, dword [esp + 0x24]
mov edi, dword [sym.imp.kernel32.dll_CloseHandle]
push ecx
call edi
mov edx, dword [esp + 0x20]
push edx
call edi
mov edi, dword [sym.imp.kernel32.dll_InterlockedDecrement]
cmp esi, ebp
je 0x1001fc8b
lea eax, [esi + 8]
push eax
call edi
test eax, eax
jne 0x1001fc8b
mov eax, dword [esi]
cmp eax, ebp
je 0x1001fc72
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001fc82
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp ebx, ebp
je 0x1001fcbf
lea ecx, [ebx + 8]
push ecx
call edi
test eax, eax
jne 0x1001fcbf
mov eax, dword [ebx]
cmp eax, ebp
je 0x1001fca6
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebx + 4]
cmp eax, ebp
je 0x1001fcb6
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push ebx
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov esi, dword [esp + 0x18]
cmp esi, ebp
je 0x1001fcf7
lea edx, [esi + 8]
push edx
call edi
test eax, eax
jne 0x1001fcf7
mov eax, dword [esi]
cmp eax, ebp
je 0x1001fcde
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
cmp eax, ebp
je 0x1001fcee
push eax
call sub.MSVCR100.dll_void___cdecl_operator_delete___void__
add esp, 4
push esi
call sub.MSVCR100.dll_void___cdecl_operator_delete_void__
add esp, 4
mov ecx, dword [esp + 0x1074]
pop edi
pop ebx
pop esi
pop ebp
xor ecx, esp
call fcn.1003779c
add esp, 0x1068
ret