Function at 0x1095bfc
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x2c4
mov eax, dword [0x10d0620]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
xor eax, eax
push edi
mov edi, dword [ebp + 8]
mov word [ebp - 0x2b0], ax
lea eax, [ebp - 0x2b0]
xor ebx, ebx
push eax
mov esi, 0x104
push esi
mov dword [ebp - 0x2c0], edi
mov dword [ebp - 0x2b4], ebx
mov dword [ebp - 0x2bc], ebx
mov dword [ebp - 0x2c4], ebx
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp eax, ebx
je 0x1095c55
cmp eax, esi
jb 0x1095c72
call fcn.01091f43
cmp eax, ebx
je 0x1095c69
push eax
push 0xcaf01a3
call fcn.0108c55a
xor eax, eax
mov word [ebp - 0x2b0], ax
lea eax, [ebp - 0x2b8]
push eax
mov esi, 0x12d
push esi
lea eax, [ebp - 0x2b0]
push eax
mov dword [ebp - 0x2b8], ebx
call fcn.0102ec4a
cmp eax, ebx
je 0x1095ca0
push eax
push 0xcb701a3
jmp 0x1095e9e
mov eax, dword [ebp - 0x2b8]
cmp eax, ebx
je 0x1095cb7
push 0x5c
pop ecx
cmp cx, word [ebp + eax*2 - 0x2b2]
je 0x1095cd8
push 0x1008ba8
push esi
lea eax, [ebp - 0x2b0]
push eax
call fcn.0102e0bc
cmp eax, ebx
je 0x1095cd8
push eax
push 0xcbd01a3
jmp 0x1095e9e
push dword [ebp + 0x10]
lea eax, [ebp - 0x54]
push dword [ebp + 0xc]
push str.Chain_d__d.txt
push 0x27
push eax
call fcn.0102e48f
add esp, 0x14
cmp eax, ebx
je 0x1095d00
push eax
push 0xcc501a3
jmp 0x1095e9e
lea eax, [ebp - 0x54]
push eax
push esi
lea eax, [ebp - 0x2b0]
push eax
call fcn.0102e0bc
cmp eax, ebx
je 0x1095d20
push eax
push 0xcc801a3
jmp 0x1095e9e
push 0x101d638
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x2b4]
push eax
call dword [sym.imp.msvcrt.dll__wfopen_s]
add esp, 0xc
cmp eax, ebx
je 0x1095d61
push eax
push 0xcd001a3
lea eax, [ebp - 0x2b0]
push eax
call fcn.0108c595
push 0x80070002
push 0xcd201a3
jmp 0x1095e9e
mov dword [ebp - 0x2b8], ebx
cmp dword [edi + 0xc], ebx
jbe 0x1095ea3
mov edi, dword [sym.imp.msvcrt.dll_fwprintf]
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [eax + 0x10]
mov eax, dword [ebp - 0x2b8]
mov esi, dword [ecx + eax*4]
cmp eax, ebx
jbe 0x1095d9f
push dword [ebp - 0x2b4]
push 0x1001de8
call dword [sym.imp.msvcrt.dll_fputws]
pop ecx
pop ecx
push dword [ebp - 0x2b8]
push 0x101d614
push dword [ebp - 0x2b4]
call edi
mov eax, dword [esi + 4]
add esp, 0xc
push ebx
push dword [eax + 8]
push dword [eax + 4]
push dword [ebp - 0x2b4]
call fcn.01093aa5
cmp eax, ebx
jne 0x1095e88
mov esi, dword [esi + 0x10]
cmp esi, ebx
je 0x1095e6b
cmp dword [esi], 0x1c
jb 0x1095e6b
mov esi, dword [esi + 0x18]
cmp esi, ebx
je 0x1095e6b
mov eax, dword [esi + 4]
cmp eax, ebx
je 0x1095e2c
push eax
push ebx
call fcn.01093b26
push eax
push 0x101d600
push dword [ebp - 0x2b4]
mov dword [ebp - 0x2bc], eax
call edi
mov eax, dword [esi + 4]
add esp, 0xc
push 9
push dword [eax + 8]
push dword [eax + 4]
push dword [ebp - 0x2b4]
call fcn.01093aa5
cmp eax, ebx
jne 0x1095e90
mov eax, dword [esi + 8]
cmp eax, ebx
je 0x1095e6b
push eax
push ebx
call fcn.01093b26
push eax
push 0x101d5e0
push dword [ebp - 0x2b4]
mov dword [ebp - 0x2c4], eax
call edi
mov esi, dword [esi + 8]
add esp, 0xc
push 9
push dword [esi + 8]
push dword [esi + 4]
push dword [ebp - 0x2b4]
call fcn.01093aa5
cmp eax, ebx
jne 0x1095e98
inc dword [ebp - 0x2b8]
mov eax, dword [ebp - 0x2c0]
mov ecx, dword [ebp - 0x2b8]
cmp ecx, dword [eax + 0xc]
jb 0x1095d76
jmp 0x1095ea3
push eax
push 0xce501a3
jmp 0x1095e9e
push eax
push 0xcfe01a3
jmp 0x1095e9e
push eax
push 0xd0b01a3
call fcn.0108c55a
push dword [ebp - 0x2bc]
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call esi
push dword [ebp - 0x2c4]
call esi
cmp dword [ebp - 0x2b4], ebx
pop edi
pop esi
pop ebx
je 0x1095ed1
push dword [ebp - 0x2b4]
call dword [sym.imp.msvcrt.dll_fclose]
pop ecx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.01077dc7
leave
ret 0xc