Function at 0x482bc0
Capabilities:
Get common file path

Disassembly:
push rbp
push rbx
mov byte [rsp - 0xe8], 0
mov byte [rsp - 0x10e8], 0
mov byte [rsp - 0x20e8], 0
sub rsp, 0x20e8
mov rbp, rsp
mov qword [rbp + 0x38], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x98], 0
mov qword [rbp + 0x90], 0
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0xa8], 0
mov qword [rbp + 0xb0], 0
mov qword [rbp + 0x20d0], 0
mov qword [rbp + 0xb8], rbp
nop
lea rcx, [0x0047cd40]
call fcn.0040f440
nop
mov qword [0x0049e658], 0
mov rax, qword [0x00493b40]
mov dword [rax], 0
mov byte [0x0049e660], 1
nop
lea rcx, [rbp + 0xb0]
lea rdx, [0x0047cc90]
call fcn.0040ec60
mov rcx, qword [0x004492e8]
mov dl, 1
mov rax, qword [0x00493d50]
mov r8, qword [rax]
mov r9, qword [rbp + 0xb0]
mov qword [rsp + 0x20], 5
call fcn.00454f20
mov qword [0x0049e658], rax
jmp 0x482d18
cmp byte [0x0049e660], 0
je 0x483321
mov rcx, qword [0x0046c4a0]
mov dl, 1
call fcn.0046c630
mov qword [0x0049e5b8], rax
mov rax, qword [0x0049e5b8]
mov byte [rax + 8], 0
mov rax, qword [0x0049e5b8]
mov byte [rax + 9], 1
mov rax, qword [0x0049e5b8]
lea rcx, [rax + 0x10]
lea rdx, [0x0047ccd0]
call fcn.0040ec60
mov rcx, qword [0x00448918]
mov dl, 1
call fcn.00453c10
mov qword [0x0049e670], rax
mov rcx, qword [0x00449170]
mov dl, 1
call fcn.00406ea0
mov qword [0x0049e650], rax
xor rcx, rcx
call sub.ole32.dll_CoInitialize
mov rcx, qword [0x0047a900]
mov dl, 1
xor r8, r8
call fcn.0047b2e0
mov rcx, qword [0x00494198]
mov qword [rcx], rax
mov rcx, qword [0x0049e5b8]
mov rdx, qword [0x0049e658]
call fcn.0046c880
mov rax, qword [0x0049e5b8]
cmp byte [rax + 0x40], 0
jne 0x483353
nop
lea rcx, [rbp + 0xa8]
lea rdx, [0x0047cca0]
call fcn.0040ec60
mov rcx, qword [0x0049e5b8]
mov rdx, qword [rbp + 0xa8]
mov r8, qword [0x0049e650]
call fcn.0046c750
mov rcx, qword [0x0049e650]
xor rdx, rdx
xor r8, r8
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax + 0x38]
mov rcx, qword [0x0049e650]
lea rdx, [0x0049e5c0]
mov r8d, 0x90
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax + 0x18]
mov rcx, qword [0x0049e650]
call fcn.00454cc0
lea rcx, [rbp + 0xa0]
lea rdx, [0x0047ccb0]
call fcn.0040ec60
mov rcx, qword [0x0049e5b8]
mov rdx, qword [rbp + 0xa0]
mov r8, qword [0x0049e650]
call fcn.0046c750
mov rcx, qword [0x0049e650]
xor rdx, rdx
xor r8, r8
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax + 0x38]
mov rcx, qword [0x0049e650]
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax]
lea rcx, [0x0049e668]
mov r8d, 2
cqo
idiv r8
mov rdx, rax
call fcn.0040b180
lea rcx, [0x0049e668]
call fcn.0040a420
mov rbx, rax
mov rcx, qword [0x0049e650]
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax]
mov rcx, qword [0x0049e650]
mov rdx, rbx
mov r8d, eax
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax + 0x18]
mov rcx, qword [0x0049e650]
call fcn.00454cc0
mov dword [rbp + 0xcc], 1
movsxd rax, dword [rbp + 0xcc]
mov word [rbp + rax*2 + 0xce], 0x20
add dword [rbp + 0xcc], 1
cmp dword [rbp + 0xcc], 0x1001
jne 0x482f15
nop
mov eax, dword [0x0049e5c8]
sub eax, 1
cmp eax, 0xffffffff
je 0x482f5c
test eax, eax
je 0x482fb3
sub eax, 1
test eax, eax
jne 0x48303e
jmp 0x483015
mov ecx, 0x1000
lea rdx, [rbp + 0xd0]
call sub.kernel32.dll_GetTempPathW
lea rcx, [rbp + 0x90]
lea rdx, [rbp + 0xd0]
mov r8d, 0x1000
call fcn.00409db0
lea rcx, [rbp + 0x98]
mov rdx, qword [rbp + 0x90]
call fcn.0041cfa0
lea rcx, [rbp + 0x20d0]
mov rdx, qword [rbp + 0x98]
call fcn.0040a1a0
jmp 0x48303e
xor rcx, rcx
mov edx, 0x1c
xor r8, r8
xor r9, r9
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
call sub.SHFolder.dll_SHGetFolderPathW
lea rcx, [rbp + 0x80]
lea rdx, [rbp + 0xd0]
mov r8d, 0x1000
call fcn.00409db0
lea rcx, [rbp + 0x88]
mov rdx, qword [rbp + 0x80]
call fcn.0041cfa0
lea rcx, [rbp + 0x20d0]
mov rdx, qword [rbp + 0x88]
call fcn.0040a1a0
jmp 0x48303e
lea rcx, [rbp + 0x70]
xor rdx, rdx
call fcn.004740f0
lea rcx, [rbp + 0x78]
mov rdx, qword [rbp + 0x70]
call fcn.0041e230
lea rcx, [rbp + 0x20d0]
mov rdx, qword [rbp + 0x78]
call fcn.0040a1a0
lea rcx, [0x0049e680]
mov rdx, qword [rbp + 0x20d0]
call fcn.0040a120
mov dword [rbp + 0xc8], 0
cmp qword [0x0049e680], 0
je 0x483075
mov rax, qword [0x0049e680]
mov eax, dword [rax - 4]
mov dword [rbp + 0xc8], eax
mov rax, qword [0x0049e680]
movsxd rcx, dword [rbp + 0xc8]
cmp word [rax + rcx*2 - 2], 0x5c
je 0x48309e
lea rcx, [0x0049e680]
lea rdx, [0x004835cc]
call fcn.0040b260
lea rcx, [rbp + 0x68]
lea rdx, [0x0047ccc0]
call fcn.0040ec60
mov rcx, qword [0x0049e5b8]
mov rdx, qword [rbp + 0x68]
mov r8, qword [0x0049e650]
call fcn.0046c750
mov rcx, qword [0x0049e650]
xor rdx, rdx
xor r8, r8
mov rax, qword [0x0049e650]
mov rax, qword [rax]
call qword [rax + 0x38]
mov rcx, qword [0x0049e670]
mov rdx, qword [0x0049e650]
mov rax, qword [0x0049e670]
mov rbx, qword [rax]
call qword [rbx + 0xe8]
mov rcx, qword [0x0049e670]
mov rax, qword [0x0049e670]
mov rax, qword [rax]
call qword [rax + 0x28]
xor rcx, rcx
sub eax, 1
mov dword [rbp + 0x30], eax
mov dword [0x0049e678], ecx
mov eax, dword [rbp + 0x30]
cmp dword [0x0049e678], eax
jg 0x4831ce
mov eax, dword [rbp + 0x30]
add eax, 1
mov dword [rbp + 0x30], eax
mov rcx, qword [0x0049e650]
call fcn.00454cc0
lea rcx, [rbp + 0x60]
mov edx, dword [0x0049e678]
call fcn.0041d5f0
mov rcx, qword [0x0049e5b8]
mov rdx, qword [rbp + 0x60]
mov r8, qword [0x0049e650]
call fcn.0046c750
nop
mov rcx, qword [0x0049e670]
lea rdx, [rbp + 0x50]
mov r8d, dword [0x0049e678]
mov rax, qword [0x0049e670]
mov rbx, qword [rax]
call qword [rbx + 0x18]
lea rcx, [rbp + 0x58]
mov rdx, qword [0x0049e680]
mov r8, qword [rbp + 0x50]
call fcn.0040b350
mov rcx, qword [0x0049e650]
mov rdx, qword [rbp + 0x58]
call fcn.00454be0
jmp 0x4831b8
add dword [0x0049e678], 1
mov eax, dword [rbp + 0x30]
cmp dword [0x0049e678], eax
jne 0x483138
nop
lea rcx, [rbp + 0x48]
mov rdx, qword [0x0049e668]
call fcn.0040b0a0
mov rax, qword [0x00494198]
mov rcx, qword [rax]
mov rdx, qword [rbp + 0x48]
mov r8d, dword [0x0049e5c4]
call fcn.0047b070
nop
mov rax, qword [0x00494198]
mov rcx, qword [rax]
call fcn.00406f60
call sub.ole32.dll_CoUninitialize
lea rcx, [0x0049e668]
call fcn.00409af0
mov rax, qword [0x00493b40]
mov rcx, qword [0x00493c28]
mov ecx, dword [rcx]
mov dword [rax], ecx
mov rcx, qword [0x0049e650]
call fcn.00406f60
mov rcx, qword [0x0049e670]
mov rax, qword [0x0049e670]
mov rax, qword [rax]
call qword [rax + 0x28]
xor rcx, rcx
sub eax, 1
mov dword [rbp + 0x34], eax
mov dword [0x0049e678], ecx
mov eax, dword [rbp + 0x34]
cmp dword [0x0049e678], eax
jg 0x4832fa
mov eax, dword [rbp + 0x34]
add eax, 1
mov dword [rbp + 0x34], eax
mov rcx, qword [0x0049e670]
lea rdx, [rbp + 0x40]
mov r8d, dword [0x0049e678]
mov rax, qword [0x0049e670]
mov rbx, qword [rax]
call qword [rbx + 0x18]
lea rcx, [0x0049e688]
mov edx, 3
mov r8, qword [0x0049e680]
lea r9, [0x004835cc]
mov rax, qword [rbp + 0x40]
mov qword [rsp + 0x20], rax
call fcn.0040b470
mov rcx, qword [0x0049e688]
mov dl, 1
call fcn.0041df90
test al, al
je 0x4832e4
nop
mov rcx, qword [0x0049e688]
call fcn.0041e080
jmp 0x4832e4
add dword [0x0049e678], 1
mov eax, dword [rbp + 0x34]
cmp dword [0x0049e678], eax
jne 0x483273
nop
mov rcx, qword [0x0049e670]
call fcn.00406f60
mov rcx, qword [0x0049e658]
call fcn.00406f60
mov rcx, qword [0x0049e5b8]
call fcn.00406f60
jmp 0x483353
lea rcx, [rbp + 0x38]
lea rdx, [0x0047cce0]
call fcn.0040ec60
mov rcx, qword [rbp + 0x38]
call fcn.0040af20
xor rcx, rcx
mov rdx, rax
lea r8, [0x004835d0]
mov r9d, 0x40
call sub.user32.dll_MessageBoxW
nop
lea rcx, [rbp + 0x38]
mov edx, 2
call fcn.00409bd0
lea rcx, [rbp + 0x48]
call fcn.00409b90
lea rcx, [rbp + 0x50]
mov edx, 0xd
call fcn.00409bd0
lea rcx, [rbp + 0x20d0]
call fcn.00409af0
call fcn.00409720
jmp 0x483396
lea rsp, [rbp + 0x20e8]
pop rbx
pop rbp
ret