Function at 0x1400036b0
Capabilities:
Move file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r14
lea rbp, [rsp - 0x310]
sub rsp, 0x410
mov rax, qword [0x14009b0c0]
xor rax, rsp
mov qword [rbp + 0x300], rax
xor r12d, r12d
mov r8d, 0x104
lea rdx, [rbp + 0xf0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
lea rax, [rbp + 0xf0]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp word [rax + rbx*2], r12w
jne 0x140003720
movabs rsi, 0x7ffffffffffffffe
cmp rbx, rsi
ja 0x140003d0e
movabs r14, 0x7fffffffffffffff
mov qword [rsp + 0x68], 7
cmp rbx, 7
ja 0x14000377d
mov qword [rsp + 0x60], rbx
add rbx, rbx
mov r8, rbx
lea rdx, [rbp + 0xf0]
lea rcx, [rsp + 0x50]
call sub.VCRUNTIME140.dll_memcpy
mov word [rsp + rbx + 0x50], r12w
jmp 0x14000381e
mov rax, rbx
or rax, 7
cmp rax, rsi
jbe 0x14000378f
lea rcx, [r14 + r14]
jmp 0x1400037b7
mov rsi, rax
mov ecx, 0xa
cmp rax, rcx
cmovb rsi, rcx
lea rcx, [rsi + 1]
cmp rcx, r14
ja 0x140003d08
add rcx, rcx
cmp rcx, 0x1000
jb 0x1400037e3
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140003d08
mov rcx, rax
call fcn.14007b4a4
test rax, rax
je 0x140003cc4
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1400037f5
test rcx, rcx
je 0x1400037f2
call fcn.14007b4a4
mov rdi, rax
jmp 0x1400037f5
mov rdi, r12
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rsi
add rbx, rbx
mov r8, rbx
lea rdx, [rbp + 0xf0]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov word [rbx + rdi], r12w
lea rdx, [rsp + 0x50]
cmp qword [rsp + 0x68], 7
cmova rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x60]
lea rsi, [rdx + rax*2]
lea rdi, [rsp + 0x50]
cmova rdi, qword [rsp + 0x50]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
cmp rdi, rsi
jne 0x14000386d
mov rsi, r12
mov qword [rsp + 0x40], r12
mov r14d, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x48], r14
mov byte [rsp + 0x30], sil
jmp 0x140003981
mov rax, rsi
sub rax, rdi
sar rax, 1
mov rdx, r12
mov qword [rsp + 0x40], rdx
mov ebx, reloc.WS2_32.dll_ntohs
mov qword [rsp + 0x48], rbx
cmp rax, r14
ja 0x140003d14
cmp rax, rbx
jbe 0x140003930
mov rbx, rax
or rbx, 0xf
cmp rbx, r14
jbe 0x1400038de
mov rbx, r14
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14007b4a4
mov rcx, rax
test rax, rax
je 0x140003c6c
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov rdx, qword [rsp + 0x40]
jmp 0x14000391a
mov eax, reloc.WLDAP32.dll_Ordinal_22
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x140003906
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140003d02
jmp 0x1400038b7
test rcx, rcx
je 0x140003917
call fcn.14007b4a4
mov rdx, qword [rsp + 0x40]
jmp 0x14000391a
mov rax, r12
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x48], rbx
nop dword [rax]
nop dword [rax + rax]
lea rcx, [rsp + 0x30]
cmp rbx, 0xf
cmova rcx, qword [rsp + 0x30]
movzx eax, byte [rdi]
mov byte [rdx + rcx], al
mov rdx, qword [rsp + 0x40]
inc rdx
mov qword [rsp + 0x40], rdx
add rdi, 2
cmp rdi, rsi
je 0x140003962
mov rbx, qword [rsp + 0x48]
jmp 0x140003930
lea rax, [rsp + 0x30]
cmp qword [rsp + 0x48], 0xf
cmova rax, qword [rsp + 0x30]
mov byte [rax + rdx], 0
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
movzx eax, word [0x14008d508]
mov word [rsp + 0x20], ax
cmp byte [0x14008d509], 0
je 0x1400039a0
mov byte [rsp + 0x20], 0x5c
xor byte [rsp + 0x21], 0x37
lea rax, [rsp + 0x20]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400039b0
lea rdi, [rsp + 0x30]
cmp r14, 0xf
cmova rdi, qword [rsp + 0x30]
test rbx, rbx
je 0x140003a47
test rsi, rsi
je 0x140003a47
xor edx, edx
mov r8d, 0x100
lea rcx, [rbp - 0x70]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rsp + 0x20]
lea rdx, [rsp + 0x20]
add rdx, rbx
lea rax, [rsp + 0x20]
cmp rax, rdx
je 0x140003a10
nop word [rax + rax]
movzx eax, byte [rcx]
mov byte [rbp + rax - 0x70], 1
inc rcx
cmp rcx, rdx
jne 0x140003a00
lea rax, [rsi - 1]
mov rcx, 0xffffffffffffffff
cmp rax, rcx
cmovb rcx, rax
add rcx, rdi
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x70], 0
jne 0x140003a42
nop
cmp rcx, rdi
je 0x140003a47
dec rcx
movzx eax, byte [rcx]
cmp byte [rbp + rax - 0x70], 0
je 0x140003a30
sub rcx, rdi
jmp 0x140003a4e
mov rcx, 0xffffffffffffffff
inc rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x80], xmm1
cmp rsi, rcx
jb 0x140003d1a
mov rax, rsi
sub rax, rcx
cmp rax, rsi
cmovb rsi, rax
lea rdx, [rsp + 0x30]
cmp r14, 0xf
cmova rdx, qword [rsp + 0x30]
add rdx, rcx
mov r8, rsi
lea rcx, [rsp + 0x70]
call fcn.140016c20
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 [0x14008d328]
movups xmmword [rbp + 0xb8], xmm1
movups xmm0, xmmword [0x14008d338]
movups xmmword [rbp + 0xc8], xmm0
movsd xmm0, qword [0x14008d348]
movsd qword [rbp + 0xd8], xmm0
mov eax, dword [0x14008d350]
mov dword [rbp + 0xe0], eax
movzx eax, word [0x14008d354]
mov word [rbp + 0xe4], ax
movzx eax, byte [0x14008d356]
mov byte [rbp + 0xe6], al
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
and eax, 0x80000007
jge 0x140003b1c
dec eax
or eax, 0xfffffff8
inc eax
movsxd rdi, eax
add rdi, 8
test rdi, rdi
jle 0x140003b6e
mov rbx, r12
nop dword [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 0x140003b30
cmp rdi, 0x14
jae 0x140003cfc
mov byte [rbp + rdi + 0x90], 0
mov eax, dword [0x14008e78c]
mov dword [rsp + 0x24], eax
movzx eax, byte [0x14008e790]
mov byte [rsp + 0x24], reloc.WLDAP32.dll_Ordinal_46
xor byte [rsp + 0x25], 0x37
xor byte [rsp + 0x26], 0x38
xor byte [rsp + 0x27], 0x39
xor al, 0x3a
mov byte [rsp + 0x28], al
lea r8, [rsp + 0x24]
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 + 0x70]
cmp qword [rbp - 0x78], 0xf
cmova rcx, qword [rsp + 0x70]
lea rdx, [rbp + 0x90]
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll_rename]
test eax, eax
je 0x140003be7
xor ecx, ecx
int 0x29
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x140003c26
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003c21
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003c21
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14007b200
movdqa xmm0, xmmword [0x14008e960]
movdqu xmmword [rbp - 0x80], xmm0
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x48]
cmp rdx, 0xf
jbe 0x140003c78
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003c73
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003c73
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14007b200
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x30], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 7
jbe 0x140003cd0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003ccb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003ccb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14007b200
mov rcx, qword [rbp + 0x300]
xor rcx, rsp
call fcn.14007b1e0
lea r11, [rsp + 0x410]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r12
pop rbp
ret
call fcn.14007b310
nop
call fcn.140001300
nop
call fcn.140001300
int3
call fcn.1400013a0
nop
call fcn.1400013a0
nop
call fcn.140016560
int3