Function at 0x100106f1
Capabilities:
Get common file path

Disassembly:
push ebp
lea ebp, [esp - 0x20c]
sub esp, 0x20c
push 0xffffffffffffffff
push 0x10014175
mov eax, dword fs:[0]
push eax
sub esp, 0xb4
mov eax, dword [0x100374d0]
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 edi, dword [ebp + 0x214]
mov esi, dword [ebp + 0x21c]
xor ebx, ebx
mov dword [ebp - 4], ebx
test edi, edi
je 0x10010acc
lea ecx, [ebp + 0x218]
call fcn.1000d69b
test eax, eax
je 0x10010acc
push edi
call fcn.1000fead
pop ecx
test eax, eax
je 0x1001076b
push 9
jmp 0x10010ace
lea ecx, [ebp + 0x218]
call fcn.1000d69b
push eax
call fcn.1000fead
pop ecx
test eax, eax
jne 0x10010764
test esi, esi
je 0x10010790
push esi
call fcn.1000fead
pop ecx
test eax, eax
jne 0x10010764
test esi, esi
mov eax, 0x1002e926
cmovne eax, esi
mov esi, 0x104
mov dword [ebp - 0x10], eax
lea eax, [ebp]
push eax
push esi
call dword [sym.imp.kernel32.dll_GetTempPathA]
cmp eax, esi
ja 0x100107d0
test eax, eax
je 0x100107d0
lea eax, [ebp + 0x104]
push eax
push ebx
push str.JNLP
lea eax, [ebp]
push eax
call dword [sym.imp.kernel32.dll_GetTempFileNameA]
test eax, eax
jne 0x100107d8
xor esi, esi
inc esi
jmp 0x10010acf
push 1
lea ecx, [ebp - 0xc0]
call fcn.10010e65
push 0x40
push 0x12
lea eax, [ebp + 0x104]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0xc0]
call fcn.1001102e
mov eax, dword [ebp - 0xc0]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0xb4], 6
je 0x1001081a
push 2
pop esi
jmp 0x10010ab9
mov eax, 0x10010e39
lea ecx, [ebp + 0x218]
push eax
push dword [ebp - 0x10]
push str.embedded
push eax
push edi
push str.jnlphref
push eax
call fcn.1000d69b
push eax
lea eax, [ebp - 0xc0]
push str.docbase
push eax
call fcn.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b88
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 edi, dword [ebp + 0x220]
cmp byte [edi + 0x19], 0
je 0x10010925
mov eax, dword [edi + 8]
mov ecx, ebx
mov esi, dword [eax]
cmp esi, eax
je 0x100108fc
push 0x10010e39
lea eax, [esi + 8]
push eax
push 0x1002ea98
push ebx
lea eax, [ebp - 0xc0]
push str.vmarg.
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b6a
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 ebx
cmp esi, dword [edi + 8]
jne 0x100108aa
mov dword [ebp - 0x10], ebx
xor ebx, ebx
mov ecx, dword [ebp - 0x10]
push 0x10010e39
push ecx
lea eax, [ebp - 0xc0]
push str.vmarg.length
push eax
call fcn.10010b88
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 [edi + 0x1a], 0
je 0x100109b8
mov eax, dword [edi + 0x10]
mov ecx, ebx
mov dword [ebp - 0x10], ecx
mov esi, dword [eax]
cmp esi, eax
je 0x1001098f
push 0x10010e39
lea eax, [esi + 8]
push eax
push 0x1002eab4
push ebx
lea eax, [ebp - 0xc0]
push str.apparg.
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b6a
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 ebx
cmp esi, dword [edi + 0x10]
jne 0x1001093d
mov dword [ebp - 0x10], ebx
xor ebx, ebx
mov ecx, dword [ebp - 0x10]
push 0x10010e39
push ecx
lea eax, [ebp - 0xc0]
push str.apparg.length
push eax
call fcn.10010b88
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 [edi + 0x18], 0
je 0x10010a92
mov eax, dword [edi]
mov esi, dword [eax]
mov dword [ebp - 0x10], esi
cmp esi, eax
je 0x10010a69
push 0x10010e39
lea eax, [esi + 0x10]
push eax
push 0x1002ead0
push ebx
lea eax, [ebp - 0xc0]
push str.name.
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b6a
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 0x10010e39
add esi, 0x28
lea eax, [ebp - 0xc0]
push esi
push 0x1002eadc
push ebx
push str.value.
push eax
call fcn.10010b88
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.10010b88
pop ecx
pop ecx
push eax
call fcn.10010b6a
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.10002989
mov esi, dword [ebp - 0x10]
inc ebx
cmp esi, dword [edi]
jne 0x100109d1
push 0x10010e39
push ebx
lea eax, [ebp - 0xc0]
push str.param.length
push eax
call fcn.10010b88
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 - 0xc0]
call fcn.1001100d
cmp dword [edi + 0x1c], 1
lea eax, [ebp + 0x104]
push eax
jne 0x10010ab1
call fcn.100100a0
jmp 0x10010ab6
call fcn.10010394
mov esi, eax
pop ecx
lea ecx, [ebp - 0x58]
call fcn.10010f51
lea ecx, [ebp - 0x58]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
jmp 0x10010acf
push 0xa
pop esi
mov ecx, dword [ebp + 0x218]
test ecx, ecx
je 0x10010ade
call fcn.1000d9cb
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.10011148
add ebp, 0x20c
leave
ret