Function at 0x180036560
Capabilities:
Get common file path

Disassembly:
mov r11, rsp
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0x2b0
mov rax, qword [0x180089b10]
xor rax, rsp
mov qword [rsp + 0x290], rax
imul ebp, ecx, 0x960
mov r15, r8
mov rdi, rdx
mov esi, ecx
mov ebx, ecx
cmp ecx, ebp
ja 0x18003687e
mov qword [r11 + 8], r12
mov ecx, 0x73
mov r12d, dword [rsp + 0x38]
mov edx, 0x6e65
mov qword [r11 - 0x30], r13
mov r13, qword [rsp + 0x50]
mov qword [r11 - 0x38], r14
mov r14, qword [rsp + 0x50]
mov eax, 0x64
cmp ebx, 0x1819a
ja 0x18003671a
je 0x1800366fd
cmp ebx, 0x60da
ja 0x180036677
je 0x180036655
mov eax, ebx
sub eax, 0x8d
je 0x180036627
sub eax, 0xd
je 0x180036618
cmp eax, 0x5813
jne 0x180036833
xor r9d, r9d
xor edx, edx
mov rcx, r14
lea r8d, [r9 + 0x31]
call fcn.18003caf0
mov qword [rsp + 0x30], r14
jmp 0x180036829
mov word [rsp + 0x60], cx
mov word [rsp + 0x61], dx
jmp 0x180036833
mov eax, dword [rdi]
lea r8, [rsp + 0x40]
mov r9d, 0x15
mov dword [rsp + 0x48], eax
lea rdx, [rsp + 0x48]
mov dword [rsp + 0x40], 0x20
mov rcx, r15
call fcn.180060930
mov r14, rax
jmp 0x180036829
mov r8d, 2
mov word [rsp + 0x63], ax
lea rdx, [0x180076de8]
lea rcx, [rsp + 0x68]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
jmp 0x180036829
cmp ebx, 0xb0cd
je 0x180036843
cmp ebx, 0xc11a
je 0x1800366dc
cmp ebx, 0x1215a
jne 0x180036833
mov r8d, 0xa
lea rdx, [rsp + 0x6c]
lea ecx, [r8 - 8]
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltow]
lea rcx, [rsp + 0x68]
sub rcx, 2
cmp word [rcx + 2], 0
lea rcx, [rcx + 2]
jne 0x1800366b5
movsd xmm0, qword [str._32.]
movzx eax, word [0x180079b80]
movsd qword [rcx], xmm0
mov word [rcx + 8], ax
jmp 0x180036829
lea rcx, [rsp + 0x68]
sub rcx, 2
cmp word [rcx + 2], 0
lea rcx, [rcx + 2]
jne 0x1800366e5
mov eax, dword [0x180078548]
mov dword [rcx], eax
jmp 0x18003682e
mov r8d, 3
lea rdx, [0x180078e3c]
lea rcx, [rsp + 0x76]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy]
jmp 0x180036829
cmp ebx, 0x3029a
ja 0x18003678f
je 0x180036769
cmp ebx, 0x1e1da
je 0x18003675c
cmp ebx, 0x2421a
je 0x18003674e
cmp ebx, 0x2a25a
jne 0x180036833
mov r12d, 0x36
xor r13d, r13d
jmp 0x180036833
mov qword [rsp + 0x58], 0
jmp 0x180036833
mov dword [rsp + 0x7a], 0x6c
jmp 0x180036833
lea r8, [rsp + 0x68]
mov ecx, 0x71
lea rdx, [rsp + 0x60]
call fcn.1800053d0
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x38], 0
jmp 0x180036829
cmp ebx, 0x362da
je 0x1800367e3
cmp ebx, 0x3c31a
je 0x1800367b0
cmp ebx, 0x4235a
je 0x180036843
jmp 0x180036833
mov r9d, dword [rsp + 0x38]
lea rax, [rsp + 0x80]
mov rcx, qword [rsp + 0x58]
mov r8, r13
mov qword [rsp + 0x28], rax
mov edx, r12d
mov qword [rsp + 0x20], 0
call qword [sym.imp.SHELL32.dll_SHGetFolderPathAndSubDirW]
mov byte [rsp + 0x30], 1
jmp 0x180036829
cmp qword [rdi + 0x18], 0x10
mov rdx, rdi
jb 0x1800367f0
mov rdx, qword [rdi]
mov r8d, dword [rdi + 0x10]
xor r9d, r9d
mov rcx, qword [r15]
call qword [rsp + 0x50]
cmp eax, 0xffffffff
jne 0x180036829
mov eax, 0x10c
cmp eax, 0x10c
je 0x180036818
cmp eax, 0x4624
je 0x180036843
jmp 0x18003681d
mov byte [rsp + 0x30], 0
add eax, 0x4518
cmp eax, 0x8a30
jbe 0x180036808
mov edx, 0x6e65
mov ecx, 0x73
lea eax, [rsi + rsi*4]
shl eax, 5
add ebx, eax
cmp ebx, ebp
jbe 0x1800365bf
mov rax, qword [rsp + 0x30]
mov r13, qword [rsp + 0x2a8]
mov r12, qword [rsp + 0x2e0]
mov r14, qword [rsp + 0x2a0]
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.18006fee0
add rsp, 0x2b0
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rsp + 0x30]
jmp 0x180036860