Function at 0x140005f84
Capabilities:
Copy file
Create process on windows
Set current directory

Disassembly:
mov qword [rsp + 8], rbx
mov dword [rsp + 0x10], edx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1410]
mov eax, 0x1510
call fcn.14015cbf0
sub rsp, rax
mov rax, qword [0x1401ff510]
xor rax, rsp
mov qword [rbp + 0x1400], rax
mov rbx, qword [0x140202e10]
mov rdi, r8
call qword [sym.imp.USER32.dll_SetProcessDPIAware]
xor r12d, r12d
lea r13d, [r12 + 1]
cmp dword [rbp + 0x1458], r13d
jne 0x140005ff2
mov rcx, qword [rdi]
lea rdx, str.__slave
call fcn.14016d740
test eax, eax
je 0x14000600f
cmp dword [rbp + 0x1458], 2
jne 0x14000605d
mov rcx, qword [rdi + 8]
lea rdx, str.__slave
call fcn.14016d740
test eax, eax
jne 0x14000601c
mov rcx, rbx
call fcn.140004c64
jmp 0x14000636d
mov rcx, qword [rdi + 8]
lea rdx, str.__netinfo
call fcn.14016d740
test eax, eax
jne 0x14000605d
lea rcx, [rsp + 0x50]
call fcn.140009954
test eax, eax
jle 0x14000636d
mov rdx, qword [rsp + 0x50]
lea rcx, str._s_r_n
call fcn.140001090
mov rcx, qword [rsp + 0x50]
jmp 0x140006368
cmp qword [rbx + 0x30], r12
jne 0x140006081
lea rax, [rbp]
mov byte [rbp], r12b
mov r8d, 0x400
mov qword [rbx + 0x30], rax
lea rdx, [rbp]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov rcx, qword [rbx + 0x30]
lea rdx, [rbx + 0x5ac]
call fcn.140002c14
mov rcx, qword [rbx + 0x30]
lea rdx, str..log
call fcn.140002508
mov rcx, rax
or edx, 0xffffffff
call fcn.14006dcb4
mov qword [0x140202dd0], rax
call fcn.140067284
mov rcx, qword [rbx]
lea rdx, [0x140004d48]
mov r8, rbx
call fcn.140068d18
mov rcx, qword [rdi]
lea r8, [0x1401d583c]
or edx, 0xffffffff
call fcn.14006da20
test eax, eax
jle 0x140006117
mov r8, qword [rdi]
lea r15, [0x1402040c0]
movsxd rsi, eax
mov r14d, 0x10000
mov r9, rsi
mov edx, r14d
mov rcx, r15
call fcn.14015f4dc
cmp rsi, r14
jae 0x140006399
mov rcx, r15
mov byte [rsi + r15], r12b
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea rax, [rbp + 0x1458]
mov qword [rbp - 0x20], rbx
mov qword [rbp - 0x18], rax
mov qword [rbp - 0x10], rdi
cmp qword [rbx + 0x18], r12
jne 0x140006323
cmp dword [rbp + 0x1458], 2
jl 0x140006163
mov rcx, qword [rdi + 8]
lea r8, [0x1401d5f84]
mov r9d, 3
mov dword [rsp + 0x20], r13d
or edx, 0xffffffff
call fcn.14006d8fc
test eax, eax
jne 0x140006323
mov rcx, qword [rbx]
lea r8, [rbp - 0x20]
xor r9d, r9d
lea rdx, [0x140005f3c]
call fcn.140068dd0
mov rcx, qword [rbx]
call fcn.140069588
mov rcx, qword [rbx + 0x40]
mov qword [rbx], r12
test rcx, rcx
je 0x140006196
call fcn.1400706a4
mov qword [rbx + 0x40], r12
cmp dword [rbx + 0x5a4], r12d
je 0x140006344
xor edx, edx
mov dword [rsp + 0x70], WSAGetLastError
lea rcx, [rsp + 0x78]
mov esi, r12d
lea r8d, [rdx + 0x60]
call fcn.14015dbb0
mov rcx, qword [rbx + 0x30]
lea rdx, str..update.exe
call fcn.140002508
mov r14, rax
mov byte [rbp + 0x400], r12b
mov r15d, r13d
cmp dword [rbp + 0x1458], r13d
jle 0x140006224
add rdi, 8
test esi, esi
js 0x140006224
mov r9, qword [rdi]
lea r8, [0x1401d5f88]
mov ecx, 0x1000
movsxd rax, esi
sub ecx, esi
movsxd rdx, ecx
lea rcx, [rbp + 0x400]
add rcx, rax
call fcn.1400010e4
add esi, eax
add r15d, r13d
add rdi, 8
cmp r15d, dword [rbp + 0x1458]
jl 0x1400061e8
lea rax, [rbp + 0x400]
mov r9, r14
mov qword [rsp + 0x28], rax
lea rdi, [0x1402030c0]
mov rax, qword [rbx + 0x30]
lea r8, str._s__update:__s__s
mov edx, 0x1000
mov qword [rsp + 0x20], rax
mov rcx, rdi
call fcn.1400010e4
lea rax, [rsp + 0x58]
mov esi, 0x8000000
mov qword [rsp + 0x48], rax
xor r9d, r9d
lea rax, [rsp + 0x70]
xor r8d, r8d
mov qword [rsp + 0x40], rax
mov rdx, rdi
mov qword [rsp + 0x38], r12
xor ecx, ecx
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
jne 0x14000630b
test r14, r14
je 0x140006344
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x140006344
jmp 0x1400062bf
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rbx + 0x30]
xor r8d, r8d
mov rdx, r14
call qword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x1400062b0
lea rax, [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x48], rax
xor r8d, r8d
lea rax, [rsp + 0x70]
mov rdx, rdi
mov qword [rsp + 0x40], rax
xor ecx, ecx
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], r13d
call qword [sym.imp.KERNEL32.dll_CreateProcessA]
test eax, eax
je 0x140006344
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140006344
mov rcx, qword [rbx]
lea r8, [rbp - 0x20]
xor r9d, r9d
lea rdx, [0x140005f28]
call fcn.140068dd0
mov rcx, qword [rbx]
call fcn.140069588
mov qword [rbx], r12
mov eax, dword [0x140202dcc]
sub eax, r13d
mov dword [0x140202dcc], eax
test eax, eax
jg 0x14000635c
call fcn.140099f30
mov rcx, qword [0x140202dd0]
test rcx, rcx
je 0x14000636d
call fcn.140163938
xor eax, eax
mov rcx, qword [rbp + 0x1400]
xor rcx, rsp
call fcn.14015c600
mov rbx, qword [rsp + 0x1550]
add rsp, 0x1510
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14015c72c
int3