Function at 0x1801e0b20
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 - 0x3a8]
sub rsp, 0x4a8
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov rax, qword [0x180332088]
xor rax, rsp
mov qword [rbp + 0x390], rax
mov r12, r9
mov rsi, r8
mov r14, rdx
mov r15, rcx
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x70]
call fcn.180233580
or rdi, 0xffffffffffffffff
xor ebx, ebx
cmp word [r14], bx
jne 0x1801e0b85
mov r8d, ebx
jmp 0x1801e0b9a
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp word [r14 + r8*2], bx
jne 0x1801e0b90
lea rcx, [r15 + 0x48]
mov rdx, r14
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
lea r13, str.gbk86.idx
test eax, eax
jne 0x1801e0bbd
mov rdx, r13
jmp 0x1801e0bcb
lea rdx, str.gbk98.idx
cmp eax, 1
cmovne rdx, r13
mov r8, rdi
nop
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0bd0
lea rcx, [r15 + 0x48]
call fcn.18005ffc0
cmp word [r14], bx
jne 0x1801e0bee
mov r8, rbx
jmp 0x1801e0bfb
mov r8, rdi
inc r8
cmp word [r14 + r8*2], bx
jne 0x1801e0bf1
lea rcx, [r15 + 0x68]
mov rdx, r14
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
jne 0x1801e0c1b
lea rdx, str.gbk86.dat
jmp 0x1801e0c30
lea rdx, str.gbk98.dat
lea rcx, str.gbk86.dat
cmp eax, 1
cmovne rdx, rcx
mov r8, rdi
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0c33
lea rcx, [r15 + 0x68]
call fcn.18005ffc0
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r9, str.__GS_SYS_GBK_IDX__
lea r8, str.WanNengWBInput
lea rdx, str._s_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e0c90
mov r8, rbx
jmp 0x1801e0caa
lea rax, [rsp + 0x70]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e0ca0
lea rcx, [r15 + 0x88]
lea rdx, [rsp + 0x70]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r9, str.__GS_SYS_GBK_DAT__
lea r8, str.WanNengWBInput
lea rdx, str._s_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e0d05
mov r8, rbx
jmp 0x1801e0d1a
lea rax, [rsp + 0x70]
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e0d10
lea rcx, [r15 + 0xa8]
lea rdx, [rsp + 0x70]
call fcn.18005c660
mov byte [r15 + 0xa], 0xd
mov rcx, r15
call fcn.1801b9ae0
test eax, eax
jne 0x1801e13ee
cmp word [rsi], bx
jne 0x1801e0d4a
mov r8, rbx
jmp 0x1801e0d5a
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rsi + r8*2], bx
jne 0x1801e0d50
mov rdx, rsi
lea rcx, [r15 + 0x48]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
jne 0x1801e0d76
mov rdx, r13
jmp 0x1801e0d84
lea rdx, str.gbk98.idx
cmp eax, 1
cmovne rdx, r13
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0d90
lea rcx, [r15 + 0x48]
call fcn.18005ffc0
cmp word [rsi], bx
jne 0x1801e0dad
mov r8, rbx
jmp 0x1801e0dba
mov r8, rdi
inc r8
cmp word [rsi + r8*2], bx
jne 0x1801e0db0
mov rdx, rsi
lea rcx, [r15 + 0x68]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
lea rsi, str.gbk86.dat
test eax, eax
jne 0x1801e0ddd
mov rdx, rsi
jmp 0x1801e0deb
lea rdx, str.gbk98.dat
cmp eax, 1
cmovne rdx, rsi
mov r8, rdi
nop
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0df0
lea rcx, [r15 + 0x68]
call fcn.18005ffc0
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r9, str.__GS_SYS_GBK_IDX__
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e0e4d
mov r8, rbx
jmp 0x1801e0e5f
lea rax, [rsp + 0x70]
mov r8, rdi
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e0e55
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0x88]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea rax, [0x1802ace18]
mov qword [rsp + 0x20], rax
lea r9, str.__GS_SYS_GBK_DAT__
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e0eba
mov r8, rbx
jmp 0x1801e0ecc
lea rax, [rsp + 0x70]
mov r8, rdi
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e0ec2
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0xa8]
call fcn.18005c660
mov rcx, r15
call fcn.1801b9ae0
test eax, eax
jne 0x1801e13ee
cmp word [r12], bx
jne 0x1801e0ef9
mov r8, rbx
jmp 0x1801e0f0a
mov r8, rdi
nop dword [rax]
inc r8
cmp word [r12 + r8*2], bx
jne 0x1801e0f00
mov rdx, r12
lea rcx, [r15 + 0x48]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
jne 0x1801e0f26
mov rdx, r13
jmp 0x1801e0f34
lea rdx, str.gbk98.idx
cmp eax, 1
cmovne rdx, r13
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0f40
lea rcx, [r15 + 0x48]
call fcn.18005ffc0
cmp word [r12], bx
jne 0x1801e0f5f
mov r8, rbx
jmp 0x1801e0f6c
mov r8, rdi
inc r8
cmp word [r12 + r8*2], bx
jne 0x1801e0f62
mov rdx, r12
lea rcx, [r15 + 0x68]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
jne 0x1801e0f88
mov rdx, rsi
jmp 0x1801e0f96
lea rdx, str.gbk98.dat
cmp eax, 1
cmovne rdx, rsi
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rdx + r8*2], bx
jne 0x1801e0fa0
lea rcx, [r15 + 0x68]
call fcn.18005ffc0
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea r12, [0x1802ace18]
mov qword [rsp + 0x20], r12
lea r9, str.__GS_SYS_GBK_IDX__
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e0ffd
mov r8, rbx
jmp 0x1801e100f
lea rax, [rsp + 0x70]
mov r8, rdi
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e1005
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0x88]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
mov qword [rsp + 0x20], r12
lea r9, str.__GS_SYS_GBK_DAT__
lea r8, str.WanNengWBInput
lea rdx, str._sBACK_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], bx
jne 0x1801e1063
mov r8, rbx
jmp 0x1801e107a
lea rax, [rsp + 0x70]
mov r8, rdi
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], bx
jne 0x1801e1070
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0xa8]
call fcn.18005c660
mov rcx, r15
call fcn.1801b9ae0
test eax, eax
jne 0x1801e13ee
mov qword [rsp + 0x60], 7
mov qword [rsp + 0x58], rbx
mov word [rsp + 0x48], bx
cmp word [r14], bx
jne 0x1801e10b9
mov r8, rbx
jmp 0x1801e10ca
mov r8, rdi
nop dword [rax]
inc r8
cmp word [r14 + r8*2], bx
jne 0x1801e10c0
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.18005c660
nop
mov eax, dword [r15 + 0xc8]
test eax, eax
jne 0x1801e10e8
mov rdx, r13
jmp 0x1801e10f6
lea rdx, str.gbk98.idx
cmp eax, 1
cmovne rdx, r13
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1801e1100
lea rcx, [rsp + 0x48]
call fcn.18005ffc0
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp + 0x180]
call fcn.180233580
lea rdx, [rbp + 0x180]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
cmp word [rbp + 0x180], 0
jne 0x1801e114a
mov r8, rbx
jmp 0x1801e115f
lea rax, [rbp + 0x180]
mov r8, rdi
inc r8
cmp word [rax + r8*2], 0
jne 0x1801e1154
lea rdx, [rbp + 0x180]
lea r12, [r15 + 0x48]
mov rcx, r12
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
je 0x1801e118e
cmp eax, 1
lea rax, str.gbk98.idx
cmovne rax, r13
mov r13, rax
mov r8, rdi
inc r8
cmp word [r13 + r8*2], 0
jne 0x1801e1191
mov rdx, r13
mov rcx, r12
call fcn.18005ffc0
cmp qword [r12 + 0x18], 8
jb 0x1801e11b4
mov r12, qword [r12]
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
mov rdx, r12
call fcn.180064870
cmp word [r14], 0
jne 0x1801e11d9
mov r8, rbx
jmp 0x1801e11eb
mov r8, rdi
nop dword [rax]
inc r8
cmp word [r14 + r8*2], 0
jne 0x1801e11e0
mov rdx, r14
lea rcx, [rsp + 0x48]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
lea r12, str.gbk98.dat
test eax, eax
jne 0x1801e120f
mov rdx, rsi
jmp 0x1801e1219
mov rdx, r12
cmp eax, 1
cmovne rdx, rsi
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x1801e1220
lea rcx, [rsp + 0x48]
call fcn.18005ffc0
cmp word [rbp + 0x180], 0
jne 0x1801e1244
mov r8, rbx
jmp 0x1801e125b
lea rax, [rbp + 0x180]
mov r8, rdi
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x1801e1250
lea rdx, [rbp + 0x180]
lea r14, [r15 + 0x68]
mov rcx, r14
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
test eax, eax
je 0x1801e1283
cmp eax, 1
cmovne r12, rsi
mov rsi, r12
mov r8, rdi
nop word [rax + rax]
inc r8
cmp word [rsi + r8*2], 0
jne 0x1801e1290
mov rdx, rsi
mov rcx, r14
call fcn.18005ffc0
cmp qword [r14 + 0x18], 8
jb 0x1801e12b0
mov r14, qword [r14]
lea rcx, [rsp + 0x48]
cmp qword [rsp + 0x60], 8
cmovae rcx, qword [rsp + 0x48]
mov rdx, r14
call fcn.180064870
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
lea rsi, [0x1802ace18]
mov qword [rsp + 0x20], rsi
lea r9, str.__GS_SYS_GBK_IDX__
lea r8, str.WanNengWBInput
lea rdx, str._sTEMP_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], 0
jne 0x1801e1314
mov r8, rbx
jmp 0x1801e132b
lea rax, [rsp + 0x70]
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1801e1320
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0x88]
call fcn.18005c660
mov eax, dword [r15 + 0xc8]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], 0x4e21
mov qword [rsp + 0x20], rsi
lea r9, str.__GS_SYS_GBK_DAT__
lea r8, str.WanNengWBInput
lea rdx, str._sTEMP_s_s_d__d
lea rcx, [rsp + 0x70]
call fcn.18005c530
cmp word [rsp + 0x70], 0
jne 0x1801e1380
mov rdi, rbx
jmp 0x1801e138f
lea rax, [rsp + 0x70]
inc rdi
cmp word [rax + rdi*2], 0
jne 0x1801e1385
mov r8, rdi
lea rdx, [rsp + 0x70]
lea rcx, [r15 + 0xa8]
call fcn.18005c660
mov rcx, r15
call fcn.1801b9ae0
nop
mov r8, qword [rsp + 0x60]
test eax, eax
jne 0x1801e13d6
cmp r8, 8
jb 0x1801e1456
inc r8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
call fcn.18005cac0
jmp 0x1801e1456
cmp r8, 8
jb 0x1801e13ee
inc r8
mov rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
call fcn.18005cac0
mov r8, qword [r15 + 0x28]
test r8, r8
je 0x1801e1456
mov rdx, qword [r15 + 0x38]
test rdx, rdx
je 0x1801e1456
mov rcx, rbx
lea r9, str.__GS__
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
inc rcx
cmp al, byte [r9 + rcx - 1]
jne 0x1801e1456
cmp rcx, 7
jne 0x1801e1410
lea rax, [r8 + 0x10]
mov qword [r15 + 0x30], rax
nop dword [rax]
movzx eax, byte [rdx + rbx]
inc rbx
cmp al, byte [r9 + rbx - 1]
jne 0x1801e1456
cmp rbx, 7
jne 0x1801e1430
lea rax, [rdx + 0x10]
mov qword [r15 + 0x40], rax
mov byte [r15 + 9], 1
lea eax, [rbx - 6]
jmp 0x1801e1458
xor eax, eax
mov rcx, qword [rbp + 0x390]
xor rcx, rsp
call fcn.1802037a0
add rsp, 0x4a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret