Function at 0x18009f150
Capabilities:
Delete file
Get common file path

Disassembly:
mov rax, rsp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x4a0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
mov rax, qword [0x180267080]
xor rax, rsp
mov qword [rsp + 0x490], rax
mov rsi, rcx
cmp byte [rcx + 0x30], 0
jne 0x18009f19a
xor al, al
jmp 0x18009f48d
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
je 0x18009f48b
cmp qword [rcx + 0x38], 0
jne 0x18009f48b
lea rdx, [rsp + 0x280]
mov ecx, 0x100
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
xor r13d, r13d
test eax, eax
jne 0x18009f1d6
call fcn.180085cd0
jmp 0x18009f2a2
cmp eax, 0x100
ja 0x18009f193
lea r9, [rsp + 0x70]
xor r8d, r8d
lea rdx, [0x1801e47a0]
lea rcx, [rsp + 0x280]
call qword [sym.imp.KERNEL32.dll_GetTempFileNameW]
test eax, eax
jne 0x18009f208
call fcn.180085cd0
jmp 0x18009f2a2
mov word [rsp + 0x276], r13w
mov r9, 0xffffffffffffffff
lea r8, [rsp + 0x70]
mov edx, 0x101
lea rcx, [rsi + 0x48]
call fcn.180188c1c
test eax, eax
je 0x18009f253
cmp eax, 0xc
je 0x18009f4be
cmp eax, 0x16
je 0x18009f4d4
cmp eax, 0x22
je 0x18009f4d4
cmp eax, 0x50
jne 0x18009f4c9
mov dword [rsp + 0x48], 0x18
mov qword [rsp + 0x50], r13
mov dword [rsp + 0x58], 1
mov dword [rsi + 0x24c], 0xc0000000
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov dword [rsp + 0x28], 0x2100
mov dword [rsp + 0x20], 2
xor r9d, r9d
mov r8d, 0xc0000000
lea rdx, [rsi + 0x48]
lea rcx, [rsi + 0x38]
call fcn.18009dc90
test eax, eax
js 0x18009f193
mov rax, qword [rsi]
mov rbx, qword [rax]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x40]
mov edi, eax
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + 0x48]
imul edi, eax
shl edi, 2
mov r15d, edi
mov rax, qword [rsi + 8]
sub rax, qword [rsi]
sar rax, 4
imul rax, r15
mov qword [rsp + 0x60], rax
xor r9d, r9d
lea r8, [rsp + 0x64]
mov edx, eax
mov rcx, qword [rsi + 0x38]
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, 0xffffffff
jne 0x18009f303
call fcn.180085cd0
test eax, eax
js 0x18009f316
mov rcx, qword [rsi + 0x38]
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
test eax, eax
jne 0x18009f316
call fcn.180085cd0
mov qword [rsp + 0x60], r13
mov rdx, qword [rsi + 0x38]
lea rcx, [rsp + 0x60]
call fcn.1800e3450
nop
mov rbp, r13
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
sub rax, rdx
sar rax, 4
mov rbx, qword [rsp + 0x60]
test rax, rax
je 0x18009f419
mov r14, r13
nop dword [rax]
mov rcx, qword [rdx + r14]
mov rax, qword [rcx]
call qword [rax + 0x58]
mov rdi, rax
test rax, rax
je 0x18009f465
test r15, r15
je 0x18009f3e6
mov rdx, qword [rbx + 0x38]
add rdx, r15
cmp rdx, qword [rbx + 0x30]
jbe 0x18009f37d
xor dil, dil
jmp 0x18009f3e9
mov rcx, rbx
call fcn.18009df10
xor edx, edx
mov rax, qword [rbx + 0x38]
div qword [0x180270368]
mov r13, rdx
imul rax, qword [0x180270368]
lea r8, [r15 + rdx]
mov dword [rsp + 0x28], 2
mov dword [rsp + 0x20], 4
mov r9, rax
mov rdx, qword [rbx + 0x28]
mov rcx, rbx
call fcn.18009de00
test eax, eax
jns 0x18009f3c9
xor dil, dil
jmp 0x18009f3e9
mov rcx, qword [rbx]
add rcx, r13
mov r8, r15
mov rdx, rdi
call fcn.1801801b0
add qword [rbx + 0x38], r15
mov rcx, rbx
call fcn.18009df10
mov dil, 1
mov rax, qword [rsi]
mov rcx, qword [r14 + rax]
mov rax, qword [rcx]
call qword [rax + 0x60]
test dil, dil
je 0x18009f465
inc rbp
add r14, 0x10
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
sub rax, rdx
sar rax, 4
cmp rbp, rax
jb 0x18009f350
lea rcx, [rsi + 0x250]
call fcn.180035d80
mov rdx, qword [rsi + 8]
mov rcx, qword [rsi]
call fcn.18009c530
mov rax, qword [rsi]
mov qword [rsi + 8], rax
mov dil, 1
mov qword [rsp + 0x60], rbx
test rbx, rbx
je 0x18009f45f
mov qword [rsp + 0x60], rbx
mov rcx, rbx
call fcn.18009df10
mov edx, 0x48
mov rcx, rbx
call fcn.18017e41c
movzx eax, dil
jmp 0x18009f48d
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x18009f47c
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsi + 0x38], 0
lea rcx, [rsi + 0x48]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
xor dil, dil
jmp 0x18009f43b
mov al, 1
mov rcx, qword [rsp + 0x490]
xor rcx, rsp
call fcn.18017df00
lea r11, [rsp + 0x4a0]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov ecx, 0x8007000e
call fcn.180084510
int3
mov ecx, 0x80004005
call fcn.180084510
int3
mov ecx, 0x80070057
call fcn.180084510
int3