Function at 0x180037520
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x2c8
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov rax, qword [0x1800891a0]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
mov dword [rsp + 0x20], 0
mov eax, dword [0x1800d4da0]
and eax, 1
test eax, eax
jne 0x18003759a
mov eax, dword [0x1800d4da0]
or eax, 1
mov dword [0x1800d4da0], eax
mov edx, 1
lea rcx, [0x1800d4d88]
call fcn.18003cfc0
lea rcx, [0x1800d4d88]
call fcn.18001c230
lea rcx, [0x180060120]
call fcn.18004d628
nop
lea rcx, [0x1800d4d88]
call fcn.180019520
movzx eax, al
test eax, eax
jne 0x1800375d9
lea rdx, [0x1800d4d88]
mov rcx, qword [rsp + 0x2d0]
call fcn.18001c0a0
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x2d0]
jmp 0x180037973
lea rdx, [rsp + 0xa0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jbe 0x1800376d7
mov eax, dword [rsp + 0x24]
cmp rax, 0x105
jae 0x1800376d7
mov eax, dword [rsp + 0x24]
dec eax
mov eax, eax
movzx eax, word [rsp + rax*2 + 0xa0]
cmp eax, 0x5c
jne 0x180037651
mov eax, dword [rsp + 0x24]
dec eax
mov eax, eax
shl rax, 1
mov qword [rsp + 0x38], rax
cmp qword [rsp + 0x38], 0x20a
jae 0x18003763d
jmp 0x180037642
call fcn.18004f434
xor eax, eax
mov rcx, qword [rsp + 0x38]
mov word [rsp + rcx + 0xa0], ax
mov r8, 0xffffffffffffffff
lea rdx, [rsp + 0xa0]
lea rcx, [0x1800d4d88]
call fcn.1800217f0
lea rdx, [0x1800d4d88]
mov rcx, qword [rsp + 0x2d0]
call fcn.18001c0a0
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x2d0]
jmp 0x180037973
mov edx, 1
lea rcx, [rsp + 0x88]
call fcn.18003cfc0
lea rax, [rsp + 0x70]
mov qword [rsp + 0x40], rax
mov r8, 0xffffffffffffffff
xor edx, edx
mov rcx, qword [rsp + 0x40]
call fcn.18001c170
mov qword [rsp + 0x48], rax
mov r8, qword [rsp + 0x48]
mov dl, 1
lea rcx, [rsp + 0x88]
call fcn.1800336b0
nop
lea rcx, [rsp + 0x88]
call fcn.180019520
movzx eax, al
test eax, eax
jne 0x180037829
mov r8, 0xffffffffffffffff
lea rdx, [0x18008db68]
lea rcx, [rsp + 0x58]
call fcn.18001c170
nop
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x88]
call fcn.180023a80
nop
lea rcx, [rsp + 0x58]
call fcn.1800119b0
lea rcx, [rsp + 0x88]
call fcn.18000b6b0
xor edx, edx
mov rcx, rax
call fcn.180027990
movzx eax, al
test eax, eax
jne 0x1800377ad
lea rcx, [rsp + 0x88]
call fcn.18000b6b0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1800269b0
movzx eax, al
test eax, eax
jne 0x180037829
mov dword [rsp + 0x30], 1
mov eax, dword [rsp + 0x30]
cdq
sub eax, edx
sar eax, 1
cmp eax, 0x32
jle 0x1800377dc
xor r9d, r9d
lea r8, [0x18008b394]
lea rdx, [0x18008b39c]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
lea rdx, [rsp + 0x88]
lea rcx, [0x1800d4d88]
call fcn.18001c7f0
lea rdx, [0x1800d4d88]
mov rcx, qword [rsp + 0x2d0]
call fcn.18001c0a0
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x88]
call fcn.1800119b0
mov rax, qword [rsp + 0x2d0]
jmp 0x180037973
cmp qword [0x1800d2c48], 0
je 0x180037854
mov r8d, 0x105
lea rdx, [rsp + 0xa0]
lea rcx, [0x18008db78]
call qword [0x1800d2c48]
mov dword [rsp + 0x2c], eax
jmp 0x18003785c
mov dword [rsp + 0x2c], 0
mov eax, dword [rsp + 0x2c]
mov dword [rsp + 0x24], eax
cmp dword [rsp + 0x24], 0
jbe 0x180037924
mov eax, dword [rsp + 0x24]
cmp rax, 0x105
jae 0x180037924
mov r8, 0xffffffffffffffff
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0x88]
call fcn.1800217f0
lea rcx, [rsp + 0x88]
call fcn.18000b6b0
xor edx, edx
mov rcx, rax
call fcn.180027990
movzx eax, al
test eax, eax
jne 0x1800378da
lea rcx, [rsp + 0x88]
call fcn.18000b6b0
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1800269b0
movzx eax, al
test eax, eax
jne 0x180037924
lea rdx, [rsp + 0x88]
lea rcx, [0x1800d4d88]
call fcn.18001c7f0
lea rdx, [0x1800d4d88]
mov rcx, qword [rsp + 0x2d0]
call fcn.18001c0a0
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x88]
call fcn.1800119b0
mov rax, qword [rsp + 0x2d0]
jmp 0x180037973
mov r8, 0xffffffffffffffff
mov rdx, qword [rsp + 0x2d8]
lea rcx, [0x1800d4d88]
call fcn.1800217f0
lea rdx, [0x1800d4d88]
mov rcx, qword [rsp + 0x2d0]
call fcn.18001c0a0
mov eax, dword [rsp + 0x20]
or eax, 1
mov dword [rsp + 0x20], eax
lea rcx, [rsp + 0x88]
call fcn.1800119b0
mov rax, qword [rsp + 0x2d0]
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.18004e350
add rsp, 0x2c8
ret