Function at 0x1400e4fa0
Capabilities:
Get common file path

Disassembly:
mov word [rsp + 0x10], dx
mov word [rsp + 8], cx
sub rsp, 0x1c8
mov byte [rsp + 0x60], 0x25
movsx eax, word [rsp + 0x1d0]
mov dword [rsp + 0x78], eax
cmp dword [rsp + 0x78], 0x7eff
je 0x1400e4fd1
jmp 0x1400e50c9
movsx eax, word [rsp + 0x1d0]
cmp eax, 0x7192
jle 0x1400e5078
movzx edx, word [rsp + 0x1d8]
movzx ecx, word [rsp + 0x1d0]
call fcn.1400e4fa0
lea r9, [rsp + 0x7c]
mov r8d, 0x64
mov edx, 0xbf
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.GDI32.dll_MoveToEx]
mov dword [rsp + 0x7c], eax
mov eax, 0x5d7b
mov word [rsp + 0x1d0], ax
mov dword [rsp + 0x40], 0xce
mov dword [rsp + 0x38], 0x3b
mov dword [rsp + 0x30], 0x4a
mov dword [rsp + 0x28], 0x7a
mov dword [rsp + 0x20], 0x21
mov r9d, 0xa5
mov r8d, 0x49
mov edx, 0x5d
mov rcx, qword [rsp + 0xc8]
call qword [sym.imp.GDI32.dll_Chord]
mov dword [rsp + 0x88], eax
jmp 0x1400e50c4
movsx eax, word [rsp + 0x1d0]
add eax, 0x1fbb
cmp eax, 0x1e45
jle 0x1400e50c4
mov eax, 0x5ce
mov word [rsp + 0x1d8], ax
mov edx, 0xa3
mov cl, 0x42
call fcn.1400e6030
mov edx, 0xec
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.GDI32.dll_GetDeviceCaps]
mov dword [rsp + 0x68], eax
mov dword [rsp + 0x68], 0x2473dce
jmp 0x1400e519d
movsx eax, word [rsp + 0x1d0]
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 0
je 0x1400e50e7
jmp 0x1400e5190
movsx eax, word [rsp + 0x1d0]
mov dword [rsp + 0x84], eax
cmp dword [rsp + 0x84], 0x23d1
je 0x1400e5108
jmp 0x1400e518e
mov dword [rsp + 0x58], 0x27
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x88]
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x40], 0x9f
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x30], 0x22
mov dword [rsp + 0x28], 0x26
mov dword [rsp + 0x20], 0x75
mov r9d, 0x34
mov r8d, 0x35
mov edx, 0xfe
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.GDI32.dll_SetDIBitsToDevice]
mov dword [rsp + 0x6c], eax
movzx r9d, word [rsp + 0x1d0]
mov r8b, 0x1d
mov edx, 0x68
mov cl, 0x24
call fcn.1400e5ba0
nop
jmp 0x1400e519d
mov eax, 0x24e2
mov word [rsp + 0x1d0], ax
movsx eax, word [rsp + 0x1d0]
sub eax, 0x370e
cmp eax, 0x7899
je 0x1400e5321
mov byte [rsp + 0x61], 0x78
lea rax, [rsp + 0x68]
mov qword [rsp + 0x70], rax
movzx eax, byte [rsp + 0x60]
and eax, 0xee
mov byte [rsp + 0x60], al
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x98], rax
mov dword [rsp + 0xa8], 0x75733c23
movzx eax, word [rsp + 0x1d8]
mov word [rsp + 0x64], ax
movzx eax, byte [rsp + 0x60]
mov byte [rsp + 0x8c], al
cmp byte [rsp + 0x8c], 0x24
je 0x1400e520f
jmp 0x1400e5214
jmp 0x1400e52cf
movsx eax, word [rsp + 0x1d0]
mov dword [rsp + 0x90], eax
cmp dword [rsp + 0x90], 0x7892
je 0x1400e5235
jmp 0x1400e52b9
mov rax, qword [rsp + 0x70]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x68]
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x98]
mov dword [rcx], eax
movzx eax, word [rsp + 0x1d8]
xor eax, 0xba5
mov word [rsp + 0x64], ax
mov edx, 0x99
mov ecx, 0x9c
call fcn.1400e5cd0
mov rax, qword [rsp + 0x98]
mov eax, dword [rax]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x70]
mov dword [rcx], eax
movzx eax, word [rsp + 0x64]
mov word [rsp + 0x1d8], ax
lea r8, [rsp + 0x61]
mov rdx, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd8]
call qword [sym.imp.USERENV.dll_GetUserProfileDirectoryW]
mov dword [rsp + 0xac], eax
jmp 0x1400e52cf
mov eax, dword [rsp + 0x6c]
mov ecx, dword [rsp + 0x94]
sub ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x70]
mov dword [rcx], eax
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x98]
mov qword [rsp + 0xc0], rcx
movzx ecx, al
mov rax, qword [rsp + 0xc0]
mov eax, dword [rax]
shl eax, cl
mov rcx, qword [rsp + 0x70]
mov dword [rcx], eax
movzx eax, byte [rsp + 0x60]
sar eax, 1
mov byte [rsp + 0x60], al
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0xe0]
call qword [sym.imp.GDI32.dll_GetRgnBox]
mov dword [rsp + 0xb0], eax
lea r8, [rsp + 0xf0]
mov edx, 0xae
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.GDI32.dll_GetTextFaceW]
mov dword [rsp + 0x94], eax
mov eax, 0x82
add rsp, 0x1c8
ret