Function at 0x140034970
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x310
mov rax, qword [0x1400ad368]
xor rax, rsp
mov qword [rsp + 0x300], rax
mov rbx, rcx
mov qword [rsp + 0xc0], rcx
lea rax, vtable.CShellCommInterface.0
mov qword [rcx], rax
xor edi, edi
mov qword [rcx + 8], rdi
mov qword [rcx + 0x10], rdi
lea rsi, [rcx + 0x18]
mov dword [rsi], edi
mov dword [rcx + 0x1c], 0x833aa357
mov dword [rcx + 0x20], 0x94c01efc
lea rax, [rcx + 0x28]
test rax, rax
je 0x1400349db
xorps xmm0, xmm0
movups xmmword [rax], xmm0
lea rax, vtable.CShellOuterCommInterface.0
mov qword [rcx], rax
lea rax, [0x140038ca0]
mov qword [rcx + 0x38], rax
mov byte [rcx + 0x40], 0
xor ecx, ecx
call fcn.1400588e0
mov rcx, rax
call fcn.14005e6e4
xor ecx, ecx
call fcn.140032da0
mov rbp, rax
test rax, rax
je 0x140034c9b
mov byte [rsp + 0xd0], 0
lea rax, [fcn.140032ea0]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], rbp
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0xf0]
call fcn.1400538a0
lea rdx, [rsp + 0xf0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov dword [rsp + 0x40], edi
lea rax, [rsp + 0x50]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], 4
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], 0x208
lea r9, [rsp + 0xf0]
mov edx, 0x1004000
mov r8d, 0x30191
mov rcx, rbp
call fcn.140033370
test eax, eax
jne 0x140034c92
cmp qword [rsp + 0x50], 4
jne 0x140034c92
mov edx, dword [rsi]
test edx, edx
je 0x140034c87
xor r8d, r8d
mov ecx, dword [rbx + 0x1c]
call fcn.140046ee0
mov qword [rbx + 8], rax
test rax, rax
je 0x140034c87
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x88], rdi
mov qword [rsp + 0x90], rdi
mov qword [rsp + 0x98], rdi
mov qword [rsp + 0xa0], rdi
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0xb0], rdi
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov dword [rsp + 0x60], eax
mov eax, dword [rbx + 0x20]
mov dword [rsp + 0x64], eax
lea rax, [0x1400342d0]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rbx
mov dword [rsp + 0x68], 0x100000
mov qword [rsp + 0xb8], 0x2000000
mov ecx, 0x110
call fcn.1400511ec
mov rsi, rax
mov qword [rsp + 0x50], rax
lea rax, [0x14008fa78]
mov qword [rsi + 0x48], rax
lea rax, vtable.INodcommServer.0
mov qword [rsi + 0x108], rax
lea rcx, [rsi + 0x20]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov qword [rsi], rdi
mov qword [rsi + 8], rdi
mov qword [rsi + 0x10], rdi
mov byte [rsi + 0x18], 0
mov rax, qword [rsi + 0x48]
movsxd rcx, dword [rax + 4]
lea rax, vtable.CNodcommAlpcServer.0
mov qword [rcx + rsi + 0x48], rax
mov rax, qword [rsi + 0x48]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xc0]
mov dword [rcx + rsi + 0x44], edx
mov qword [rsi + 0x50], rdi
mov qword [rsi + 0x58], rdi
mov qword [rsi + 0x60], rdi
mov qword [rsi + 0x68], rdi
mov qword [rsi + 0x70], rdi
mov qword [rsi + 0x78], rdi
mov qword [rsi + 0x80], rdi
mov byte [rsi + 0x88], 0
mov qword [rsi + 0x90], rdi
mov qword [rsi + 0x98], rdi
mov dword [rsi + 0xa0], edi
lea rcx, [rsi + 0xa8]
call qword [0x1400ad1a0]
lea rcx, [rsi + 0xb0]
call qword [0x1400ad178]
mov byte [rsi + 0xb8], 0
mov qword [rsi + 0xbc], rdi
mov dword [rsi + 0xc4], edi
lea rcx, [rsi + 0xc8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rax, [rsi + 0xf0]
mov qword [rsi + 0xf8], rax
mov qword [rax], rax
mov rax, qword [rsi + 0x48]
movsxd rcx, dword [rax + 4]
add rcx, 0x48
add rcx, rsi
mov rax, qword [rcx]
lea rdx, [rsp + 0x60]
mov rax, qword [rax + 8]
call qword [case.0x14001a4f5.0]
mov rcx, qword [rsi + 0x48]
test eax, eax
je 0x140034c78
movsxd rax, dword [rcx + 4]
lea rcx, [rsi + 0x48]
add rcx, rax
mov rax, qword [rcx]
mov edx, 1
mov rax, qword [rax]
call qword [case.0x14001a4f5.0]
jmp 0x140034c83
movsxd rcx, dword [rcx + 4]
lea rdi, [rsi + 0x48]
add rdi, rcx
mov qword [rbx + 0x10], rdi
mov rcx, rbp
call fcn.140032ea0
nop
jmp 0x140034c9b
mov rcx, rbp
call fcn.140032ea0
nop
mov rax, rbx
mov rcx, qword [rsp + 0x300]
xor rcx, rsp
call fcn.140050ca0
lea r11, [rsp + 0x310]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret