Function at 0x402f20
Capabilities:
Query environment variable
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x280
push ebx
push esi
push edi
mov edi, dword [sym.imp.MSVCR71.dll_getenv]
xor ebx, ebx
push str._JAVA_LAUNCHER_DEBUG
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x14], ebx
call edi
test eax, eax
mov esi, dword [sym.imp.MSVCR71.dll_printf]
pop ecx
je 0x402f5b
push str._____JAVA_LAUNCHER_DEBUG_____n
mov byte [0x40804a], 1
call esi
pop ecx
lea eax, [ebp - 4]
push eax
push dword [ebp + 8]
mov eax, dword [ebp + 0xc]
call fcn.004011b5
mov eax, dword [ebp + 8]
lea eax, [eax*4 + 4]
push eax
call sub.jli.dll_JLI_MemAlloc
mov edx, dword [ebp + 8]
add esp, 0xc
xor ecx, ecx
inc edx
test edx, edx
jle 0x402f99
mov edx, dword [ebp + 0xc]
mov edx, dword [edx + ecx*4]
mov dword [eax + ecx*4], edx
mov edx, dword [ebp + 8]
inc ecx
inc edx
cmp ecx, edx
jl 0x402f87
push eax
mov eax, 0x104
push eax
lea ecx, [ebp - 0x17c]
push ecx
push eax
lea eax, [ebp - 0x280]
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp + 8]
push eax
call fcn.00403ea1
add esp, 0x1c
cmp byte [0x40804a], bl
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0xc], ebx
je 0x402fd8
call fcn.004033e7
mov dword [ebp - 8], eax
mov dword [ebp - 4], edx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x17c]
push eax
call fcn.00403d36
test al, al
pop ecx
pop ecx
jne 0x402ff2
push 6
jmp 0x403071
cmp byte [0x40804a], bl
je 0x403017
call fcn.004033e7
sub eax, dword [ebp - 8]
sbb edx, dword [ebp - 4]
push edx
push eax
call fcn.0040342d
push eax
push str._ld_micro_seconds_to_LoadJavaVM_n
call esi
add esp, 0x10
add dword [ebp + 0xc], 4
dec dword [ebp + 8]
lea eax, [ebp + 0xc]
lea ecx, [ebp + 8]
mov dword [0x408044], 0x406690
call fcn.004019e7
call fcn.00401abf
test al, al
jne 0x403040
push 1
jmp 0x403071
push str.CLASSPATH
call edi
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp + 8]
push eax
call fcn.004025da
add esp, 0x1c
test al, al
jne 0x403077
push dword [ebp - 4]
call dword [sym.imp.MSVCR71.dll_exit]
mov esi, dword [ebp - 0x18]
cmp esi, ebx
je 0x403085
push esi
call fcn.00401183
pop ecx
push dword [ebp + 0xc]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp + 8]
push edi
mov eax, esi
call fcn.00401c05
push 0
push str._Dsun.java.launcherSUN_STANDARD
call fcn.004010bd
call fcn.00403584
call fcn.00401f7b
push 0x405398
call fcn.00403bb3
push str._JAVA_SPLASH_FILE
call fcn.00403bb3
push str._JAVA_SPLASH_JAR
call fcn.00403bb3
push dword [0x408050]
call sub.jli.dll_JLI_MemFree
push dword [0x40804c]
call sub.jli.dll_JLI_MemFree
mov eax, dword [0x408068]
add esp, 0x24
or eax, dword [0x40806c]
jne 0x403121
push 0x48
lea eax, [ebp - 0x78]
push 0
push eax
call sub.MSVCR71.dll_memset
add esp, 0xc
lea eax, [ebp - 0x78]
push eax
mov dword [ebp - 0x78], 0x10001
call dword [ebp - 0xc]
mov eax, dword [ebp - 0x68]
test eax, eax
jle 0x403121
cdq
mov dword [0x408068], eax
mov dword [0x40806c], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x30]
push eax
push dword [0x40806c]
mov dword [ebp - 0x28], esi
push dword [0x408068]
mov dword [ebp - 0x24], edi
push 0x401fec
call fcn.00403bfe
add esp, 0x10
pop edi
pop esi
pop ebx
leave
ret