Function at 0x140012e50
Capabilities:
Check os version
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf10]
mov eax, 0x1010
call fcn.14001ad30
sub rsp, rax
mov rax, qword [0x14005d018]
xor rax, rsp
mov qword [rbp + 0xf08], rax
mov rbx, rdx
mov esi, ecx
mov dword [rsp + 0x44], ecx
xor r14d, r14d
mov byte [rbp + 0x6f0], 5
lea r8, [0x140053d60]
mov edx, 0x400
lea rcx, [rbp + 0x6f2]
call fcn.14002a3a0
lea r8, [rbp + 0x6f2]
lea rdx, str._____s
movzx ecx, byte [rbp + 0x6f0]
call fcn.140003880
nop
lea rdx, str.crashlog_extractor_Tool_ver
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
lea rdx, [0x140053d70]
call fcn.140010730
mov rcx, rax
call fcn.1400106f0
mov rcx, rax
call fcn.1400106f0
mov qword [rbp + 0x270], r14
mov eax, r14d
mov qword [rbp + 0x280], rax
mov qword [rbp + 0x288], 7
mov word [rbp + 0x270], r14w
mov qword [rbp + 0x250], r14
mov qword [rbp + 0x260], r14
mov qword [rbp + 0x268], 7
mov word [rbp + 0x250], r14w
mov r15d, 1
mov r12d, r15d
cmp esi, r15d
jle 0x1400131eb
lea r13, [rbx + 8]
mov rdx, qword [r13]
test rdx, rdx
je 0x1400131de
mov qword [rbp + 0x290], r14
mov qword [rbp + 0x2a0], r14
mov qword [rbp + 0x2a8], 7
mov word [rbp + 0x290], r14w
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp word [rdx + r8*2], 0
jne 0x140012fa0
lea rcx, [rbp + 0x290]
call fcn.140003710
nop
lea rcx, [rbp + 0x290]
call fcn.140008760
mov rsi, rax
lea r15, [rax + 0x10]
cmp qword [rax + 0x18], 8
jb 0x140012fe1
mov rdx, qword [rax]
mov rcx, qword [r15]
lea rbx, [rdx + rcx*2]
mov rdi, rdx
jmp 0x140012feb
mov rax, qword [r15]
lea rbx, [rsi + rax*2]
mov rdi, rsi
cmp rdi, rbx
je 0x140013005
movzx ecx, word [rdi]
call fcn.140028740
test eax, eax
je 0x140013005
add rdi, 2
cmp rdi, rbx
jne 0x140012ff0
mov rax, rsi
mov r9, qword [rsi + 0x18]
cmp r9, 8
jb 0x14001301a
mov rax, qword [rsi]
mov rcx, rax
jmp 0x14001301d
mov rcx, rsi
mov rdx, rax
sub rdx, rcx
sar rdx, 1
sub rdi, rax
sar rdi, 1
mov r8, qword [r15]
mov rax, r8
sub rax, rdx
cmp rax, rdi
cmovb rdi, rax
cmp r9, 8
jb 0x140013045
mov rsi, qword [rsi]
lea rcx, [rsi + rdx*2]
sub r8, rdi
mov qword [r15], r8
sub r8, rdx
lea r8, [r8*2 + 2]
lea rdx, [rcx + rdi*2]
call fcn.14001c370
lea r9, [rbp + 0x290]
mov r11, qword [rbp + 0x2a8]
cmp r11, 8
setae dil
mov r10, qword [rbp + 0x290]
cmovae r9, r10
mov rbx, qword [rbp + 0x2a0]
cmp rbx, 6
jne 0x1400130d2
mov r8, rbx
lea r15, str.__help
mov rax, r15
movzx ecx, word [r9]
mov edx, 0x2d
cmp cx, dx
jb 0x1400130d2
sub r9, r15
cmp cx, dx
ja 0x1400130d2
cmp r8, 1
je 0x140013232
dec r8
add rax, 2
movzx ecx, word [r9 + rax]
movzx edx, word [rax]
cmp cx, dx
jae 0x1400130b2
mov esi, dword [rsp + 0x44]
cmp esi, 3
jne 0x140013151
lea rdx, [rbp + 0x290]
mov r8, rbx
cmp r12d, 1
lea rcx, [rbp + 0x270]
je 0x1400130f9
lea rcx, [rbp + 0x250]
test dil, dil
cmovne rdx, r10
call fcn.140003710
nop
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 8
jb 0x1400131c6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400131c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a56
jmp 0x1400131c1
cmp esi, 2
jne 0x14001324f
cmp r12d, 1
jne 0x14001318b
lea rdx, [rbp + 0x290]
test dil, dil
cmovne rdx, r10
mov r8, rbx
lea rcx, [rbp + 0x270]
call fcn.140003710
mov r11, qword [rbp + 0x2a8]
mov r10, qword [rbp + 0x290]
cmp r11, 8
jb 0x1400131c6
lea rdx, [r11*2 + 2]
mov rax, r10
cmp rdx, 0x1000
jb 0x1400131be
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a56
mov rcx, r10
call fcn.14001a1c0
mov word [rbp + 0x290], r14w
inc r12d
add r13, 8
cmp r12d, esi
jl 0x140012f61
mov rax, qword [rbp + 0x280]
mov r15d, 1
test rax, rax
jne 0x1400132da
lea rdx, str.required_command_line_parameter_s__missing_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, str.Usage:_crashlog_extractor.exe____help___output_folder___driver_folder_
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r14d, r15d
jmp 0x1400149f2
lea rdx, str.Usage:_crashlog_extractor.exe____help___output_folder___driver_folder_
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
jmp 0x14001328b
lea rdx, str.command_line_parameters_count_incorrect_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, str.Usage:_crashlog_extractor.exe____help___output_folder___driver_folder_
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r14d, 1
mov rdx, qword [rbp + 0x2a8]
cmp rdx, 8
jb 0x1400149f2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x290]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400132d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a56
call fcn.14001a1c0
jmp 0x1400149f2
lea rcx, [rbp + 0x270]
call fcn.140006060
test al, al
je 0x1400149d1
lea rcx, [rbp + 0x270]
call fcn.140006140
test al, al
je 0x1400149d1
lea rdx, [rbp + 0x270]
cmp qword [rbp + 0x288], 8
cmovae rdx, qword [rbp + 0x270]
mov qword [rbp - 0x70], r14
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], 7
mov r8, qword [rbp + 0x280]
lea rcx, [rbp - 0x70]
call fcn.140003710
lea rcx, [rbp - 0x70]
call fcn.1400057e0
test al, al
sete bl
mov rdx, qword [rbp - 0x58]
cmp rdx, 8
jb 0x140013387
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013382
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a5c
call fcn.14001a1c0
mov qword [rbp - 0x58], 7
test bl, bl
je 0x1400133b9
lea rdx, str.output_folder_is_not_absolute_path_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r15d, 3
jmp 0x1400149f5
lea rcx, [rbp + 0x270]
call fcn.1400093a0
test al, al
je 0x1400133ef
lea rdx, str.output_folder_is_a_symlink_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r15d, 3
jmp 0x1400149f5
lea rax, [rbp + 0x270]
mov rcx, qword [rbp + 0x288]
cmp rcx, 8
setae r9b
mov r8, qword [rbp + 0x270]
cmovae rax, r8
mov rdx, qword [rbp + 0x280]
cmp word [rax + rdx*2 - 2], 0x5c
je 0x14001346b
sub rcx, rdx
cmp rcx, 1
lea rcx, [rbp + 0x270]
jb 0x140013454
lea rax, [rdx + 1]
mov qword [rbp + 0x280], rax
test r9b, r9b
cmovne rcx, r8
movzx eax, word [0x140052628]
mov word [rcx + rdx*2], ax
mov word [rcx + rdx*2 + 2], r14w
jmp 0x14001346b
lfence
mov qword [rsp + 0x20], r15
lea r9, [0x140052628]
mov rdx, r15
call fcn.140004ac0
mov qword [rbp + 0x2c8], r14
mov qword [rbp + 0x2d8], r14
mov qword [rbp + 0x2e0], 7
mov word [rbp + 0x2c8], r14w
mov qword [rbp + 0x308], r14
mov qword [rbp + 0x318], r14
mov qword [rbp + 0x320], 7
mov word [rbp + 0x308], r14w
mov qword [rbp + 0x2e8], r14
mov qword [rbp + 0x2f8], r14
mov qword [rbp + 0x300], 7
mov word [rbp + 0x2e8], r14w
cmp qword [rbp + 0x260], 0
je 0x140013acb
lea rcx, [rbp + 0x250]
call fcn.140006060
test al, al
je 0x14001350e
lea rcx, [rbp + 0x250]
call fcn.140006140
test al, al
jne 0x14001350e
lea rdx, str.driver_package_folder_doesnt_exist_
mov r15d, 3
jmp 0x140013763
lea rdx, [rbp + 0x250]
cmp qword [rbp + 0x268], 8
cmovae rdx, qword [rbp + 0x250]
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x60], r14
mov qword [rsp + 0x68], 7
mov r8, qword [rbp + 0x260]
lea rcx, [rsp + 0x50]
call fcn.140003710
lea rcx, [rsp + 0x50]
call fcn.1400057e0
test al, al
sete bl
mov rdx, qword [rsp + 0x68]
cmp rdx, 8
jb 0x14001359a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013595
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a62
call fcn.14001a1c0
mov qword [rsp + 0x68], 7
test bl, bl
je 0x1400135b9
lea rdx, str.driver_folder_is_not_absolute_path_
mov r15d, 3
jmp 0x140013763
lea rcx, [rbp + 0x250]
call fcn.1400093a0
test al, al
je 0x1400135db
lea rdx, str.driver_folder_is_a_symlink_
mov r15d, 3
jmp 0x140013763
lea rax, [rbp + 0x250]
mov rcx, qword [rbp + 0x268]
cmp rcx, 8
setae r9b
mov r8, qword [rbp + 0x250]
cmovae rax, r8
mov rdx, qword [rbp + 0x260]
cmp word [rax + rdx*2 - 2], 0x5c
je 0x140013657
sub rcx, rdx
cmp rcx, 1
lea rcx, [rbp + 0x250]
jb 0x140013640
lea rax, [rdx + 1]
mov qword [rbp + 0x260], rax
test r9b, r9b
cmovne rcx, r8
movzx eax, word [0x140052628]
mov word [rcx + rdx*2], ax
mov word [rcx + rdx*2 + 2], r14w
jmp 0x140013657
lfence
mov qword [rsp + 0x20], r15
lea r9, [0x140052628]
mov rdx, r15
call fcn.140004ac0
lea r8, str.bertreader.inf
lea rdx, [rbp + 0x250]
lea rcx, [rbp - 0x18]
call fcn.140014f20
mov rbx, rax
lea rax, [rbp + 0x2c8]
cmp rax, rbx
je 0x140013706
mov rdx, qword [rbp + 0x2e0]
cmp rdx, 8
jb 0x1400136c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x2c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400136c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a68
call fcn.14001a1c0
mov qword [rbp + 0x2d8], r14
mov qword [rbp + 0x2e0], 7
mov word [rbp + 0x2c8], r14w
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x2c8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x2d8], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov rdx, qword [rbp]
cmp rdx, 8
jb 0x140013746
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013741
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a68
call fcn.14001a1c0
lea rcx, [rbp + 0x2c8]
call fcn.140006060
test al, al
jne 0x140013782
mov r15d, 4
lea rdx, str.driver_package_not_found_
lea rdi, [0x14005ea20]
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, r15d
jmp 0x1400149a9
lea r8, str.bertreader.sys
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 8]
call fcn.140014f20
mov rbx, rax
lea rax, [rbp + 0x308]
cmp rax, rbx
je 0x140013831
mov rdx, qword [rbp + 0x320]
cmp rdx, 8
jb 0x1400137f2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x308]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400137ed
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a6e
call fcn.14001a1c0
mov qword [rbp + 0x318], r14
mov qword [rbp + 0x320], 7
mov word [rbp + 0x308], r14w
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x308], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x318], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov rdx, qword [rbp + 0x20]
cmp rdx, 8
jb 0x140013871
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001386c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a6e
call fcn.14001a1c0
lea rcx, [rbp + 0x308]
call fcn.140006060
test al, al
je 0x140013aa2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x420], xmm0
movups xmmword [rbp + 0x430], xmm0
movups xmmword [rbp + 0x440], xmm0
movups xmmword [rbp + 0x450], xmm0
movups xmmword [rbp + 0x460], xmm0
mov qword [rbp + 0x470], rax
lea rcx, [rbp + 0x308]
cmp qword [rbp + 0x320], 8
cmovae rcx, qword [rbp + 0x308]
lea rdx, [rbp + 0x420]
call fcn.140016750
test eax, eax
jne 0x140013913
lea rdx, str.bertreader.sys
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
lea rdx, str._integrity_verification_error_
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r15d, 0xe
mov esi, r15d
jmp 0x1400149a9
lea r8, str.bertreader.cat
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0xe8]
call fcn.140014f20
mov rbx, rax
lea rax, [rbp + 0x2e8]
cmp rax, rbx
je 0x1400139c5
mov rdx, qword [rbp + 0x300]
cmp rdx, 8
jb 0x140013986
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x2e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013981
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a74
call fcn.14001a1c0
mov qword [rbp + 0x2f8], r14
mov qword [rbp + 0x300], 7
mov word [rbp + 0x2e8], r14w
movups xmm0, xmmword [rbx]
movups xmmword [rbp + 0x2e8], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp + 0x2f8], xmm1
mov qword [rbx + 0x10], r14
mov qword [rbx + 0x18], 7
mov word [rbx], r14w
mov rdx, qword [rbp + 0x100]
cmp rdx, 8
jb 0x140013a0b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013a06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a74
call fcn.14001a1c0
lea rcx, [rbp + 0x2e8]
call fcn.140006060
test al, al
je 0x140013a7d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x480], xmm0
movups xmmword [rbp + 0x490], xmm0
movups xmmword [rbp + 0x4a0], xmm0
movups xmmword [rbp + 0x4b0], xmm0
movups xmmword [rbp + 0x4c0], xmm0
mov qword [rbp + 0x4d0], rax
lea rcx, [rbp + 0x2e8]
cmp qword [rbp + 0x300], 8
cmovae rcx, qword [rbp + 0x2e8]
lea rdx, [rbp + 0x480]
call fcn.140016750
test eax, eax
jne 0x140013acb
lea rdx, str.bertreader.cat
jmp 0x1400138e2
lea rdx, str.driver_cat_file_not_found_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 4
jmp 0x1400149a9
lea rdx, str.driver_sys_file_not_found_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r15d, 4
mov esi, r15d
jmp 0x1400149a9
xor edx, edx
mov r8d, 0x11c
lea rcx, [rbp + 0x5d0]
call fcn.14001ca60
mov dword [rbp + 0x5d0], 0x11c
mov qword [rbp + 0x5d4], 0xa
mov dword [rbp + 0x5dc], 0x3839
mov byte [rbp + 0x6ea], 1
mov r8b, 3
mov edx, 2
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov r8b, 3
mov edx, r15d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov r8b, 3
mov esi, 4
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov r8b, 3
lea edx, [rsi + 0x7c]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_VerSetConditionMask]
mov r8, rax
mov edx, 0x87
lea rcx, [rbp + 0x5d0]
call qword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
jne 0x140013b84
lea rdx, str.Windows_OS_earlier_than_Windows_10_version_1803_not_supported_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 2
jmp 0x1400149a9
xorps xmm0, xmm0
movups xmmword [rbp + 0x3a0], xmm0
lea rax, [rbp + 0x250]
mov qword [rbp + 0x340], rax
mov qword [rbp - 0x30], r14
lea rax, [rbp + 0x340]
mov qword [rbp - 0x28], rax
mov byte [rbp - 0x20], 1
mov ecx, 0x20
call fcn.14001a6d8
mov qword [rsp + 0x48], rax
mov rcx, qword [rbp + 0x340]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], r15d
mov dword [rax + 0xc], r15d
lea rdx, vtable.std::_Ref_count_resource_std::nullptr_t__class__lambda_1306f4683c34aa6d3883bbbafffdb906__.0
mov qword [rax], rdx
mov qword [rax + 0x10], rcx
mov qword [rax + 0x18], r14
mov qword [rbp + 0x3a0], r14
mov qword [rbp + 0x3a8], rax
lea rdi, [0x14005ea20]
mov r15d, 3
mov rax, qword [rbp + 0x260]
test rax, rax
je 0x1400142eb
mov r12b, 1
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x2b0], xmm1
mov qword [rbp + 0x2c0], r14
movdqu xmmword [rbp + 0x328], xmm1
mov qword [rbp + 0x338], r14
mov qword [rsp + 0x70], r14
mov qword [rbp - 0x80], r14
mov qword [rbp - 0x78], 7
mov word [rsp + 0x70], r14w
lea r8d, [r15 + 0xc]
lea rdx, str.root_bertreader
lea rcx, [rsp + 0x70]
call fcn.140003710
nop
mov rdx, qword [0x1400603c8]
mov rcx, qword [0x1400603c0]
call fcn.140003f80
mov rax, qword [0x1400603c0]
mov qword [0x1400603c8], rax
mov rax, qword [0x1400603d8]
mov qword [0x1400603e0], rax
cmp qword [rbp - 0x80], 0
jne 0x140013c9f
mov ebx, r15d
jmp 0x140013d2e
xor eax, eax
mov qword [rbp + 0x378], rax
mov qword [rbp + 0x37c], 3
lea rax, [rsp + 0x70]
cmp qword [rbp - 0x78], 8
cmovae rax, qword [rsp + 0x70]
mov qword [rbp + 0xf00], rax
lea rax, [rbp + 0x378]
mov qword [rsp + 0x30], rax
lea rax, [0x140002a00]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xf00]
mov qword [rsp + 0x20], rax
call fcn.1400023f0
mov ebx, eax
test eax, eax
jne 0x140013d2e
mov r8, qword [0x1400603c8]
mov rdx, qword [0x1400603c0]
lea rcx, [rbp + 0x2b0]
call fcn.140004290
mov r8, qword [0x1400603e0]
mov rdx, qword [0x1400603d8]
lea rcx, [rbp + 0x328]
call fcn.140004470
nop
mov rdx, qword [rbp - 0x78]
cmp rdx, 8
jb 0x140013d6f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013d6a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014a50
call fcn.14001a1c0
test ebx, ebx
jne 0x140013e70
mov rax, qword [rbp + 0x330]
mov rcx, qword [rbp + 0x328]
sub rax, rcx
sar rax, 3
cmp rax, 1
jne 0x140013e70
mov eax, dword [rcx]
test al, 8
je 0x140013dc3
lea rdx, str.device_was_enabled
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, str.status_root_bertreader:_enabled
jmp 0x140013e66
bt eax, 0xa
jae 0x140013e70
cmp dword [rcx + 4], 0x16
jne 0x140013e70
lea rdx, str.device_was_disabled
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, str.status_root_bertreader:_disabled
mov ecx, esi
call fcn.140003880
mov dword [rsp + 0x44], r14d
mov byte [rsp + 0x40], 0
lea rdx, str.root_bertreader
lea rcx, [rbp + 0x28]
call fcn.1400041d0
nop
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x44]
lea rcx, [rbp + 0x28]
call fcn.140002e30
mov ebx, eax
lea rcx, [rbp + 0x28]
call fcn.1400036a0
test ebx, ebx
jne 0x140013e70
cmp dword [rsp + 0x44], 1
jne 0x140013e70
lea rdx, str.device_enabled
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, str.enable_root_bertreader:_enabled
mov ecx, esi
call fcn.140003880
xor r12b, r12b
mov rax, qword [rbp + 0x2b8]
cmp qword [rbp + 0x2b0], rax
je 0x140013e8a
test r12b, r12b
je 0x140013e8a
call fcn.140012d00
lea rcx, [rbp + 0x348]
call fcn.140001490
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x348], xmm0
mov qword [rbp + 0x358], r14
lea rcx, [rbp + 0x360]
call fcn.140001490
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x360], xmm0
mov qword [rbp + 0x370], r14
lea rcx, [rbp + 0x4e0]
call fcn.140009070
lea rcx, [rbp + 0x4e0]
call fcn.14000a260
nop
test r12b, r12b
je 0x140013f9f
lea rdx, str.install__
lea rcx, [rbp + 0x4e0]
call fcn.140010170
mov rcx, rax
lea rdx, [rbp + 0x2c8]
call fcn.1400106d0
mov rcx, rax
lea rdx, str.__root_bertreader
call fcn.140010170
lea rdx, [rbp + 0x228]
lea rcx, [rbp + 0x4e0]
call fcn.14000a190
nop
mov rcx, rax
call fcn.140003690
mov r8, rax
lea rdx, str.Loading_driver:__s
mov ecx, esi
call fcn.140003880
nop
lea rcx, [rbp + 0x228]
call fcn.1400036a0
lea rdx, str.root_bertreader
lea rcx, [rbp + 0x68]
call fcn.1400041d0
nop
lea rcx, [rbp + 0x2c8]
call fcn.140003690
mov rdx, rax
lea rcx, [rbp + 0x48]
call fcn.1400041d0
nop
lea rdx, [rbp + 0x68]
lea rcx, [rbp + 0x48]
call fcn.140003160
mov ebx, eax
lea rcx, [rbp + 0x48]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x68]
call fcn.1400036a0
test ebx, ebx
je 0x1400140b7
lea rdx, str.Failed_to_load_driver.__Now_try_to_update_driver_...
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rdx, [0x140051fe8]
lea rcx, [rbp + 0x88]
call fcn.1400041d0
nop
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0x4e0]
call fcn.140014a80
nop
lea rcx, [rbp + 0x88]
call fcn.1400036a0
lea rdx, str.update__
lea rcx, [rbp + 0x4e0]
call fcn.140010170
mov rcx, rax
lea rdx, [rbp + 0x2c8]
call fcn.1400106d0
mov rcx, rax
lea rdx, str.__root_bertreader
call fcn.140010170
lea rdx, [rbp + 0x208]
lea rcx, [rbp + 0x4e0]
call fcn.14000a190
nop
mov rcx, rax
call fcn.140003690
mov r8, rax
lea rdx, str.Updating_driver:__s
mov ecx, esi
call fcn.140003880
nop
lea rcx, [rbp + 0x208]
call fcn.1400036a0
lea rdx, str.root_bertreader
lea rcx, [rbp + 0xa8]
call fcn.1400041d0
nop
lea rdx, [rbp + 0xa8]
lea rcx, [rbp + 0x2c8]
call fcn.140003030
mov ebx, eax
lea rcx, [rbp + 0xa8]
call fcn.1400036a0
test ebx, ebx
je 0x1400140b7
lea rdx, str.Failed_to_update_load_driver.__Gave_up.
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 5
jmp 0x140014422
lea rdx, str.Listing_driver_files:_driverfiles_root_bertreader
mov ecx, esi
call fcn.140003880
lea rdx, str.root_bertreader
lea rcx, [rbp + 0xc8]
call fcn.1400041d0
nop
lea r9, [rbp + 0x360]
lea r8, [rbp + 0x348]
lea rdx, [rbp + 0x2b0]
lea rcx, [rbp + 0xc8]
call fcn.140002ed0
mov ebx, eax
lea rcx, [rbp + 0xc8]
call fcn.1400036a0
test ebx, ebx
jne 0x140014406
lea rdx, str.Successfully_loaded_driver:
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r12, qword [rbp + 0x2b8]
mov rbx, qword [rbp + 0x2b0]
cmp rbx, r12
je 0x140014179
nop
mov rdx, rbx
lea rcx, [0x14005eb50]
call fcn.1400106d0
mov rcx, rax
call fcn.1400106f0
mov rcx, rbx
call fcn.140003690
mov r8, rax
lea rdx, str.DEV:__s
mov ecx, esi
call fcn.140003880
add rbx, 0x20
cmp rbx, r12
jne 0x140014140
mov rbx, qword [rbp + 0x348]
mov r12, qword [rbp + 0x350]
cmp rbx, r12
je 0x1400141fc
nop dword [rax]
mov rdx, rbx
lea rcx, [rbp + 0x1c8]
call fcn.140006970
nop
lea rdx, [rbp + 0x1e8]
mov rcx, rax
call fcn.140005720
nop
mov rdx, rax
call fcn.140015040
mov rcx, rax
call fcn.1400106f0
nop
lea rcx, [rbp + 0x1e8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x1c8]
call fcn.1400036a0
mov rcx, rbx
call fcn.140003690
mov r8, rax
lea rdx, str.INF:__s
mov ecx, esi
call fcn.140003880
add rbx, 0x20
cmp rbx, r12
jne 0x140014190
mov rbx, qword [rbp + 0x360]
mov r12, qword [rbp + 0x368]
cmp rbx, r12
je 0x14001427c
nop
mov rdx, rbx
lea rcx, [rbp + 0x188]
call fcn.140006970
nop
lea rdx, [rbp + 0x1a8]
mov rcx, rax
call fcn.140005720
nop
mov rdx, rax
call fcn.140015040
mov rcx, rax
call fcn.1400106f0
nop
lea rcx, [rbp + 0x1a8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x188]
call fcn.1400036a0
mov rcx, rbx
call fcn.140003690
mov r8, rax
lea rdx, str.SYS:__s
mov ecx, esi
call fcn.140003880
add rbx, 0x20
cmp rbx, r12
jne 0x140014210
lea rcx, [0x14005eb50]
call fcn.1400106f0
mov rax, qword [rbp + 0x2b8]
cmp qword [rbp + 0x2b0], rax
jne 0x1400142a4
lea rdx, str.Driver_not_loaded_
jmp 0x14001440d
lea rcx, [rbp + 0x4e0]
call fcn.140008f70
nop
lea rcx, [rbp + 0x360]
call fcn.1400035c0
nop
lea rcx, [rbp + 0x348]
call fcn.1400035c0
nop
lea rcx, [rbp + 0x328]
call fcn.140003630
nop
lea rcx, [rbp + 0x2b0]
call fcn.1400035c0
mov rax, qword [rbp + 0x260]
lea r13, str.._semahw
lea r12, str.._bertreader
mov rcx, r12
test rax, rax
cmove rcx, r13
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
mov qword [rbp + 0x3b0], rax
cmp rax, 0xffffffffffffffff
jne 0x140014467
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp + 0x168]
call fcn.1400165a0
nop
mov rcx, rax
call fcn.140016620
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], eax
lea r9, [0x140054620]
lea r8, str.wmain
lea rdx, str._S:_Failed_to__S._Error__0x_x_:__s
mov ecx, 2
call fcn.140003880
nop
lea rcx, [rbp + 0x168]
call fcn.1400164f0
lea rdx, str.Failed_to_open_device
mov rcx, rdi
call fcn.140010170
cmp qword [rbp + 0x260], 0
cmove r12, r13
mov rdx, r12
mov rcx, rax
call fcn.140010170
mov rcx, rax
lea rdx, str.__error:
call fcn.140010170
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x50]
call fcn.140016490
nop
mov rdx, qword [rax]
mov rcx, rbx
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
nop
lea rcx, [rbp - 0x50]
call fcn.140016460
mov esi, 7
jmp 0x14001498f
lea rdx, str.Failed_to_list_driver_files.
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 6
lea rcx, [rbp + 0x4e0]
call fcn.140008f70
nop
lea rcx, [rbp + 0x360]
call fcn.1400035c0
nop
lea rcx, [rbp + 0x348]
call fcn.1400035c0
nop
lea rcx, [rbp + 0x328]
call fcn.140003630
nop
lea rcx, [rbp + 0x2b0]
call fcn.1400035c0
jmp 0x14001499c
mov dword [rbp + 0x24c], r14d
mov dword [rbp + 0x248], r14d
mov qword [rsp + 0x20], r14
lea r9, [rbp + 0x248]
mov r8d, esi
lea rdx, [rbp + 0x24c]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x14001453d
lea rdx, str.Failed_to_read_required_size_for_BERT_data:
mov rcx, rdi
call fcn.140010730
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x48]
call fcn.140016490
nop
mov rdx, qword [rax]
mov rcx, rbx
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
nop
lea rcx, [rbp - 0x48]
call fcn.140016460
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x490
jne 0x140014503
lea rdx, str.Failed_to_read_required_size_for_BERT_data:_probably_no_ACPI_BERT_is_found.
mov ecx, r15d
call fcn.140003880
mov esi, 8
jmp 0x14001498f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x40]
call fcn.140016490
nop
mov r8, qword [rax]
lea rdx, str.Failed_to_read_required_size_for_BERT_data:__s
mov ecx, 2
call fcn.140003880
nop
lea rcx, [rbp - 0x40]
call fcn.140016460
mov esi, 8
jmp 0x14001498f
cmp dword [rbp + 0x248], 4
jne 0x140014550
mov edx, dword [rbp + 0x24c]
test edx, edx
jne 0x140014586
lea rax, str.__bytes_read__sizeof_bert_size_required_____bert_size_required___0__
mov qword [rsp + 0x20], rax
lea r9, str.e:_build_agentworkspacelaternrock_crashlog_win_mainSrc_srcexecrashlog_extractorcrashlog.cpp
mov r8d, 0x297
lea rdx, str.ASSERT___LINE__04i___s__executing___s_
mov r12d, 1
mov ecx, r12d
call fcn.140003880
mov edx, dword [rbp + 0x24c]
jmp 0x14001458c
mov r12d, 1
cmp edx, 0x30
jae 0x1400145bf
lea rax, str._bert_size_required___sizeof_ACPI_TABLE_BERT__
mov qword [rsp + 0x20], rax
lea r9, str.e:_build_agentworkspacelaternrock_crashlog_win_mainSrc_srcexecrashlog_extractorcrashlog.cpp
mov r8d, 0x298
lea rdx, str.ASSERT___LINE__04i___s__executing___s_
mov ecx, r12d
call fcn.140003880
mov edx, dword [rbp + 0x24c]
lea rcx, [rbp + 0x388]
call fcn.140001490
lea rcx, [rbp + 0x388]
call fcn.14000b310
nop
mov dword [rbp + 0x248], r14d
mov qword [rsp + 0x20], r14
lea r9, [rbp + 0x248]
mov r8d, dword [rbp + 0x24c]
mov r15, qword [rbp + 0x388]
mov rdx, r15
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140014654
lea rdx, str.Failed_to_read_BERT_data:
mov rcx, rdi
call fcn.140010730
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, [rbp - 0x38]
call fcn.140016490
nop
mov rdx, qword [rax]
mov rcx, rbx
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
nop
lea rcx, [rbp - 0x38]
call fcn.140016460
mov esi, 8
jmp 0x140014982
mov eax, dword [rbp + 0x248]
cmp eax, 0x30
jae 0x14001468d
lea rax, str._bytes_read___sizeof_ACPI_TABLE_BERT__
mov qword [rsp + 0x20], rax
lea r9, str.e:_build_agentworkspacelaternrock_crashlog_win_mainSrc_srcexecrashlog_extractorcrashlog.cpp
mov r8d, 0x2a2
lea rdx, str.ASSERT___LINE__04i___s__executing___s_
mov ecx, r12d
call fcn.140003880
mov eax, dword [rbp + 0x248]
mov r13, qword [rbp + 0x390]
mov rsi, r13
sub rsi, r15
cmp rax, rsi
je 0x1400146c7
lea rax, str._bytes_read__output_buffer.size___
mov qword [rsp + 0x20], rax
lea r9, str.e:_build_agentworkspacelaternrock_crashlog_win_mainSrc_srcexecrashlog_extractorcrashlog.cpp
mov r8d, 0x2a3
lea rdx, str.ASSERT___LINE__04i___s__executing___s_
mov ecx, r12d
call fcn.140003880
lea rcx, [rbp + 0x388]
call fcn.140012010
mov r12, rax
lea rcx, [rbp + 0x128]
call fcn.140009080
nop
mov r8, rax
lea rcx, [rbp + 0x148]
call fcn.140015120
nop
lea r8, str..bert
mov rdx, rax
lea rcx, [rbp + 0x3b8]
call fcn.140006a80
nop
lea rcx, [rbp + 0x148]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x128]
call fcn.1400036a0
lea r8, [rbp + 0x3b8]
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x108]
call fcn.140015260
nop
lea r8, str..hdr
mov rdx, rax
lea rcx, [rbp + 0x3d8]
call fcn.140006a80
nop
lea rcx, [rbp + 0x108]
call fcn.1400036a0
xor r9d, r9d
xor r8d, r8d
mov rdx, r12
lea rcx, [rbp + 0x3d8]
call fcn.140012bb0
test al, al
je 0x14001478a
lea rdx, str.BERT_header_saved_to_file
lea rcx, [0x14005eb50]
jmp 0x140014794
lea rdx, str.Failed_to_save_BERT_header_to_file
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
cmp dword [r12 + 0x24], 0
jne 0x1400147ca
lea rdx, str.BERT_region_length_is_zero.
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 9
jmp 0x140014968
cmp byte [r12 + 9], 0
je 0x1400147ff
mov rcx, r15
call fcn.1400097d0
test al, al
je 0x1400147ff
lea rdx, str.BERT_table_is_corrupted_
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 0xa
jmp 0x140014968
lea eax, [rsi - 0x30]
test eax, eax
jne 0x140014827
lea rdx, str.Failed_to_extract_BERT_raw_data
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 0xb
jmp 0x140014968
lea rbx, [r15 + 0x30]
mov rdx, r13
mov rcx, rbx
call fcn.140015380
movzx r15d, al
lea r13, [rsi - 0x30]
mov rdx, r13
mov rcx, rbx
call fcn.1400126d0
xor cl, cl
movzx esi, cl
test al, al
mov eax, 1
cmove esi, eax
lea r8, [rbp + 0x3b8]
lea rdx, [rbp + 0x270]
lea rcx, [rbp + 0x3f8]
call fcn.140015260
nop
test r15b, r15b
je 0x14001487d
test sil, sil
je 0x140014889
lea rcx, [rbp + 0x3f8]
call fcn.14000b400
mov r9, r13
mov r8, rbx
mov rdx, r12
lea rcx, [rbp + 0x3f8]
call fcn.140012bb0
test al, al
jne 0x1400148c3
lea rdx, str.Failed_to_save_data_to_file
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 0xc
jmp 0x14001495b
lea rdx, str.BERT_data_file
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
lea rdx, [rbp + 0x3b8]
call fcn.1400106d0
mov rcx, rax
lea rdx, str._saved
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
lea rcx, [rbp + 0x3d8]
call fcn.1400092c0
test al, al
je 0x140014927
lea rdx, str.BERT_header_raw_file_deleted
lea rcx, [0x14005eb50]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
test r15b, r15b
jne 0x140014935
lea rdx, str.BERT_raw_data_are_ALL_zeros_
jmp 0x140014941
test sil, sil
je 0x140014958
lea rdx, str.BERT_raw_data_is_not_crashlog_data_
mov rcx, rdi
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov esi, 0xd
jmp 0x14001495b
mov esi, r14d
lea rcx, [rbp + 0x3f8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x3d8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x3b8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x388]
call fcn.14000b2b0
nop
lea rcx, [rbp + 0x3b0]
call int.140009940
nop
lea rcx, [rbp + 0x3a0]
call fcn.140014ac0
nop
lea rcx, [rbp + 0x2e8]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x308]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x2c8]
call fcn.1400036a0
jmp 0x1400149f8
lea rdx, str.output_folder_doesnt_exist_
lea rcx, [0x14005ea20]
call fcn.140010170
mov rcx, rax
call fcn.1400106f0
mov r14d, 3
mov r15d, r14d
mov esi, r15d
lea rcx, [rbp + 0x250]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x270]
call fcn.1400036a0
nop
lea rcx, [rbp + 0x6f0]
call fcn.140014b20
mov eax, esi
mov rcx, qword [rbp + 0xf08]
xor rcx, rsp
call fcn.14001a1a0
lea r11, [rsp + 0x1010]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140027390
nop
call fcn.140027390
int3
call fcn.140027390
nop
call fcn.140027390
int3
call fcn.140027390
int3
call fcn.140027390
int3
call fcn.140027390
int3