Function at 0x18005cbf0
Capabilities:
Get process image filename

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov qword [rbp - 1], 0xfffffffffffffffe
mov qword [rsp + 0xf8], rbx
mov eax, r8d
mov r14, rcx
xor r15d, r15d
mov dword [rbp - 0x69], r15d
mov qword [rbp - 0x61], r15
mov r8d, edx
xor edx, edx
mov ecx, eax
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rsi, rax
test rax, rax
je 0x18005d0bf
lea rcx, [rbp - 0x61]
call fcn.18003e6e0
mov qword [rbp - 0x61], rsi
call fcn.180039cb0
mov rcx, rax
test rax, rax
je 0x18005d017
mov rax, qword [rax]
call qword [rax + 0x18]
lea rbx, [rax + 0x18]
mov qword [rbp + 0x7f], rbx
mov edi, 0x104
nop dword [rax]
nop word [rax + rax]
mov ecx, 1
sub ecx, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, edi
or eax, ecx
jge 0x18005cca0
mov edx, edi
lea rcx, [rbp + 0x7f]
call fcn.18003a2f0
mov rbx, qword [rbp + 0x7f]
test edi, edi
js 0x18005d0a4
cmp edi, dword [rbx - 0xc]
jg 0x18005d0a4
mov dword [rbx - 0x10], edi
movsxd rax, edi
mov word [rbx + rax*2], r15w
mov r8d, edi
mov rdx, rbx
mov rcx, rsi
call sub.PSAPI.DLL_GetProcessImageFileNameW
test eax, eax
jne 0x18005ccf4
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x18005cce7
add edi, 0x104
js 0x18005d032
jmp 0x18005cc80
test eax, eax
jg 0x18005d04d
jmp 0x18005d055
movsxd rdx, dword [rbx - 0xc]
mov rcx, rbx
call fcn.1800c1660
test eax, eax
js 0x18005d089
cmp eax, dword [rbx - 0xc]
jg 0x18005d089
mov dword [rbx - 0x10], eax
cdqe
mov word [rbx + rax*2], r15w
mov qword [rbp - 0x59], r15
mov qword [rbp - 0x51], r15
mov dword [rbp - 0x49], SafeArrayGetLBound
mov dword [rbp - 0x45], 0x3f400000
mov dword [rbp - 0x41], 0x3e800000
mov dword [rbp - 0x3d], 0x40100000
mov eax, 0xffffffff
mov qword [rbp - 0x39], rax
mov qword [rbp - 0x31], r15
mov dword [rbp - 0x29], r15d
mov dword [rbp - 0x25], 0xa
mov qword [rbp - 0x21], r15
mov qword [rbp - 0x19], r15
mov dword [rbp - 0x45], 0x3f400000
mov dword [rbp - 0x41], 0x3e800000
mov dword [rbp - 0x3d], 0x40100000
movss xmm0, dword [0x1800fdc78]
movaps xmm2, xmm0
mulss xmm2, dword [0x1800fdc74]
xor ecx, ecx
movabs rdx, 0x8000000000000000
movss xmm1, dword [0x1800fdc7c]
comiss xmm2, xmm1
jb 0x18005cdac
subss xmm2, xmm1
comiss xmm2, xmm1
jae 0x18005cdac
mov rcx, rdx
cvttss2si rax, xmm2
add rax, rcx
mov qword [rbp - 0x39], rax
mulss xmm0, dword [0x1800fdc70]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18005cdd3
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18005cdd3
mov rcx, rdx
cvttss2si rax, xmm0
add rax, rcx
mov qword [rbp - 0x31], rax
cmp rax, 0x11
cmovb rax, r15
mov qword [rbp - 0x31], rax
lea rcx, [rbp - 0x59]
call fcn.18004fab0
cmp qword [rbp - 0x51], 0
je 0x18005cea1
mov eax, r15d
mov r10, qword [rbp - 0x59]
mov r9d, dword [rbp - 0x49]
test r9d, r9d
je 0x18005ce20
nop
mov edi, eax
cmp qword [r10 + rdi*8], 0
jne 0x18005ce35
inc eax
cmp eax, r9d
jb 0x18005ce10
mov rdi, r15
test rdi, rdi
je 0x18005cea1
mov rsi, rdi
test rdi, rdi
jne 0x18005ce3b
mov rdi, r15
jmp 0x18005ce6b
mov rdi, qword [r10 + rdi*8]
jmp 0x18005ce23
mov r8, qword [rdi + 0x38]
test r8, r8
jne 0x18005ce68
mov r8, r15
xor edx, edx
mov eax, dword [rdi + 0x40]
div r9d
inc edx
cmp edx, r9d
jae 0x18005ce68
mov rcx, qword [r10 + rdx*8]
test rcx, rcx
cmovne r8, rcx
inc edx
test r8, r8
je 0x18005ce51
mov rdi, r8
mov rcx, qword [rsi]
movsxd r8, dword [rcx - 0x10]
mov rdx, rbx
call fcn.1800c3250
test eax, eax
je 0x18005ce8d
test rdi, rdi
je 0x18005cea1
mov r9d, dword [rbp - 0x49]
mov r10, qword [rbp - 0x59]
jmp 0x18005ce28
mov r8, qword [rsi + 0x30]
mov rdx, qword [rsi]
lea rcx, [rbp + 0x7f]
call fcn.18005d670
mov rbx, qword [rbp + 0x7f]
or esi, 0xffffffff
cmp dword [rbx - 0x10], 0
jl 0x18005cf74
lea rdx, str.DeviceMup
mov rcx, rbx
call fcn.1800b1e40
test rax, rax
je 0x18005cf74
sub rax, rbx
sar rax, 1
test eax, eax
jne 0x18005cf74
mov r8d, dword [rbx - 0x10]
add r8d, 0xfffffff5
lea rdx, [rbp - 9]
lea rcx, [rbp + 0x7f]
call fcn.18005d980
nop
mov rdx, qword [rax]
lea rcx, [rdx - 0x18]
add rbx, 0xffffffffffffffe8
cmp rcx, rbx
je 0x18005cf41
cmp dword [rbx + 0x10], 0
jl 0x18005cf33
mov rax, qword [rbx]
cmp qword [rcx], rax
jne 0x18005cf33
call fcn.18003a990
mov rdi, rax
mov ecx, esi
lock xadd dword [rbx + 0x10], ecx
sub ecx, 1
jg 0x18005cf29
mov rcx, qword [rbx]
mov r8, qword [rcx]
mov rdx, rbx
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea rax, [rdi + 0x18]
mov qword [rbp + 0x7f], rax
jmp 0x18005cf41
mov r8d, dword [rdx - 0x10]
lea rcx, [rbp + 0x7f]
call fcn.18003a350
nop
mov rdx, qword [rbp - 9]
add rdx, 0xffffffffffffffe8
mov eax, esi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x18005cf5e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
lea r8, [0x1800fe2f0]
xor edx, edx
lea rcx, [rbp + 0x7f]
call fcn.18005d0e0
mov rbx, qword [rbp + 0x7f]
xor eax, eax
mov qword [r14], rax
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rax
mov qword [r14 + 0x18], rax
mov qword [r14 + 0x20], rax
xor edx, edx
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
test eax, eax
jne 0x18005cfb2
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jle 0x18005cfac
movzx eax, ax
or eax, 0x80070000
test eax, eax
js 0x18005d071
lea rdi, [r14 + 0x28]
mov qword [rbp + 7], rdi
lea rcx, [rbx - 0x18]
call fcn.18003a990
add rax, 0x18
mov qword [rdi], rax
mov dword [rbp - 0x69], 1
lea rcx, [rbp - 0x59]
call fcn.18005acd0
nop
lock xadd dword [rbx - 8], esi
sub esi, 1
jg 0x18005cff4
mov rcx, qword [rbx - 0x18]
mov rax, qword [rcx]
lea rdx, [rbx - 0x18]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
lea rcx, [rbp - 0x61]
call fcn.18003e6e0
mov rax, r14
mov rbx, qword [rsp + 0xf8]
add rsp, 0xc0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
xor r9d, r9d
mov r8d, 0xcd
lea rdx, str.C:dvsp4_build_sw_toolswin32msvc141u5VC_atlmfcinclude_atlsimpstr.h
mov ecx, 0x80004005
call fcn.18003abe0
nop
xor r9d, r9d
mov r8d, 0x325
lea rdx, str.C:dvsp4_build_sw_toolswin32msvc141u5VC_atlmfcinclude_atlsimpstr.h
mov ecx, 0x80070057
call fcn.18003abe0
int3
movzx eax, ax
or eax, 0x80070000
mov edx, eax
lea rcx, [rbp + 0xf]
call fcn.18005abb0
lea rdx, [0x18015e3c8]
lea rcx, [rbp + 0xf]
call fcn.1800b2060
nop
xor r9d, r9d
mov r8d, 0xc3
lea rdx, str.C:dvsp4_build_sw_toolswin32msvc141u5VC_atlmfcinclude_atlcore.h
mov ecx, eax
call fcn.18003abe0
nop
xor r9d, r9d
mov r8d, 0x368
lea rdx, str.C:dvsp4_build_sw_toolswin32msvc141u5VC_atlmfcinclude_atlsimpstr.h
mov ecx, 0x80070057
call fcn.18003abe0
int3
xor r9d, r9d
mov r8d, 0x368
lea rdx, str.C:dvsp4_build_sw_toolswin32msvc141u5VC_atlmfcinclude_atlsimpstr.h
mov ecx, 0x80070057
call fcn.18003abe0
nop
call fcn.180039260
int3