Function at 0x41208770
Capabilities:
Get common file path

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x728
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x41359af8]
xor rax, rsp
mov qword [rsp + 0x710], rax
mov rbp, r9
mov r12, r8
mov rsi, rdx
mov rbx, rcx
mov word [rsp + 0xe0], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xe2]
call fcn.412121c0
mov word [rsp + 0x2f0], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0x2f2]
call fcn.412121c0
mov qword [rsp + 0x80], 7
xor r15d, r15d
mov qword [rsp + 0x78], r15
mov word [rsp + 0x68], r15w
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], r15w
cmp dword [rsp + 0x790], r15d
je 0x41208953
xor r8d, r8d
lea edx, [r15 + 0xe]
lea rcx, [rsp + 0x60]
call fcn.41022ab0
lea rcx, [rsp + 0x68]
mov rdx, qword [rsp + 0x80]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x68]
add rdx, rdx
lea r9d, [r15 + 0x1c]
lea r8, str.py.phrase.eudc
call fcn.412118b0
mov qword [rsp + 0x78], 0xe
lea rax, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax + 0x1c], r15w
lea rax, [rsp + 0x40]
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
cmovae rax, r8
lea rdi, str.__GS_EDUC_PY_M_PHRASE__
mov rcx, qword [rsp + 0x50]
cmp rdi, rax
jb 0x412088ee
lea rax, [rsp + 0x40]
cmp rdx, 8
cmovae rax, r8
lea rax, [rax + rcx*2]
cmp rax, rdi
jbe 0x412088ee
lea rax, [rsp + 0x40]
cmp rdx, 8
cmovae rax, r8
sub rdi, rax
sar rdi, 1
lea r9d, [r15 + 0x17]
mov r8, rdi
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.41022de0
jmp 0x41208a7e
cmp rdx, 0x17
jae 0x41208910
mov r8, rcx
mov edx, 0x17
lea rcx, [rsp + 0x38]
call fcn.41022ab0
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x40]
lea rcx, [rsp + 0x40]
cmp rdx, 8
cmovae rcx, r8
add rdx, rdx
mov r9d, 0x2e
mov r8, rdi
call fcn.412118b0
mov qword [rsp + 0x50], 0x17
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rax, qword [rsp + 0x40]
mov word [rax + 0x2e], 0
jmp 0x41208a7e
xor r8d, r8d
lea edx, [r8 + 0xd]
lea rcx, [rsp + 0x60]
call fcn.41022ab0
lea rcx, [rsp + 0x68]
mov rdx, qword [rsp + 0x80]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x68]
add rdx, rdx
mov r9d, 0x1a
lea r8, str.py.phrase.dat
call fcn.412118b0
mov qword [rsp + 0x78], 0xd
lea rax, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rax, qword [rsp + 0x68]
mov word [rax + 0x1a], 0
lea rax, [rsp + 0x40]
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
cmp rdx, 8
cmovae rax, r8
lea rdi, str.__GS_SYS_PY_M_PHRASE__
mov rcx, qword [rsp + 0x50]
cmp rdi, rax
jb 0x41208a1e
lea rax, [rsp + 0x40]
cmp rdx, 8
cmovae rax, r8
lea rax, [rax + rcx*2]
cmp rax, rdi
jbe 0x41208a1e
lea rax, [rsp + 0x40]
cmp rdx, 8
cmovae rax, r8
sub rdi, rax
sar rdi, 1
mov r9d, 0x16
mov r8, rdi
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.41022de0
jmp 0x41208a7e
cmp rdx, 0x16
jae 0x41208a40
mov r8, rcx
mov edx, 0x16
lea rcx, [rsp + 0x38]
call fcn.41022ab0
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x40]
lea rcx, [rsp + 0x40]
cmp rdx, 8
cmovae rcx, r8
add rdx, rdx
mov r9d, 0x2c
mov r8, rdi
call fcn.412118b0
mov qword [rsp + 0x50], 0x16
lea rax, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae rax, qword [rsp + 0x40]
mov word [rax + 0x2c], 0
lea r9, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae r9, qword [rsp + 0x68]
mov r8, rsi
lea rdx, [0x4129a250]
lea rcx, [rsp + 0x2f0]
call fcn.412122b0
lea r9, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r9, qword [rsp + 0x40]
mov dword [rsp + 0x28], 0x4e25
lea rdi, [0x4129a368]
mov qword [rsp + 0x20], rdi
lea r8, str.SmartCloudInput
lea rdx, str._s_s_s_d
lea rcx, [rsp + 0xe0]
call fcn.412122b0
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x248]
call fcn.41024690
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x270]
call fcn.41024690
lea r8, [rsp + 0xe0]
lea rdx, [rsp + 0x2f0]
mov rcx, rbx
call fcn.41200790
test eax, eax
je 0x41208ba4
mov rcx, rbx
call fcn.41067ca0
mov qword [rbx + 0x238], rax
lea rcx, [rax + 0xe]
mov qword [rbx + 0x230], rcx
lea rax, [rcx + 4]
mov qword [rbx + 0x228], rax
mov eax, dword [rcx]
mov dword [rbx + 0x240], eax
cmp qword [rsp + 0x58], 8
jb 0x41208b70
mov rcx, qword [rsp + 0x40]
call fcn.41210d60
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], 0
cmp qword [rsp + 0x80], 8
jb 0x41208b9a
mov rcx, qword [rsp + 0x68]
call fcn.41210d60
mov eax, 1
jmp 0x412092b7
lea r9, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae r9, qword [rsp + 0x68]
mov r8, r12
lea rdx, [0x4129a250]
lea rcx, [rsp + 0x2f0]
call fcn.412122b0
lea r9, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r9, qword [rsp + 0x40]
mov dword [rsp + 0x28], 0x4e25
mov qword [rsp + 0x20], rdi
lea r8, str.SmartCloudInput
lea rdx, str._sBACK_s_s_d
lea rcx, [rsp + 0xe0]
call fcn.412122b0
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x248]
call fcn.41024690
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x270]
call fcn.41024690
lea r8, [rsp + 0xe0]
lea rdx, [rsp + 0x2f0]
mov rcx, rbx
call fcn.41200790
test eax, eax
je 0x41208cc3
mov rcx, rbx
call fcn.41067ca0
mov qword [rbx + 0x238], rax
lea rcx, [rax + 0xe]
mov qword [rbx + 0x230], rcx
lea rax, [rcx + 4]
mov qword [rbx + 0x228], rax
mov eax, dword [rcx]
mov dword [rbx + 0x240], eax
cmp qword [rsp + 0x58], 8
jb 0x41208c8f
mov rcx, qword [rsp + 0x40]
call fcn.41210d60
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], 0
cmp qword [rsp + 0x80], 8
jb 0x41208cb9
mov rcx, qword [rsp + 0x68]
call fcn.41210d60
mov eax, 1
jmp 0x412092b7
lea r9, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae r9, qword [rsp + 0x68]
mov r8, rbp
lea rdx, [0x4129a250]
lea rcx, [rsp + 0x2f0]
call fcn.412122b0
lea r9, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r9, qword [rsp + 0x40]
mov dword [rsp + 0x28], 0x4e25
mov qword [rsp + 0x20], rdi
lea r8, str.SmartCloudInput
lea rdx, str._sUSER_s_s_d
lea rcx, [rsp + 0xe0]
call fcn.412122b0
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x248]
call fcn.41024690
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x270]
call fcn.41024690
lea r8, [rsp + 0xe0]
lea rdx, [rsp + 0x2f0]
mov rcx, rbx
call fcn.41200790
test eax, eax
je 0x41208de2
mov rcx, rbx
call fcn.41067ca0
mov qword [rbx + 0x238], rax
lea rcx, [rax + 0xe]
mov qword [rbx + 0x230], rcx
lea rax, [rcx + 4]
mov qword [rbx + 0x228], rax
mov eax, dword [rcx]
mov dword [rbx + 0x240], eax
cmp qword [rsp + 0x58], 8
jb 0x41208dae
mov rcx, qword [rsp + 0x40]
call fcn.41210d60
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], 0
cmp qword [rsp + 0x80], 8
jb 0x41208dd8
mov rcx, qword [rsp + 0x68]
call fcn.41210d60
mov eax, 1
jmp 0x412092b7
mov edx, 7
mov qword [rsp + 0xd0], rdx
mov r8, r15
mov qword [rsp + 0xc8], r15
mov word [rsp + 0xb8], r8w
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbp
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
mov rsi, rcx
movabs r12, 0x7ffffffffffffffe
cmp rcx, r12
jbe 0x41208e3d
call fcn.4120fbc0
mov rdx, qword [rsp + 0xd0]
mov r8, qword [rsp + 0xc8]
cmp rdx, rsi
jae 0x41208e5c
mov rdx, rsi
lea rcx, [rsp + 0xb0]
call fcn.41022ab0
mov rdx, qword [rsp + 0xd0]
jmp 0x41208e83
test rsi, rsi
jne 0x41208e83
mov qword [rsp + 0xc8], r15
lea rax, [rsp + 0xb8]
cmp rdx, 8
cmovae rax, qword [rsp + 0xb8]
mov word [rax], si
jmp 0x41208ed7
test rsi, rsi
je 0x41208ed7
lea rcx, [rsp + 0xb8]
cmp rdx, 8
cmovae rcx, qword [rsp + 0xb8]
lea rdi, [rsi + rsi]
add rdx, rdx
mov r9, rdi
mov r8, rbp
call fcn.412118b0
mov qword [rsp + 0xc8], rsi
lea rax, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae rax, qword [rsp + 0xb8]
mov word [rax + rdi], 0
lea rdx, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rdx, qword [rsp + 0x68]
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0xb0]
call fcn.41022fe0
mov word [rsp + 0x500], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0x502]
call fcn.412121c0
lea rdx, [rsp + 0x500]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov edx, 7
mov qword [rsp + 0xa8], rdx
mov r8, r15
mov qword [rsp + 0xa0], r15
mov word [rsp + 0x90], r8w
xor eax, eax
or rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x500]
repne scasw ax, word [rdi]
not rcx
sub rcx, 1
mov rsi, rcx
cmp rcx, r12
jbe 0x41208f93
call fcn.4120fbc0
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
cmp rdx, rsi
jae 0x41208fb2
mov rdx, rsi
lea rcx, [rsp + 0x88]
call fcn.41022ab0
mov rdx, qword [rsp + 0xa8]
jmp 0x41208fd9
test rsi, rsi
jne 0x41208fd9
mov qword [rsp + 0xa0], r15
lea rax, [rsp + 0x90]
cmp rdx, 8
cmovae rax, qword [rsp + 0x90]
mov word [rax], si
jmp 0x41209032
test rsi, rsi
je 0x41209032
lea rcx, [rsp + 0x90]
cmp rdx, 8
cmovae rcx, qword [rsp + 0x90]
lea rdi, [rsi + rsi]
add rdx, rdx
mov r9, rdi
lea r8, [rsp + 0x500]
call fcn.412118b0
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x90]
cmp qword [rsp + 0xa8], 8
cmovae rax, qword [rsp + 0x90]
mov word [rax + rdi], 0
lea rdx, [rsp + 0x68]
cmp qword [rsp + 0x80], 8
cmovae rdx, qword [rsp + 0x68]
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rsp + 0x88]
call fcn.41022fe0
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 8
cmovae rdx, qword [rsp + 0x90]
lea rcx, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae rcx, qword [rsp + 0xb8]
call fcn.41035de0
lea r9, [rsp + 0x40]
cmp qword [rsp + 0x58], 8
cmovae r9, qword [rsp + 0x40]
mov dword [rsp + 0x28], 0x4e25
lea rax, [0x4129a368]
mov qword [rsp + 0x20], rax
lea r8, str.SmartCloudInput
lea rdx, str._sTEMP_s_s_d
lea rcx, [rsp + 0xe0]
call fcn.412122b0
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x248]
call fcn.41024690
xor r8d, r8d
lea rdx, [0x412a02a8]
lea rcx, [rbx + 0x270]
call fcn.41024690
lea r8, [rsp + 0xe0]
lea rdx, [rsp + 0x2f0]
mov rcx, rbx
call fcn.41200790
test eax, eax
je 0x4120920a
mov rcx, rbx
call fcn.41067ca0
mov qword [rbx + 0x238], rax
lea rcx, [rax + 0xe]
mov qword [rbx + 0x230], rcx
lea rax, [rcx + 4]
mov qword [rbx + 0x228], rax
mov eax, dword [rcx]
mov dword [rbx + 0x240], eax
cmp qword [rsp + 0xa8], 8
jb 0x41209170
mov rcx, qword [rsp + 0x90]
call fcn.41210d60
mov qword [rsp + 0xa8], 7
mov qword [rsp + 0xa0], r15
mov word [rsp + 0x90], 0
cmp qword [rsp + 0xd0], 8
jb 0x412091a6
mov rcx, qword [rsp + 0xb8]
call fcn.41210d60
mov qword [rsp + 0xd0], 7
mov qword [rsp + 0xc8], r15
mov word [rsp + 0xb8], 0
cmp qword [rsp + 0x58], 8
jb 0x412091d6
mov rcx, qword [rsp + 0x40]
call fcn.41210d60
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], 0
cmp qword [rsp + 0x80], 8
jb 0x41209200
mov rcx, qword [rsp + 0x68]
call fcn.41210d60
mov eax, 1
jmp 0x412092b7
cmp qword [rsp + 0xa8], 8
jb 0x41209222
mov rcx, qword [rsp + 0x90]
call fcn.41210d60
mov qword [rsp + 0xa8], 7
mov qword [rsp + 0xa0], r15
mov word [rsp + 0x90], 0
cmp qword [rsp + 0xd0], 8
jb 0x41209258
mov rcx, qword [rsp + 0xb8]
call fcn.41210d60
mov qword [rsp + 0xd0], 7
mov qword [rsp + 0xc8], r15
mov word [rsp + 0xb8], 0
cmp qword [rsp + 0x58], 8
jb 0x41209288
mov rcx, qword [rsp + 0x40]
call fcn.41210d60
mov qword [rsp + 0x58], 7
mov qword [rsp + 0x50], r15
mov word [rsp + 0x40], 0
cmp qword [rsp + 0x80], 8
jb 0x412092b2
mov rcx, qword [rsp + 0x68]
call fcn.41210d60
mov eax, 1
mov rcx, qword [rsp + 0x710]
xor rcx, rsp
call fcn.41211b80
add rsp, 0x728
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret