Function at 0x1801d60a0
Capabilities:
Get common file path

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3d8]
sub rsp, 0x4d8
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov rax, qword [0x180332088]
xor rax, rsp
mov qword [rbp + 0x3c0], rax
mov r14, r9
mov rsi, r8
mov rdi, rdx
mov r13, rcx
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x60]
call fcn.180233580
or rbx, 0xffffffffffffffff
xor r12d, r12d
cmp word [rdi], r12w
jne 0x1801d6105
mov r8d, r12d
jmp 0x1801d611a
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rdi + r8*2], r12w
jne 0x1801d6110
lea r15, [r13 + 0x48]
mov rdx, rdi
mov rcx, r15
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.idx
mov rcx, r15
call fcn.18005ffc0
cmp word [rdi], r12w
jne 0x1801d6149
mov r8, r12
jmp 0x1801d615a
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rdi + r8*2], r12w
jne 0x1801d6150
lea r12, [r13 + 0x68]
mov rdx, rdi
mov rcx, r12
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.dat
mov rcx, r12
call fcn.18005ffc0
mov qword [rbp - 0x70], 7
xor eax, eax
mov qword [rbp - 0x78], rax
mov word [rsp + 0x78], ax
lea r8d, [rax + 0x13]
lea rdx, str.__GS_SYS_WBRC_IDX__
lea rcx, [rsp + 0x78]
call fcn.18005c660
nop
mov qword [rsp + 0x50], 7
xor eax, eax
mov qword [rsp + 0x48], rax
mov word [rsp + 0x38], ax
lea r8d, [rax + 0x13]
lea rdx, str.__GS_SYS_WBRC_DAT__
lea rcx, [rsp + 0x38]
call fcn.18005c660
nop
lea r9, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae r9, qword [rsp + 0x78]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._s_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d6219
xor r8d, r8d
jmp 0x1801d622b
lea rax, [rbp - 0x60]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6220
lea rcx, [r13 + 0x88]
lea rdx, [rbp - 0x60]
call fcn.18005c660
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._s_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d6283
xor r8d, r8d
jmp 0x1801d629b
lea rax, [rbp - 0x60]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6290
lea rcx, [r13 + 0xa8]
lea rdx, [rbp - 0x60]
call fcn.18005c660
mov byte [r13 + 0xa], 0x37
mov rcx, r13
call fcn.1801b9ae0
test eax, eax
jne 0x1801d684a
cmp word [rsi], ax
jne 0x1801d62ca
xor r8d, r8d
jmp 0x1801d62db
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1801d62d0
mov rdx, rsi
mov rcx, r15
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.idx
mov rcx, r15
call fcn.18005ffc0
cmp word [rsi], 0
jne 0x1801d6306
xor r8d, r8d
jmp 0x1801d631b
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1801d6310
mov rdx, rsi
mov rcx, r12
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.dat
mov rcx, r12
call fcn.18005ffc0
lea r9, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae r9, qword [rsp + 0x78]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d6384
xor esi, esi
mov r8d, esi
jmp 0x1801d639d
lea rax, [rbp - 0x60]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6390
xor esi, esi
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0x88]
call fcn.18005c660
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d63f5
mov r8, rsi
jmp 0x1801d640b
lea rax, [rbp - 0x60]
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6400
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0xa8]
call fcn.18005c660
mov rcx, r13
call fcn.1801b9ae0
test eax, eax
jne 0x1801d684a
cmp word [r14], ax
jne 0x1801d6436
xor r8d, r8d
jmp 0x1801d644b
mov r8, rbx
nop dword [rax]
inc r8
cmp word [r14 + r8*2], 0
jne 0x1801d6440
mov rdx, r14
mov rcx, r15
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.idx
mov rcx, r15
call fcn.18005ffc0
cmp word [r14], 0
jne 0x1801d6477
xor r8d, r8d
jmp 0x1801d648b
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [r14 + r8*2], 0
jne 0x1801d6480
mov rdx, r14
mov rcx, r12
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.dat
mov rcx, r12
call fcn.18005ffc0
lea r9, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae r9, qword [rsp + 0x78]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d64f2
xor r8d, r8d
jmp 0x1801d650b
lea rax, [rbp - 0x60]
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6500
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0x88]
call fcn.18005c660
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov dword [rsp + 0x28], 0x4e20
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d6563
xor r8d, r8d
jmp 0x1801d657b
lea rax, [rbp - 0x60]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6570
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0xa8]
call fcn.18005c660
mov rcx, r13
call fcn.1801b9ae0
test eax, eax
jne 0x1801d684a
mov qword [rsp + 0x70], 7
xor eax, eax
mov qword [rsp + 0x68], rax
mov word [rsp + 0x58], ax
cmp word [rdi], ax
jne 0x1801d65ba
mov r8d, eax
jmp 0x1801d65ca
mov r8, rbx
nop dword [rax]
inc r8
cmp word [rdi + r8*2], ax
jne 0x1801d65c0
mov rdx, rdi
lea rcx, [rsp + 0x58]
call fcn.18005c660
nop
mov r8d, 8
lea rdx, str.wbrc.idx
lea rcx, [rsp + 0x58]
call fcn.18005ffc0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x1b0]
call fcn.180233580
lea rdx, [rbp + 0x1b0]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp word [rbp + 0x1b0], 0
jne 0x1801d6626
xor eax, eax
mov r8d, eax
jmp 0x1801d663b
lea rax, [rbp + 0x1b0]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6630
lea rdx, [rbp + 0x1b0]
mov rcx, r15
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.idx
mov rcx, r15
call fcn.18005ffc0
cmp qword [r15 + 0x18], 8
jb 0x1801d6669
mov r15, qword [r15]
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
mov rdx, r15
call fcn.180064870
cmp word [rdi], 0
jne 0x1801d6690
xor r15d, r15d
mov r8d, r15d
jmp 0x1801d66a1
mov r8, rbx
inc r8
cmp word [rdi + r8*2], 0
jne 0x1801d6693
xor r15d, r15d
mov rdx, rdi
lea rcx, [rsp + 0x58]
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.dat
lea rcx, [rsp + 0x58]
call fcn.18005ffc0
cmp word [rbp + 0x1b0], 0
jne 0x1801d66d4
mov r8, r15
jmp 0x1801d66eb
lea rax, [rbp + 0x1b0]
mov r8, rbx
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d66e0
lea rdx, [rbp + 0x1b0]
mov rcx, r12
call fcn.18005c660
mov r8d, 8
lea rdx, str.wbrc.dat
mov rcx, r12
call fcn.18005ffc0
cmp qword [r12 + 0x18], 8
jb 0x1801d671b
mov r12, qword [r12]
lea rcx, [rsp + 0x58]
cmp qword [rsp + 0x70], 8
cmovae rcx, qword [rsp + 0x58]
mov rdx, r12
call fcn.180064870
lea r9, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae r9, qword [rsp + 0x78]
mov dword [rsp + 0x28], 0x4e20
lea rdi, [0x1802ace18]
mov qword [rsp + 0x20], rdi
lea r8, str.WanNengWBInput
lea rdx, str._sTEMP_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d677b
mov r8, r15
jmp 0x1801d678d
lea rax, [rbp - 0x60]
mov r8, rbx
inc r8
cmp word [rax + r8*2], 0
jne 0x1801d6782
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0x88]
call fcn.18005c660
lea r9, [rsp + 0x38]
cmp qword [rsp + 0x50], 8
cmovae r9, qword [rsp + 0x38]
mov dword [rsp + 0x28], 0x4e20
mov qword [rsp + 0x20], rdi
lea r8, str.WanNengWBInput
lea rdx, str._sTEMP_s_s_d
lea rcx, [rbp - 0x60]
call fcn.18005c530
cmp word [rbp - 0x60], 0
jne 0x1801d67de
mov rbx, r15
jmp 0x1801d67ec
lea rax, [rbp - 0x60]
inc rbx
cmp word [rax + rbx*2], 0
jne 0x1801d67e2
mov r8, rbx
lea rdx, [rbp - 0x60]
lea rcx, [r13 + 0xa8]
call fcn.18005c660
mov rcx, r13
call fcn.1801b9ae0
nop
mov r8, qword [rsp + 0x70]
test eax, eax
jne 0x1801d6832
cmp r8, 8
jb 0x1801d68ca
inc r8
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x58]
call fcn.18005cac0
jmp 0x1801d68ca
cmp r8, 8
jb 0x1801d684a
inc r8
mov rdx, qword [rsp + 0x58]
lea rcx, [rsp + 0x58]
call fcn.18005cac0
mov rdx, qword [r13 + 0x28]
test rdx, rdx
je 0x1801d68ca
mov r8, qword [r13 + 0x38]
test r8, r8
je 0x1801d68ca
cmp dword [rdx + 0xc], 0x4e20
jne 0x1801d68ca
xor r9d, r9d
mov ecx, r9d
lea r10, str.__GS__
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r10 + rcx - 1]
jne 0x1801d68ca
cmp rcx, 7
jne 0x1801d6872
lea rax, [rdx + 0x10]
mov qword [r13 + 0x30], rax
cmp dword [r8 + 0xc], 0x4e20
jne 0x1801d68ca
mov rcx, r9
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [r10 + rcx - 1]
jne 0x1801d68ca
cmp rcx, 7
jne 0x1801d68a0
lea rax, [r8 + 0x10]
mov qword [r13 + 0x40], rax
mov byte [r13 + 9], 1
lea ebx, [rcx - 6]
xor r13d, r13d
jmp 0x1801d68d0
xor r13d, r13d
mov ebx, r13d
mov r8, qword [rsp + 0x50]
cmp r8, 8
jb 0x1801d68ed
inc r8
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x38]
call fcn.18005cac0
mov qword [rsp + 0x50], 7
mov qword [rsp + 0x48], r13
mov word [rsp + 0x38], r13w
mov r8, qword [rbp - 0x70]
cmp r8, 8
jb 0x1801d691d
inc r8
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.18005cac0
mov eax, ebx
mov rcx, qword [rbp + 0x3c0]
xor rcx, rsp
call fcn.1802037a0
add rsp, 0x4d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret