Function at 0x180002a00
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
mov rax, qword [0x18009f080]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov rdi, rcx
xor ebx, ebx
cmp byte [rcx + 0xa0], 1
je 0x180002a49
call fcn.180004130
mov rcx, rdi
call fcn.180004470
mov rcx, qword [rdi]
cmp rcx, 0xffffffffffffffff
je 0x180002a58
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.180006750
nop
mov rdx, rax
mov rcx, rdi
call fcn.180005530
mov esi, eax
mov rdx, qword [rsp + 0x48]
cmp rdx, 7
jbe 0x180002ab5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002ab0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180002daa
call fcn.1800188e0
test esi, esi
js 0x180002d7b
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.180006970
mov rcx, rax
mov r8, qword [rax + 0x10]
mov r10, qword [rax + 0x18]
mov rax, r10
sub rax, r8
cmp rax, 4
jb 0x180002b07
lea r9, [r8 + 4]
mov qword [rcx + 0x10], r9
mov rdx, rcx
cmp r10, 7
jbe 0x180002af5
mov rdx, qword [rcx]
mov rax, qword [str..sys]
mov qword [rdx + r8*2], rax
mov word [rdx + r9*2], bx
jmp 0x180002b27
mov qword [rsp + 0x20], 4
lea r9, str..sys
xor r8d, r8d
mov edx, 4
call fcn.18000b5b0
mov rcx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], rbx
mov qword [rbp - 0x68], rbx
movups xmm0, xmmword [rcx]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rcx + 0x10], rbx
mov qword [rcx + 0x18], 7
mov word [rcx], bx
mov rdx, qword [rsp + 0x48]
cmp rdx, 7
jbe 0x180002b96
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002b91
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180002db0
call fcn.1800188e0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], 7
mov word [rsp + 0x30], bx
cmp qword [rbp - 0x70], 0
jne 0x180002bba
mov esi, 0xc0000001
jmp 0x180002d3f
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp - 0x60]
call fcn.1800425f0
lea rdx, [rbp - 0x80]
cmp qword [rbp - 0x68], 7
cmova rdx, qword [rbp - 0x80]
lea rcx, [rbp - 0x60]
call fcn.180007b20
nop
call fcn.180027b94
movsxd rcx, eax
movabs rax, 0x1c926b9d39431d5f
imul rcx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul rax, rdx, 0x23d6df
sub rcx, rax
add ecx, 0xdd9d
movsxd r14, ecx
mov rcx, r14
call fcn.180018db4
mov rdi, rax
test r14, r14
je 0x180002c62
nop dword [rax]
call fcn.180027b94
mov r9d, eax
mov eax, 0x80808081
imul r9d
add edx, r9d
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0xff
sub r9d, ecx
mov byte [rdi + rbx], r9b
inc rbx
cmp rbx, r14
jb 0x180002c30
mov r8, r14
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.180007cc0
lea rcx, [rbp - 0x58]
call fcn.180008810
test rax, rax
jne 0x180002caf
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rbp + rcx - 0x18], 0
cmovne eax, edx
or eax, dword [rbp + rcx - 0x50]
and eax, 0x17
mov dword [rbp + rcx - 0x50], eax
and eax, dword [rbp + rcx - 0x4c]
jne 0x180002db6
mov rcx, rdi
call fcn.1800188e0
nop word [rax + rax]
lea rcx, [rbp - 0x80]
cmp qword [rbp - 0x68], 7
cmova rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x180002cc0
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x60], rax
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x64], edx
lea rcx, [rbp - 0x58]
call fcn.180007860
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x60], rax
mov rax, qword [rbp - 0x60]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx - 0x64], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0x48]
call fcn.180018018
nop
mov rdx, qword [rbp - 0x68]
cmp rdx, 7
jbe 0x180002d7b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180002d76
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180002da4
call fcn.1800188e0
mov eax, esi
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.1800188c0
lea r11, [rsp + 0x1c0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.180029990
int3
call fcn.180029990
nop
call fcn.180029990
nop
test al, 4
je 0x180002dc3
lea rbx, str.ios_base::badbit_set
jmp 0x180002dd7
test dl, al
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x30]
call fcn.180001480
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x58]
call fcn.180001c70
lea rdx, [0x18009d680]
lea rcx, [rsp + 0x58]
call fcn.18001ee08
int3