Function at 0x140043410
Capabilities:
Create a process with modified i/o handles and window
Create pipe
Create process on windows
Read file on windows
Read pipe
Terminate process

Disassembly:
mov rax, rsp
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x428]
sub rsp, 0x500
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x1400be010]
xor rax, rsp
mov qword [rbp + 0x3d0], rax
movdqa xmm0, xmmword [0x1400ac8a0]
movdqu xmmword [rbp + 0x70], xmm0
xor r14d, r14d
mov word [rbp + 0x60], r14w
lea r8d, [r14 + 0xc]
lea rdx, str.sfc__scannow
lea rcx, [rbp + 0x60]
call fcn.140001a50
nop
lea rdx, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae rdx, qword [rbp + 0x60]
lea rcx, str.RepairSystemFileCMD:__s
call fcn.140036ce0
mov dword [rsp + 0x68], SafeArrayPutElement
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x78], 1
mov qword [rsp + 0x58], r14
mov qword [rsp + 0x60], r14
xor r9d, r9d
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CreatePipe]
test eax, eax
jne 0x1400434e6
mov dword [0x1400c2e80], 0x64
jmp 0x140043aa3
mov dword [rbp - 0x60], 0x68
lea rcx, [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov rax, qword [rsp + 0x60]
mov qword [rbp - 8], rax
mov word [rbp - 0x20], r14w
mov dword [rbp - 0x24], 0x101
xor edx, edx
mov r8d, 0x200
lea rcx, [rbp + 0x1d0]
call fcn.140059e60
lea r8, [rbp + 0x60]
cmp qword [rbp + 0x78], 8
cmovae r8, qword [rbp + 0x60]
mov edx, 0x100
lea rcx, [rbp + 0x1d0]
call fcn.140067d98
lea rax, [rbp - 0x80]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x40], rax
lea rax, str.C:WindowsSystem32_
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0x1d0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x1400435af
lea rcx, str.RepairSystemFileCreateProcess_FAIL
call fcn.140036ce0
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 0x140043aa3
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r14w
xor eax, eax
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], rax
mov qword [rbp + 0x1b0], rax
mov qword [rbp + 0x1b8], rax
mov word [rbp + 0x1c0], ax
cmp dword [0x1400c2e7c], 1
je 0x140043a27
lea rsi, [0x14009ecc0]
movsd xmm6, qword [0x1400ac840]
movsd xmm7, qword [0x1400ac860]
mov r13d, dword [rbp + 0x38]
mov dword [rbp + 0x30], r14d
mov dword [rbp + 0x3c], r14d
lea rax, [rbp + 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x38]
mov r8d, 0x11
lea rdx, [rbp + 0x1a0]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_PeekNamedPipe]
test eax, eax
je 0x140043a33
cmp dword [rbp + 0x30], 0
je 0x140043a0f
xor eax, eax
mov qword [rbp + 0x1a0], rax
mov qword [rbp + 0x1a8], rax
mov byte [rbp + 0x1b0], al
mov qword [rsp + 0x20], r14
lea r9, [rbp + 0x38]
lea r8d, [rax + 0x10]
lea rdx, [rbp + 0x1a0]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x140043a33
lea rax, [rbp + 0x1a0]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x1400436b5
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x40]
call fcn.140002cf0
lea r10, [rbp + 0x40]
mov rbx, qword [rbp + 0x40]
mov rdi, qword [rbp + 0x58]
cmp rdi, 8
cmovae r10, rbx
mov r11, qword [rbp + 0x50]
cmp r11, 1
jb 0x140043a0f
lea rcx, [r11 - 1]
mov rax, 0xffffffffffffffff
cmp rcx, rax
cmovb rax, rcx
lea r9, [r10 + rax*2]
mov r8, r9
sub r8, rsi
nop
cmp word [r9], 0x25
jne 0x1400439fd
mov edx, 1
mov rcx, rsi
nop dword [rax]
nop word [rax + rax]
movzx eax, word [rcx]
cmp word [rcx + r8], ax
jne 0x1400439fd
add rcx, 2
sub rdx, 1
jne 0x140043730
sub r9, r10
sar r9, 1
cmp r9, 0xffffffffffffffff
je 0x140043a0f
add r9, 0xfffffffffffffffb
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r14w
cmp r11, r9
jb 0x140043b37
sub r11, r9
mov r8d, 6
cmp r11, r8
cmovb r8, r11
lea rax, [rbp + 0x40]
cmp rdi, 8
cmovae rax, rbx
lea rdx, [rax + r9*2]
lea rcx, [rbp + 0x10]
call fcn.140001a50
nop
mov qword [rbp + 0x90], r14
mov qword [rbp + 0x98], 7
mov word [rbp + 0x80], r14w
lea rax, [rbp + 0x10]
mov rcx, qword [rbp + 0x10]
mov r9, qword [rbp + 0x28]
cmp r9, 8
cmovae rax, rcx
mov r8, qword [rbp + 0x20]
lea r12, [rax + r8*2]
lea rax, [rbp + 0x10]
cmovae rax, rcx
lea rbx, [rax + r8*2]
lea rdi, [rbp + 0x10]
cmovae rdi, rcx
cmp rdi, rbx
je 0x140043878
movzx ecx, word [rdi]
call fcn.14005cbd4
test eax, eax
je 0x140043808
add rdi, 2
cmp rdi, rbx
jne 0x1400437f3
mov r9, qword [rbp + 0x28]
mov r8, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x10]
cmp rdi, rbx
je 0x140043878
lea rsi, [rdi + 2]
mov r15, rbx
sub r15, rsi
inc r15
shr r15, 1
cmp rsi, rbx
mov eax, 0
cmova r15, rax
test r15, r15
je 0x14004386e
nop word [rax + rax]
movzx ecx, word [rsi]
call fcn.14005cbd4
test eax, eax
je 0x140043856
movzx eax, word [rsi]
mov word [rdi], ax
add rdi, 2
add rsi, 2
inc r14
cmp r14, r15
jne 0x140043840
mov r9, qword [rbp + 0x28]
mov r8, qword [rbp + 0x20]
mov rcx, qword [rbp + 0x10]
lea rsi, [0x14009ecc0]
xor r14d, r14d
lea rax, [rbp + 0x10]
cmp r9, 8
cmovae rax, rcx
mov rdx, rdi
sub rdx, rax
sar rdx, 1
cmp r8, rdx
jb 0x140043b31
sub r12, rdi
sar r12, 1
mov rax, r8
sub rax, rdx
cmp rax, r12
cmovb r12, rax
lea rax, [rbp + 0x10]
cmp r9, 8
cmovae rax, rcx
lea rcx, [rax + rdx*2]
sub r8, r12
mov qword [rbp + 0x20], r8
sub r8, rdx
lea r8, [r8*2 + 2]
lea rdx, [rcx + r12*2]
call fcn.14005a0d0
lea rdx, [rbp + 0x10]
cmp qword [rbp + 0x28], 8
cmovae rdx, qword [rbp + 0x10]
mov r8, qword [rbp + 0x20]
lea rcx, [rbp + 0x80]
call fcn.140001a50
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0xa0]
call fcn.140059e60
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0xa0]
call fcn.14003d570
nop
mov dword [rbp + 0x34], r13d
lea rdx, [rbp + 0x34]
lea rcx, [rbp + 0xa0]
call fcn.14003e4e0
mov r13d, dword [rbp + 0x34]
lea rcx, [rbp + 0xa0]
call fcn.14003d460
mov edx, r13d
lea rcx, str.current_m_systemFileProgress:__d
call fcn.140036ce0
movd xmm0, r13d
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm6
addsd xmm0, xmm7
cvttsd2si eax, xmm0
mov dword [0x1400c2e80], eax
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
mov rdx, qword [rbp + 0x98]
cmp rdx, 8
jb 0x1400439bb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400439b5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043b25
call fcn.140055724
nop
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x140043a1a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400439f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043b2b
call fcn.140055724
jmp 0x140043a1a
cmp r9, r10
je 0x140043a0f
sub r9, 2
sub r8, 2
jmp 0x140043710
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [0x1400c2e7c], 1
jne 0x140043622
xor edx, edx
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [0x1400c2e80], 0x64
mov rdx, qword [rbp + 0x58]
cmp rdx, 8
jb 0x140043a92
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043a8d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043b1f
call fcn.140055724
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x58], 7
mov word [rbp + 0x40], r14w
mov rdx, qword [rbp + 0x78]
cmp rdx, 8
jb 0x140043adf
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140043ada
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140043b19
call fcn.140055724
mov rcx, qword [rbp + 0x3d0]
xor rcx, rsp
call fcn.140055700
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14005c4ec
nop
call fcn.14005c4ec
nop
call fcn.14005c4ec
nop
call fcn.14005c4ec
nop
call fcn.1400028d0
nop
call fcn.1400028d0
int3