Function at 0x180096380
Capabilities:
Get common file path
Set current directory

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rbx, rdx
mov rdi, rcx
lea rdx, [rbp]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
xor esi, esi
mov qword [rsp + 0x38], 0xf
mov qword [rsp + 0x30], rsi
lea rax, [rbp]
mov byte [rsp + 0x20], sil
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], sil
jne 0x1800963d4
lea rdx, [rbp]
lea rcx, [rsp + 0x20]
call fcn.1800b8fb0
mov r8d, 1
lea rdx, [0x180103e98]
lea rcx, [rsp + 0x20]
call fcn.1800b8790
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x70], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
mov rdx, qword [rsp + 0x38]
cmp rdx, 0x10
jb 0x18009645f
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009645a
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180096920
call fcn.1800c1180
xor r8d, r8d
lea rdx, [0x1800f99d0]
lea rcx, [0x180117258]
call fcn.1800b8fb0
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1800b8a30
mov rcx, rax
call fcn.180093fc0
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1800b8a30
mov rcx, rax
call fcn.1800956c0
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1800b8a30
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.180094b30
mov rdx, qword [rsp + 0x58]
cmp rdx, 0x10
jb 0x1800964f6
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800964f1
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180096926
call fcn.1800c1180
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1800b8a30
mov rcx, rax
call fcn.180095e50
cmp qword [rsp + 0x78], 0x10
lea rcx, [rsp + 0x60]
cmovae rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
cmp qword [0x1801173a8], rsi
je 0x180096858
cmp qword [rbx + 0x18], 0x10
mov rax, rbx
jb 0x18009653c
mov rax, qword [rbx]
cmp qword [rbx + 0x10], 1
jne 0x180096858
cmp byte [rax], 0x30
jne 0x180096858
mov ecx, dword [0x18011954c]
lea r9, [rbp - 0x2b]
test ecx, ecx
jns 0x1800965a0
neg ecx
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea r8d, [rax + rdx]
add r8b, r8b
sub cl, r8b
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x180096560
dec r9
mov byte [r9], 0x2d
jmp 0x1800965c9
dec r9
mov eax, 0xcccccccd
mul ecx
shr edx, 3
movzx eax, dl
shl al, 2
lea r8d, [rax + rdx]
add r8b, r8b
sub cl, r8b
add cl, 0x30
mov byte [r9], cl
mov ecx, edx
test edx, edx
jne 0x1800965a0
lea rax, [rbp - 0x2b]
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x58], 0xf
mov byte [rsp + 0x40], sil
cmp r9, rax
je 0x1800965f9
lea r8, [rbp - 0x2b]
mov rdx, r9
sub r8, r9
lea rcx, [rsp + 0x40]
call fcn.1800b8fb0
mov r9d, 9
lea r8, str.Firefox__
lea rcx, [rsp + 0x40]
call fcn.1800ba920
mov r8d, 2
lea rdx, [0x180103f68]
lea rcx, [rsp + 0x20]
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
call fcn.1800b8790
mov r8d, 2
lea rdx, [0x180103f64]
lea rcx, [rbp - 0x60]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x50], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
call fcn.1800b8790
lea rdx, [0x180117398]
lea rcx, [rbp - 0x80]
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
cmp qword [0x1801173b0], 0x10
mov r8, qword [0x1801173a8]
cmovae rdx, qword [0x180117398]
call fcn.1800b8790
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], sil
mov rdx, qword [0x1801173b0]
movups xmmword [rbp - 0x28], xmm0
movups xmmword [rbp - 0x18], xmm1
cmp rdx, 0x10
jb 0x180096727
mov rcx, qword [0x180117398]
inc rdx
cmp rdx, 0x1000
jb 0x18009671a
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x180096914
mov rcx, r8
call fcn.1800c1180
movups xmm0, xmmword [rbp - 0x28]
movups xmm1, xmmword [rbp - 0x18]
mov rdx, qword [rbp - 0x68]
movups xmmword [0x180117398], xmm0
movups xmmword [0x1801173a8], xmm1
cmp rdx, 0x10
jb 0x180096770
mov rcx, qword [rbp - 0x80]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009676b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009692c
call fcn.1800c1180
mov rdx, qword [rbp - 0x48]
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x68], 0xf
mov byte [rbp - 0x80], sil
cmp rdx, 0x10
jb 0x1800967bb
mov rcx, qword [rbp - 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800967b6
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009692c
call fcn.1800c1180
mov rdx, qword [rsp + 0x38]
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], sil
cmp rdx, 0x10
jb 0x180096808
mov rcx, qword [rsp + 0x20]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180096803
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009692c
call fcn.1800c1180
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x38], 0xf
mov byte [rsp + 0x20], sil
cmp rdx, 0x10
jb 0x180096858
mov rcx, qword [rsp + 0x40]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180096853
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009692c
call fcn.1800c1180
lea rdx, [0x180117398]
mov rcx, rdi
call fcn.1800b8a30
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x1800968a0
mov rcx, qword [rsp + 0x60]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x18009689b
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18009691a
call fcn.1800c1180
mov rdx, qword [rbx + 0x18]
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], 0xf
mov byte [rsp + 0x60], sil
cmp rdx, 0x10
jb 0x1800968e9
mov rcx, qword [rbx]
inc rdx
cmp rdx, 0x1000
jb 0x1800968e4
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x18009691a
mov rcx, r8
call fcn.1800c1180
lea r11, [rsp + 0x210]
mov qword [rbx + 0x10], rsi
mov byte [rbx], sil
mov rax, rdi
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x28]
mov qword [rbx + 0x18], 0xf
mov rbx, qword [r11 + 0x10]
mov rsp, r11
pop rbp
ret
call fcn.1800cc350
int3
call fcn.1800cc350
int3
call fcn.1800cc350
int3
call fcn.1800cc350
int3
call fcn.1800cc350
int3