Function at 0x1400039f0
Capabilities:
Copy file

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x98]
sub rsp, 0x190
mov qword [rsp + 0x70], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
mov rax, qword [0x14006b088]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov byte [rsp + 0x38], 1
mov qword [rsp + 0x20], 0x38
lea r9, str.PIE_Migration::CopyMurocApi
mov r8d, 0x2c
lea rdx, str.PIE_SERVICE_MIGRATION
lea rcx, [rbp - 0x40]
call fcn.140011450
lea rax, vtable.CTracePieServiceMigration.0
mov qword [rbp - 0x40], rax
mov esi, 1
call fcn.140019380
mov rcx, rax
mov eax, dword [rax + 0x208]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 0x1c
lea r9, [0x140051f08]
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x40]
call fcn.140019480
lea rcx, [rbp - 0x40]
test eax, eax
je 0x140003c4a
mov r14, qword [rsp + 0x40]
mov r9, r14
lea r8, str.murocApiDllPath___ws
lea edx, [rsi + 3]
call fcn.140011590
lea rdx, [rbp - 0x68]
call fcn.1400043a0
nop
lea r9, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae r9, qword [rbp - 0x68]
lea r8, str.murocApiPathProgramFilesPath___ws
lea edx, [rsi + 3]
lea rcx, [rbp - 0x40]
call fcn.140011590
lea rax, [rsp + 0x50]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x68], 7
xor edi, edi
mov qword [rsp + 0x60], rdi
mov word [rsp + 0x50], di
lea r8d, [rsi + 0xf]
lea rdx, str.IntelWiFi_bin_
lea rcx, [rsp + 0x50]
call fcn.140007f20
nop
call fcn.140019380
lea rdx, [rsp + 0x78]
call fcn.140019cc0
mov rbx, rax
call fcn.140019380
nop
lea r8, [rsp + 0x50]
mov rdx, rbx
call fcn.140019e20
test eax, eax
jne 0x140003b77
mov r8, qword [rbp - 0x50]
cmp r8, 8
jb 0x140003b6e
inc r8
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.140008b70
movzx eax, byte [rbp + 0x70]
jmp 0x140003c99
lea r8, str.Copy_MurocApi.dll_file_to_Proset_directory
mov edx, 4
lea rcx, [rbp - 0x40]
call fcn.140011590
lea rdx, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rdx, qword [rbp - 0x68]
xor r8d, r8d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x140003c2e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov r9d, eax
lea r8, str.Failed_to_copy_MurocAPI.dll__error_code:__d
mov edx, 4
lea rcx, [rbp - 0x40]
call fcn.140011590
cmp ebx, 0x20
jne 0x140003c2c
lea r8, str.File_is_in_use__trying_to_rename_MurocApi.dll_file_to_MurocAPI.dll.old_and_then_copy_PIEs_MurocAPI.dll
lea edx, [rbx - 0x1c]
lea rcx, [rbp - 0x40]
call fcn.140011590
lea rbx, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rbx, qword [rbp - 0x68]
call fcn.140019380
mov r8, rbx
mov rdx, r14
call fcn.140019840
mov esi, eax
test eax, eax
jne 0x140003c2e
lea rbx, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rbx, qword [rbp - 0x68]
call fcn.140019380
mov r8, rbx
mov rdx, r14
call fcn.140019a70
mov esi, eax
jmp 0x140003c2e
mov esi, edi
mov r8, qword [rbp - 0x50]
cmp r8, 8
jb 0x140003c5d
inc r8
mov rdx, qword [rbp - 0x68]
lea rcx, [rbp - 0x68]
call fcn.140008b70
jmp 0x140003c5d
xor edi, edi
mov esi, edi
lea r8, str.Failed_to_get_MurocAPI.dll_path
lea edx, [rdi + 2]
call fcn.140011590
lea rcx, str.TRUE
lea rax, str.FALSE
test esi, esi
cmovne rax, rcx
mov qword [rsp + 0x20], rax
lea r9, str.result
lea r8, str.____returned__s___s
mov edx, 4
lea rcx, [rbp - 0x40]
call fcn.140011590
mov al, 1
mov byte [rbp + 0x70], al
mov edi, esi
lea rcx, vtable.CTracePie.0
mov qword [rbp - 0x40], rcx
cmp byte [rbp + 0x71], 1
jne 0x140003cc4
test al, al
jne 0x140003cc4
lea r8, [0x140056e3c]
mov edx, 5
lea rcx, [rbp - 0x40]
call fcn.140011590
nop
mov eax, edi
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.14001e5b0
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret