Function at 0x140065b50
Capabilities:
Check if file exists
Create directory
Delete file
Get file attributes

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xec0
mov qword [rsp + 0xf0], 0xfffffffffffffffe
mov qword [rsp + 0xf18], rbx
mov rax, qword [0x14042d950]
xor rax, rsp
mov qword [rsp + 0xeb0], rax
mov rbp, r8
mov qword [rsp + 0x38], r8
mov rdi, rdx
mov qword [rsp + 0x80], rdx
mov qword [rsp + 0x78], rcx
xor r13d, r13d
mov qword [rsp + 0x40], r13
mov r15, r13
mov r12, r13
mov r14, r13
mov word [rsp + 0x910], r12w
xor edx, edx
lea r8d, [r13 + 0x7e]
lea rcx, [rsp + 0x912]
call sub.ntdll.dll_memset
mov word [rsp + Ordinal_2450], r12w
xor edx, edx
lea r8d, [r13 + 0x7e]
lea rcx, [rsp + reloc.MFC80U.DLL_Ordinal_2450]
call sub.ntdll.dll_memset
mov word [rsp + reloc.MFC80U.DLL_Ordinal_3104], r12w
xor edx, edx
lea r8d, [r13 + 0x7e]
lea rcx, [rsp + 0xc22]
call sub.ntdll.dll_memset
call fcn.140049400
mov rsi, rax
call fcn.1400494c0
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x20]
mov dword [rsp + 0x34], eax
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0x78]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x78]
mov qword [rsp + 0x900], rax
mov ebx, r13d
test rdi, rdi
setne bl
test ebx, ebx
jne 0x140065d3c
xor edx, edx
mov r8d, 0x80
lea rsi, [0x140433c50]
mov rcx, rsi
call sub.ntdll.dll_memset
lea edx, [rbx + 0x5c]
lea rcx, str...operation.cpp
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
je 0x140065d13
mov byte [rsp + 0x900], r12b
xor eax, eax
mov qword [rsp + 0x901], rax
mov word [rsp + 0x909], ax
mov byte [rsp + 0x90b], al
mov r8d, reloc.MFC80U.DLL_Ordinal_6120
lea rdx, [0x1402dfd08]
lea rcx, [rsp + 0x900]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rsi
sub rcx, rdx
nop
nop
movzx eax, byte [rdx]
mov byte [rdx + rcx], al
add rdx, 1
test al, al
jne 0x140065cd0
mov rdi, rsi
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x900]
xor ecx, ecx
nop
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x140065d00
mov r13, rsi
call fcn.140049470
mov rdi, qword [rax]
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.pOldPartMgr_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [rdi + 0x10]
jmp 0x140066c9a
mov ebx, r13d
test rax, rax
setne bl
test ebx, ebx
jne 0x140065d87
mov edx, 0x17e9
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.pNewPartMgr_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
jmp 0x140066c9a
mov rbx, rdi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
mov rdi, rax
test rax, rax
je 0x140065ddf
mov rbp, r13
nop
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0xc8]
test eax, eax
cmovne rbp, rdi
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0xd0]
test eax, eax
cmovne r12, rdi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x38]
mov rdi, rax
test rax, rax
jne 0x140065da0
mov qword [rsp + 0x40], rbp
mov rbp, qword [rsp + 0x38]
mov ebx, r13d
cmp qword [rsp + 0x40], rbx
setne bl
test ebx, ebx
jne 0x140065edc
xor edx, edx
mov r8d, 0x80
lea rsi, [0x140433c50]
mov rcx, rsi
call sub.ntdll.dll_memset
lea edx, [rbx + 0x5c]
lea rcx, str...operation.cpp
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
je 0x140065eb3
mov byte [rsp + 0x900], r13b
xor eax, eax
mov qword [rsp + 0x901], rax
mov word [rsp + 0x909], ax
mov byte [rsp + 0x90b], al
mov r8d, 0x17f4
lea rdx, [0x1402dfd08]
lea rcx, [rsp + 0x900]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rsi
sub rcx, rdx
nop
nop
movzx eax, byte [rdx]
mov byte [rdx + rcx], al
add rdx, 1
test al, al
jne 0x140065e70
mov rdi, rsi
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x900]
xor ecx, ecx
nop
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x140065ea0
mov r13, rsi
call fcn.140049470
mov rdi, qword [rax]
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.pOldSysPart_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [rdi + 0x10]
jmp 0x140066c9a
mov ebx, r13d
test r12, r12
setne bl
test ebx, ebx
jne 0x140065f27
mov edx, 0x17f5
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.pOldBootPart_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
jmp 0x140066c9a
mov rbx, qword [rsp + 0x900]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x30]
mov rdi, rax
test rax, rax
je 0x140065f97
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0xc8]
test eax, eax
jne 0x140065f60
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0x1f8]
test eax, eax
je 0x140065f63
mov r15, rdi
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0xd0]
test eax, eax
jne 0x140065f83
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + reloc.MFC80U.DLL_Ordinal_512]
test eax, eax
je 0x140065f86
mov r14, rdi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x38]
mov rdi, rax
test rax, rax
jne 0x140065f40
mov ebx, r13d
test r15, r15
setne bl
test ebx, ebx
jne 0x14006608c
xor edx, edx
mov r8d, 0x80
lea rsi, [0x140433c50]
mov rcx, rsi
call sub.ntdll.dll_memset
lea edx, [rbx + 0x5c]
lea rcx, str...operation.cpp
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
je 0x140066063
mov byte [rsp + 0x900], r13b
xor eax, eax
mov qword [rsp + 0x901], rax
mov word [rsp + 0x909], ax
mov byte [rsp + 0x90b], al
mov r8d, Ordinal_6149
lea rdx, [0x1402dfd08]
lea rcx, [rsp + 0x900]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rsi
sub rcx, rdx
movzx eax, byte [rdx]
mov byte [rdx + rcx], al
add rdx, 1
test al, al
jne 0x140066021
mov rdi, rsi
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x900]
xor ecx, ecx
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x140066050
mov r13, rsi
call fcn.140049470
mov rdi, qword [rax]
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.pNewSysPart_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [rdi + 0x10]
jmp 0x140066c9a
mov ebx, r13d
test r14, r14
setne bl
test ebx, ebx
jne 0x140066190
xor edx, edx
mov r8d, 0x80
lea rsi, [0x140433c50]
mov rcx, rsi
call sub.ntdll.dll_memset
lea edx, [rbx + 0x5c]
lea rcx, str...operation.cpp
call qword [sym.imp.ntdll.dll_strrchr]
mov rdi, rax
test rax, rax
je 0x140066163
mov byte [rsp + 0x900], r13b
xor eax, eax
mov qword [rsp + 0x901], rax
mov word [rsp + 0x909], ax
mov byte [rsp + 0x90b], al
mov r8d, Ordinal_6149
lea rdx, [0x1402dfd08]
lea rcx, [rsp + 0x900]
call qword [sym.imp.ntdll.dll_sprintf]
lea rdx, [rdi + 1]
mov rcx, rsi
sub rcx, rdx
nop
nop
nop
movzx eax, byte [rdx]
mov byte [rdx + rcx], al
add rdx, 1
test al, al
jne 0x140066120
mov rdi, rsi
xor eax, eax
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
lea rdx, [rsp + 0x900]
xor ecx, ecx
nop
nop
nop
nop
movzx eax, byte [rdx + rcx]
mov byte [rdi + rcx - 1], al
add rcx, 1
test al, al
jne 0x140066150
mov r13, rsi
call fcn.140049470
mov rdi, qword [rax]
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea r8, str.pNewBootPart_NULL
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [rdi + 0x10]
jmp 0x140066c9a
mov rbx, qword [rsi]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov r9d, eax
mov qword [rsp + 0x20], rdi
mov r8d, 0x40
lea rdx, [rsp + 0x910]
mov rcx, rsi
call qword [rbx + 0x58]
test eax, eax
jne 0x140066207
mov rbx, qword [rsi]
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov edx, eax
mov r8, rdi
mov rcx, rsi
call qword [rbx + 0xa8]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, r13d
add r13d, 1
cmp edx, 0x64
jl 0x140066190
mov dword [rsp + 0x30], r13d
xor r13d, r13d
mov ebx, r13d
mov ecx, dword [rsp + 0x30]
cmp ecx, 0x64
setl bl
test ebx, ebx
jne 0x140066260
mov edx, Ordinal_6158
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.time_100
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
jmp 0x140066c9a
mov rbx, qword [rsi]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov r9d, eax
mov qword [rsp + 0x20], rdi
mov r8d, 0x40
lea rdx, [rsp + 0x990]
mov rcx, rsi
call qword [rbx + 0x58]
test eax, eax
jne 0x1400662d7
mov rbx, qword [rsi]
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov edx, eax
mov r8, rdi
mov rcx, rsi
call qword [rbx + 0xa8]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, r13d
add r13d, 1
cmp edx, 0x64
jl 0x140066260
mov dword [rsp + 0x30], r13d
xor r13d, r13d
mov ebx, r13d
mov eax, dword [rsp + 0x30]
cmp eax, 0x64
setl bl
test ebx, ebx
jne 0x14006632e
mov edx, 0x1817
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.time_100
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
jmp 0x140066c9a
mov rax, r13
cmp dword [rsp + 0x34], eax
cmovne rax, r14
mov qword [rsp + 0x900], rax
mov rdx, rax
mov rcx, qword [rsp + 0x78]
call fcn.1400a1730
test eax, eax
je 0x1400665d7
mov word [rsp + 0xa10], r13w
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xa12]
call sub.ntdll.dll_memset
mov word [rsp + reloc.MFC80U.DLL_Ordinal_3232], r13w
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xca2]
call sub.ntdll.dll_memset
lea rcx, [rsp + 0x100]
call fcn.140147040
nop
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x60]
test eax, eax
je 0x1400663cd
lea r8, [rsp + 0x910]
lea rdx, str.__Volume_sEFIMicrosoftBootBCD
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
jmp 0x1400663ea
lea r8, [rsp + 0x910]
lea rdx, str.__Volume_sBootBCD
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
lea rcx, [rsp + 0xa10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14006640b
lea rcx, [rsp + 0xa10]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov dword [rsp + 0x30], r13d
mov rbp, qword [rsp + 0x80]
nop
nop
mov rbx, qword [rsi]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov r9d, eax
mov qword [rsp + 0x20], rdi
mov r8d, 0x40
lea rdx, [rsp + reloc.MFC80U.DLL_Ordinal_3104]
mov rcx, rsi
call qword [rbx + 0x58]
test eax, eax
jne 0x140066499
mov rbx, qword [rsi]
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x38]
mov rdi, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov edx, eax
mov r8, rdi
mov rcx, rsi
call qword [rbx + 0xa8]
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, r13d
add r13d, 1
cmp edx, 0x64
jl 0x140066420
mov dword [rsp + 0x30], r13d
xor r13d, r13d
mov ebx, r13d
mov eax, dword [rsp + 0x30]
cmp eax, 0x64
setl bl
test ebx, ebx
mov rbp, qword [rsp + 0x38]
jne 0x140066503
mov edx, 0x1837
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.time_100
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x100]
call fcn.140050540
jmp 0x140066c9a
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x60]
test eax, eax
je 0x140066537
lea r9, [0x1402e3908]
lea r8, [rsp + reloc.MFC80U.DLL_Ordinal_3104]
lea rdx, [0x1402e38d8]
lea rcx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
call qword [sym.imp.MSVCR80.dll__swprintf]
jmp 0x14006655b
lea r9, [0x1402e38c8]
lea r8, [rsp + reloc.MFC80U.DLL_Ordinal_3104]
lea rdx, [0x1402e38d8]
lea rcx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
call qword [sym.imp.MSVCR80.dll__swprintf]
lea r8, [rsp + 0xa10]
lea rdx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
lea rcx, [rsp + 0x100]
call fcn.140055db0
mov ebx, eax
test eax, eax
jne 0x1400665ca
mov edx, 0x183d
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.csf.StartCopyFile_tcsOurBcdFilePath__tcsNewBcdFilePath_
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x100]
call fcn.140050540
jmp 0x140066c9a
lea rcx, [rsp + 0x100]
call fcn.140050540
mov rdi, qword [rsp + 0x80]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x60]
test eax, eax
jne 0x1400669a8
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x60]
test eax, eax
jne 0x1400669a8
lea rcx, [rsp + 0x30]
call fcn.14005b260
nop
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x50]
mov edx, eax
lea rcx, [rsp + 0x90]
call fcn.14009e6c0
nop
mov word [rsp + 0xa10], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xa12]
call sub.ntdll.dll_memset
mov dword [rsp + 0xb8], r13d
xor edx, edx
lea r8d, [rdx + 0x34]
lea rcx, [rsp + 0xbc]
call sub.ntdll.dll_memset
mov qword [rsp + 0x60], r13
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x38], r13d
mov dword [rsp + 0x34], r13d
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x28]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x28]
mov dword [rsp + 0x34], eax
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x28]
mov dword [rsp + 0xb8], eax
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x28]
mov dword [rsp + 0xbc], eax
mov rcx, qword [rsp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x38]
mov qword [rsp + 0xc0], rax
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x38]
mov qword [rsp + 0xc8], rax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x38]
mov qword [rsp + 0xd0], rax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x38]
mov qword [rsp + 0xd8], rax
lea r8, [rsp + 0x910]
lea rdx, str._Volume_sBootBCD
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
mov rdx, qword [rsp + 0x900]
mov rcx, qword [rsp + 0x78]
call fcn.1400a1730
test eax, eax
je 0x1400667ee
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x38]
mov rsi, rax
mov rdx, qword [r15]
mov rcx, r15
call qword [rdx + 0x38]
mov rbx, rax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x28]
mov edi, eax
mov rdx, qword [rbp]
mov rcx, rbp
call qword [rdx + 0x50]
mov edx, eax
mov qword [rsp + 0x20], rsi
mov r9, rbx
mov r8d, edi
lea rcx, [rsp + 0x90]
call fcn.14009dd10
mov ebx, eax
test eax, eax
jne 0x140066868
mov edx, 0x1858
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.bcd.UpdateBcd2MbrForWin8_pDesDisk__GetDiskIndex____pDesDisk__GetSignature____pNewSysPart__GetStartSector____pNewBootPart__GetStartSector___
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x90]
call fcn.140050540
nop
lea rcx, [rsp + 0x30]
call fcn.140050540
jmp 0x140066c9a
lea r8, [rsp + 0xb8]
lea rdx, [rsp + 0xa10]
lea rcx, [rsp + 0x90]
call fcn.1400a03c0
mov ebx, eax
test eax, eax
jne 0x140066870
mov edx, 0x185c
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.bcd.UpdateBcdForMbr2Mbr_tcsBcdFile__BootConfig_
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x90]
call fcn.140050540
nop
lea rcx, [rsp + 0x30]
call fcn.140050540
jmp 0x140066c9a
mov rdi, qword [rsp + 0x80]
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0xa10]
call sub.ntdll.dll_memset
lea r8, [rsp + 0x990]
lea rdx, str._Volume_sWindows_system32configSYSTEM
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
mov rdx, qword [rdi]
mov rcx, rdi
call qword [rdx + 0x50]
mov dword [rsp + 0x74], eax
lea rax, [rsp + 0x38]
mov qword [rsp + 0x68], rax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x18]
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x70], 4
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x50]
mov dword [rsp + 0x5c], eax
lea rax, [rsp + 0x34]
mov qword [rsp + 0x50], rax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x18]
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x58], 4
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x60]
lea r8, str.AOMEIDosdev00
lea rdx, [rsp + 0xa10]
lea rcx, [rsp + 0x30]
call fcn.14005f580
mov ebx, eax
test eax, eax
jne 0x14006698b
mov edx, 0x1868
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.reg.UpdateDosDevicesFromHiveFile_tcsBcdFile__TEXT__AOMEIDosdev00____SrcInfo__DesInfo__Migrate_MBR2MBR_
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x90]
call fcn.140050540
nop
lea rcx, [rsp + 0x30]
call fcn.140050540
jmp 0x140066c9a
lea rcx, [rsp + 0x90]
call fcn.140050540
nop
lea rcx, [rsp + 0x30]
call fcn.140050540
jmp 0x140066c9a
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x60]
test eax, eax
je 0x140066c9a
mov rax, qword [rbp]
mov rcx, rbp
call qword [rax + 0x60]
test eax, eax
je 0x140066c9a
mov word [rsp + 0xa10], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xa12]
call sub.ntdll.dll_memset
mov qword [rsp + 0x20], r14
mov r9, r15
mov r8, r12
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x78]
call fcn.1400c3330
mov ebx, eax
test eax, eax
jne 0x140066a48
mov edx, Ordinal_6258
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.UpdateBcdInfoFromGpt2Gpt_pOldSysPart__pOldBootPart__pNewSysPart__pNewBootPart_
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
jmp 0x140066c9a
lea r8, [rsp + 0x910]
lea rdx, str.__Volume_sBootBootx64.efi
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
lea rcx, [rsp + 0xa10]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x140066b65
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0xa10]
call sub.ntdll.dll_memset
lea r8, [rsp + 0x990]
lea rdx, str.__Volume_sBoot
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
xor edx, edx
lea rcx, [rsp + 0xa10]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea rcx, [rsp + 0x100]
call fcn.140147040
nop
mov word [rsp + reloc.MFC80U.DLL_Ordinal_3232], 0
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xca2]
call sub.ntdll.dll_memset
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0xa10]
call sub.ntdll.dll_memset
lea r8, [rsp + 0x910]
lea rdx, str.__Volume_sEFIMicrosoftBoot_bootmgfw.efi
lea rcx, [rsp + 0xa10]
call qword [sym.imp.MSVCR80.dll__swprintf]
lea r8, [rsp + 0x910]
lea rdx, str.__Volume_sEFIBootBootx64.efi
lea rcx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
call qword [sym.imp.MSVCR80.dll__swprintf]
lea r8, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
lea rdx, [rsp + 0xa10]
lea rcx, [rsp + 0x100]
call fcn.140055db0
nop
lea rcx, [rsp + 0x100]
call fcn.140050540
lea rcx, [rsp + 0x30]
call fcn.14005b260
nop
mov qword [rsp + 0x48], r13
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], r13
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov word [rsp + reloc.MFC80U.DLL_Ordinal_3232], ax
xor edx, edx
mov r8d, 0x206
lea rcx, [rsp + 0xca2]
call sub.ntdll.dll_memset
mov rdx, qword [r12]
mov rcx, r12
call qword [rdx + 0x18]
mov qword [rsp + 0x48], rax
mov rax, qword [r12]
mov rcx, r12
call qword [rax + 0x30]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x50]
mov dword [rsp + 0x5c], eax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x18]
mov qword [rsp + 0x60], rax
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 0x30]
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x50]
mov dword [rsp + 0x74], eax
lea r8, [rsp + 0x990]
lea rdx, str._Volume_sWindowsSystem32configSYSTEM
lea rcx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
call qword [sym.imp.MSVCR80.dll__swprintf]
mov dword [rsp + 0x28], 2
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x48]
lea r8, str.AOMEIDiskCopy01
lea rdx, [rsp + reloc.MFC80U.DLL_Ordinal_3232]
lea rcx, [rsp + 0x30]
call fcn.14005f580
mov ebx, eax
test eax, eax
jne 0x140066c90
mov edx, 0x1895
lea rcx, str...operation.cpp
call fcn.1400631c0
mov rdi, rax
call fcn.140049470
mov r10, qword [rax]
mov qword [rsp + 0x20], rdi
xor r9d, r9d
lea r8, str.reg.UpdateDosDevicesFromHiveFile_tcsNewHivePath__TEXT__AOMEIDiskCopy01_____SrcMigInfo__DesMigInfo__Migrate_GPT2GPT_
lea rdx, str._s_return_code:_0x_08X___s.
mov rcx, rax
call qword [r10 + 0x10]
nop
lea rcx, [rsp + 0x30]
call fcn.140050540
jmp 0x140066c9a
lea rcx, [rsp + 0x30]
call fcn.140050540
mov eax, ebx
mov rcx, qword [rsp + 0xeb0]
xor rcx, rsp
call fcn.140161080
mov rbx, qword [rsp + 0xf18]
add rsp, 0xec0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret