Function at 0x18003eba0
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x2d8
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov rax, qword [0x180097030]
xor rax, rsp
mov qword [rsp + 0x2c0], rax
mov dword [rsp + 0x20], 0
mov eax, dword [0x180120eb0]
and eax, 1
test eax, eax
jne 0x18003ec1a
mov eax, dword [0x180120eb0]
or eax, 1
mov dword [0x180120eb0], eax
mov edx, 1
lea rcx, [0x180120e98]
call fcn.18001b1e0
lea rcx, [0x180120e98]
call fcn.18001c1b0
lea rcx, [0x180069070]
call fcn.18004ab5c
nop
lea rcx, [0x180120e98]
call fcn.180025700
movzx eax, al
test eax, eax
jne 0x18003ec59
lea rdx, [0x180120e98]
mov rcx, qword [rsp + 0x2e0]
call fcn.18001bf80
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x2e0]
jmp 0x18003f133
mov eax, 4
imul rax, rax, 3
lea rcx, [0x180096db0]
mov eax, dword [rcx + rax]
add eax, 0x87f1df8
mov ecx, 4
imul rcx, rcx, 0xb
lea rdx, [0x180096db0]
mov dword [rdx + rcx], eax
lea rax, [0x180099704]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], 0
mov rax, qword [rsp + 0x40]
movzx eax, byte [rax]
movsx eax, al
cmp eax, 0x61
jne 0x18003eced
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
jne 0x18003eced
mov eax, 4
imul rax, rax, 0xb
lea rcx, [0x180096db0]
mov edx, dword [rcx + rax]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov ecx, 4
imul rcx, rcx, 0xc
lea rdx, [0x180096db0]
mov dword [rdx + rcx], eax
lea rdx, [rsp + 0xb0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jbe 0x18003ee41
mov eax, dword [rsp + 0x24]
cmp rax, 0x105
jae 0x18003ee41
mov eax, dword [rsp + 0x24]
dec eax
mov eax, eax
movzx eax, word [rsp + rax*2 + 0xb0]
cmp eax, 0x5c
jne 0x18003ed65
mov eax, dword [rsp + 0x24]
dec eax
mov eax, eax
shl rax, 1
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0x20a
jae 0x18003ed51
jmp 0x18003ed56
call fcn.18004c984
xor eax, eax
mov rcx, qword [rsp + 0x38]
mov word [rsp + rcx + 0xb0], ax
mov r8, 0xffffffffffffffff
lea rdx, [rsp + 0xb0]
lea rcx, [0x180120e98]
call fcn.180022c90
mov eax, 4
imul rax, rax, 3
lea rcx, [0x180096db0]
mov eax, dword [rcx + rax]
add eax, 0x1b01cb9
mov ecx, 4
imul rcx, rcx, 0xb
lea rdx, [0x180096db0]
mov dword [rdx + rcx], eax
lea rdx, [0x180120e98]
mov rcx, qword [rsp + 0x2e0]
call fcn.18001bf80
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x2e0]
jmp 0x18003f133
mov edx, 1
lea rcx, [rsp + 0x90]
call fcn.18001b1e0
lea rax, [rsp + 0x78]
mov qword [rsp + 0x48], rax
mov r8, 0xffffffffffffffff
xor edx, edx
mov rcx, qword [rsp + 0x48]
call fcn.18001c140
mov qword [rsp + 0x50], rax
mov r8, qword [rsp + 0x50]
mov dl, 1
lea rcx, [rsp + 0x90]
call fcn.18003a950
nop
lea rcx, [rsp + 0x90]
call fcn.180025700
movzx eax, al
test eax, eax
jne 0x18003ef8f
mov r8, 0xffffffffffffffff
lea rdx, [0x18009c818]
lea rcx, [rsp + 0x60]
call fcn.18001c140
nop
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x90]
call fcn.180025780
nop
lea rcx, [rsp + 0x60]
call fcn.1800136e0
lea rcx, [rsp + 0x90]
call fcn.180013930
xor edx, edx
mov rcx, rax
call fcn.180029ee0
movzx eax, al
test eax, eax
jne 0x18003ef17
lea rcx, [rsp + 0x90]
call fcn.180013930
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.180028b40
movzx eax, al
test eax, eax
jne 0x18003ef8f
lea rdx, [rsp + 0x90]
lea rcx, [0x180120e98]
call fcn.18001c620
lea rdx, [0x180120e98]
mov rcx, qword [rsp + 0x2e0]
call fcn.18001bf80
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x90]
call fcn.1800136e0
mov rax, qword [rsp + 0x2e0]
jmp 0x18003f133
cmp qword [0x18011f140], 0
je 0x18003efba
mov r8d, 0x105
lea rdx, [rsp + 0xb0]
lea rcx, [0x18009c828]
call qword [0x18011f140]
mov dword [rsp + 0x2c], eax
jmp 0x18003efc2
mov dword [rsp + 0x2c], 0
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jbe 0x18003f0e4
mov eax, dword [rsp + 0x24]
cmp rax, 0x105
jae 0x18003f0e4
mov r8, 0xffffffffffffffff
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x90]
call fcn.180022c90
lea rcx, [rsp + 0x90]
call fcn.180013930
xor edx, edx
mov rcx, rax
call fcn.180029ee0
movzx eax, al
test eax, eax
jne 0x18003f044
lea rcx, [rsp + 0x90]
call fcn.180013930
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.180028b40
movzx eax, al
test eax, eax
jne 0x18003f0e4
lea rdx, [rsp + 0x90]
lea rcx, [0x180120e98]
call fcn.18001c620
mov eax, 4
imul rax, rax, 3
lea rcx, [0x180096db0]
mov eax, dword [rcx + rax]
add eax, 0xacd942d
mov ecx, 4
imul rcx, rcx, 0xb
lea rdx, [0x180096db0]
mov dword [rdx + rcx], eax
lea rdx, [0x180120e98]
mov rcx, qword [rsp + 0x2e0]
call fcn.18001bf80
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x90]
call fcn.1800136e0
mov rax, qword [rsp + 0x2e0]
jmp 0x18003f133
mov r8, 0xffffffffffffffff
mov rdx, qword [rsp + 0x2e8]
lea rcx, [0x180120e98]
call fcn.180022c90
lea rdx, [0x180120e98]
mov rcx, qword [rsp + 0x2e0]
call fcn.18001bf80
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x90]
call fcn.1800136e0
mov rax, qword [rsp + 0x2e0]
mov rcx, qword [rsp + 0x2c0]
xor rcx, rsp
call fcn.18004b890
add rsp, 0x2d8
ret