Function at 0x14000ceb0
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x458
mov r15, r8
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x14004c030]
xor rax, rsp
mov qword [rsp + 0x450], rax
lea rsi, [rsp + 0x30]
mov r8d, 0x20a
mov rcx, rsi
xor edx, edx
call fcn.140016ea0
mov rcx, rsi
call fcn.140013590
test eax, eax
je 0x14000cf2a
lea rsi, [rsp + 0x240]
mov r8d, 0x20a
mov rcx, rsi
xor edx, edx
call fcn.140016ea0
lea rcx, [0x1400437c8]
mov rdx, rsi
call fcn.140013690
test eax, eax
jne 0x14000cf86
mov eax, dword [0x14004fe88]
mov ecx, dword [0x14004cde8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d1e4
lea rdi, str.CompareSecureUpdateStatus_failed_due_to_GetSecureOutputFilePath_failure
xor esi, esi
mov rdx, rdi
call fcn.140013970
mov rcx, qword [rsp + 0x450]
xor rcx, rsp
call fcn.140027fe0
mov eax, esi
add rsp, 0x458
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x240]
call fcn.140037410
test eax, eax
je 0x14000cf2a
lea rdx, [0x140043fee]
lea rcx, [rsp + 0x30]
call fcn.140020cdc
test rax, rax
je 0x14000d023
mov r14, rax
xorps xmm0, xmm0
lea rcx, [rsp + 0x240]
movaps xmmword [rcx + 0x10], xmm0
movaps xmmword [rcx], xmm0
mov edx, 1
mov r8d, 0x1f
mov r9, rax
call fcn.14002284c
mov r12, rax
mov rcx, r14
call fcn.140022244
test eax, eax
sete sil
je 0x14000d063
mov eax, dword [0x14004fe88]
mov ecx, dword [0x14004cde8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d234
lea rdx, str.CompareSecureUpdateStatus_failed_to_read_status_file
call fcn.140013970
jmp 0x14000d1a3
mov eax, dword [0x14004fe88]
mov ecx, dword [0x14004cde8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d28d
call fcn.14001c700
mov r8d, dword [rax]
lea rdx, str.CompareSecureUpdateStatus_failed_to_open_the_secure_status_file:__d
call fcn.140013970
xor esi, esi
jmp 0x14000cf60
mov byte [rsp + r12 + 0x240], 0
test r15, r15
je 0x14000d07d
cmp byte [r15 + 4], 0
je 0x14000d07d
mov byte [r15 + 4], 0
lea r13, [rsp + 0x240]
mov rcx, r13
mov edx, 0x3a
call fcn.140017030
mov r12, rax
test rax, rax
jne 0x14000d0cc
lea rcx, [rsp + 0x240]
mov edx, 0xa
call fcn.140017030
mov r12, rax
test rax, rax
jne 0x14000d0cc
lea rcx, [rsp + 0x240]
call fcn.1400236b0
lea r12, [rsp + rax]
add r12, 0x240
mov rbp, r12
sub rbp, r13
mov rcx, rdi
call fcn.1400236b0
cmp rbp, rax
jne 0x14000d0fa
lea rcx, [rsp + 0x240]
mov rdx, rdi
mov r8, rbp
call fcn.140023770
test eax, eax
sete bpl
jmp 0x14000d0fc
xor ebp, ebp
test r15, r15
je 0x14000d14d
cmp byte [r12], 0x3a
jne 0x14000d14d
inc r12
lea r13, [rsp + 0x28]
mov qword [r13], 0
mov rcx, r12
mov rdx, r13
mov r8d, 0xa
call fcn.140023e34
cmp qword [r13], r12
je 0x14000d14d
lea ecx, [rax - 0x7fffffff]
cmp ecx, 2
jb 0x14000d14d
cmp byte [r15 + 4], 0
jne 0x14000d22e
mov dword [r15], eax
mov byte [r15 + 4], 1
mov byte [rbx], bpl
mov eax, dword [0x14004fe88]
mov ecx, dword [0x14004cde8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d2ce
cmp byte [rbx], 0
lea rax, str.does_not_match
lea r9, str.matches
cmove r9, rax
mov qword [rsp + 0x20], rdi
lea rdx, str.CompareSecureUpdateStatus__s__s__s
lea r8, [rsp + 0x240]
call fcn.140013970
mov rcx, r14
call fcn.14002215c
test eax, eax
je 0x14000cf60
mov eax, dword [0x14004fe88]
mov ecx, dword [0x14004cde8]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14000d275
lea rdi, str.File_close_did_not_execute_successfully
jmp 0x14000cf58
lea rcx, [0x14004fe88]
call fcn.140015430
lea rdi, str.CompareSecureUpdateStatus_failed_due_to_GetSecureOutputFilePath_failure
xor esi, esi
cmp dword [0x14004fe88], 0xffffffff
jne 0x14000cf58
mov qword [0x14004fc78], 0
lea rcx, [0x1400086f0]
call fcn.1400155c8
lea rcx, [0x14004fe88]
call fcn.140015498
jmp 0x14000cf58
int3
lea rcx, [0x14004fe88]
call fcn.140015430
cmp dword [0x14004fe88], 0xffffffff
jne 0x14000d012
mov qword [0x14004fc78], 0
lea rcx, [0x1400086f0]
call fcn.1400155c8
lea rcx, [0x14004fe88]
call fcn.140015498
jmp 0x14000d012
lea rcx, [0x14004fe88]
call fcn.140015430
lea rdi, str.File_close_did_not_execute_successfully
jmp 0x14000d1f9
lea rcx, [0x14004fe88]
call fcn.140015430
cmp dword [0x14004fe88], 0xffffffff
jne 0x14000d048
mov qword [0x14004fc78], 0
lea rcx, [0x1400086f0]
call fcn.1400155c8
lea rcx, [0x14004fe88]
call fcn.140015498
jmp 0x14000d048
lea rcx, [0x14004fe88]
call fcn.140015430
cmp dword [0x14004fe88], 0xffffffff
jne 0x14000d175
mov qword [0x14004fc78], 0
lea rcx, [0x1400086f0]
call fcn.1400155c8
lea rcx, [0x14004fe88]
call fcn.140015498
jmp 0x14000d175