Function at 0x435090
Capabilities:
Create directory
Create shortcut via ishelllink
Delete directory
Delete file

Disassembly:
push 0x250
mov eax, 0x480c98
call fcn.00450f47
mov eax, dword [ebp + 0xc]
lea ecx, [ebp - 0xa4]
mov edi, dword [ebp + 8]
mov esi, str.Executor::ExecProcessAsDesktopUser
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp + 0x10]
push esi
mov dword [ebp - 0x244], edi
mov dword [ebp - 0x248], eax
call fcn.004038cc
lea eax, [ebp - 0xa4]
xor ebx, ebx
push eax
push esi
push 0x16b
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push ebx
mov dword [ebp - 4], ebx
call fcn.00425c61
push eax
lea ecx, [ebp - 0x240]
call fcn.004259e1
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 2
call fcn.004063d7
push 0x48ccac
lea ecx, [ebp - 0x2c]
call fcn.004038cc
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x11c]
push edi
push eax
call fcn.00474cc0
add esp, 0xc
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.004063d7
cmp dword [ebp - 0x10c], ebx
jne 0x435177
push 3
pop edi
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x43516d
push str.ExecProcessAsDesktopUser:_appPath_is_empty
push esi
push 0x170
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
call fcn.00425c61
mov ecx, eax
call fcn.0040714b
mov esi, 0x65b
jmp 0x435b33
push 0xf
pop esi
mov dword [ebp - 0x8c], ebx
mov dword [ebp - 0x7c], ebx
mov dword [ebp - 0x78], esi
mov byte [ebp - 0x8c], bl
mov byte [ebp - 4], 6
call fcn.0042d712
lea ecx, [ebp - 0x2c]
push str.explorer.exe
test al, al
je 0x4351e7
call fcn.004038cc
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 7
push eax
call fcn.0042cca3
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 8
push ecx
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.0043249f
add esp, 0x10
lea ecx, [ebp - 0x8c]
push eax
call fcn.00404268
lea ecx, [ebp - 0xa4]
call fcn.004063d7
lea ecx, [ebp - 0x5c]
jmp 0x43522b
call fcn.004038cc
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 9
push eax
call fcn.0042d2a8
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xa
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.0043249f
add esp, 0x10
lea ecx, [ebp - 0x8c]
push eax
call fcn.00404268
lea ecx, [ebp - 0x5c]
call fcn.004063d7
lea ecx, [ebp - 0xa4]
call fcn.004063d7
lea ecx, [ebp - 0x2c]
call fcn.004063d7
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xac], ebx
mov dword [ebp - 0xa8], esi
mov byte [ebp - 0xbc], bl
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], esi
mov byte [ebp - 0x74], bl
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x30], esi
mov byte [ebp - 0x44], bl
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0xe
push eax
call fcn.00474cc0
pop ecx
push eax
lea ecx, [ebp - 0xbc]
call fcn.00404268
lea ecx, [ebp - 0x5c]
call fcn.004063d7
push str.Oracle
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00474cc0
add esp, 0xc
lea ecx, [ebp - 0x74]
push eax
call fcn.00404268
lea ecx, [ebp - 0x5c]
call fcn.004063d7
cmp dword [ebp - 0x60], 0x10
lea eax, [ebp - 0x74]
mov esi, dword [sym.imp.kernel32.dll_CreateDirectoryA]
cmovae eax, dword [ebp - 0x74]
push ebx
push eax
call esi
push str._tmpinstall
lea eax, [ebp - 0x74]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00474cc0
add esp, 0xc
lea ecx, [ebp - 0x44]
push eax
call fcn.00404268
lea ecx, [ebp - 0x5c]
call fcn.004063d7
cmp dword [ebp - 0x30], 0x10
lea eax, [ebp - 0x44]
push ebx
cmovae eax, dword [ebp - 0x44]
push eax
call esi
jmp 0x435397
mov esi, dword [ebp - 0x24c]
lea eax, [ebp - 0x44]
push 3
pop edi
push str.javatmp.lnk
push eax
lea eax, [ebp - 0xec]
mov dword [ebp - 4], 0xd
push eax
call fcn.00474cc0
add esp, 0xc
push ebx
mov byte [ebp - 4], 0x13
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [ebp - 0x254]
mov dword [ebp - 0x254], ebx
push eax
push 0x494200
push 0x17
push ebx
push 0x494300
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4358d7
mov eax, dword [ebp - 0x254]
lea edx, [ebp - 0x11c]
cmp dword [ebp - 0x108], 0x10
cmovae edx, dword [ebp - 0x11c]
mov ecx, dword [eax]
push edx
push eax
call dword [ecx + 0x50]
test eax, eax
je 0x4354f9
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x4356d2
push str._s_failed_with__s
lea ecx, [ebp - 0x2c]
call fcn.004038cc
push ebx
mov byte [ebp - 4], 0x14
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.00425cdc
mov esi, eax
push dword [ebp - 0x244]
lea eax, [ebp - 0x104]
mov byte [ebp - 4], 0x15
push str.ExecProcessAsDesktopUser:_pJavaShortCutItem__SetPath_
push eax
call fcn.00474cc0
push str.__call_failed
push eax
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x16
push eax
call fcn.00474cc0
push esi
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x17
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00474cc0
add esp, 0x34
push eax
push str.Executor::ExecProcessAsDesktopUser
push 0x1a4
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
mov byte [ebp - 4], 0x18
call fcn.00425c61
mov ecx, eax
call fcn.00425e9d
lea ecx, [ebp - 0x5c]
call fcn.004063d7
lea ecx, [ebp - 0xa4]
call fcn.004063d7
lea ecx, [ebp - 0x104]
call fcn.004063d7
lea ecx, [ebp - 0xd4]
call fcn.004063d7
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
call fcn.004063d7
jmp 0x4356d2
cmp dword [esi + 0x14], 0x10
mov edx, esi
mov dword [ebp - 0x258], 1
jb 0x43550d
mov edx, dword [esi]
mov eax, dword [ebp - 0x254]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
je 0x4355f0
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x4356d2
push str._s_failed_with__s
lea ecx, [ebp - 0x2c]
call fcn.004038cc
push ebx
mov byte [ebp - 4], 0x19
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.00425cdc
mov esi, eax
mov eax, dword [ebp - 0x24c]
push eax
lea eax, [ebp - 0x5c]
mov byte [ebp - 4], 0x1a
push str.ExecProcessAsDesktopUser:_pJavaShortCutItem__SetArguments_
push eax
call fcn.00474cc0
push str.__call_failed
push eax
lea eax, [ebp - 0x104]
mov byte [ebp - 4], 0x1b
push eax
call fcn.00474cc0
push esi
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.00474cc0
add esp, 0x34
push eax
push str.Executor::ExecProcessAsDesktopUser
push 0x1aa
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
mov byte [ebp - 4], 0x1d
call fcn.00425c61
mov ecx, eax
call fcn.00425e9d
lea ecx, [ebp - 0xd4]
call fcn.004063d7
lea ecx, [ebp - 0x104]
call fcn.004063d7
lea ecx, [ebp - 0x5c]
call fcn.004063d7
lea ecx, [ebp - 0xa4]
jmp 0x4354e3
mov eax, dword [ebp - 0x254]
lea edx, [ebp - 0x244]
push edx
push 0x494240
push eax
mov ecx, dword [eax]
call dword [ecx]
test eax, eax
js 0x4356a0
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.00474cc0
pop ecx
pop ecx
mov edx, eax
cmp dword [edx + 0x14], 8
mov byte [ebp - 4], 0x1e
jb 0x435632
mov edx, dword [edx]
mov eax, dword [ebp - 0x244]
push 1
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x18]
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x13
mov esi, eax
call fcn.004063fd
test esi, esi
je 0x43568c
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x435688
push str.CreateShortCutItem_____pJavaShortCutItemFile__Save_call_failed
push str.Executor::ExecProcessAsDesktopUser
push 0x1b7
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
call fcn.00425c61
mov ecx, eax
call fcn.0040714b
mov esi, ebx
jmp 0x435692
mov esi, dword [ebp - 0x258]
mov eax, dword [ebp - 0x244]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
jmp 0x4356d4
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x4356d2
push str.CreateShortCutItem_____pJavaShortCutItem__QueryInterface_call_failed
push str.Executor::ExecProcessAsDesktopUser
push 0x1bc
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
call fcn.00425c61
mov ecx, eax
call fcn.0040714b
mov esi, ebx
mov eax, dword [ebp - 0x254]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
test esi, esi
je 0x43590f
push 0xf
pop esi
mov dword [ebp - 0xa4], ebx
mov dword [ebp - 0x24c], ebx
mov dword [ebp - 0x94], ebx
mov dword [ebp - 0x90], esi
mov byte [ebp - 0xa4], bl
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x1e8]
call fcn.00434c9f
lea eax, [ebp - 0xec]
mov byte [ebp - 4], 0x24
push eax
lea ecx, [ebp - 0x1e8]
call fcn.004361b3
or dword [ebp - 0x12c], 0xffffffff
lea ecx, [ebp - 0x1e8]
mov byte [ebp - 0x130], 1
call fcn.004362d7
mov byte [ebp - 0x24d], al
test al, al
jne 0x435823
call dword [sym.imp.kernel32.dll_GetLastError]
push edi
mov dword [ebp - 0x24c], eax
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x43582e
push str._s_failed_with__s
lea ecx, [ebp - 0x2c]
call fcn.004038cc
push ebx
mov byte [ebp - 4], 0x25
call dword [sym.imp.kernel32.dll_GetLastError]
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00425cdc
add esp, 0xc
mov esi, eax
push str.ExecProcessAsDesktopUser:_Executor.exec__
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x26
call fcn.004038cc
push esi
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.00474cc0
add esp, 0x10
push eax
push str.Executor::ExecProcessAsDesktopUser
push 0x1db
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
mov byte [ebp - 4], 0x28
call fcn.00425c61
mov ecx, eax
call fcn.00425e9d
lea ecx, [ebp - 0xd4]
call fcn.004063d7
lea ecx, [ebp - 0x104]
call fcn.004063d7
lea ecx, [ebp - 0x5c]
call fcn.004063d7
lea ecx, [ebp - 0x2c]
call fcn.004063d7
push 0xf
pop esi
jmp 0x43582e
lea ecx, [ebp - 0x1e8]
call fcn.00435e0d
mov ecx, dword [ebp - 0x248]
test ecx, ecx
je 0x435840
mov al, byte [ebp - 0x24d]
mov byte [ecx], al
cmp dword [ebp - 0xd8], 0x10
lea eax, [ebp - 0xec]
cmovae eax, dword [ebp - 0xec]
push eax
call dword [sym.imp.kernel32.dll_DeleteFileA]
cmp dword [ebp - 0x30], 0x10
lea eax, [ebp - 0x44]
cmovae eax, dword [ebp - 0x44]
push eax
call dword [sym.imp.kernel32.dll_RemoveDirectoryA]
lea ecx, [ebp - 0x1e8]
call fcn.00434f55
lea ecx, [ebp - 0xec]
call fcn.004063d7
mov eax, dword [ebp - 0x30]
mov edi, 0x1000
cmp eax, 0x10
jb 0x435a22
mov ecx, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], ecx
cmp eax, edi
jb 0x4358c9
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.004055a1
mov eax, dword [ebp - 0x248]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x244]
push eax
push ecx
call fcn.00474cc0
pop ecx
pop ecx
jmp 0x435a22
push edi
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x435909
push str.CreateShortCutItem_____pJavaShortCutItem.CoCreateInstance_call_failed
push str.Executor::ExecProcessAsDesktopUser
push 0x1c3
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
call fcn.00425c61
mov ecx, eax
call fcn.0040714b
call dword [sym.imp.ole32.dll_CoUninitialize]
mov esi, dword [sym.imp.kernel32.dll_GetLastError]
call esi
push edi
mov dword [ebp - 0x24c], eax
call fcn.00425c61
mov ecx, eax
call fcn.00425e91
test al, al
je 0x4359c9
push str._s_failed_with__s
lea ecx, [ebp - 0x2c]
call fcn.004038cc
push ebx
mov byte [ebp - 4], 0x1f
call esi
push eax
lea eax, [ebp - 0x5c]
push eax
call fcn.00425cdc
add esp, 0xc
mov esi, eax
push str.ExecProcessAsDesktopUser_failed_to_create_temporary_shortcut
lea ecx, [ebp - 0x104]
mov byte [ebp - 4], 0x20
call fcn.004038cc
push esi
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.00474cc0
add esp, 0x10
push eax
push str.Executor::ExecProcessAsDesktopUser
push 0x1ca
push str.c:_jenkins_workspace_8_2_build_windows_i586_cygwin_sans_NAS_jdk8u381_237_install_src_windows_common_Executor.cpp
push edi
mov byte [ebp - 4], 0x22
call fcn.00425c61
mov ecx, eax
call fcn.00425e9d
lea ecx, [ebp - 0xd4]
call fcn.004063d7
lea ecx, [ebp - 0x104]
call fcn.004063d7
lea ecx, [ebp - 0x5c]
call fcn.004063d7
lea ecx, [ebp - 0x2c]
call fcn.004063d7
lea ecx, [ebp - 0xec]
call fcn.004063d7
mov eax, dword [ebp - 0x30]
mov edi, 0x1000
cmp eax, 0x10
jb 0x435a1f
mov ecx, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], ecx
cmp eax, edi
jb 0x435a16
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.004055a1
mov eax, dword [ebp - 0x248]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x244]
push eax
push ecx
call fcn.00474cc0
pop ecx
pop ecx
push 0xf
pop esi
mov eax, dword [ebp - 0x60]
mov byte [ebp - 0x44], bl
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x34], ebx
cmp eax, 0x10
jb 0x435a71
mov ecx, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x248], eax
cmp eax, edi
jb 0x435a68
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.004055a1
mov eax, dword [ebp - 0x248]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x244]
push eax
push ecx
call fcn.00474cc0
pop ecx
pop ecx
mov eax, dword [ebp - 0xa8]
mov byte [ebp - 0x74], bl
mov dword [ebp - 0x60], esi
mov dword [ebp - 0x64], ebx
cmp eax, 0x10
jb 0x435ac6
mov ecx, dword [ebp - 0xbc]
inc eax
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x248], eax
cmp eax, edi
jb 0x435abd
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.004055a1
mov eax, dword [ebp - 0x248]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x244]
push eax
push ecx
call fcn.00474cc0
pop ecx
pop ecx
mov eax, dword [ebp - 0x78]
mov byte [ebp - 0xbc], bl
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0xac], ebx
cmp eax, 0x10
jb 0x435b21
mov ecx, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x244], ecx
mov dword [ebp - 0x248], eax
cmp eax, edi
jb 0x435b18
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.004055a1
mov eax, dword [ebp - 0x248]
pop ecx
pop ecx
mov ecx, dword [ebp - 0x244]
push eax
push ecx
call fcn.00474cc0
pop ecx
pop ecx
mov dword [ebp - 0x78], esi
mov esi, dword [ebp - 0x24c]
mov byte [ebp - 0x8c], bl
mov dword [ebp - 0x7c], ebx
lea ecx, [ebp - 0x11c]
call fcn.004063d7
lea ecx, [ebp - 0x240]
call fcn.00474cc0
mov eax, esi
call fcn.00450e99
ret