Function at 0x10002e51
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x3098
call fcn.10011670
mov eax, dword [0x10038540]
xor eax, esp
mov dword [esp + 0x3094], eax
push ebx
push ebp
push esi
push edi
mov ebp, 0x401
lea eax, [esp + 0x488]
push ebp
xor ebx, ebx
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
push ebp
lea eax, [esp + 0x94]
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
push str.InitializeJVM___n
mov dword [esp + 0x34], ebx
mov edi, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x2c], ebx
call fcn.10001a48
add esp, 0x1c
mov esi, ebx
push ebp
lea eax, [esp + 0x88]
push eax
push 1
push dword [esi + 0x10037018]
call fcn.1000b9a0
add esp, 0x10
test eax, eax
jne 0x10002f0d
push ebp
lea eax, [esp + 0x88]
push eax
push ebx
push dword [esi + 0x10037018]
call fcn.1000b9a0
add esp, 0x10
test eax, eax
jne 0x10002f0d
add esi, 4
cmp esi, 8
jb 0x10002ebb
push str.InitializeJVM___Cannot_find_plugin_file_n
call fcn.10001a48
xor eax, eax
jmp 0x100033bc
lea eax, [esp + 0x84]
push eax
call fcn.10012c4f
lea eax, [esp + 0x88]
push eax
push str.InitializeJVM___jvmPath:__s_n
call fcn.10001a48
lea eax, [esp + 0x90]
mov esi, 0x400
push eax
lea eax, [esp + 0x498]
push esi
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
lea eax, [esp + 0x4a0]
push 0x5c
push eax
call dword [sym.imp.api_ms_win_crt_multibyte_l1_1_0.dll__mbsrchr]
add esp, 0x20
test eax, eax
jne 0x10002f74
lea eax, [esp + 0x488]
push eax
push str.InitializeJVM___Invalid_Java_home:__s_n
call fcn.10001a48
pop ecx
jmp 0x10002f06
mov ebp, dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__dupenv_s]
mov byte [eax], bl
lea eax, [esp + 0x10]
push str.FORCED_JRE_ROOT
push eax
lea eax, [esp + 0x20]
push eax
call ebp
push str.FORCED_DEPLOY_ROOT
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x34]
push eax
call ebp
push str.FORCED_BOOTCLASSPATH
lea eax, [esp + 0x2c]
push eax
lea eax, [esp + 0x3c]
push eax
call ebp
push str.FORCED_BROWSERVM_ARGS
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x50]
push eax
call ebp
add esp, 0x30
cmp dword [esp + 0x18], ebx
je 0x10002ffe
push dword [esp + 0x18]
lea eax, [esp + 0x48c]
push 0x10037104
push 0xffffffffffffffff
push esi
push eax
call fcn.10012c4f
push dword [esp + 0x2c]
lea eax, [esp + 0x9c]
push 0x10037108
push 0xffffffffffffffff
push esi
push eax
call fcn.10012c4f
add esp, 0x28
cmp dword [0x10038c64], ebx
jne 0x10003010
mov dword [0x10038c64], 1
cmp dword [0x10038c60], ebx
je 0x10003020
xor eax, eax
inc eax
jmp 0x100033bd
lea eax, [esp + 0x84]
push esi
push eax
call fcn.10012c4f
pop ecx
pop ecx
test eax, eax
jne 0x10003151
lea eax, [esp + 0x488]
push eax
push str._s_bindeploy.dll
push 0xffffffffffffffff
lea eax, [esp + 0x898]
push esi
push eax
call fcn.10012c4f
add esp, 0x14
lea eax, [esp + 0x88c]
push eax
call dword [sym.imp.kernel32.dll_LoadLibraryA]
mov ebp, eax
test ebp, ebp
jne 0x10003077
push ebx
push str.InitializeJVM___Failed_to_load_deploy_DLL:__s_n
jmp 0x10002f6c
push str.GetCurrentJavaHomeFromRegistry
push ebp
call dword [sym.imp.kernel32.dll_GetProcAddress]
test eax, eax
jne 0x10003091
push str.InitializeJVM___GetCurrentJavaHomeFromRegistry___not_found_n
jmp 0x10002f01
lea ecx, [esp + 0x1898]
push ecx
call eax
pop ecx
push ebp
mov esi, eax
call dword [sym.imp.kernel32.dll_FreeLibrary]
test esi, esi
jne 0x100030b3
push str.InitializeJVM___GetCurrentJavaHomeFromRegistry___failed_n
jmp 0x10002f01
lea ecx, [esp + 0x1898]
mov dword [esp + 0x28], ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x100030c1
sub ecx, edx
lea eax, [esp + 0x1898]
sar ecx, 1
mov esi, 0x400
push esi
push eax
lea eax, [ecx + 1]
push eax
lea eax, [esp + 0xc9c]
push eax
lea eax, [esp + 0x38]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_wcstombs_s]
add esp, 0x14
test eax, eax
jne 0x10003184
lea eax, [esp + 0xc90]
push eax
push str._s_bin
push 0xffffffffffffffff
lea eax, [esp + 0x90]
push esi
push eax
call fcn.10012c4f
lea eax, [esp + 0x98]
push eax
call fcn.10012c4f
add esp, 0x18
test eax, eax
jne 0x1000313b
push str.InitializeJVM___preloadVC7___failed_n
jmp 0x10002f01
lea eax, [esp + 0x84]
push esi
push eax
call fcn.10012c4f
mov ebp, dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__dupenv_s]
pop ecx
pop ecx
lea eax, [esp + 0x84]
push eax
call dword [sym.imp.kernel32.dll_LoadLibraryA]
mov dword [0x10038c68], eax
test eax, eax
jne 0x1000318b
call dword [sym.imp.kernel32.dll_GetLastError]
lea ecx, [esp + 0x84]
push ecx
push eax
push str.InitializeJVM___Cannot_load_JVM___d_:__s_n
call fcn.10001a48
add esp, 0xc
xor eax, eax
jmp 0x100033bd
push str.JNI_GetCreatedJavaVMs
push eax
call dword [sym.imp.kernel32.dll_GetProcAddress]
test eax, eax
jne 0x100031a5
push str.InitializeJVM___JNI_GetCreatedJavaVMs___not_found_n
jmp 0x10002f01
lea ecx, [esp + 0x2c]
push ecx
push 1
push 0x10038c6c
call eax
test eax, eax
js 0x10003184
cmp dword [esp + 0x2c], 1
jge 0x100033af
mov eax, dword [esp + 0x20]
mov esi, 0x801
test eax, eax
je 0x100031ec
push eax
push eax
push eax
push 0x100372a8
push 0xffffffffffffffff
lea eax, [esp + 0x10a8]
push esi
push eax
call fcn.10012c4f
add esp, 0x1c
jmp 0x1000324f
cmp dword [esp + 0x1c], ebx
je 0x10003210
push dword [esp + 0x1c]
lea eax, [esp + 0x1098]
push str._Xbootclasspath_p:_s
push 0xffffffffffffffff
push esi
push eax
call fcn.10012c4f
add esp, 0x14
jmp 0x1000324f
lea eax, [esp + 0x488]
push eax
push eax
push eax
push str._Xbootclasspath_a:_slibdeploy.jar__slibjavaws.jar__slibplugin.jar
push 0xffffffffffffffff
lea eax, [esp + 0x10a8]
push esi
push eax
call fcn.10012c4f
lea eax, [esp + 0x4a4]
push eax
push str._Djava.class.path_sclasses
push 0xffffffffffffffff
lea eax, [esp + 0x28c8]
push esi
push eax
call fcn.10012c4f
add esp, 0x30
lea eax, [esp + 0x1094]
push eax
lea eax, [esp + 0x20a0]
push esi
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
push str.JPI_PLUGIN2_DEBUG
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
call ebp
add esp, 0x18
cmp dword [esp + 0x14], ebx
je 0x1000329a
push str.InitializeJVM___Warning:_JPI_PLUGIN2_DEBUG_is_deprecated._Use_DEPLOY_TRACE_CONSOLE_instead_to_enable_console._n
call fcn.10001a48
push dword [esp + 0x18]
xor edi, edi
inc edi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
jmp 0x100032c1
push str.DEPLOY_TRACE_CONSOLE
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x1c]
push eax
call ebp
add esp, 0xc
cmp dword [esp + 0x14], ebx
je 0x100032c7
push dword [esp + 0x14]
xor edi, edi
inc edi
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
pop ecx
call fcn.10010b58
mov dword [esp + 0x30], 0x10002
lea eax, [esp + 0x209c]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x28a0]
mov dword [esp + 0x4c], str._Xmx32m
mov dword [esp + 0x54], str._Djava.awt.headlesstrue
mov dword [esp + 0x5c], str._XX:MaxDirectMemorySize64m
mov dword [esp + 0x64], str._Djava.security.manager
mov dword [esp + 0x6c], eax
test edi, edi
je 0x10003319
mov dword [esp + 0x74], str.vfprintf
mov dword [esp + 0x78], 0x100034ea
mov ecx, dword [esp + 0x24]
test ecx, ecx
mov eax, dword [esp + 0x7c]
cmovne eax, ecx
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x44]
mov dword [esp + 0x38], eax
lea eax, [edi + 6]
mov dword [esp + 0x34], eax
je 0x10003342
lea eax, [edi + 7]
mov dword [esp + 0x34], eax
push str.JNI_CreateJavaVM
push dword [0x10038c68]
mov byte [esp + 0x44], 1
call dword [sym.imp.kernel32.dll_GetProcAddress]
mov esi, eax
test esi, esi
jne 0x10003368
push str.InitializeJVM___JNI_CreateJavaVM___not_found_n
jmp 0x10002f01
call fcn.10001a22
test eax, eax
je 0x10003390
cmp dword [esp + 0x34], ebx
jle 0x10003390
push dword [esp + ebx*8 + 0x44]
push ebx
push str.InitializeJVM___VM_option__d_:__s_n
call fcn.10001a48
add esp, 0xc
inc ebx
cmp ebx, dword [esp + 0x34]
jl 0x10003377
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x44]
push eax
push 0x10038c6c
call esi
test eax, eax
jns 0x100033af
push str.InitializeJVM___JNI_CreateJavaVM___failed_n
jmp 0x10002f01
push str.InitializeJVM___OK_n
call fcn.10001a48
xor eax, eax
inc eax
pop ecx
mov ecx, dword [esp + 0x30a4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.100111d2
add esp, 0x3098
ret