Function at 0x4024c0
Capabilities:
Check if file exists
Get file attributes
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x600c
call fcn.0040c310
mov eax, dword [0x41398c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [0x415a4c]
push edi
mov edi, ecx
test eax, eax
je 0x4024fc
cmp eax, 0xffffffff
je 0x4024fc
mov eax, 1
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c2f4
mov esp, ebp
pop ebp
ret
push esi
test edi, edi
je 0x402545
cmp word [edi], 0
je 0x402545
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push edi
call esi
cmp eax, 0xffffffff
jne 0x40255f
push edi
push str.Invalid_RuntimeLib_specified__S
push 0xd0
push str......_srcjavajni.c
push 1
push 0
push 0
call fcn.00404a50
add esp, 0x1c
pop esi
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c2f4
mov esp, ebp
pop ebp
ret
push 0
call fcn.00406920
mov edi, eax
add esp, 4
test edi, edi
je 0x4028e1
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
push ebx
push edi
call esi
cmp eax, 0xffffffff
jne 0x4025e1
push 1
push 0
call fcn.004067b0
push edi
push str.Invalid_RuntimeLib__S
push 0xde
push str......_srcjavajni.c
push 1
push 0
push 0
mov ebx, eax
call fcn.00404a50
add esp, 0x24
test ebx, ebx
je 0x4025e1
push ebx
push str.Using_Jre_JavaHome__S
push 0xe0
push str......_srcjavajni.c
push 1
push 0
push 0
call fcn.00404a50
push ebx
lea eax, [ebp - 0x4004]
push 0x1000
push eax
call fcn.00405640
push str._bin_serverjvm.dll
lea ecx, [ebp - 0x4004]
push 0x1000
push ecx
call fcn.00405590
add esp, 0x34
lea edi, [ebp - 0x4004]
push 1
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push edi
push str.loading_jvm__S
push 0xe9
push str......_srcjavajni.c
push 1
push 0
push 0
mov dword [ebp - 0x600c], eax
call fcn.00404a50
add esp, 0x1c
push 0
push 0
push edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov dword [0x415a4c], eax
test eax, eax
je 0x40262a
cmp eax, 0xffffffff
jne 0x4026fd
push edi
call esi
cmp eax, 0xffffffff
je 0x4026f8
push edi
lea edx, [ebp - 0x6004]
push 0x1000
push edx
xor esi, esi
call fcn.00405640
add esp, 0xc
lea eax, [ebp - 0x6004]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea ebx, [ebp + eax*2 - 0x6004]
movzx eax, word [ebx]
cmp ax, 0x5c
je 0x402670
cmp ax, 0x2f
jne 0x4026ca
lea edx, [ebp - 0x6004]
push edx
lea eax, [ebp - 0x2004]
xor ecx, ecx
push 0x1000
push eax
mov word [ebx], cx
call fcn.00405640
push str.msvcrt71.dll
lea ecx, [ebp - 0x2004]
push 0x1000
push ecx
call fcn.00405590
add esp, 0x18
lea edx, [ebp - 0x2004]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x4026c9
lea eax, [ebp - 0x2004]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
jne 0x4026d4
inc esi
sub ebx, 2
cmp esi, 2
jb 0x402661
jmp 0x4026f8
lea ecx, [ebp - 0x2004]
push ecx
push str.preloaded__S
push 0xfe
push str......_srcjavajni.c
push 1
push 0
push 0
call fcn.00404a50
add esp, 0x1c
mov eax, dword [0x415a4c]
test eax, eax
je 0x402706
cmp eax, 0xffffffff
jne 0x402716
push 8
push 0
push edi
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov dword [0x415a4c], eax
test eax, eax
je 0x402723
cmp eax, 0xffffffff
jne 0x4027e5
push edi
lea edx, [ebp - 0x2004]
push 0x1000
push edx
xor ebx, ebx
call fcn.00405640
add esp, 0xc
push str.SetDllDirectoryW
push str.KERNEL32
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x6008], eax
lea eax, [ebp - 0x2004]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [ebp + eax*2 - 0x2004]
jmp 0x402770
movzx eax, word [esi]
cmp ax, 0x5c
je 0x40277f
cmp ax, 0x2f
jne 0x4027b6
lea edx, [ebp - 0x2004]
xor ecx, ecx
push edx
mov word [esi], cx
call dword [ebp - 0x6008]
lea eax, [ebp - 0x2004]
push eax
push str.Setting_DLL_search_path_to__S
push 0x116
push str......_srcjavajni.c
push 1
push 0
push 0
call fcn.00404a50
add esp, 0x1c
inc ebx
sub esi, 2
cmp ebx, 2
jb 0x402770
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
push 0
push 0
push edi
call esi
mov dword [0x415a4c], eax
test eax, eax
je 0x4027d9
cmp eax, 0xffffffff
jne 0x4027e5
push 8
push 0
push edi
call esi
mov dword [0x415a4c], eax
mov ecx, dword [ebp - 0x600c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
mov eax, dword [0x415a4c]
pop ebx
test eax, eax
je 0x4028c7
cmp eax, 0xffffffff
je 0x4028c7
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.JNI_GetDefaultJavaVMInitArgs
push eax
call esi
mov edx, dword [0x415a4c]
push str.JNI_CreateJavaVM
push edx
mov dword [0x415a3c], eax
call esi
mov dword [0x415a40], eax
mov eax, dword [0x415a4c]
push str.JNI_GetCreatedJavaVMs
push eax
call esi
mov ecx, dword [0x415a4c]
push str.JVM_DumpAllStacks
push ecx
mov dword [0x415a44], eax
call esi
cmp dword [0x415a3c], 0
mov dword [0x415a48], eax
je 0x402884
cmp dword [0x415a40], 0
je 0x402884
cmp dword [0x415a44], 0
je 0x402884
pop esi
mov eax, 1
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c2f4
mov esp, ebp
pop ebp
ret
push 0
push 0x12e
push str......_srcjavajni.c
push 1
push 3
push 0
call fcn.00404a50
mov edx, dword [0x415a4c]
add esp, 0x18
push edx
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
pop esi
mov dword [0x415a4c], 0
xor eax, eax
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c2f4
mov esp, ebp
pop ebp
ret
push 0
push 0x123
push str......_srcjavajni.c
push 1
push 3
push 0
call fcn.00404a50
add esp, 0x18
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
xor eax, eax
pop edi
call fcn.0040c2f4
mov esp, ebp
pop ebp
ret