Function at 0x709a141f
Capabilities:
Get common file path

Disassembly:
push 0x2b8
mov eax, 0x709a64b5
call fcn.709a36c7
mov ebx, dword [ebp + 8]
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0x14]
mov dword [ebp - 0x21c], ebx
and dword [ebp - 4], 0
test ebx, ebx
je 0x709a17ea
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a1457
call fcn.7099e489
jmp 0x709a1459
xor eax, eax
test eax, eax
je 0x709a17ea
push ebx
call fcn.709a08cd
pop ecx
mov ecx, dword [ebp + 0xc]
test eax, eax
je 0x709a147f
test ecx, ecx
je 0x709a1478
call fcn.7099e7cb
push 9
jmp 0x709a17f8
test ecx, ecx
je 0x709a148a
call fcn.7099e489
jmp 0x709a148c
xor eax, eax
push eax
call fcn.709a08cd
pop ecx
test eax, eax
je 0x709a149c
mov ecx, dword [ebp + 0xc]
jmp 0x709a146f
test edi, edi
je 0x709a1553
push edi
call fcn.709a08cd
pop ecx
test eax, eax
jne 0x709a1497
mov ebx, edi
lea eax, [ebp - 0x218]
push eax
mov edi, 0x104
push edi
call dword [sym.imp.kernel32.dll_GetTempPathA]
cmp eax, edi
ja 0x709a17d9
test eax, eax
je 0x709a17d9
lea eax, [ebp - 0x114]
push eax
push 0
push str.JNLP
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.kernel32.dll_GetTempFileNameA]
test eax, eax
je 0x709a17d9
push 1
lea ecx, [ebp - 0x2c4]
call fcn.709a3338
push 0x40
push 0x12
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x2c4]
mov byte [ebp - 4], 1
call fcn.709a24e2
mov eax, dword [ebp - 0x2c4]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0x2b8], 6
je 0x709a155d
lea ecx, [ebp - 0x2c4]
mov byte [ebp - 4], 0
call fcn.709a33d7
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a154c
call fcn.7099e7cb
push 2
jmp 0x709a17f8
mov ebx, 0x709aab07
jmp 0x709a14b1
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a156b
call fcn.7099e489
jmp 0x709a156d
xor eax, eax
push eax
lea eax, [ebp - 0x2c4]
push str.docbase
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a1f35
push eax
call fcn.709a2c13
add esp, 0xc
push dword [ebp - 0x21c]
push str.jnlphref
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a1f35
push eax
call fcn.709a2c13
add esp, 0xc
push ebx
push str.embedded
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a1f35
push eax
call fcn.709a2c13
add esp, 0xc
cmp byte [esi + 0x29], 0
je 0x709a1645
mov eax, dword [esi + 0x10]
mov edi, dword [eax]
xor ebx, ebx
cmp edi, eax
je 0x709a1623
lea eax, [edi + 8]
push eax
push 0x709aad08
push ebx
lea eax, [ebp - 0x2c4]
push str.vmarg.
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a20ec
push eax
call fcn.709a2c13
mov edi, dword [edi]
add esp, 0xc
inc ebx
cmp edi, dword [esi + 0x10]
jne 0x709a15e0
push ebx
lea eax, [ebp - 0x2c4]
push str.vmarg.length
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a2c13
pop ecx
cmp byte [esi + 0x2a], 0
je 0x709a16bb
mov eax, dword [esi + 0x1c]
mov edi, dword [eax]
xor ebx, ebx
cmp edi, eax
je 0x709a1699
lea eax, [edi + 8]
push eax
push 0x709aad24
push ebx
lea eax, [ebp - 0x2c4]
push str.apparg.
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a20ec
push eax
call fcn.709a2c13
mov edi, dword [edi]
add esp, 0xc
inc ebx
cmp edi, dword [esi + 0x1c]
jne 0x709a1656
push ebx
lea eax, [ebp - 0x2c4]
push str.apparg.length
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a2c13
pop ecx
cmp byte [esi + 0x28], 0
je 0x709a1793
mov eax, dword [esi + 4]
mov ecx, dword [eax]
xor ebx, ebx
mov dword [ebp - 0x21c], ecx
cmp ecx, eax
je 0x709a1771
mov edi, dword [ebp - 0x21c]
add edi, 0xc
push edi
push 0x709aad40
push ebx
lea eax, [ebp - 0x2c4]
push str.name.
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a20ec
push eax
call fcn.709a2c13
add esp, 0xc
add edi, 0x1c
push edi
push 0x709aad4c
push ebx
lea eax, [ebp - 0x2c4]
push str.value.
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a1f35
pop ecx
pop ecx
push eax
call fcn.709a20ec
push eax
call fcn.709a2c13
add esp, 0xc
lea ecx, [ebp - 0x21c]
call fcn.7099735c
mov eax, dword [esi + 4]
inc ebx
cmp dword [ebp - 0x21c], eax
jne 0x709a16da
push ebx
lea eax, [ebp - 0x2c4]
push str.param.length
push eax
call fcn.709a1f35
pop ecx
pop ecx
mov ecx, eax
call fcn.709a2319
push eax
call fcn.709a2c13
pop ecx
lea ecx, [ebp - 0x2c4]
call fcn.709a3309
cmp dword [esi + 0x2c], 1
lea eax, [ebp - 0x114]
push eax
jne 0x709a17d2
call fcn.709a0dde
pop ecx
lea ecx, [ebp - 0x2c4]
mov esi, eax
mov byte [ebp - 4], 0
call fcn.709a33d7
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a17ce
call fcn.7099e7cb
mov eax, esi
jmp 0x709a17f9
call fcn.709a10d7
jmp 0x709a17b0
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a17e5
call fcn.7099e7cb
xor eax, eax
inc eax
jmp 0x709a17f9
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x709a17f6
call fcn.7099e7cb
push 0xa
pop eax
call fcn.709a374a
ret