Function at 0x140047530
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x350
lea rbp, [rsp + 0x60]
and rbp, 0xffffffffffffffe0
mov rax, qword [0x14014b0c0]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
movabs rax, 0xbc9c2c25bd9c1f4a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0xaf6a32d522ca43a3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0x7fb2c99dde4bbab5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
movabs rdi, 0x73195fe0e77beb38
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
movabs r13, 0xbcf22c57bdf91f21
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x270], rax
movabs rsi, 0xaf5832e622a643c6
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x278], rax
movabs r14, 0x7fdec9f1de2fba9b
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x280], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x288], rax
vmovdqu ymm0, ymmword [rbp + 0x60]
vpxor ymm1, ymm0, ymmword [rbp + 0x270]
vmovdqu ymmword [rbp + 0x60], ymm1
lea rcx, [rbp + 0x60]
vzeroupper
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov r8, rax
movabs rax, 0xd3bb4934d48f7a65
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x20], rcx
movabs rax, 0xaf345d9456c82c85
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x28], rcx
mov qword [rbp], r13
mov rcx, qword [rbp]
mov qword [rbp + 0x240], rcx
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x248], rax
movdqa xmm0, xmmword [rbp + 0x20]
xorps xmm0, xmmword [rbp + 0x240]
movdqa xmmword [rbp + 0x20], xmm0
lea rdx, [rbp + 0x20]
mov rcx, r8
call fcn.140046f30
mov qword [0x14014c770], rax
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
imul eax, ebx
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
movabs rbx, 0xbcae2c79bda51f7d
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs r15, 0xaf58328a22c74388
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x250], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x258], rax
movdqa xmm0, xmmword [rbp + 0x30]
xorps xmm0, xmmword [rbp + 0x250]
movdqa xmmword [rbp + 0x30], xmm0
xor r12d, r12d
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp + 0x30]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov r8, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x140047820
movabs rax, 0xbc975f38d1ba6b6f
mov qword [rbp], rax
mov rcx, qword [rbp]
mov qword [rbp + 0x10], rcx
mov qword [rbp], rsi
mov rcx, qword [rbp]
mov qword [rbp + 0x18], rcx
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x220], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x228], rax
movdqa xmm0, xmmword [rbp + 0x10]
xorps xmm0, xmmword [rbp + 0x220]
movdqa xmmword [rbp + 0x10], xmm0
movabs rax, 0xd096023bd19d6b4f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0xaf5832e622a643aa
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x210], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x218], rax
movdqa xmm0, xmmword [rbp + 0x40]
xorps xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0x40], xmm0
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x40]
call fcn.14004cca0
lea rax, [r12 - 1]
jmp 0x140047f1b
xorps xmm0, xmm0
xor eax, eax
movups xmmword [0x14014c790], xmm0
movups xmmword [0x14014c7a0], xmm0
movups xmmword [0x14014c7b0], xmm0
movups xmmword [0x14014c7c0], xmm0
movups xmmword [0x14014c7d0], xmm0
movups xmmword [0x14014c7e0], xmm0
mov dword [0x14014c7f0], eax
movabs rax, 0xd4954a32d99a7d40
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rax, 0xdf375c8b4ecd29af
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0x7a9bf84aa5cc8ea
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
movabs rax, 0x355c1ba3a53a9141
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x98], rax
movabs rax, 0xfc8ef2583a5c6fb2
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa0], rax
movabs rax, 0xd82a3921c1d0e0b5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xa8], rax
movabs rax, 0xe958892dcd9020a8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0xb0], rax
movabs rcx, 0x7d1bb22c49305d4c
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0xb8], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x2a0], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x2a8], rax
mov qword [rbp], r14
mov rax, qword [rbp]
mov qword [rbp + 0x2b0], rax
mov qword [rbp], rdi
mov rax, qword [rbp]
mov qword [rbp + 0x2b8], rax
movabs rax, 0xb2c3be13701527f5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c0], rax
movabs rax, 0x8e7f6d729381b0fa
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2c8], rax
movabs rax, 0xe958892d97c978ff
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x2d0], rax
mov qword [rbp], rcx
mov rax, qword [rbp]
mov qword [rbp + 0x2d8], rax
vmovdqu ymm0, ymmword [rbp + 0x80]
vpxor ymm1, ymm0, ymmword [rbp + 0x2a0]
vmovdqa ymmword [rbp + 0x80], ymm1
vmovdqu ymm0, ymmword [rbp + 0xa0]
vpxor ymm1, ymm0, ymmword [rbp + 0x2c0]
vmovdqa ymmword [rbp + 0xa0], ymm1
vxorps xmm0, xmm0, xmm0
vmovups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], r12
mov qword [rbp + 0xf8], r12
lea rax, [rbp + 0x80]
mov r8, 0xffffffffffffffff
vzeroupper
nop
inc r8
cmp byte [rax + r8], r12b
jne 0x140047a10
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xe0]
call fcn.14004ebe0
nop
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x66666667
imul r8d
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
lea ecx, [rdx + rdx*4]
shl ecx, 2
sub r8d, ecx
add r8d, 0xa
movsxd rdi, r8d
test r8d, r8d
jle 0x140047ad2
mov rbx, r12
movabs r14, 0x842108421084211
lea r15, [0x14014c790]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
movsxd rcx, eax
mov rax, r14
mul rcx
mov rax, rcx
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 4
imul rax, rax, 0x1f
sub rcx, rax
lea rax, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rax, qword [rbp + 0xe0]
movzx eax, byte [rax + rcx]
mov byte [rbx + r15], al
inc rbx
cmp rbx, rdi
jl 0x140047a71
movabs rbx, 0xbcae2c79bda51f7d
movabs r15, 0xaf58328a22c74388
lea rcx, [rbp + 0xc0]
call fcn.140047290
nop
cmp qword [rbp + 0xd0], 0
je 0x140047e6a
lea rcx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 7
cmova rcx, qword [rbp + 0xc0]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wremove]
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x100]
call sub.VCRUNTIME140.dll_memset
lea rdx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 7
cmova rdx, qword [rbp + 0xc0]
lea rcx, [rbp + 0x100]
call fcn.14004c350
nop
mov r8d, 0x8708
lea rdx, [0x14010bfa0]
lea rcx, [rbp + 0x100]
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::write_char_const____ptr64__long_long___int64_____ptr64]
mov rcx, qword [rax]
movsxd rcx, dword [rcx + 4]
add rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_bool___cdecl_std::ios_base::operator__void_const___ptr64]
lea rcx, [rbp + 0x108]
test al, al
je 0x140047c05
call fcn.14004c900
test rax, rax
jne 0x140047ba8
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x100]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x100], rax
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0xfc], edx
lea rcx, [rbp + 0x108]
call fcn.14004c2a0
lea rcx, [rbp + 0x110]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1a8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
jmp 0x140047e6a
call fcn.14004c900
test rax, rax
jne 0x140047c32
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x100]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x100], rax
mov rax, qword [rbp + 0x100]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0xfc], edx
lea rcx, [rbp + 0x108]
call fcn.14004c2a0
lea rcx, [rbp + 0x110]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0x1a8]
call qword [sym.imp.MSVCP140.dll_public_virtual:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::destructor_void____ptr64]
lea rcx, [rbp + 0xc0]
call fcn.140051b80
test al, al
jne 0x140047cbc
lea rcx, [rbp + 0xc0]
cmp qword [rbp + 0xd8], 7
cmova rcx, qword [rbp + 0xc0]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wremove]
jmp 0x140047e6a
mov qword [rbp], rbx
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
mov qword [rbp], r15
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x260], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x268], rax
movdqa xmm0, xmmword [rbp + 0x50]
xorps xmm0, xmmword [rbp + 0x260]
movdqa xmmword [rbp + 0x50], xmm0
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0xc0000000
lea rcx, [rbp + 0x50]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140047e62
movabs rax, 0xd09c5e3cce966b4f
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x10], rax
movabs rax, 0xaf5832e647de26e8
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x18], rax
mov qword [rbp], r13
mov rax, qword [rbp]
mov qword [rbp + 0x210], rax
mov qword [rbp], rsi
mov rax, qword [rbp]
mov qword [rbp + 0x218], rax
movdqa xmm0, xmmword [rbp + 0x10]
xorps xmm0, xmmword [rbp + 0x210]
movdqa xmmword [rbp + 0x10], xmm0
xorps xmm0, xmm0
movups xmmword [rbp + 0x220], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x230], xmm1
lea rax, [rbp + 0x10]
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140047dc0
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x220]
call fcn.14004ebe0
nop
lea rcx, [rbp + 0x220]
call fcn.140053140
mov qword [0x14014c788], rax
mov rdx, qword [rbp + 0x238]
cmp rdx, 0xf
jbe 0x140047e39
inc rdx
mov rcx, qword [rbp + 0x220]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047e2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140047e2d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400f1e50
mov rax, qword [0x14014c788]
mov rcx, rbx
test rax, rax
je 0x140047e65
call fcn.14004a2d0
mov rcx, rbx
test al, al
je 0x140047e65
call fcn.14004add0
mov rcx, rbx
test al, al
je 0x140047e65
call fcn.140049080
test al, al
jne 0x140047e71
mov rcx, rbx
call fcn.140047f50
mov rbx, 0xffffffffffffffff
mov rdx, qword [rbp + 0xd8]
cmp rdx, 7
jbe 0x140047eba
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047eb5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140047eb5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400f1e50
mov qword [rbp + 0xd0], r12
mov qword [rbp + 0xd8], 7
mov word [rbp + 0xc0], r12w
mov rdx, qword [rbp + 0xf8]
cmp rdx, 0xf
jbe 0x140047f18
inc rdx
mov rcx, qword [rbp + 0xe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140047f13
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140047f13
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400f1e50
mov rax, rbx
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.1400f1a00
lea r11, [rsp + 0x350]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret