Function at 0x18009d440
Capabilities:
Get common file path

Disassembly:
push rbp
sub rsp, 0x40
lea rbp, [rsp + 0x40]
mov qword [rbp - 0x38], rcx
mov rax, qword [0x1800eb0a8]
xor rax, rbp
mov qword [rbp - 8], rax
mov ecx, dword [0x18184c8bc]
mov eax, dword [0x18184c8b8]
mov edx, ecx
add edx, 0xe0a1a44d
sub edx, 1
sub edx, 0xe0a1a44d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [rbp - 0x2a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [rbp - 0x29], al
mov dword [rbp - 0x30], 0xe40bbfba
mov eax, dword [rbp - 0x30]
mov dword [rbp - 0x3c], eax
sub eax, 0xae1045a6
je 0x18009d6e8
jmp 0x18009d4b3
mov eax, dword [rbp - 0x3c]
sub eax, 0xbf8dcef3
je 0x18009d7b0
jmp 0x18009d4c6
mov eax, dword [rbp - 0x3c]
sub eax, 0xdd8ddf6d
je 0x18009d677
jmp 0x18009d4d9
mov eax, dword [rbp - 0x3c]
sub eax, 0xdeb7a337
je 0x18009d683
jmp 0x18009d4ec
mov eax, dword [rbp - 0x3c]
sub eax, 0xe40bbfba
je 0x18009d5e8
jmp 0x18009d4ff
mov eax, dword [rbp - 0x3c]
sub eax, 0xe8db2dfb
je 0x18009d8b2
jmp 0x18009d512
mov eax, dword [rbp - 0x3c]
sub eax, 0xf3ca79eb
je 0x18009d831
jmp 0x18009d525
mov eax, dword [rbp - 0x3c]
sub eax, 0x69ed241
je 0x18009d6d1
jmp 0x18009d538
mov eax, dword [rbp - 0x3c]
sub eax, 0xc1ec017
je 0x18009d69a
jmp 0x18009d54b
mov eax, dword [rbp - 0x3c]
sub eax, 0x1813f923
je 0x18009d60e
jmp 0x18009d55e
mov eax, dword [rbp - 0x3c]
sub eax, 0x287a3887
je 0x18009d732
jmp 0x18009d571
mov eax, dword [rbp - 0x3c]
sub eax, 0x2d9a2493
je 0x18009d8c8
jmp 0x18009d584
mov eax, dword [rbp - 0x3c]
sub eax, 0x2e5861f0
je 0x18009d90e
jmp 0x18009d597
mov eax, dword [rbp - 0x3c]
sub eax, 0x53297913
je 0x18009d798
jmp 0x18009d5aa
mov eax, dword [rbp - 0x3c]
sub eax, 0x5ae436be
je 0x18009d8eb
jmp 0x18009d5bd
mov eax, dword [rbp - 0x3c]
sub eax, 0x5e9dcb25
je 0x18009d6b6
jmp 0x18009d5d0
mov eax, dword [rbp - 0x3c]
sub eax, 0x7058b8df
je 0x18009d7a4
jmp 0x18009d5e3
jmp 0x18009d915
mov al, byte [rbp - 0x2a]
mov cl, byte [rbp - 0x29]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x2d9a2493
mov ecx, 0x1813f923
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov rcx, qword [rbp - 0x38]
mov eax, 0x10
call fcn.1800e0a50
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
mov qword [rax], rcx
mov eax, dword [0x18184c8bc]
mov ecx, dword [0x18184c8b8]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x2d9a2493
mov ecx, 0xdd8ddf6d
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov dword [rbp - 0x30], 0xdeb7a337
jmp 0x18009d915
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x30], 0xc1ec017
jmp 0x18009d915
mov rax, qword [rbp - 0x20]
cmp rax, 0
setne al
and al, 1
mov byte [rbp - 0x11], al
mov dword [rbp - 0x30], 0x5e9dcb25
jmp 0x18009d915
mov dl, byte [rbp - 0x11]
mov eax, 0xbf8dcef3
mov ecx, 0x69ed241
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov qword [rbp - 0x10], rax
mov dword [rbp - 0x30], 0xae1045a6
jmp 0x18009d915
mov eax, dword [0x18184c8bc]
mov ecx, dword [0x18184c8b8]
xor r8d, r8d
sub r8d, 1
mov edx, eax
add edx, r8d
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5ae436be
mov ecx, 0x287a3887
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov rdx, qword [rbp - 0x10]
mov ecx, 0x104
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
add rsp, 0x20
mov eax, dword [0x18184c8bc]
mov ecx, dword [0x18184c8b8]
mov edx, eax
sub edx, 0xbf12e308
sub edx, 1
add edx, 0xbf12e308
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5ae436be
mov ecx, 0x53297913
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov dword [rbp - 0x30], 0x7058b8df
jmp 0x18009d915
mov dword [rbp - 0x30], 0xbf8dcef3
jmp 0x18009d915
mov ecx, dword [0x18184c8bc]
mov eax, dword [0x18184c8b8]
mov edx, ecx
sub edx, 0xf6a736ab
sub edx, 1
add edx, 0xf6a736ab
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and r11b, cl
mov r9b, r8b
and r9b, 0
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x2e5861f0
mov ecx, 0xf3ca79eb
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov ecx, dword [0x18184c8bc]
mov eax, dword [0x18184c8b8]
mov edx, ecx
sub edx, 0x238b9c03
sub edx, 1
add edx, 0x238b9c03
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete r11b
cmp eax, 0xa
setl r10b
mov al, r11b
xor al, 0xff
mov r8b, r10b
xor r8b, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and r11b, cl
mov r9b, r8b
and r9b, 0xff
and r10b, cl
or dl, r11b
or r9b, r10b
xor dl, r9b
or al, r8b
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x2e5861f0
mov ecx, 0xe8db2dfb
test dl, 1
cmovne eax, ecx
mov dword [rbp - 0x30], eax
jmp 0x18009d915
mov rcx, qword [rbp - 8]
xor rcx, rbp
sub rsp, 0x20
call fcn.1800e09d0
nop
mov rsp, rbp
pop rbp
ret
mov rcx, qword [rbp - 0x38]
mov eax, 0x10
call fcn.1800e0a50
sub rsp, rax
mov rax, rsp
mov qword [rax], rcx
mov dword [rbp - 0x30], 0x1813f923
jmp 0x18009d915
mov rdx, qword [rbp - 0x10]
mov ecx, 0x104
sub rsp, 0x20
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
add rsp, 0x20
mov dword [rbp - 0x30], 0x287a3887
jmp 0x18009d915
mov dword [rbp - 0x30], 0xf3ca79eb
jmp 0x18009d49d