Function at 0x42bce0
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4355b1
mov eax, dword fs:[0]
push eax
sub esp, 0x464
mov eax, dword [0x4430a4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call fcn.0042d080
add esp, 4
test al, al
je 0x42bf08
lea eax, [ebp - 0x464]
mov dword [ebp - 0x464], 0
push eax
push 0
push 0
push 0x439b20
call sub.SHELL32.dll_SHGetKnownFolderPath
test eax, eax
jns 0x42bd95
push 0
lea eax, [ebp - 0x250]
push 4
push eax
call fcn.00426440
add esp, 0xc
lea ecx, [ebp - 0x250]
mov dword [ebp - 4], 0
call fcn.004273f0
test al, al
je 0x42bd83
push str.temp_file_manager:_local_low_temp_path_failed
lea ecx, [ebp - 0x250]
call fcn.0041c3c0
lea ecx, [ebp - 0x250]
call fcn.0041bea0
xor al, al
jmp 0x42bff9
mov edx, dword [ebp - 0x464]
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42bdb4
sub ecx, edi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00420080
push dword [ebp - 0x464]
mov dword [ebp - 4], 1
call dword [sym.imp.ole32.dll_CoTaskMemFree]
push str.Temp
lea ecx, [ebp - 0x28]
call fcn.0042efa0
lea eax, [ebp - 0x28]
cmp esi, eax
je 0x42be07
cmp dword [ebp - 0x14], 8
mov ecx, esi
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.00420080
push esi
call fcn.0042bc40
add esp, 4
test al, al
jne 0x42befc
mov dword [ebp - 0x470], 0
mov byte [ebp - 0x46c], al
mov dword [ebp - 0x468], 0x4396b0
lea eax, [ebp - 0x470]
mov byte [ebp - 4], 2
push eax
push esi
call fcn.00430a60
add esp, 8
mov byte [ebp - 4], 1
cmp dword [ebp - 0x470], 0
je 0x42befc
push 0
lea eax, [ebp - 0x250]
push 4
push eax
call fcn.00426440
add esp, 0xc
lea ecx, [ebp - 0x250]
mov byte [ebp - 4], 3
call fcn.004273f0
test al, al
je 0x42bedb
push str.temp_file_manager:_create_directories_of
lea ecx, [ebp - 0x250]
call fcn.0041c3c0
push esi
mov ecx, eax
call fcn.0041c2e0
push str._failed__
mov ecx, eax
call fcn.0041c3c0
mov ecx, dword [ebp - 0x468]
mov esi, eax
push dword [ebp - 0x470]
lea eax, [ebp - 0x40]
push eax
mov edx, dword [ecx]
call dword [edx + 0x14]
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 4
push eax
mov ecx, esi
call fcn.0041c2c0
push 0x439768
mov ecx, eax
call fcn.0041c3c0
lea ecx, [ebp - 0x40]
call fcn.00401190
lea ecx, [ebp - 0x250]
call fcn.0041bea0
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 5
call fcn.0041f460
xor al, al
jmp 0x42bff9
mov dword [ebp - 4], 6
jmp 0x42bf90
push 0x43976c
call dword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wgetenv]
mov edx, eax
add esp, 4
test edx, edx
je 0x42bf41
cmp word [edx], 0
je 0x42bf41
mov ecx, edx
lea edi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x42bf27
sub ecx, edi
sar ecx, 1
push ecx
push edx
mov ecx, esi
call fcn.00420080
jmp 0x42bf9f
lea eax, [ebp - 0x28]
push 0
push eax
call fcn.00431260
add esp, 8
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 7
cmp esi, eax
je 0x42bf89
mov ecx, esi
call fcn.0041f460
movups xmm0, xmmword [ebp - 0x28]
xor eax, eax
mov word [ebp - 0x28], ax
movups xmmword [esi], xmm0
movq xmm0, qword [ebp - 0x18]
movq qword [esi + 0x10], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x28]
call fcn.0041f460
mov dword [ebp - 4], 0xffffffff
cmp dword [esi + 0x10], 0
jne 0x42bff0
push 0
lea eax, [ebp - 0x460]
push 4
push eax
call fcn.00426440
add esp, 0xc
lea ecx, [ebp - 0x460]
mov dword [ebp - 4], 9
call fcn.004273f0
test al, al
je 0x42bfde
push str.temp_file_manager:_temp_directory_path_empty
lea ecx, [ebp - 0x460]
call fcn.0041c3c0
lea ecx, [ebp - 0x460]
mov dword [ebp - 4], 0xffffffff
call fcn.0041bea0
push esi
call fcn.0042bc40
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042d3e0
mov esp, ebp
pop ebp
ret