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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x8e14
call fcn.0040b8d0
push ebx
push esi
push edi
xor ebx, ebx
push 0x400
mov dword [esp + 0x20], ebx
mov dword [esp + 0xc8], ebx
call fcn.0040b2a2
push 0x2000
mov dword [esp + 0x124], eax
call fcn.0040b2a2
push 0x4000
mov dword [esp + 0x64], eax
call fcn.0040b2a2
push 0x2000
mov dword [esp + 0x100], eax
call fcn.0040b2a2
push 0x2001
mov dword [esp + 0x10c], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x80], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xa8], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x38], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x134], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x100], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x58], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xa0], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xc8], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x78], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x6c], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xf4], eax
call fcn.0040b2a2
add esp, 0x40
push 0x400
mov dword [esp + 0x64], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x58], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x60], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x34], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x138], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xb4], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xa4], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x98], eax
call fcn.0040b2a2
mov dword [esp + 0xf0], eax
push 0x400
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x108], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x114], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xc0], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xec], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x160], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x78], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xe4], eax
call fcn.0040b2a2
add esp, 0x40
push 0x2000
mov dword [esp + 0x104], eax
call fcn.0040b2a2
push 0x2000
mov dword [esp + 0xa0], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xbc], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x94], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x28], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x7c], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0xbc], eax
call fcn.0040b2a2
push 0x400
mov dword [esp + 0x9c], eax
call fcn.0040b2a2
push 0x2000
mov dword [esp + 0xa4], eax
mov dword [esp + 0x144], ebx
mov dword [esp + 0x100], ebx
mov dword [esp + 0x120], ebx
mov dword [esp + 0xf0], ebx
mov dword [esp + 0x128], ebx
mov dword [esp + 0xec], ebx
mov dword [esp + 0xe0], ebx
mov dword [esp + 0x118], ebx
mov dword [esp + 0x13c], ebx
mov dword [esp + 0x80], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0xf8], ebx
mov dword [esp + 0x138], ebx
mov dword [esp + 0xe4], ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0xcc], ebx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x110], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x68], ebx
call fcn.0040b2a2
mov esi, dword [ebp + 8]
mov dword [esp + 0x12c], eax
lea eax, [esi*4]
push eax
call fcn.0040b2a2
mov dword [esp + 0x74], eax
mov dword [esp + 0x134], ebx
mov dword [esp + 0x10c], ebx
mov dword [esp + 0xd4], ebx
push 3
mov dword [0x42292c], ebx
call fcn.0040b2a2
mov cl, byte [0x4193b8]
lea edx, [esp + 0x3c]
push edx
mov dword [esp + 0x68], eax
mov byte [eax], cl
call fcn.0040cfd6
lea eax, [esp + 0x40]
push eax
call fcn.0040ce56
push eax
push str._Y__m__d__I__M__S_p
push 0x400
push 0x422cc0
call fcn.0040ce3b
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
add esp, 0x44
push edx
call fcn.004015f0
add esp, 4
test eax, eax
je 0x40908e
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
cmp esi, 1
mov ecx, 0x100
lea edi, [esp + 0x620]
rep stosd dword es:[edi], eax
mov ecx, 0x100
lea edi, [esp + 0x220]
rep stosd dword es:[edi], eax
mov ecx, 0x100
lea edi, [esp + 0x3a20]
rep stosd dword es:[edi], eax
mov ecx, 0x100
lea edi, [esp + 0x1e20]
rep stosd dword es:[edi], eax
mov edi, dword [esp + 0x24]
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov ecx, 0x1000
lea edi, [esp + 0x4e20]
rep stosd dword es:[edi], eax
jl 0x4091d3
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
push ebx
push eax
push ecx
call fcn.00405f00
lea edx, [esp + 0x1e2c]
push edx
mov esi, eax
push esi
push str._paramFile
call fcn.00406a30
push str._rscratchPath
push esi
call fcn.0040be40
add esp, 0x20
test eax, eax
je 0x409143
lea eax, [esp + 0x220]
push eax
push esi
push str._rscratchPath
call fcn.00406a30
mov edi, 1
add esp, 0xc
mov dword [esp + 0xa8], edi
jmp 0x409148
mov edi, 1
push str._rstartupLoc
push esi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409174
lea ecx, [esp + 0x3a20]
push ecx
push esi
push str._rstartupLoc
call fcn.00406a30
add esp, 0xc
mov dword [esp + 0x48], edi
push str._rtimestamp
push esi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409199
push 0x422cc0
push esi
push str._rtimestamp
call fcn.00406a30
add esp, 0xc
push str._jreLoc
push esi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4091c7
lea edx, [esp + 0x620]
push edx
push esi
push str._jreLoc
call fcn.00406a30
add esp, 0xc
mov dword [0x422938], edi
push esi
call fcn.0040b2b4
mov esi, dword [ebp + 8]
add esp, 4
mov eax, dword [str.Universal_Installer]
mov ecx, dword [0x41aaec]
mov edx, dword [0x41aaf0]
mov dword [esp + 0x154], ecx
mov ecx, dword [0x41aaf8]
mov dword [esp + 0x150], eax
mov eax, dword [0x41aaf4]
mov dword [esp + 0x160], ecx
mov dword [esp + 0x15c], eax
xor eax, eax
cmp esi, ebx
mov ecx, 0x400
lea edi, [esp + 0xe20]
mov dword [esp + 0x158], edx
rep stosd dword es:[edi], eax
mov dword [esp + 0xc], ebx
jle 0x409707
mov dword [esp + 0x10], 1
jmp 0x409240
cmp dword [esp + 0x10], 1
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0xc]
mov dword [edx + esi*4], ebx
jle 0x409263
mov eax, dword [esp + 0x34]
cmp eax, ebx
je 0x409263
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + esi*4]
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409270
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x10]
mov ecx, dword [edi + esi*4]
push eax
push ecx
mov dword [esp + 0x40], eax
call fcn.00408650
mov edx, dword [edi + esi*4]
push 0x41aae4
push edx
call fcn.0040be40
mov esi, eax
add esp, 0x14
cmp esi, ebx
je 0x4092fa
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4092b0
sub eax, edx
dec eax
push eax
call fcn.0040b2a2
lea ecx, [esi + 2]
mov edi, eax
add esp, 4
mov dword [esp + 0xac], eax
sub edi, ecx
mov dl, byte [ecx]
mov byte [edi + ecx], dl
inc ecx
test dl, dl
jne 0x4092d1
push 0x41aae0
push eax
mov byte [esi], dl
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4092fa
mov dword [esp + 0xcc], 1
mov edi, dword [esp + 0x34]
push str._PRECLONESETUP
push edi
call fcn.0040be40
add esp, 8
test eax, eax
mov esi, 1
je 0x409325
mov eax, esi
mov dword [esp + 0x104], eax
mov dword [esp + 0xdc], eax
push str._UPDATENODELIST
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40934e
mov dword [esp + 0xc8], esi
mov dword [0x422924], esi
mov dword [str.installActions], 0x41aab0
push str._ATTACHHOME
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409377
mov dword [esp + 0xf4], esi
mov dword [0x422924], esi
mov dword [str.installActions], 0x41aa98
push str._RELINK
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409396
mov dword [esp + 0x118], esi
mov dword [0x422924], esi
push str._CLEANUP
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4093b6
mov dword [esp + 0x5c], esi
mov dword [str.installActions], 0x41aa78
push str._SAVEINVENTORY
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4093d6
mov dword [esp + 0x6c], esi
mov dword [str.installActions], 0x41aa58
push str._REMOVEHOME
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4093f9
mov dword [esp + 0xd4], esi
mov dword [str.installActions], 0x41aa40
push str._BOOTSTRAPONLY
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409415
mov dword [esp + 0x20], esi
mov dword [0x422924], esi
push str.BOOTSTRAP_LOC
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409442
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [eax + ecx*4]
mov eax, dword [esp + 0x110]
push edx
push eax
call fcn.00406d10
add esp, 8
push str._PRINTTIME
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40945a
mov dword [0x42293c], esi
push str._DETACHHOME
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409483
mov dword [esp + 0x114], esi
mov dword [0x422924], esi
mov dword [str.installActions], 0x41a9fc
push str._ADDNODE
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40949c
mov dword [esp + 0xc0], esi
push str._PREREQCHECKER
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409500
mov ecx, dword [str.Prerequisite_Checker]
mov edx, dword [0x41a9cc]
mov eax, dword [0x41a9d0]
mov dword [esp + 0x150], ecx
mov ecx, dword [0x41a9d4]
mov dword [esp + 0x154], edx
mov edx, dword [0x41a9d8]
mov dword [esp + 0x158], eax
mov al, byte [0x41a9dc]
mov dword [0x42292c], esi
mov dword [esp + 0x15c], ecx
mov dword [esp + 0x160], edx
mov byte [esp + 0x164], al
push str._SILENT
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409518
mov dword [0x422924], esi
push str._WAITFORCOMPLETION
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409531
mov dword [esp + 0xec], esi
push str._HELP
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409557
mov dword [esp + 0xc4], esi
mov dword [0x422924], esi
mov dword [esp + 0xfc], esi
push str._PREREQLOGLOC
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4095d4
mov ecx, dword [esp + 0x10]
cmp ecx, dword [ebp + 8]
jge 0x4095d4
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409577
sub eax, edx
cmp eax, 0xd
jne 0x4095d4
mov edx, dword [ebp + 0xc]
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x124]
mov ecx, dword [edx + eax*4 + 4]
mov edx, esi
lea esp, [esp]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4095a0
mov edx, 0x4238e0
mov eax, esi
sub edx, esi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x4095b3
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
inc ecx
inc eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov esi, 1
push str._DEBUG
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4095ec
mov dword [0x422928], esi
push str._MEMORY
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409604
mov dword [0x422930], esi
push str._IGNORESYSPREREQS
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40961d
mov dword [esp + 0xe4], esi
push str._EXECUTESYSPREREQS
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x409636
mov dword [esp + 0x10c], esi
push str._NOCONSOLE
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40964c
mov dword [esp + 0x44], esi
push str.PREREQ_CONFIG_LOCATION
push edi
call fcn.0040be40
mov esi, dword [esp + 0x2c]
add esp, 8
test eax, eax
je 0x40967d
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0xc]
mov dword [0x422920], ebx
mov eax, dword [ecx + edx*4]
push ebx
push eax
push esi
call fcn.004086b0
add esp, 0xc
push str._ONECLICK
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x40969a
mov dword [esp + 0xbc], 1
push str.FROM_LOCATION
push edi
call fcn.0040be40
add esp, 8
test eax, eax
je 0x4096e4
cmp esi, ebx
je 0x4096c4
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4096b5
sub eax, edx
mov dword [esp + 0x28], eax
jne 0x4096e4
mov ecx, dword [ebp + 0xc]
mov edx, dword [esp + 0xc]
mov dword [0x422920], 1
mov eax, dword [ecx + edx*4]
push 1
push eax
push esi
call fcn.004086b0
add esp, 0xc
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ecx, dword [ebp + 8]
inc eax
inc edx
cmp eax, ecx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
jl 0x409240
cmp dword [esp + 0x44], ebx
jne 0x409711
call fcn.00406f60
call fcn.00401a10
mov edx, dword [ebp + 0xc]
mov edi, dword [esp + 0x2c]
mov eax, dword [edx]
mov cl, byte [0x4193b8]
push edi
push eax
mov byte [esp + 0x2628], cl
call fcn.00406c50
mov ecx, dword [esp + 0xb0]
push ecx
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x8c]
lea edx, [esp + 0x462c]
push edx
mov edx, dword [esp + 0x8c]
push esi
lea eax, [esp + 0x4e34]
push eax
push ecx
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0x80]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x154]
push edx
mov edx, dword [esp + 0x40]
lea eax, [esp + 0x164]
push eax
mov eax, dword [esp + 0x6c]
push ecx
mov ecx, dword [esp + 0xb8]
push edx
push eax
push ecx
lea edx, [esp + 0x3e60]
push edx
lea eax, [esp + 0x4264]
push eax
lea ecx, [esp + 0xa68]
push ecx
mov ecx, dword [esp + 0x100]
lea edx, [esp + 0x1fc]
push edx
mov edx, dword [esp + 0x80]
lea eax, [esp + 0x1e0]
push eax
mov eax, dword [esp + 0x94]
push ecx
mov ecx, dword [esp + 0xec]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x13c]
lea edx, [esp + 0x2684]
push edx
lea eax, [esp + 0x688]
push eax
push edi
mov edi, dword [esp + 0x88]
push ecx
lea edx, [esp + 0x1e94]
push edi
push edx
call fcn.00407980
add esp, 0x7c
cmp esi, ebx
mov dword [esp + 0xc], eax
je 0x40982a
mov eax, dword [esp + 0x110]
mov edx, edi
sub edx, eax
mov edi, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x409820
cmp dword [esp + 0xa8], ebx
je 0x40984a
lea eax, [esp + 0x220]
mov edx, edi
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x409840
cmp dword [esp + 0x104], ebx
je 0x409862
mov ecx, 0xa
mov esi, str.oracle.sysman.oii.oiic.OiicPreCloneSetup
jmp 0x4099ad
cmp dword [0x42292c], ebx
je 0x40987f
mov edi, dword [esp + 0x14]
mov ecx, 0xb
mov esi, str.oracle.sysman.oip.oipc.oipcc.OipccPrereqApp
rep movsd dword es:[edi], dword [esi]
jmp 0x4099b4
cmp dword [esp + 0xc8], ebx
je 0x4098a7
mov edi, dword [esp + 0x14]
mov ecx, 0xa
mov esi, str.oracle.sysman.oii.oiic.OiicUpdateNodeList
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [esp + 0xa20], 0x46
jmp 0x4099be
cmp dword [esp + 0xf4], ebx
je 0x4098c7
mov edi, dword [esp + 0x14]
mov ecx, 9
mov esi, str.oracle.sysman.oii.oiic.OiicAttachHome
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x4099b4
cmp dword [esp + 0x118], ebx
je 0x4098e5
mov edi, dword [esp + 0x14]
mov ecx, 9
mov esi, str.oracle.sysman.oii.oiis.OiisMakeDeps
rep movsd dword es:[edi], dword [esi]
jmp 0x4099b4
cmp dword [esp + 0xd4], ebx
je 0x40990d
mov edi, dword [esp + 0x14]
mov ecx, 9
mov esi, str.oracle.sysman.oii.oiic.OiicRemoveHome
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [esp + 0xa20], 0x46
jmp 0x4099be
cmp dword [esp + 0x114], ebx
je 0x409935
mov edi, dword [esp + 0x14]
mov ecx, 9
mov esi, str.oracle.sysman.oii.oiic.OiicDetachHome
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [esp + 0xa20], 0x46
jmp 0x4099be
cmp dword [esp + 0xc0], ebx
je 0x409948
mov byte [esp + 0xa20], 0x54
jmp 0x4099be
cmp dword [esp + 0x5c], ebx
je 0x409962
mov edi, dword [esp + 0x14]
mov ecx, 8
mov esi, str.oracle.sysman.oii.oiic.OiicCleanup
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x4099b3
cmp dword [esp + 0x6c], ebx
je 0x409974
mov ecx, 0xa
mov esi, str.oracle.sysman.oii.oiic.OiicSaveInventory
jmp 0x4099ad
cmp dword [esp + 0xbc], ebx
je 0x4099b4
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x14]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x409990
cmp dword [esp + 0xc4], ebx
je 0x4099b4
mov ecx, 9
mov esi, str.oracle.sysman.oii.oiic.OiicInstaller
mov edi, dword [esp + 0x14]
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
cmp dword [esp + 0xdc], 1
jne 0x409a36
cmp dword [0x422934], 1
jne 0x409a36
mov edx, dword [esp + 0x34]
push edx
push str.S_ERRORINVOKINGFROMCD
call fcn.00401970
add esp, 4
push eax
lea eax, [esp + 0x2a28]
push eax
call fcn.0040b90d
mov eax, dword [0x422924]
add esp, 0xc
cmp eax, ebx
je 0x409a0d
lea ecx, [esp + 0x2a20]
push ecx
call fcn.004019b0
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x10
push str.S_OUI
call fcn.00401970
add esp, 4
push eax
lea edx, [esp + 0x2a28]
push edx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x42292c], 1
jne 0x409ad7
mov esi, dword [esp + 0x24]
cmp esi, ebx
je 0x409a91
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x409a50
sub eax, edx
mov dword [esp + 0x28], eax
jne 0x409a7c
push str.S_ERR_PREREQ_CONFIG_LOC
call fcn.00401970
push eax
call fcn.004019b0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
push esi
call fcn.00418cb6
add esp, 8
neg eax
sbb eax, eax
inc eax
mov dword [esp + 0x28], eax
jne 0x409ac7
push esi
push str.S_ERR_INVALID_PREREQ_CONFIG_LOC
call fcn.00401970
add esp, 4
push eax
lea eax, [esp + 0x2a28]
push eax
call fcn.0040b90d
lea ecx, [esp + 0x2a2c]
push ecx
call fcn.0040b73b
add esp, 0x10
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [0x422934], ebx
jne 0x409ad7
mov byte [esp + 0xa20], 0x46
cmp dword [esp + 0xfc], ebx
jne 0x409bfd
cmp dword [esp + 0x20], ebx
jne 0x409b1d
lea edx, [esp + 0x150]
push edx
push str.S_STARTINSTALLERMSG
call fcn.00401970
add esp, 4
push eax
lea eax, [esp + 0x1d8]
push eax
call fcn.0040b90d
lea ecx, [esp + 0x1dc]
push ecx
call fcn.004019b0
add esp, 0x10
xor eax, eax
nop
mov cl, byte [esp + eax + 0x1e20]
mov byte [esp + eax + 0x3e20], cl
inc eax
test cl, cl
jne 0x409b20
lea edx, [esp + 0x3e20]
push edx
push 0x400
lea eax, [esp + 0x228]
push eax
push str.FALSE
push str.PLATFORM_PREREQS
push str.Oracle
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov al, byte [esp + 0x220]
test al, al
jne 0x409b82
xor eax, eax
lea ebx, [ebx]
mov cl, byte [eax + str.FALSE]
mov byte [esp + eax + 0x220], cl
inc eax
test cl, cl
jne 0x409b70
xor eax, eax
jmp 0x409b90
mov cl, byte [esp + eax + 0x220]
mov byte [esp + eax + 0x144], cl
inc eax
test cl, cl
jne 0x409b90
cmp byte [esp + 0x144], 0x54
mov eax, 1
je 0x409bb9
mov eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xe4]
push eax
mov eax, dword [esp + 0x110]
push ecx
mov ecx, dword [0x42104c]
push edx
mov edx, dword [0x422924]
push eax
mov eax, dword [str.installActions]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push 0x422cc0
push ecx
lea edx, [esp + 0x1e44]
push edx
call fcn.00405560
add esp, 0x28
mov esi, dword [esp + 0xc]
cmp esi, ebx
je 0x409c18
cmp esi, 0xfffffffe
jne 0x409c0f
call fcn.00407090
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x8c]
push esi
call fcn.00406120
mov eax, dword [esp + 0xa0]
push eax
push esi
call fcn.00406680
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x4c]
push ecx
push edx
push esi
call fcn.004067b0
lea eax, [esp + 0x4238]
push eax
call fcn.0040bdd9
mov ebx, eax
mov al, byte [esp + 0xa3c]
mov esi, ebx
add esp, 0x1c
shl esi, 0xa
cmp al, 0x54
jne 0x409ebe
test ebx, ebx
mov dword [esp + 0xc], 0xffffffff
jl 0x409e60
cmp ebx, 0x7ff
jg 0x409e60
mov eax, dword [esp + 0x20]
test eax, eax
push str.S_WAITMSG
jne 0x409cdc
call fcn.00401970
mov ecx, dword [esp + 0x1c]
add esp, 4
push eax
push ecx
push str.S_BOOTSTRAPMSG
call fcn.00401970
add esp, 4
push eax
lea edx, [esp + 0x22c]
push str._s__s.__s
push edx
call fcn.0040b90d
lea eax, [esp + 0x234]
push eax
call fcn.004019b0
push 0x421070
call fcn.0040b813
add esp, 0x1c
jmp 0x409d1f
call fcn.00401970
add esp, 4
push eax
push str.S_BOOTSTRAPONLYMSG
call fcn.00401970
add esp, 4
push eax
lea ecx, [esp + 0x228]
push str._s___s
push ecx
call fcn.0040b90d
lea edx, [esp + 0x230]
push edx
call fcn.004019b0
push 0x421070
call fcn.0040b813
add esp, 0x18
mov eax, dword [0x422938]
xor ecx, ecx
test eax, eax
mov dword [esp + 0x74], ecx
jne 0x409da2
lea eax, [esp + 0x620]
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409d38
sub eax, edi
mov dword [esp + 0x28], eax
jne 0x409dab
lea eax, [esp + 0x2620]
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x409d51
sub eax, edi
mov dword [esp + 0x28], eax
jne 0x409dab
cmp dword [esp + 0x44], 1
jne 0x409d84
push str.S_JRELOC_ERROR_NOCONSOLE_WIN
call fcn.00401970
push eax
call fcn.00405ed0
add esp, 8
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x409dab
call fcn.00401af0
lea edx, [esp + 0x620]
mov cl, byte [eax]
inc eax
mov byte [edx], cl
inc edx
test cl, cl
jne 0x409d98
mov ecx, 1
mov dword [esp + 0x74], ecx
mov eax, dword [esp + 0x20]
push eax
lea edx, [esp + 0x4624]
push edx
mov edx, dword [str.installActions]
lea eax, [esp + 0x4e28]
push eax
push edx
mov eax, dword [0x42104c]
push 0x422cc0
push eax
mov eax, dword [esp + 0x94]
xor edx, edx
test ecx, ecx
mov ecx, dword [esp + 0xb8]
sete dl
push edx
mov edx, dword [esp + 0x80]
push eax
mov eax, dword [0x422934]
push ecx
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0xc8]
push esi
push ecx
push edx
push eax
lea ecx, [esp + 0x1ec]
push ecx
lea edx, [esp + 0x1d0]
push edx
mov edx, dword [esp + 0xf8]
lea eax, [esp + 0x2664]
push eax
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x668]
push ecx
mov ecx, dword [esp + 0x8c]
push edx
mov edx, dword [esp + 0x68]
push eax
push ecx
push edx
call fcn.00402840
add esp, 0x5c
cmp eax, 0x1e
mov dword [esp + 0xc], eax
jne 0x409ebe
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x7ff
push str.S_ERBOOTSTRAP_RANGE
call fcn.00401970
add esp, 4
push eax
lea eax, [esp + 0x2a28]
push eax
call fcn.0040b90d
mov eax, dword [0x422924]
add esp, 0xc
test eax, eax
je 0x409e9e
lea ecx, [esp + 0x2a20]
push ecx
call fcn.004019b0
add esp, 4
jmp 0x409ebe
push 0x10
push str.S_OUI
call fcn.00401970
add esp, 4
push eax
lea edx, [esp + 0x2a28]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0x90]
push eax
mov eax, dword [esp + 0xec]
mov edi, dword [esp + 0x74]
push ecx
mov ecx, dword [esp + 0xe8]
push edx
mov edx, dword [esp + 0xdc]
push eax
mov eax, dword [esp + 0x88]
push ecx
mov ecx, dword [esp + 0x9c]
push edx
push eax
push ecx
mov ecx, dword [esp + 0xd4]
lea edx, [esp + 0x1e40]
push edx
mov edx, dword [esp + 0x54]
lea eax, [esp + 0x644]
push eax
mov eax, dword [esp + 0x68]
push edi
push ecx
push edx
push eax
call fcn.00406850
mov al, byte [esp + 0xa58]
add esp, 0x38
cmp al, 0x54
jne 0x409fd4
cmp byte [esp + 0x138], 0x54
mov dword [esp + 0x10], 0
mov eax, 1
je 0x409f68
cmp dword [esp + 0xec], eax
je 0x409f68
cmp dword [esp + 0x5c], eax
je 0x409f68
cmp dword [esp + 0x6c], eax
jne 0x409f6c
mov dword [esp + 0x10], eax
cmp dword [esp + 0xc], 0x1e
jne 0x409fdd
test ebx, ebx
mov dword [esp + 0xc], 0xffffffff
jg 0x409f8e
push 0x419fac
call fcn.0040bdd9
add esp, 4
mov ebx, eax
mov ecx, dword [esp + 0x18]
push ebx
push ecx
push str.S_ERBOOTSTRAP
call fcn.00401970
add esp, 4
push eax
lea edx, [esp + 0x2a2c]
push edx
call fcn.0040b90d
mov eax, dword [0x422924]
add esp, 0x10
test eax, eax
je 0x40a0bb
lea eax, [esp + 0x2a20]
push eax
call fcn.004019b0
add esp, 4
jmp 0x40ad87
mov eax, 1
mov dword [esp + 0x10], eax
cmp dword [0x422928], eax
mov dword [esp + 0xc], 0
jne 0x40a017
push str.S_LDLIBPATH_VAR
call fcn.00401970
push eax
call fcn.004019b0
lea edx, [esp + 0x4a28]
push edx
call fcn.004019b0
push 0x4192e8
call fcn.004019b0
add esp, 0x10
push 0x14
call fcn.0040b2a2
mov ecx, dword [str.javaw.exe]
mov esi, eax
mov dword [eax], ecx
mov edx, dword [0x41a6a4]
mov dword [eax + 4], edx
mov cx, word [0x41a6a8]
mov word [eax + 8], cx
mov eax, dword [0x422928]
add esp, 4
test eax, eax
jne 0x40a072
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x40a072
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x40a072
mov eax, dword [0x422930]
test eax, eax
jne 0x40a072
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x40a08c
mov eax, dword [0x422924]
test eax, eax
je 0x40a08c
mov eax, dword [str.java.exe]
mov edx, esi
mov dword [edx], eax
mov ecx, dword [0x4192c0]
mov dword [edx + 4], ecx
mov al, byte [0x4192c4]
mov byte [edx + 8], al
test edi, edi
je 0x40a0e0
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a095
sub eax, edx
mov dword [esp + 0x28], eax
je 0x40a0e0
push esi
push 0x41924c
push edi
push str._s_s_s
push edi
call fcn.0040b90d
add esp, 0x14
jmp 0x40a0ef
push 0x10
push str.S_OUI
call fcn.00401970
add esp, 4
push eax
lea ecx, [esp + 0x2a28]
push ecx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x40ad87
push esi
push 0x419978
push edi
call fcn.0040b90d
add esp, 0xc
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a0f4
sub eax, edx
add eax, 4
push eax
call fcn.0040b2a2
mov edi, eax
push esi
mov dword [esp + 0xe28], edi
call fcn.0040b2b4
mov eax, dword [esp + 0x78]
add esp, 8
mov word [edi], 0x22
mov ecx, eax
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x40a123
sub eax, ecx
mov esi, ecx
dec edi
nop
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a130
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0xe20]
mov ebx, 1
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a153
mov cx, word [0x41a69c]
mov eax, dword [esp + 0x3c]
mov word [edi], cx
mov dl, byte [0x41a69e]
mov byte [edi + 2], dl
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a175
sub eax, edx
mov dword [esp + 0x28], eax
je 0x40a1c1
mov eax, dword [esp + 0x3c]
lea edx, [eax + 1]
jmp 0x40a190
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a190
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
mov ecx, dword [esp + 0x40]
mov esi, eax
add esp, 4
mov dword [esp + 0xe24], eax
mov ebx, 2
sub esi, ecx
mov al, byte [ecx]
mov byte [ecx + esi], al
inc ecx
test al, al
jne 0x40a1b7
mov eax, dword [esp + 0x90]
mov esi, dword [esp + 0x68]
push eax
push str._Doracle.installer.library_loc__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a1e0
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a200
cmp dword [0x422934], 1
jne 0x40a231
mov edx, dword [esp + 0x54]
lea eax, [esp + 0x620]
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x40a222
jmp 0x40a2a6
mov ecx, dword [esp + 0x54]
mov ax, word [0x4192f0]
mov edx, ecx
mov word [edx], ax
mov al, byte [0x4192f2]
mov edi, ecx
mov byte [edx + 2], al
dec edi
jmp 0x40a250
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a250
mov dx, word [0x41924c]
mov word [edi], dx
mov edi, ecx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a265
mov ax, word [0x4192f0]
mov word [edi], ax
mov dl, byte [0x4192f2]
mov byte [edi + 2], dl
mov edi, ecx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a282
mov ax, word [0x41924c]
mov word [edi], ax
mov edi, ecx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a296
mov ecx, dword [0x41931c]
mov dword [edi], ecx
cmp byte [esp + 0xa20], 0x54
jne 0x40a30e
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x18]
mov edi, edx
sub edi, eax
lea esp, [esp]
mov cl, byte [eax]
mov byte [edi + eax], cl
inc eax
test cl, cl
jne 0x40a2c0
mov edi, edx
dec edi
lea ecx, [ecx]
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a2d0
mov ax, word [0x41924c]
mov word [edi], ax
mov edi, edx
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a2e4
mov ecx, dword [0x4192f8]
mov eax, dword [esp + 0x50]
mov dword [edi], ecx
mov ecx, dword [str.TRUE]
mov dword [eax], ecx
mov cl, byte [0x419ad8]
mov byte [eax + 4], cl
jmp 0x40a397
mov edi, dword [esp + 0x8c]
push edi
call fcn.00406120
mov esi, dword [esp + 0x64]
mov edx, esi
add esp, 4
mov eax, edi
sub edx, edi
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x40a328
mov edi, esi
dec edi
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x40a335
mov dx, word [0x41924c]
mov eax, dword [esp + 0x30]
mov word [edi], dx
mov edi, eax
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a350
sub eax, edi
mov edx, edi
mov edi, esi
dec edi
mov edi, edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x40a360
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x50]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [str.FALSE]
mov esi, dword [esp + 0x68]
mov dword [eax], ecx
mov dx, word [0x41a75c]
mov word [eax + 4], dx
mov edx, dword [esp + 0x60]
push edx
push str._Doracle.installer.oui_loc__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
jmp 0x40a3b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a3b0
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a3d0
mov eax, dword [esp + 0x50]
push eax
push str._Doracle.installer.bootstrap_s
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a3f2
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a411
mov eax, dword [esp + 0x48]
test eax, eax
je 0x40a43c
mov edx, dword [esp + 0x2c]
lea eax, [esp + 0x3a20]
mov ecx, eax
sub edx, ecx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x40a432
mov edx, dword [esp + 0x2c]
push edx
push str._Doracle.installer.startup_location__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a454
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a473
mov eax, dword [esp + 0x54]
push eax
push str._Doracle.installer.jre_loc__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a495
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a4b4
mov eax, dword [esp + 0x74]
test eax, eax
je 0x40a50a
push str.true
push str._Doracle.installer.extjre__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a4e0
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, eax
inc ebx
lea ecx, [ecx]
mov al, byte [esi]
inc esi
mov byte [ecx], al
inc ecx
test al, al
jne 0x40a500
mov edi, 0x419ec0
lea esi, [esp + 0x12c]
mov ecx, 2
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x40a56b
mov esi, dword [esp + 0x108]
lea eax, [esp + 0x12c]
push eax
push str._Doracle.installer.copythreads_s
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a543
sub eax, edx
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a561
mov ecx, dword [0x4230c0]
mov esi, dword [esp + 0x68]
push ecx
push str._Doracle.installer.exec_location__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a590
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a5b0
mov edx, dword [esp + 0xa4]
push edx
push str._Doracle.installer.nlsEnabled__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a5d5
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a5f4
mov eax, dword [esp + 0x24]
push eax
push str._Doracle.installer.prereqConfigLoc__s_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a616
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a635
mov edi, dword [esp + 0x38]
push edi
push 0x419978
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a657
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, eax
inc ebx
mov al, byte [esi]
inc esi
mov byte [ecx], al
inc ecx
test al, al
jne 0x40a674
push edi
call fcn.0040b2b4
mov eax, dword [0x422940]
add esp, 4
test eax, eax
jle 0x40a6fa
mov ecx, dword [ebp + 8]
test ecx, ecx
jle 0x40a6fa
mov edi, dword [ebp + 0xc]
mov eax, dword [esp + 0x4c]
sub eax, edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], ecx
lea esp, [esp]
mov ecx, dword [esp + 0x38]
cmp dword [edi + ecx], 1
jne 0x40a6ec
mov eax, dword [edi]
lea edx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a6c0
sub eax, edx
dec eax
push eax
call fcn.0040b2a2
mov ecx, dword [edi]
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
add ecx, 2
mov esi, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [esi], al
inc esi
test al, al
jne 0x40a6e2
mov eax, dword [esp + 0x48]
add edi, 4
dec eax
mov dword [esp + 0x48], eax
jne 0x40a6b0
mov esi, dword [esp + 0xac]
test esi, esi
je 0x40a73a
mov eax, esi
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a710
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a730
mov eax, dword [esp + 0xcc]
test eax, eax
jne 0x40a7c6
mov edx, dword [esp + 0x94]
test edx, edx
je 0x40a7c6
mov eax, edx
lea esi, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a760
sub eax, esi
mov dword [esp + 0x28], eax
je 0x40a7c6
push 0x4197f4
push edx
call fcn.0040b9a6
mov esi, eax
add esp, 8
test esi, esi
je 0x40a7c6
mov eax, esi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a788
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a7a7
push 0x4197f4
push 0
call fcn.0040b9a6
mov esi, eax
add esp, 8
test esi, esi
jne 0x40a783
mov eax, dword [0x422930]
test eax, eax
je 0x40a7fb
push 0xc
call fcn.0040b2a2
mov edx, dword [str._verbose:gc]
mov dword [eax], edx
mov ecx, dword [0x41a520]
mov dword [eax + 4], ecx
mov edx, dword [0x41a524]
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
inc ebx
mov dword [eax + 8], edx
mov esi, dword [esp + 0xf0]
push 0x41a518
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a815
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a834
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x84]
mov edi, dword [esp + 0x18]
push eax
push ecx
push edi
call fcn.00406380
mov edx, dword [esp + 0xbc]
mov eax, dword [esp + 0x70]
push edx
push eax
push edi
call fcn.00406490
mov edi, dword [esp + 0x118]
lea eax, [esp + 0x638]
mov edx, edi
mov ecx, eax
add esp, 0x18
sub edx, ecx
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x40a882
push 0x4193bc
push edi
call fcn.00406090
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0xd8]
push eax
push ecx
push ecx
push ecx
push ecx
push eax
push eax
mov edx, dword [esp + 0xd4]
push eax
push eax
push eax
mov edi, dword [esp + 0x128]
push eax
push eax
push eax
push eax
push eax
push eax
push eax
mov eax, dword [esp + 0x64]
push edx
push eax
push str._s__s__sOraInstaller.jar__soneclick.jar__sxmlparserv2.jar__s_share.jar__sOraInstallerNet.jar__semCfg.jar__semocmutl.jar__sOraPrereq.jar__sjsch.jar__s_ssh.jar__s_remoteinterfaces.jar__shttp_client.jar__sopatch.jar__sopatchactions.jar__sopatchprereq.jar__sopatchutil.jar__sOraCheckPoint.jar
push edi
call fcn.0040b90d
mov eax, dword [esp + 0xe4]
add esp, 0x5c
push eax
push eax
push eax
push eax
mov ecx, dword [esp + 0xa8]
push eax
push eax
push eax
push eax
push ecx
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push eax
push edi
push str.__s__sInstImages.jar__sInstHelp.jar__sInstHelp_de.jar__sInstHelp_es.jar__sInstHelp_fr.jar__sInstHelp_it.jar__sInstHelp_ja.jar__sInstHelp_ko.jar__sInstHelp_pt_BR.jar__sInstHelp_zh_CN.jar__sInstHelp_zh_TW.jar__soracle_ice.jar__shelp4.jar__shelp4_nls.jar__sewt3.jar__sewt3_swingaccess.jar__sewt3_nls.jar__s_swingaccess.jar__s__sjewt4.jar__sjewt4_nls.jar__sorai18n_collation.jar__sorai18n_mapping.jar__sojmisc.jar__sxml.jar__s_srvm.jar__s_srvmasm.jar_
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0x78
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a915
sub eax, edi
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, eax
inc ebx
mov al, byte [esi]
inc esi
mov byte [ecx], al
inc ecx
test al, al
jne 0x40a932
mov edi, dword [esp + 0xbc]
test edi, edi
je 0x40a95c
mov eax, dword [esp + 0xc4]
test eax, eax
jne 0x40a95c
mov edx, dword [esp + 0x80]
push edx
jmp 0x40a961
mov eax, dword [esp + 0x14]
push eax
mov esi, dword [esp + 0x5c]
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a973
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a992
test edi, edi
je 0x40aa4a
mov eax, dword [0x422924]
test eax, eax
jne 0x40aa4a
lea eax, [ebx - 2]
xor edi, edi
test eax, eax
mov dword [esp + 0x38], eax
jl 0x40aa07
mov edi, edi
mov eax, dword [esp + edi*4 + 0xe20]
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40a9d0
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
mov dword [esp + ebx*4 + 0xe24], eax
mov ecx, dword [esp + edi*4 + 0xe24]
add esp, 4
mov edx, eax
inc ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40a9f4
mov eax, dword [esp + 0x38]
inc edi
cmp edi, eax
jle 0x40a9c0
push str.oracle.sysman.oii.oiic.OiicInstaller
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40aa20
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40aa40
push str._scratchPath
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40aa60
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc ebx
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40aa80
mov ecx, dword [esp + 0x18]
push ecx
push 0x419da4
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40aaa2
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + ebx*4 + 0xe20], eax
inc ebx
mov ecx, esi
mov edx, eax
mov dword [esp + 0x1c], ebx
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40aac5
mov edx, dword [esp + 0x2c]
push edx
mov edx, dword [esp + 0xbc]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0xe28]
push ecx
push edx
call fcn.00406b30
push str._sourceType
push esi
call fcn.0040b90d
mov eax, esi
add esp, 0x18
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ab01
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
mov edi, dword [esp + 0x20]
add esp, 4
mov dword [esp + edi*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40ab24
push str.network
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ab41
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + edi*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40ab60
push str._timestamp
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ab80
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + edi*4 + 0xe20], eax
mov ecx, esi
mov edx, eax
inc edi
nop
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40aba0
push 0x422cc0
push esi
call fcn.0040b90d
mov eax, esi
add esp, 8
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40abc0
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + edi*4 + 0xe20], eax
inc edi
mov ecx, eax
mov dword [esp + 0x1c], edi
mov al, byte [esi]
inc esi
mov byte [ecx], al
inc ecx
test al, al
jne 0x40abe1
mov eax, dword [esp + 0xc0]
test eax, eax
je 0x40ac4d
push 1
call fcn.0040b2a2
mov esi, eax
push str._silent
push esi
mov dword [esp + 0x64], esi
call fcn.0040b90d
mov eax, esi
add esp, 0xc
mov dword [0x422924], 1
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40ac20
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
add esp, 4
mov dword [esp + edi*4 + 0xe20], eax
inc edi
mov ecx, esi
mov edx, eax
mov dword [esp + 0x1c], edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x40ac43
mov eax, dword [ebp + 8]
mov ebx, 1
cmp eax, ebx
jle 0x40acf2
lea ecx, [ecx]
mov eax, dword [esp + 0x4c]
cmp dword [eax + ebx*4], 0
jne 0x40ace6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + ebx*4]
mov edi, str._rstartupLoc
mov esi, eax
mov ecx, 0xd
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x40ace5
mov edi, str._rscratchPath
mov esi, eax
mov ecx, 0xe
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x40ace5
mov edi, str._rtimestamp
mov esi, eax
mov ecx, 0xc
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x40ace5
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40acb1
sub eax, edx
inc eax
push eax
call fcn.0040b2a2
mov ecx, dword [esp + 0x20]
mov edx, dword [ebp + 0xc]
mov dword [esp + ecx*4 + 0xe24], eax
mov ecx, dword [edx + ebx*4]
add esp, 4
mov dl, byte [ecx]
inc ecx
mov byte [eax], dl
inc eax
test dl, dl
jne 0x40acd5
inc dword [esp + 0x1c]
jmp 0x40ace6
inc ebx
mov eax, dword [ebp + 8]
inc ebx
cmp ebx, eax
jl 0x40ac60
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x40ad87
mov esi, dword [esp + 0x70]
test esi, esi
je 0x40ad20
push 0
push esi
call fcn.00418cb6
add esp, 8
neg eax
sbb eax, eax
inc eax
mov dword [esp + 0x28], eax
jne 0x40ad87
push str.1.3.1
push esi
push str.S_ERJRENFD
call fcn.00401970
add esp, 4
push eax
lea eax, [esp + 0x2a2c]
push eax
call fcn.0040b90d
mov eax, dword [0x422924]
add esp, 0x10
test eax, eax
je 0x40ad5f
lea ecx, [esp + 0x2a20]
push ecx
call fcn.004019b0
add esp, 4
jmp 0x40ad7f
push 0x10
push str.S_OUI
call fcn.00401970
add esp, 4
push eax
lea edx, [esp + 0x2a28]
push edx
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [esp + 0xc], 0xffffffff
call fcn.00406de0
test eax, eax
jne 0x40adde
push str.S_ERR_REG_ACCESS
call fcn.00401970
mov esi, eax
mov eax, dword [0x422924]
add esp, 4
test eax, eax
je 0x40adbb
push esi
call fcn.004019b0
add esp, 4
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x10
push str.S_OUI
call fcn.00401970
add esp, 4
push eax
push esi
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [esp + 0x2220]
push eax
call fcn.00407630
lea ecx, [esp + 0x2224]
push 0
push ecx
call fcn.00418cb6
add esp, 0xc
test eax, eax
je 0x40ae1a
mov edx, dword [str.C:TEMP]
mov eax, dword [0x419e58]
mov dword [esp + 0x2220], edx
mov dword [esp + 0x2224], eax
cmp byte [esp + 0xa20], 0x54
jne 0x40ae34
lea ecx, [esp + 0x2220]
push ecx
call fcn.00418d69
add esp, 4
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x40aeb9
mov edi, dword [esp + 0xc]
test edi, edi
jne 0x40ae66
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
push edx
push eax
lea ecx, [esp + 0xe28]
push ecx
call fcn.00407250
add esp, 0xc
mov edi, eax
jmp 0x40aea4
mov eax, dword [0x422924]
test eax, eax
je 0x40aea4
push str.S_ENTER_ENTER
call fcn.00401970
push eax
call fcn.004019b0
mov eax, dword [0x421054]
add esp, 8
dec eax
mov dword [0x421054], eax
js 0x40ae97
inc dword [0x421050]
jmp 0x40aea4
push 0x421050
call fcn.0040c061
add esp, 4
cmp dword [esp + 0x10], 1
jne 0x40aecf
mov edx, dword [esp + 0x18]
push 0
push edx
call fcn.00402280
jmp 0x40aecc
mov eax, dword [esp + 0x18]
push eax
push str._nBootStrap_To__s_Completed_n
call fcn.0040b73b
mov edi, dword [esp + 0x14]
add esp, 8
mov ebx, dword [esp + 0x1c]
xor esi, esi
test ebx, ebx
jle 0x40aef5
lea esp, [esp]
mov ecx, dword [esp + esi*4 + 0xe20]
push ecx
call fcn.0040b2b4
add esp, 4
inc esi
cmp esi, ebx
jl 0x40aee0
mov edx, dword [esp + 0x18]
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0xdc]
push eax
call fcn.0040b2b4
mov ecx, dword [esp + 0x48]
push ecx
call fcn.0040b2b4
mov edx, dword [esp + 0x94]
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0x88]
push eax
call fcn.0040b2b4
mov ecx, dword [esp + 0xf4]
push ecx
call fcn.0040b2b4
mov edx, dword [esp + 0x100]
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0xac]
push eax
call fcn.0040b2b4
mov ecx, dword [esp + 0xd8]
push ecx
call fcn.0040b2b4
mov edx, dword [esp + 0x14c]
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0x98]
push eax
call fcn.0040b2b4
push 0
call fcn.0040b2b4
mov ecx, dword [esp + 0xc8]
push ecx
call fcn.0040b2b4
mov edx, dword [esp + 0xe4]
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0x9c]
push eax
call fcn.0040b2b4
mov ecx, dword [esp + 0xdc]
push ecx
call fcn.0040b2b4
mov edx, dword [esp + 0xbc]
add esp, 0x40
push edx
call fcn.0040b2b4
mov eax, dword [esp + 0x88]
push eax
call fcn.0040b2b4
mov eax, dword [esp + 0x124]
add esp, 8
test eax, eax
je 0x40afed
push eax
call fcn.0040b2b4
add esp, 4
mov ecx, dword [esp + 0x58]
push ecx
call fcn.0040b2b4
mov eax, dword [esp + 0xf4]
add esp, 4
test eax, eax
je 0x40b00e
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0xf8]
test eax, eax
je 0x40b022
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x68]
test eax, eax
je 0x40b033
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x8c]
test eax, eax
je 0x40b047
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x40b058
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x94]
test eax, eax
je 0x40b06c
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x30]
test eax, eax
je 0x40b07d
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x60]
test eax, eax
je 0x40b08e
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x50]
test eax, eax
je 0x40b09f
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x54]
test eax, eax
je 0x40b0b0
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x24]
test eax, eax
je 0x40b0c1
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x40b0d5
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x40b0e6
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0xa4]
test eax, eax
je 0x40b0fa
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x100]
test eax, eax
je 0x40b10e
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x14]
test eax, eax
je 0x40b11f
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x108]
test eax, eax
je 0x40b133
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x40b144
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0x34]
test eax, eax
je 0x40b155
push eax
call fcn.0040b2b4
add esp, 4
mov eax, dword [esp + 0xac]
test eax, eax
je 0x40b169
push eax
call fcn.0040b2b4
add esp, 4
call fcn.00401940
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret