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

Disassembly:
push 0xffffffffffffffff
push 0x4749b8
mov eax, dword fs:[0]
push eax
sub esp, 0x1bc
mov eax, dword [0x4a3dc0]
xor eax, esp
mov dword [esp + 0x1b8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x4a3dc0]
xor eax, esp
push eax
lea eax, [esp + 0x1d0]
mov dword fs:[0], eax
mov eax, dword [esp + 0x1e0]
xor ebx, ebx
dec eax
mov edi, ecx
mov dword [esp + 0x18], ebx
je 0x43e917
dec eax
jne 0x43e909
call fcn.00433a00
test al, al
jne 0x43e910
xor eax, eax
jmp 0x43ecdd
mov esi, 0x100
jmp 0x43e91c
mov esi, 0x200
push 0x80000002
lea ecx, [esp + 0x60]
call fcn.0043f520
or esi, 0x20019
push esi
push str.SOFTWAREJavaSoftJava_Runtime_Environment
lea ecx, [esp + 0x64]
mov dword [esp + 0x30], esi
call fcn.0043f5f0
test eax, eax
jne 0x43e909
mov esi, dword [edi + 4]
sub esi, dword [edi]
push ebx
lea eax, [esp + 0xd0]
sar esi, 2
push eax
lea ecx, [esp + 0x64]
mov dword [esp + 0x60], esi
mov dword [esp + 0x28], ebx
xor ebp, ebp
call fcn.0043f5a0
test eax, eax
jne 0x43ecd0
inc ebp
lea ecx, [esp + 0x5c]
mov dword [esp + 0x54], ebp
call fcn.0043f5c0
push eax
lea ecx, [esp + 0x7c]
call fcn.0043f520
mov ecx, dword [esp + 0x28]
push ecx
lea edx, [esp + 0xd0]
push edx
lea ecx, [esp + 0x80]
call fcn.0043f5f0
test eax, eax
jne 0x43ecb6
push ebx
lea ecx, [esp + 0x34]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
call fcn.00429d30
lea eax, [esp + 0x2c]
push eax
push str.JavaHome
lea ecx, [esp + 0x80]
mov dword [esp + 0x1e0], ebx
call fcn.0043f790
test eax, eax
jne 0x43ec85
cmp dword [esp + 0x2c], 1
jne 0x43ec85
lea ecx, [esp + 0x2c]
call fcn.0043f8f0
mov ebp, eax
push ebx
lea ecx, [esp + 0x48]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x28], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
call fcn.00429d30
lea ecx, [esp + 0x78]
mov byte [esp + 0x1d8], 1
call fcn.0043f5c0
push eax
lea ecx, [esp + 0x98]
call fcn.0043f520
mov ecx, dword [esp + 0x28]
push ecx
push 0x49038c
lea ecx, [esp + 0x9c]
call fcn.0043f5f0
test eax, eax
jne 0x43ea95
lea edx, [esp + 0x40]
push edx
push str.FullVersion
lea ecx, [esp + 0x9c]
call fcn.0043f790
test eax, eax
jne 0x43ea89
cmp dword [esp + 0x40], 1
jne 0x43ea89
lea ecx, [esp + 0x40]
call fcn.0043f8f0
mov dword [esp + 0x24], eax
lea ecx, [esp + 0x94]
call fcn.0043f540
mov eax, dword [edi]
mov ecx, dword [edi + 4]
sub ecx, eax
sar ecx, 2
mov byte [esp + 0x17], 0
mov ebx, esi
cmp esi, ecx
jae 0x43eb4d
mov edi, edi
lea esi, [ebx*4]
mov eax, dword [esi + eax]
mov eax, dword [eax]
push ebp
push eax
call fcn.004550d5
add esp, 8
test eax, eax
jne 0x43eb3a
mov eax, dword [edi]
mov edx, dword [eax + esi]
mov eax, dword [edx + 4]
push eax
lea eax, [esp + 0xd0]
push eax
call fcn.004550d5
add esp, 8
test eax, eax
jle 0x43eb3a
mov ecx, dword [edi]
mov ebp, dword [esi + ecx]
push 0x14
call fcn.00453c68
add esp, 4
test eax, eax
je 0x43eb1d
mov edx, dword [esp + 0x1e0]
mov ecx, dword [esp + 0x24]
push edx
push ecx
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0xd4]
push edx
push ecx
mov ecx, eax
call fcn.0043e190
jmp 0x43eb1f
xor eax, eax
mov edx, dword [edi]
mov dword [esi + edx], eax
test ebp, ebp
je 0x43eb31
push 1
mov ecx, ebp
call fcn.0043e260
mov ebp, dword [esp + 0x1c]
mov byte [esp + 0x17], 1
mov eax, dword [edi]
mov ecx, dword [edi + 4]
sub ecx, eax
inc ebx
sar ecx, 2
cmp ebx, ecx
jb 0x43eab0
cmp byte [esp + 0x17], 0
jne 0x43ebda
push ebp
mov ecx, edi
call fcn.0043e2c0
test al, al
je 0x43ebda
xor esi, esi
lea eax, [esp + 0xcc]
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], esi
mov byte [esp + 0xb0], 0
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43eb90
sub eax, edx
push eax
lea edx, [esp + 0xd0]
push edx
lea ecx, [esp + 0xb8]
call fcn.004042b0
mov eax, dword [esp + 0x1e0]
or dword [esp + 0x18], 1
push eax
lea ecx, [esp + 0xb4]
push ecx
mov ecx, edi
mov byte [esp + 0x1e0], 2
call fcn.0043e5e0
test al, al
je 0x43ebdc
mov bl, 1
jmp 0x43ebde
xor esi, esi
xor bl, bl
test byte [esp + 0x18], 1
mov dword [esp + 0x1d8], 1
je 0x43ec0f
and dword [esp + 0x18], 0xfffffffe
cmp dword [esp + 0xc4], 0x10
jb 0x43ec0f
mov edx, dword [esp + 0xb0]
push edx
call fcn.004533ae
add esp, 4
test bl, bl
je 0x43ec56
push 0x14
call fcn.00453c68
add esp, 4
cmp eax, esi
je 0x43ec40
mov ecx, dword [esp + 0x1e0]
mov edx, dword [esp + 0x24]
push ecx
push edx
lea ecx, [esp + 0xd4]
push ecx
push ebp
mov ecx, eax
call fcn.0043e190
jmp 0x43ec42
xor eax, eax
lea edx, [esp + 0x1c]
push edx
mov ecx, edi
mov dword [esp + 0x20], eax
call fcn.0043e570
inc dword [esp + 0x20]
mov eax, dword [esp + 0x44]
mov byte [esp + 0x1d8], 0
cmp eax, esi
je 0x43ec6f
push eax
call fcn.004533ae
add esp, 4
mov ebp, dword [esp + 0x54]
mov dword [esp + 0x44], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
mov esi, dword [esp + 0x58]
xor ebx, ebx
lea ecx, [esp + 0x78]
call fcn.0043f540
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1d8], 0xffffffff
cmp eax, ebx
je 0x43ecaa
push eax
call fcn.004533ae
add esp, 4
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
push ebp
lea eax, [esp + 0xd0]
push eax
lea ecx, [esp + 0x64]
call fcn.0043f5a0
test eax, eax
je 0x43e973
lea ecx, [esp + 0x5c]
call fcn.0043f540
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1d0]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x1b8]
xor ecx, esp
call fcn.0045407e
add esp, 0x1c8
ret 4