Function at 0x100106ca
Capabilities:
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x20c]
sub esp, 0x20c
push 0xffffffffffffffff
push 0x10013f74
mov eax, dword fs:[0]
push eax
sub esp, 0xb8
mov eax, dword [0x10038540]
xor eax, ebp
mov dword [ebp + 0x208], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x214]
mov ebx, dword [ebp + 0x21c]
mov dword [ebp - 0x10], eax
xor edi, edi
mov dword [ebp - 4], edi
test eax, eax
je 0x10010ade
mov esi, dword [ebp + 0x218]
test esi, esi
je 0x10010ade
cmp dword [esi + 4], edi
jne 0x1001074b
push dword [esi]
call fcn.10012c4f
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x10]
cmp dword [esi + 4], edi
je 0x10010ade
push eax
call fcn.1000fe2d
pop ecx
test eax, eax
je 0x1001075d
push 9
jmp 0x10010ae0
cmp dword [esi + 4], edi
jne 0x10010772
mov eax, dword [ebp + 0x218]
push dword [eax]
call fcn.10012c4f
mov dword [esi + 4], eax
push dword [esi + 4]
call fcn.1000fe2d
pop ecx
test eax, eax
jne 0x10010756
test ebx, ebx
je 0x1001078e
push ebx
call fcn.1000fe2d
pop ecx
test eax, eax
jne 0x10010756
test ebx, ebx
mov eax, 0x1002e9ce
cmovne eax, ebx
mov ebx, 0x104
mov dword [ebp - 0x14], eax
lea eax, [ebp]
push eax
push ebx
call dword [sym.imp.kernel32.dll_GetTempPathA]
cmp eax, ebx
ja 0x100107ce
test eax, eax
je 0x100107ce
lea eax, [ebp + 0x104]
push eax
push edi
push str.JNLP
lea eax, [ebp]
push eax
call dword [sym.imp.kernel32.dll_GetTempFileNameA]
test eax, eax
jne 0x100107d6
xor esi, esi
inc esi
jmp 0x10010ae1
push 1
lea ecx, [ebp - 0xc4]
call fcn.10010f2b
push 0x40
push 0x12
lea eax, [ebp + 0x104]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0xc4]
call fcn.100110b8
mov eax, dword [ebp - 0xc4]
lea ecx, [ebp - 0xc4]
add ecx, dword [eax + 4]
call dword [sym.imp.MSVCP140.dll_public:_bool___thiscall_std::ios_base::operator__void_const]
test al, al
je 0x1001081e
push 2
pop esi
jmp 0x10010acb
cmp dword [esi + 4], edi
jne 0x10010833
mov eax, dword [ebp + 0x218]
push dword [eax]
call fcn.10012c4f
mov dword [esi + 4], eax
mov eax, 0x10010eff
push eax
push dword [ebp - 0x14]
push str.embedded
push eax
push dword [ebp - 0x10]
push str.jnlphref
push eax
push dword [esi + 4]
lea eax, [ebp - 0xc4]
push str.docbase
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov ebx, dword [ebp + 0x220]
cmp byte [ebx + 0x19], 0
je 0x10010937
mov eax, dword [ebx + 8]
mov ecx, edi
mov esi, dword [eax]
cmp esi, eax
je 0x1001090e
push 0x10010eff
lea eax, [esi + 8]
push eax
push 0x100301c0
push edi
lea eax, [ebp - 0xc4]
push str.vmarg.
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b80
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov esi, dword [esi]
inc edi
cmp esi, dword [ebx + 8]
jne 0x100108bc
mov dword [ebp - 0x10], edi
xor edi, edi
mov ecx, dword [ebp - 0x10]
push 0x10010eff
push ecx
lea eax, [ebp - 0xc4]
push str.vmarg.length
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
cmp byte [ebx + 0x1a], 0
je 0x100109ca
mov eax, dword [ebx + 0x10]
mov ecx, edi
mov dword [ebp - 0x10], ecx
mov esi, dword [eax]
cmp esi, eax
je 0x100109a1
push 0x10010eff
lea eax, [esi + 8]
push eax
push 0x100301dc
push edi
lea eax, [ebp - 0xc4]
push str.apparg.
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b80
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
mov esi, dword [esi]
inc edi
cmp esi, dword [ebx + 0x10]
jne 0x1001094f
mov dword [ebp - 0x10], edi
xor edi, edi
mov ecx, dword [ebp - 0x10]
push 0x10010eff
push ecx
lea eax, [ebp - 0xc4]
push str.apparg.length
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
cmp byte [ebx + 0x18], 0
je 0x10010aa4
mov eax, dword [ebx]
mov esi, dword [eax]
mov dword [ebp - 0x10], esi
cmp esi, eax
je 0x10010a7b
push 0x10010eff
lea eax, [esi + 0x10]
push eax
push 0x100301f8
push edi
lea eax, [ebp - 0xc4]
push str.name.
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b80
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
push 0x10010eff
add esi, 0x28
lea eax, [ebp - 0xc4]
push esi
push 0x10030204
push edi
push str.value.
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
push eax
call fcn.10010b9f
pop ecx
pop ecx
push eax
call fcn.10010b80
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x10]
call fcn.100074ed
mov esi, dword [ebp - 0x10]
inc edi
cmp esi, dword [ebx]
jne 0x100109e3
push 0x10010eff
push edi
lea eax, [ebp - 0xc4]
push str.param.length
push eax
call fcn.10010b9f
pop ecx
pop ecx
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0xc4]
call fcn.10011097
cmp dword [ebx + 0x1c], 1
lea eax, [ebp + 0x104]
push eax
jne 0x10010ac3
call fcn.10010021
jmp 0x10010ac8
call fcn.1001032e
mov esi, eax
pop ecx
lea ecx, [ebp - 0x5c]
call fcn.1001100a
lea ecx, [ebp - 0x5c]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x10010ae9
push 0xa
pop esi
cmp dword [ebp + 0x218], edi
je 0x10010af4
mov ecx, dword [ebp + 0x218]
call fcn.1000d608
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x208]
xor ecx, ebp
call fcn.100111d2
add ebp, 0x20c
leave
ret