Function at 0x140002e10
Capabilities:
Move file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x310]
sub rsp, 0x410
mov rax, qword [0x1400980c0]
xor rax, rsp
mov qword [rbp + 0x300], rax
xor r15d, r15d
mov r8d, 0x104
lea rdx, [rbp + 0xf0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], r15
lea rax, [rbp + 0xf0]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], r15w
jne 0x140002e80
movabs rsi, 0x7ffffffffffffffe
cmp rbx, rsi
ja 0x1400033fe
movabs r14, 0x7fffffffffffffff
mov qword [rsp + 0x60], 7
cmp rbx, 7
ja 0x140002edd
mov qword [rsp + 0x58], rbx
add rbx, rbx
mov r8, rbx
lea rdx, [rbp + 0xf0]
lea rcx, [rsp + 0x48]
call sub.VCRUNTIME140.dll_memcpy
mov word [rsp + rbx + 0x48], r15w
jmp 0x140002f7e
mov rax, rbx
or rax, 7
cmp rax, rsi
jbe 0x140002eef
lea rcx, [r14 + r14]
jmp 0x140002f17
mov rsi, rax
mov ecx, 0xa
cmp rax, rcx
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, r14
ja 0x1400033f8
add rcx, rcx
cmp rcx, 0x1000
jb 0x140002f43
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400033f8
mov rcx, rax
call fcn.14007784c
test rax, rax
je 0x1400033b4
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x140002f55
test rcx, rcx
je 0x140002f52
call fcn.14007784c
mov rdi, rax
jmp 0x140002f55
mov rdi, r15
mov qword [rsp + 0x48], rdi
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rsi
add rbx, rbx
mov r8, rbx
lea rdx, [rbp + 0xf0]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rdi + rbx], r15w
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 7
cmova rdx, qword [rsp + 0x48]
mov rax, qword [rsp + 0x58]
lea rsi, [rdx + rax*2]
lea rdi, [rsp + 0x48]
cmova rdi, qword [rsp + 0x48]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
cmp rdi, rsi
jne 0x140002fcc
mov rdi, r15
mov qword [rsp + 0x38], r15
mov esi, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x40], rsi
mov byte [rsp + 0x28], dil
jmp 0x1400030e1
mov rax, rsi
sub rax, rdi
sar rax, 1
mov rdx, r15
mov qword [rsp + 0x38], rdx
mov ebx, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x40], rbx
cmp rax, r14
ja 0x140003404
cmp rax, rbx
jbe 0x140003090
mov rbx, rax
or rbx, 0xf
cmp rbx, r14
jbe 0x14000303d
mov rbx, r14
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14007784c
mov rcx, rax
test rax, rax
je 0x14000335c
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rdx, qword [rsp + 0x38]
jmp 0x140003079
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140003065
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400033f2
jmp 0x140003016
test rcx, rcx
je 0x140003076
call fcn.14007784c
mov rdx, qword [rsp + 0x38]
jmp 0x140003079
mov rax, r15
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x40], rbx
nop dword [rax]
nop word [rax + rax]
lea rcx, [rsp + 0x28]
cmp rbx, 0xf
cmova rcx, qword [rsp + 0x28]
movzx eax, byte [rdi]
mov byte [rdx + rcx], al
mov rdx, qword [rsp + 0x38]
inc rdx
mov qword [rsp + 0x38], rdx
add rdi, 2
cmp rdi, rsi
je 0x1400030c2
mov rbx, qword [rsp + 0x40]
jmp 0x140003090
lea rax, [rsp + 0x28]
cmp qword [rsp + 0x40], 0xf
cmova rax, qword [rsp + 0x28]
mov byte [rdx + rax], 0
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
lea rbx, [rsp + 0x28]
mov r14, qword [rsp + 0x28]
cmp rsi, 0xf
cmova rbx, r14
test rdi, rdi
je 0x140003167
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x20], rax
mov dword [rbp - 0x18], eax
xor edx, edx
mov r8d, 0xa3
lea rcx, [rbp - 0x13]
call sub.VCRUNTIME140.dll_memset
mov byte [rbp - 0x14], 1
lea rax, [rdi - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rbx
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x70], 0
jne 0x140003162
nop dword [rax]
cmp rcx, rbx
je 0x140003167
dec rcx
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x70], 0
je 0x140003150
sub rcx, rbx
jmp 0x14000316e
mov rcx, 0xffffffffffffffff
inc rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
cmp rdi, rcx
jb 0x14000340a
mov rax, rdi
sub rax, rcx
cmp rax, rdi
cmovb rdi, rax
lea rdx, [rsp + 0x28]
cmp rsi, 0xf
cmova rdx, r14
add rdx, rcx
mov r8, rdi
lea rcx, [rsp + 0x68]
call fcn.140014f60
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
movups xmm0, xmmword [str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ]
movups xmmword [rbp + 0xa8], xmm0
movups xmm1, xmmword [0x140089398]
movups xmmword [rbp + 0xb8], xmm1
movups xmm0, xmmword [0x1400893a8]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x1400893b8]
movsd qword [rbp + 0xd8], xmm0
mov eax, dword [0x1400893c0]
mov dword [rbp + 0xe0], eax
movzx eax, word [0x1400893c4]
mov word [rbp + 0xe4], ax
movzx eax, byte [0x1400893c6]
mov byte [rbp + 0xe6], al
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x80000007
jge 0x14000323b
dec eax
or eax, 0xfffffff8
inc eax
movsxd rdi, eax
add rdi, 8
test rdi, rdi
jle 0x14000328e
mov rbx, r15
nop word [rax + rax]
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov r8d, eax
mov eax, 0x84210843
imul r8d
add edx, r8d
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
imul ecx, edx, 0x3e
sub r8d, ecx
movsxd rax, r8d
movzx ecx, byte [rbp + rax + 0xa8]
mov byte [rbp + rbx + 0x90], cl
inc rbx
cmp rbx, rdi
jl 0x140003250
cmp rdi, 0x14
jae 0x1400033ec
mov byte [rbp + rdi + 0x90], 0
lea r8, str..exe
mov edx, reloc.WS2_32.dll_sendto
lea rcx, [rbp + 0x90]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 0xf
cmova rcx, qword [rsp + 0x68]
lea rdx, [rbp + 0x90]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_rename]
mov rdx, qword [rbp - 0x80]
cmp rdx, 0xf
jbe 0x140003315
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003310
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003310
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140077a34
movdqa xmm0, xmmword [0x14008c270]
movdqu xmmword [rsp + 0x78], xmm0
mov byte [rsp + 0x68], 0
mov rdx, qword [rsp + 0x40]
cmp rdx, 0xf
jbe 0x140003368
inc rdx
mov rcx, qword [rsp + 0x28]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003363
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003363
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140077a34
mov qword [rsp + 0x38], r15
mov qword [rsp + 0x40], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x28], 0
mov rdx, qword [rsp + 0x60]
cmp rdx, 7
jbe 0x1400033c0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400033bb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400033bb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140077a34
mov rcx, qword [rbp + 0x300]
xor rcx, rsp
call fcn.140077590
lea r11, [rsp + 0x410]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.1400776b8
nop
call fcn.140001300
nop
call fcn.140001300
int3
call fcn.1400013a0
nop
call fcn.1400013a0
nop
call fcn.140014510
int3