Function at 0x1800193a0
Capabilities:
Get common file path

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0xe0
lea rbp, [rsp + 0x40]
mov qword [rbp + 0x60], 0xfffffffffffffffe
mov qword [rbp + 0xd0], rbx
mov qword [rbp + 0xe0], rsi
mov qword [rbp + 0xe8], rdi
mov rax, qword [0x1801563c0]
xor rax, rbp
mov qword [rbp + 0x98], rax
mov r12, rdx
mov qword [rbp + 0x68], rdx
lea rdx, str._SendWatchmanReport
lea rcx, [0x18015f578]
call fcn.1800098e8
lea rsi, [0x180162138]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ebx, dword [0x1801620e4]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
inc ebx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov dword [0x1801620e4], ebx
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rdx, [0x1801620e4]
lea rcx, [0x180162940]
call fcn.180005644
lea rdx, str.http:__searchsh.speedbit.com_br.ashx_pid_said_s
lea rcx, [rbp]
call fcn.180007f64
nop
lea rdx, [rbp + 0x40]
lea rcx, [0x180163340]
call fcn.180008f88
nop
mov rax, qword [0x18015f768]
mov qword [rbp + 0x28], rax
mov edx, 0x104
lea rcx, [rbp + 0x28]
call fcn.180003ee8
mov r9, rax
xor r8d, r8d
lea rdx, str.replog__
lea rcx, str.C:TempWATCHMAN
call qword [sym.imp.KERNEL32.dll_GetTempFileNameW]
lea rcx, [rbp + 0x28]
call fcn.180003f8c
mov rdi, qword [rbp + 0x28]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [rdi - 8], eax
movsxd rcx, eax
xor r13d, r13d
mov word [rdi + rcx*2], r13w
lea rsi, [rdi - 0xc]
cmp dword [rsi], r13d
jl 0x1800194d6
mov qword [rbp + 0x10], rdi
lock add dword [rsi], 1
jmp 0x1800194f8
mov rax, qword [0x18015f768]
mov qword [rbp + 0x10], rax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, rdi
mov edx, eax
lea rcx, [rbp + 0x10]
call fcn.180003e28
mov rcx, qword [rbp + 0x10]
add rcx, 0xfffffffffffffff4
lea r15, [0x18015f758]
or r14, 0xffffffffffffffff
cmp rcx, r15
je 0x180019524
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x180019524
call fcn.1800d1434
lea rcx, str.mid
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str.mid
mov edx, eax
lea rcx, [rbp]
call fcn.180008324
mov rdx, qword [rbp + 0x40]
mov r8, rdx
mov edx, dword [rdx - 8]
lea rcx, [rbp]
call fcn.180008324
mov r11, qword [0x18015f768]
mov qword [rbp + 0x30], r11
mov rdi, qword [0x180162b20]
cmp dword [rdi - 0xc], r13d
jl 0x180019579
mov qword [rbp + 0x18], rdi
lock add dword [rdi - 0xc], 1
jmp 0x180019594
mov qword [rbp + 0x18], r11
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, rdi
mov edx, eax
lea rcx, [rbp + 0x18]
call fcn.180003e28
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x18]
lea rcx, [0x18015f720]
call fcn.1800ce4cc
lea rcx, str.shver
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str.shver
mov edx, eax
lea rcx, [rbp]
call fcn.180008324
mov rdx, qword [rbp + 0x30]
mov r8, rdx
mov edx, dword [rdx - 8]
lea rcx, [rbp]
call fcn.180008324
mov rdx, qword [0x18015f768]
mov qword [rbp + 8], rdx
lea rdx, [rbp + 0x38]
lea rcx, [0x180162940]
call fcn.18001b6f8
nop
mov r8, qword [rax]
lea rdx, str.uid_s
lea rcx, [rbp + 8]
call fcn.180008f64
nop
mov rcx, qword [rbp + 0x38]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x180019633
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x180019633
mov rcx, qword [rbp + 0x38]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
mov rax, qword [rbp + 8]
mov r8, rax
mov edx, dword [rax - 8]
lea rcx, [rbp]
call fcn.180008324
mov r8d, ebx
lea rdx, str.rcnt_d
lea rcx, [rbp + 8]
call fcn.180008f64
mov rdx, qword [rbp + 8]
mov r8, rdx
mov edx, dword [rdx - 8]
lea rcx, [rbp]
call fcn.180008324
xor ecx, ecx
call fcn.1800d1cf8
mov rbx, rax
lea rcx, [0x180162138]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
movsxd rdi, dword [0x1801620e8]
lea rcx, [0x180162138]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
sub rbx, rdi
mov r8d, ebx
lea rdx, str.instd_d
lea rcx, [rbp + 8]
call fcn.180008f64
mov rdx, qword [rbp + 8]
mov r8, rdx
mov edx, dword [rdx - 8]
lea rcx, [rbp]
call fcn.180008324
lea rcx, str.subinst
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea r8, str.subinst
mov edx, eax
lea rcx, [rbp]
call fcn.180008324
lea rdx, [rbp + 0x48]
lea rcx, [0x180162ea0]
call fcn.180019f7c
nop
mov rax, qword [rax]
mov r8, rax
mov edx, dword [rax - 8]
lea rcx, [rbp]
call fcn.180008324
nop
mov rcx, qword [rbp + 0x48]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x18001972c
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x18001972c
mov rcx, qword [rbp + 0x48]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
lea rdx, [0x18011794c]
lea rcx, [rbp + 0x50]
call fcn.1800041c0
nop
mov rdi, qword [r12]
cmp dword [rdi - 0xc], r13d
jl 0x180019752
mov qword [rbp + 0x20], rdi
lock add dword [rdi - 0xc], 1
jmp 0x18001977e
mov rax, qword [0x18015f768]
mov qword [rbp + 0x20], rax
cmp rdi, r13
jne 0x180019767
mov eax, r13d
jmp 0x180019770
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov r8, rdi
mov edx, eax
lea rcx, [rbp + 0x20]
call fcn.180003e28
lea r8, [rbp + 0x20]
lea rdx, [rbp + 0x58]
lea rcx, [0x180162ea0]
call fcn.18001a3f4
nop
mov rax, qword [rax]
mov r8, rax
mov edx, dword [rax - 8]
lea rcx, [rbp + 0x50]
call fcn.180008324
nop
mov rcx, qword [rbp + 0x58]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x1800197cf
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x1800197cf
mov rcx, qword [rbp + 0x58]
add rcx, 0xfffffffffffffff4
call fcn.1800d1434
mov rbx, qword [rbp + 0x50]
cmp rbx, r13
jne 0x1800197e0
mov rdx, r13
jmp 0x180019862
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_lstrlenW]
lea edx, [rax + 1]
cmp edx, 0x3fffffff
jle 0x1800197f9
mov rdx, r13
jmp 0x180019862
movsxd rax, edx
add rax, rax
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x180019812
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1800f12f0
sub rsp, rcx
lea rdi, [rsp + 0x40]
cmp rdi, r13
je 0x18001985f
mov byte [rdi], r13b
lea eax, [rdx + rdx]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], eax
mov qword [rsp + 0x20], rdi
mov r9d, r14d
mov r8, rbx
xor edx, edx
lea ecx, [rdx + 3]
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
neg eax
sbb rdx, rdx
and rdx, rdi
jmp 0x180019862
mov rdx, r13
mov qword [rbp + 0x90], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x88], r13
mov byte [rbp + 0x78], r13b
xor eax, eax
mov rcx, r14
mov rdi, rdx
repne scasb al, byte [rdi]
not rcx
lea r8, [rcx - 1]
lea rcx, [rbp + 0x70]
call fcn.180003768
nop
lea rcx, vtable.CJobMgr.0
call fcn.18001c560
mov dword [rsp + 0x20], r13d
lea r9, [0x180018cb8]
lea r8, [rbp + 0x70]
lea rdx, [rbp]
lea rcx, vtable.CJobMgr.0
call fcn.18001c8d8
mov dword [0x180162f10], eax
cmp qword [rbp + 0x90], 0x10
jb 0x1800198d8
mov rcx, qword [rbp + 0x78]
call fcn.1800d1290
mov qword [rbp + 0x90], reloc.WS2_32.dll_ntohs
mov qword [rbp + 0x88], r13
mov byte [rbp + 0x78], r13b
lea rcx, [rbx - 0xc]
cmp rcx, r15
je 0x18001990c
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x18001990c
call fcn.1800d1434
nop
mov rcx, qword [rbp + 8]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x18001992e
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x18001992e
call fcn.1800d1434
nop
mov rcx, qword [rbp + 0x30]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x180019950
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x180019950
call fcn.1800d1434
nop
cmp rsi, r15
je 0x18001996d
mov eax, r14d
lock xadd dword [rsi], eax
add eax, r14d
cmp eax, r13d
jg 0x18001996d
mov rcx, rsi
call fcn.1800d1434
nop
mov rcx, qword [rbp + 0x40]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x18001998f
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x18001998f
call fcn.1800d1434
nop
mov rcx, qword [rbp]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x1800199b1
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x1800199b1
call fcn.1800d1434
nop
mov rcx, qword [r12]
add rcx, 0xfffffffffffffff4
cmp rcx, r15
je 0x1800199da
mov eax, r14d
lock xadd dword [rcx], eax
add eax, r14d
cmp eax, r13d
jg 0x1800199da
mov rcx, qword [r12]
sub rcx, 0xc
call fcn.1800d1434
mov rcx, qword [rbp + 0x98]
xor rcx, rbp
call fcn.1800d12b0
mov rbx, qword [rbp + 0xd0]
mov rsi, qword [rbp + 0xe0]
mov rdi, qword [rbp + 0xe8]
lea rsp, [rbp + 0xa0]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret