Function at 0x439870
Capabilities:
Check for software breakpoints

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x47e2d5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x9b8
mov eax, dword [0x4b4200]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x9a0], esi
mov eax, dword [ebx + 8]
xorps xmm0, xmm0
mov edi, dword [ebx + 0xc]
movq qword [ebp - 0x20], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x9c8], eax
mov dword [ebp - 0x9b4], edi
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov byte [ebp - 0x18], 1
mov dword [ebp - 4], 0
movq qword [ebp - 0x3c], xmm0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 0x34], 1
mov byte [ebp - 4], 1
cmp byte [edi + 0x15], 0
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x9c0], eax
movlpd qword [ebp - 0x28], xmm0
movlpd qword [ebp - 0x30], xmm0
je 0x439b27
mov edx, dword [edi + 0x1c]
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x439b27
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x439b27
test edx, edx
je 0x439b27
cmp byte [edx], 1
je 0x43996c
inc eax
add edx, 0xc
jmp 0x439950
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.1_nRaw_Read_Error_Rate
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x4399f9
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439a0e
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439a57
cmp eax, 1
jl 0x439a57
cmp eax, dword [esi + 0x190]
jg 0x439a57
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x439a57
cmp dword [ecx], 0xf
jne 0x439a57
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x78]
push eax
push edx
push 0x1074
mov dword [ebp - 0x70], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439a68
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439abf
cmp eax, 1
jl 0x439abf
cmp eax, dword [esi + 0x190]
jg 0x439abf
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x439abf
cmp dword [ecx + eax*8], 0xf
jne 0x439abf
lea edx, [ebp - 0x294]
mov dword [ebp - 0x28c], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x280], str.Lowest__0_
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439ad0
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439b27
cmp eax, 1
jl 0x439b27
cmp eax, dword [esi + 0x190]
jg 0x439b27
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x439b27
cmp dword [ecx + eax*8], 0xf
jne 0x439b27
lea edx, [ebp - 0x2d0]
mov dword [ebp - 0x2c8], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x2bc], str.Sum_of_correctable_and_uncorrectable_ECC_error_events
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp - 0x9c0], 0
jne 0x439d58
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x439c39
xor eax, eax
add edx, 2
nop dword [eax + eax]
cmp eax, 0x29
jg 0x439c39
test edx, edx
je 0x439c39
cmp byte [edx], 2
je 0x439b7c
inc eax
add edx, 0xc
jmp 0x439b60
mov al, byte [edx]
mov cl, byte [edx + 3]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [edx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [edx + 9]
mov word [ebp - 0x9a4], ax
movzx eax, cl
mov byte [ebp - 0x9ac], cl
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
push ecx
push 2
push str.2_nThroughput_Performance
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Highest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Overall__general__throughput_performance_of_a_hard_disk_drive
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x439d58
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x439d58
test edx, edx
je 0x439d58
cmp byte [edx], 3
je 0x439c7c
inc eax
add edx, 0xc
jmp 0x439c60
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x4a3174
mov ecx, eax
call fcn.00406690
push ecx
push 2
push str.3_nSpin_Up_Time
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Average_time_of_spindle_spin_up__from_zero_RPM_to_fully_operational__in_milliseconds
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x439f60
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x439f60
test edx, edx
je 0x439f60
cmp byte [edx], 4
je 0x439d9c
inc eax
add edx, 0xc
jmp 0x439d80
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.4_nStart_Stop_Count
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x439e29
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439e3e
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439e90
cmp eax, 1
jl 0x439e90
cmp eax, dword [esi + 0x190]
jg 0x439e90
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x439e90
cmp dword [ecx], 0xf
jne 0x439e90
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2f8], eax
lea eax, [ebp - 0x30c]
push eax
push edx
push 0x1074
mov dword [ebp - 0x304], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439ea1
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439ef8
cmp eax, 1
jl 0x439ef8
cmp eax, dword [esi + 0x190]
jg 0x439ef8
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x439ef8
cmp dword [ecx + eax*8], 0xf
jne 0x439ef8
lea edx, [ebp - 0x348]
mov dword [ebp - 0x340], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x334], str.Lowest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x439f09
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x439f60
cmp eax, 1
jl 0x439f60
cmp eax, dword [esi + 0x190]
jg 0x439f60
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x439f60
cmp dword [ecx + eax*8], 0xf
jne 0x439f60
lea edx, [ebp - 0x384]
mov dword [ebp - 0x37c], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x370], str.Count_of_hard_drive_spindle_start_stop_cycles
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a164
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43a164
test edx, edx
je 0x43a164
cmp byte [edx], 7
je 0x439fa0
inc eax
add edx, 0xc
jmp 0x439f84
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.7_nSeek_Error_Rate
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43a02d
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a042
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a094
cmp eax, 1
jl 0x43a094
cmp eax, dword [esi + 0x190]
jg 0x43a094
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43a094
cmp dword [ecx], 0xf
jne 0x43a094
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x3ac], eax
lea eax, [ebp - 0x3c0]
push eax
push edx
push 0x1074
mov dword [ebp - 0x3b8], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a0a5
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a0fc
cmp eax, 1
jl 0x43a0fc
cmp eax, dword [esi + 0x190]
jg 0x43a0fc
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a0fc
cmp dword [ecx + eax*8], 0xf
jne 0x43a0fc
lea edx, [ebp - 0x3fc]
mov dword [ebp - 0x3f4], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x3e8], str.Lowest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a10d
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a164
cmp eax, 1
jl 0x43a164
cmp eax, dword [esi + 0x190]
jg 0x43a164
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a164
cmp dword [ecx + eax*8], 0xf
jne 0x43a164
lea edx, [ebp - 0x438]
mov dword [ebp - 0x430], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x424], str.Frequency_of_seek_errors_during_disk_head_positioning
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a373
xor eax, eax
add edx, 2
nop dword [eax + eax]
cmp eax, 0x29
jg 0x43a373
test edx, edx
je 0x43a373
cmp byte [edx], 8
je 0x43a1ac
inc eax
add edx, 0xc
jmp 0x43a190
mov al, byte [edx]
mov cl, byte [edx + 3]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [edx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [edx + 9]
mov word [ebp - 0x9a4], ax
movzx eax, cl
mov byte [ebp - 0x9ac], cl
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.8_nSeek_Time_Performance
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43a23c
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a251
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a2a3
cmp eax, 1
jl 0x43a2a3
cmp eax, dword [esi + 0x190]
jg 0x43a2a3
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43a2a3
cmp dword [ecx], 0xf
jne 0x43a2a3
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x460], eax
lea eax, [ebp - 0x474]
push eax
push edx
push 0x1074
mov dword [ebp - 0x46c], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a2b4
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a30b
cmp eax, 1
jl 0x43a30b
cmp eax, dword [esi + 0x190]
jg 0x43a30b
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a30b
cmp dword [ecx + eax*8], 0xf
jne 0x43a30b
lea edx, [ebp - 0x4b0]
mov dword [ebp - 0x4a8], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x49c], str.Highest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a31c
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a373
cmp eax, 1
jl 0x43a373
cmp eax, dword [esi + 0x190]
jg 0x43a373
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a373
cmp dword [ecx + eax*8], 0xf
jne 0x43a373
lea edx, [ebp - 0x4ec]
mov dword [ebp - 0x4e4], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x4d8], str.Average_performance_of_seek_operations_by_the_magnetic_heads
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a577
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43a577
test edx, edx
je 0x43a577
cmp byte [edx], 0xb
je 0x43a3b3
inc eax
add edx, 0xc
jmp 0x43a397
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.11_nRecalibration_Retries
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43a440
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a455
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a4a7
cmp eax, 1
jl 0x43a4a7
cmp eax, dword [esi + 0x190]
jg 0x43a4a7
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43a4a7
cmp dword [ecx], 0xf
jne 0x43a4a7
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x514], eax
lea eax, [ebp - 0x528]
push eax
push edx
push 0x1074
mov dword [ebp - 0x520], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a4b8
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a50f
cmp eax, 1
jl 0x43a50f
cmp eax, dword [esi + 0x190]
jg 0x43a50f
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a50f
cmp dword [ecx + eax*8], 0xf
jne 0x43a50f
lea edx, [ebp - 0x564]
mov dword [ebp - 0x55c], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x550], str.Lowest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a520
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a577
cmp eax, 1
jl 0x43a577
cmp eax, dword [esi + 0x190]
jg 0x43a577
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a577
cmp dword [ecx + eax*8], 0xf
jne 0x43a577
lea edx, [ebp - 0x1e0]
mov dword [ebp - 0x1d8], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x1cc], str.Number_of_times_recalibration_was_requested_by_the_drive
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43a780
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a780
xor eax, eax
add edx, 2
nop dword [eax + eax]
cmp eax, 0x29
jg 0x43a780
test edx, edx
je 0x43a780
cmp byte [edx], 0xd
je 0x43a5bc
inc eax
add edx, 0xc
jmp 0x43a5a0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.13_nSoft_Read_Error_Rate
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43a649
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a65e
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a6b0
cmp eax, 1
jl 0x43a6b0
cmp eax, dword [esi + 0x190]
jg 0x43a6b0
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43a6b0
cmp dword [ecx], 0xf
jne 0x43a6b0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x5c8], eax
lea eax, [ebp - 0x5dc]
push eax
push edx
push 0x1074
mov dword [ebp - 0x5d4], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a6c1
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a718
cmp eax, 1
jl 0x43a718
cmp eax, dword [esi + 0x190]
jg 0x43a718
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a718
cmp dword [ecx + eax*8], 0xf
jne 0x43a718
lea edx, [ebp - 0x618]
mov dword [ebp - 0x610], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x604], str.Lowest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43a729
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43a780
cmp eax, 1
jl 0x43a780
cmp eax, dword [esi + 0x190]
jg 0x43a780
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43a780
cmp dword [ecx + eax*8], 0xf
jne 0x43a780
lea edx, [ebp - 0x654]
mov dword [ebp - 0x64c], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x640], str.Uncorrected_read_errors_reported_to_the_operating_system
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp - 0x9c0], 2
jne 0x43b069
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a899
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43a899
test edx, edx
je 0x43a899
cmp byte [edx], 0xa4
je 0x43a7cd
inc eax
add edx, 0xc
jmp 0x43a7b1
mov al, byte [edx]
xorps xmm0, xmm0
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov ax, word [edx + 9]
movlpd qword [ebp - 0x28], xmm0
mov word [ebp - 0x24], ax
push dword [ebp - 0x24]
mov dword [ebp - 0x9a8], ecx
mov dword [ebp - 0x28], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405e80
push ecx
push 2
push str.164_nTotal_Block_Erase_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_block_erasing_operations
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43a9a8
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x43a9a8
test edx, edx
je 0x43a9a8
cmp byte [edx], 0xa5
je 0x43a8dc
inc eax
add edx, 0xc
jmp 0x43a8c0
mov al, byte [edx]
xorps xmm0, xmm0
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov ax, word [edx + 9]
movlpd qword [ebp - 0x28], xmm0
mov word [ebp - 0x24], ax
push dword [ebp - 0x24]
mov dword [ebp - 0x9a8], ecx
mov dword [ebp - 0x28], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405e80
push ecx
push 2
push str.165_nTotal_Block_Write_Erase_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_block_write_erase_operations
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43aaa6
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x43aaa6
test edx, edx
je 0x43aaa6
cmp byte [edx], 0xa6
je 0x43a9ec
inc eax
add edx, 0xc
jmp 0x43a9d0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.004060d0
push ecx
push 2
push str.166_nMinimum_P_E_cycles
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Minimum_value_of_program_erase_operations_so_far
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43aba6
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43aba6
test edx, edx
je 0x43aba6
cmp byte [edx], 0xa7
je 0x43aaec
inc eax
add edx, 0xc
jmp 0x43aad0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.004060d0
push ecx
push 2
push str.167_nMaximum_Bad_Blocks_Per_Die
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Actual_number_of_maximum_bad_blocks_per_die
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43aca6
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43aca6
test edx, edx
je 0x43aca6
cmp byte [edx], 0xa8
je 0x43abec
inc eax
add edx, 0xc
jmp 0x43abd0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.004060d0
push ecx
push 2
push str.168_nMaximum_P_E_cycles
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Maximum_value_of_program_erase_operations_so_far
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43adcb
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43adcb
test edx, edx
je 0x43adcb
cmp byte [edx], 0xa9
je 0x43acec
inc eax
add edx, 0xc
jmp 0x43acd0
mov al, byte [edx]
mov cl, byte [edx + 3]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [edx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [edx + 9]
mov word [ebp - 0x9a4], ax
movzx eax, cl
mov byte [ebp - 0x9ac], cl
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x49eb08
mov ecx, eax
call fcn.00406690
push ecx
push 2
push str.169_nBad_Blocks_Lifetime_Status
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Highest__100_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Approximate_SSD_health_from_a_combination_of_life_left_and_bad_block_count
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43aec6
xor eax, eax
add edx, 2
nop
cmp eax, 0x29
jg 0x43aec6
test edx, edx
je 0x43aec6
cmp byte [edx], 0xaa
je 0x43ae0c
inc eax
add edx, 0xc
jmp 0x43adf0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.170_nGrown_Bad_Blocks
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_grown_bad_blocks_for_the_lifetime_of_the_drive
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43afc6
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43afc6
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43afc6
test edx, edx
je 0x43afc6
cmp byte [edx], 0xab
je 0x43af0c
inc eax
add edx, 0xc
jmp 0x43aef0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.171_nProgram_Fail_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_flash_program_operation_failures_since_the_drive_was_deployed
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xac
call fcn.00421270
test al, al
je 0x43b069
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.172_nErase_Fail_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_Flash_erase_operation_failures_since_the_drive_was_deployed
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b166
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x43b166
test edx, edx
je 0x43b166
cmp byte [edx], 0xad
je 0x43b0ac
inc eax
add edx, 0xc
jmp 0x43b090
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.173_nAverage_P_E_Cycles
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__1_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.The_average_program_erase_cycles_for_each_block
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b266
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b266
test edx, edx
je 0x43b266
cmp byte [edx], 0xae
je 0x43b1ac
inc eax
add edx, 0xc
jmp 0x43b190
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.174_nUnexpected_Power_Loss_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_times_the_device_has_been_power_cycled_unexpectedly
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b366
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b366
test edx, edx
je 0x43b366
cmp byte [edx], 0xaf
je 0x43b2ac
inc eax
add edx, 0xc
jmp 0x43b290
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.175_nPower_Loss_Protection_Failure
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_times_the_device_has_lost_data_intended_to_be_written_during_a_power_down.
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b466
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b466
test edx, edx
je 0x43b466
cmp byte [edx], 0xb0
je 0x43b3ac
inc eax
add edx, 0xc
jmp 0x43b390
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.176_nErase_Fail_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_erase_failure_events_over_the_lifetime_of_the_device
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b566
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b566
test edx, edx
je 0x43b566
cmp byte [edx], 0xb1
je 0x43b4ac
inc eax
add edx, 0xc
jmp 0x43b490
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.177_nWear_Range_Delta
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Delta_between_most_worn_and_least_worn_Flash_blocks.
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b666
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b666
test edx, edx
je 0x43b666
cmp byte [edx], 0xb4
je 0x43b5ac
inc eax
add edx, 0xc
jmp 0x43b590
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.180_nUnused_Spare_NAND_Blocks
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Highest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_unused_reserved_block_count
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b766
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b766
test edx, edx
je 0x43b766
cmp byte [edx], 0xb5
je 0x43b6ac
inc eax
add edx, 0xc
jmp 0x43b690
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.181_nProgram_Fail_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_program_failure_events_over_the_life_of_the_drive
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43b866
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43b866
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43b866
test edx, edx
je 0x43b866
cmp byte [edx], 0xb7
je 0x43b7ac
inc eax
add edx, 0xc
jmp 0x43b790
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.183_nSATA_Interface_Downshift
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_host_interface_speed_downshifts_on_the_SATA_link
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp dword [ebp - 0x9c0], 0
jne 0x43b9b3
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xbd
call fcn.00421270
test al, al
je 0x43b916
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.189_nHigh_Fly_Writes
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_times_a_recording_head_was_flying_outside_its_normal_operating_range
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xbf
call fcn.00421270
test al, al
je 0x43b9b3
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.191_nG_sense_Error_Rate
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_errors_resulting_from_externally_induced_shock_and_vibration
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9b4]
cmp byte [eax + 0x15], 0
je 0x43bab6
mov edx, dword [eax + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43bab6
xor ecx, ecx
add edx, 2
nop dword [eax]
cmp ecx, 0x29
jg 0x43bab6
test edx, edx
je 0x43bab6
cmp byte [edx], 0xc0
je 0x43b9fc
inc ecx
add edx, 0xc
jmp 0x43b9e0
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.192_nUnsafe_Shutdown_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_power_off_or_emergency_retract_cycles
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9b4]
cmp dword [ebp - 0x9c0], 0
jne 0x43bb60
push 0
lea ecx, [ebp - 0x9b0]
push ecx
push 0xc1
mov ecx, eax
call fcn.00421270
test al, al
je 0x43bb60
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.193_nLoad_Cycle_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_load_unload_cycles_into_head_landing_zone_position.
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43bc66
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43bc66
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43bc66
test edx, edx
je 0x43bc66
cmp byte [edx], 0xc7
je 0x43bbac
inc eax
add edx, 0xc
jmp 0x43bb90
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.199_nCRC_Error_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_errors_in_data_transfer_via_the_interface_cable
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
mov eax, dword [ebp - 0x9c0]
cmp eax, 2
jne 0x43bd4f
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xce
call fcn.00421270
test al, al
je 0x43bd17
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.206_nWrite_Error_Rate
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.The_count_of_errors_found_when_writing_a_sector
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
jmp 0x43be47
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xc8
call fcn.00421270
test al, al
je 0x43be41
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.200_nWrite_Error_Rate
jmp 0x43bca8
test eax, eax
jne 0x43be41
cmp byte [edi + 0x15], al
je 0x43be41
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43be41
add edx, 2
nop dword [eax + eax]
cmp eax, 0x29
jg 0x43be41
test edx, edx
je 0x43be41
cmp byte [edx], 0xca
je 0x43bd9c
inc eax
add edx, 0xc
jmp 0x43bd80
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.202_nData_Address_Mark_Errors
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_Data_Address_Mark_errors
jmp 0x43bcfe
mov esi, dword [ebp - 0x9a0]
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43c255
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c051
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43c051
test edx, edx
je 0x43c051
cmp byte [edx], 0xcb
je 0x43be8d
inc eax
add edx, 0xc
jmp 0x43be71
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.203_nRun_Out_Cancel
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43bf1a
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43bf2f
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43bf81
cmp eax, 1
jl 0x43bf81
cmp eax, dword [esi + 0x190]
jg 0x43bf81
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43bf81
cmp dword [ecx], 0xf
jne 0x43bf81
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x67c], eax
lea eax, [ebp - 0x690]
push eax
push edx
push 0x1074
mov dword [ebp - 0x688], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43bf92
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43bfe9
cmp eax, 1
jl 0x43bfe9
cmp eax, dword [esi + 0x190]
jg 0x43bfe9
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43bfe9
cmp dword [ecx + eax*8], 0xf
jne 0x43bfe9
lea edx, [ebp - 0x6cc]
mov dword [ebp - 0x6c4], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x6b8], str.Lowest__0_
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43bffa
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c051
cmp eax, 1
jl 0x43c051
cmp eax, dword [esi + 0x190]
jg 0x43c051
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43c051
cmp dword [ecx + eax*8], 0xf
jne 0x43c051
lea edx, [ebp - 0x708]
mov dword [ebp - 0x700], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x6f4], str.Number_of_errors_caused_by_incorrect_checksum_during_the_error_correction
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43c255
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c255
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43c255
test edx, edx
je 0x43c255
cmp byte [edx], 0xcd
je 0x43c091
inc eax
add edx, 0xc
jmp 0x43c075
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.205_nThermal_Asperity_Rate
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9b8], edx
jne 0x43c11e
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9b8]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43c133
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c185
cmp eax, 1
jl 0x43c185
cmp eax, dword [esi + 0x190]
jg 0x43c185
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43c185
cmp dword [ecx], 0xf
jne 0x43c185
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x730], eax
lea eax, [ebp - 0x744]
push eax
push edx
push 0x1074
mov dword [ebp - 0x73c], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43c196
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c1ed
cmp eax, 1
jl 0x43c1ed
cmp eax, dword [esi + 0x190]
jg 0x43c1ed
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43c1ed
cmp dword [ecx + eax*8], 0xf
jne 0x43c1ed
lea edx, [ebp - 0x780]
mov dword [ebp - 0x778], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x76c], str.Lowest__0_
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43c1fe
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c255
cmp eax, 1
jl 0x43c255
cmp eax, dword [esi + 0x190]
jg 0x43c255
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43c255
cmp dword [ecx + eax*8], 0xf
jne 0x43c255
lea edx, [ebp - 0x7bc]
mov dword [ebp - 0x7b4], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x7a8], str.Count_of_errors_due_to_high_temperature
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebp - 0x9c0], 0
jne 0x43c556
cmp byte [edi + 0x15], 0
je 0x43c751
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c35c
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43c35c
test edx, edx
je 0x43c35c
cmp byte [edx], 0xce
je 0x43c2a2
inc eax
add edx, 0xc
jmp 0x43c286
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.206_nFlying_Height
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Height_of_heads_above_the_disk_surface
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43c751
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c456
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43c456
test edx, edx
je 0x43c456
cmp byte [edx], 0xcf
je 0x43c39c
inc eax
add edx, 0xc
jmp 0x43c380
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.207_nSpin_High_Current
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Amount_of_surge_current_used_to_spin_up_the_drive
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43c751
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c556
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43c556
test edx, edx
je 0x43c556
cmp byte [edx], 0xd0
je 0x43c49c
inc eax
add edx, 0xc
jmp 0x43c480
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.208_nSpin_Buzz
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_buzz_routines_needed_to_spin_up_the_drive_due_to_insufficient_power
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43c751
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c751
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43c751
test edx, edx
je 0x43c751
cmp byte [edx], 0xd1
je 0x43c59c
inc eax
add edx, 0xc
jmp 0x43c580
mov al, byte [edx]
mov cl, byte [edx + 3]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [edx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [edx + 9]
mov word [ebp - 0x9a4], ax
movzx eax, cl
mov byte [ebp - 0x9ac], cl
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.209_nOffline_Seek_Performance
call fcn.00419a20
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x9b8], eax
call fcn.00405710
mov ecx, dword [esi + 0x98]
mov dword [ebp - 0x9c4], eax
cmp ecx, 0xffffffff
jne 0x43c628
mov ecx, dword [esi + 0x190]
mov edx, dword [esi + 0x18c]
test edx, edx
je 0x43c681
cmp ecx, 1
jl 0x43c681
cmp ecx, dword [esi + 0x190]
jg 0x43c681
lea eax, [ecx + ecx*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x43c681
cmp dword [edx + eax*8], 0xf
jne 0x43c681
mov ecx, dword [ebp - 0x9c4]
mov dword [ebp - 0x7e4], ecx
lea ecx, [ebp - 0x7f8]
push ecx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x7f0], 2
push 0x1074
push dword [edx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43c692
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c6e9
cmp eax, 1
jl 0x43c6e9
cmp eax, dword [esi + 0x190]
jg 0x43c6e9
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43c6e9
cmp dword [ecx + eax*8], 0xf
jne 0x43c6e9
lea edx, [ebp - 0x834]
mov dword [ebp - 0x82c], 3
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x820], str.Highest
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43c6fa
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43c751
cmp eax, 1
jl 0x43c751
cmp eax, dword [esi + 0x190]
jg 0x43c751
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43c751
cmp dword [ecx + eax*8], 0xf
jne 0x43c751
lea edx, [ebp - 0x870]
mov dword [ebp - 0x868], 4
push edx
push dword [ebp - 0x9b8]
mov dword [ebp - 0x85c], str.Drive
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x9c0]
test eax, eax
jne 0x43d25b
cmp byte [edi + 0x15], al
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c856
add edx, 2
cmp eax, 0x29
jg 0x43c856
test edx, edx
je 0x43c856
cmp byte [edx], 0xd3
je 0x43c79c
inc eax
add edx, 0xc
jmp 0x43c780
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.211_nVibration_During_Write
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.A_recording_of_a_vibration_encountered_during_write_operations
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43c956
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43c956
test edx, edx
je 0x43c956
cmp byte [edx], 0xd4
je 0x43c89c
inc eax
add edx, 0xc
jmp 0x43c880
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.212_nShock_During_Write
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.A_recording_of_shock_encountered_during_write_operations
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43ca56
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43ca56
test edx, edx
je 0x43ca56
cmp byte [edx], 0xdc
je 0x43c99c
inc eax
add edx, 0xc
jmp 0x43c980
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.220_nDisk_Shift
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Distance_the_disk_has_shifted_relative_to_the_spindle_usually_due_to_shock_or_temperature
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43cb56
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43cb56
test edx, edx
je 0x43cb56
cmp byte [edx], 0xdd
je 0x43ca9c
inc eax
add edx, 0xc
jmp 0x43ca80
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.221_nG_Sense_Error_Rate
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_errors_resulting_from_externally_induced_shock_and_vibration
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43cc56
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43cc56
test edx, edx
je 0x43cc56
cmp byte [edx], 0xde
je 0x43cb9c
inc eax
add edx, 0xc
jmp 0x43cb80
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.222_nLoaded_Hours
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Time_spent_operating_under_data_load__movement_of_magnetic_head_armature_
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43cd58
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43cd58
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43cd58
test edx, edx
je 0x43cd58
cmp byte [edx], 0xdf
je 0x43cc9c
inc eax
add edx, 0xc
jmp 0x43cc80
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.223_nLoad_Unload_Retry_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_times_head_changes_position
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
jmp 0x43cd6f
mov eax, dword [ebp - 0x9c0]
cmp eax, 2
je 0x43d307
test eax, eax
jne 0x43d672
cmp byte [edi + 0x15], 0
je 0x43d066
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43ce69
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43ce69
test edx, edx
je 0x43ce69
cmp byte [edx], 0xe0
je 0x43cdaf
inc eax
add edx, 0xc
jmp 0x43cd93
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.224_nLoad_Friction
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Resistance_caused_by_friction_in_mechanical_parts_while_operating
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43d066
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43cf66
xor eax, eax
add edx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x43cf66
test edx, edx
je 0x43cf66
cmp byte [edx], 0xe1
je 0x43ceac
inc eax
add edx, 0xc
jmp 0x43ce90
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.225_nLoad_Unload_Cycle_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_movement_cycles_between_data_zone_and_head_parking_area
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43d066
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43d066
xor eax, eax
add edx, 2
nop word [eax + eax]
cmp eax, 0x29
jg 0x43d066
test edx, edx
je 0x43d066
cmp byte [edx], 0xe2
je 0x43cfac
inc eax
add edx, 0xc
jmp 0x43cf90
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.226_nLoad_in_Time
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_time_of_loading_on_the_magnetic_heads_actuator
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xe3
call fcn.00421270
test al, al
je 0x43d109
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.227_nTorque_Amplification_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_attempts_to_compensate_for_platter_speed_variations
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xe4
call fcn.00421270
test al, al
je 0x43d1ac
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.228_nPower_Off_Retract_Cycle
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_power_off_cycles_whenever_there_is_a_retract_event
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xe6
call fcn.00421270
test al, al
je 0x43d249
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.230_nGMR_Head_Amplitude
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Amplitude_of_thrashing__repetitive_head_moving_motions_between_operations_
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
cmp dword [ebp - 0x9c0], 2
jne 0x43d672
jmp 0x43d3a4
cmp eax, 2
jne 0x43d672
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xd2
call fcn.00421270
test al, al
je 0x43d307
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.210_nSuccessful_RAIN_Recovery
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.The_count_of_successful_RAIN_recovery_events
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xdf
call fcn.00421270
test al, al
je 0x43d3a4
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.223_nBackground_Scan_Error_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_errors_found_and_corrected_during_background_scans
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
lea eax, [ebp - 0x9b0]
push 0
push eax
push 0xe6
mov ecx, edi
call fcn.00421270
test al, al
je 0x43d50e
mov ecx, dword [ebp - 0x9c8]
push 0
push 1
push 1
push 0
add ecx, 0x3c
push str.Sandisk
call fcn.00406350
test eax, eax
je 0x43d46b
movzx eax, byte [ebp - 0x9a8]
lea ecx, [ebp - 0x3c]
push eax
call fcn.004060d0
movzx eax, byte [ebp - 0x9a7]
lea ecx, [ebp - 0x20]
push eax
call fcn.004060d0
lea ecx, [ebp - 0x3c]
mov esi, eax
call fcn.00405710
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x49f400
push eax
push 0x49eaec
mov ecx, esi
call fcn.00406690
mov esi, dword [ebp - 0x9a0]
push ecx
push 2
push str.230_nLifetime_used
mov ecx, esi
call fcn.00430820
mov ecx, eax
mov dword [ebp - 0x9c8], str.Indicates_the_percentage_of_SSD_life_used_so_far
mov dword [ebp - 0x9b8], ecx
mov dword [ebp - 0x9bc], str.Lowest__0_
jmp 0x43d4a6
movzx eax, byte [ebp - 0x9ac]
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
push ecx
push 2
push str.230_nLife_Curve_Status
mov ecx, esi
call fcn.00430820
mov ecx, eax
mov dword [ebp - 0x9b8], eax
mov dword [ebp - 0x9c8], str.Indicates_whether_usage_trajectory_is_outpacing_the_expected_life_curve
mov dword [ebp - 0x9bc], str.Highest__100_
push 3
push dword [ebp - 0x9bc]
lea eax, [esi + 0x98]
push ecx
mov dword [ebp - 0x9c4], eax
lea edx, [esi + 0x150]
mov eax, dword [eax]
mov ecx, edx
push eax
call fcn.0041a310
mov eax, dword [ebp - 0x9c4]
lea ecx, [esi + 0x150]
push 4
push dword [ebp - 0x9c8]
push dword [ebp - 0x9b8]
push dword [eax]
call fcn.0041a310
lea ecx, [ebp - 0x20]
call fcn.00405710
push 2
push eax
push dword [ebp - 0x9b8]
lea ecx, [esi + 0x150]
push dword [esi + 0x98]
call fcn.0041a310
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xe8
call fcn.00421270
test al, al
je 0x43d5d5
movzx eax, byte [ebp - 0x9ac]
lea ecx, [ebp - 0x20]
push eax
call fcn.00405ff0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x49f400
mov ecx, eax
call fcn.00406690
push ecx
push 2
push str.232_nAvailable_Spare
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Highest__100__
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Percent_of_physical_erase_cycles_remaining
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xe9
call fcn.00421270
test al, al
je 0x43d678
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.233_nNAND_GB_Written
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_NAND_GigaBytes_written_to_this_SSD
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43d9cb
mov ecx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test ecx, ecx
je 0x43d84c
xor eax, eax
add ecx, 2
nop dword [eax]
cmp eax, 0x29
jg 0x43d84c
test ecx, ecx
je 0x43d84c
cmp byte [ecx], 0xea
je 0x43d6bc
inc eax
add ecx, 0xc
jmp 0x43d6a0
mov al, byte [ecx]
mov byte [ebp - 0x9b0], al
movzx eax, word [ecx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [ecx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [ecx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [ecx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [ecx + 9]
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
movzx eax, word [ebp - 0x9a8]
mov dword [ebp - 0x9b8], 0
mov word [ebp - 0x9b8], ax
mov al, byte [ebp - 0x9a6]
mov byte [ebp - 0x9b6], al
movzx eax, word [ebp - 0x9a5]
push dword [ebp - 0x9b8]
mov dword [ebp - 0x9bc], 0
mov word [ebp - 0x9bc], ax
mov al, byte [ebp - 0x9a3]
mov byte [ebp - 0x9ba], al
call fcn.004060d0
push dword [ebp - 0x9bc]
lea ecx, [ebp - 0x3c]
call fcn.004060d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x3c]
call fcn.00405710
push eax
push 0x49f1a8
lea ecx, [ebp - 0x20]
call fcn.00406690
push ecx
push 2
push str.234_nAverage_Max_Erase_Count
mov ecx, esi
call fcn.00430820
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x9bc], eax
call fcn.00405710
mov ecx, dword [esi + 0x98]
mov dword [ebp - 0x9c4], eax
cmp ecx, 0xffffffff
jne 0x43d7b7
mov ecx, dword [esi + 0x190]
mov edx, dword [esi + 0x18c]
test edx, edx
je 0x43d810
cmp ecx, 1
jl 0x43d810
cmp ecx, dword [esi + 0x190]
jg 0x43d810
lea eax, [ecx + ecx*8]
cmp dword [edx + eax*8 + 0xc], 0
je 0x43d810
cmp dword [edx + eax*8], 0xf
jne 0x43d810
mov ecx, dword [ebp - 0x9c4]
mov dword [ebp - 0x898], ecx
lea ecx, [ebp - 0x8ac]
push ecx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x8a4], 2
push 0x1074
push dword [edx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
push 3
push str.Lower_Higher
push dword [ebp - 0x9bc]
lea ecx, [esi + 0x150]
push dword [esi + 0x98]
call fcn.0041a310
push 4
push str.Count_of_written_erased_sectors
push dword [ebp - 0x9bc]
lea ecx, [esi + 0x150]
push dword [esi + 0x98]
call fcn.0041a310
cmp byte [edi + 0x15], 0
je 0x43d9cb
mov ecx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test ecx, ecx
je 0x43d9cb
xor eax, eax
add ecx, 2
cmp eax, 0x29
jg 0x43d9cb
test ecx, ecx
je 0x43d9cb
cmp byte [ecx], 0xeb
je 0x43d88c
inc eax
add ecx, 0xc
jmp 0x43d870
mov al, byte [ecx]
mov byte [ebp - 0x9b0], al
movzx eax, word [ecx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [ecx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [ecx + 4]
mov byte [ebp - 0x9ab], al
mov eax, dword [ecx + 5]
mov dword [ebp - 0x9a8], eax
movzx eax, word [ecx + 9]
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
movzx eax, word [ebp - 0x9a8]
mov dword [ebp - 0x9bc], 0
mov word [ebp - 0x9bc], ax
mov al, byte [ebp - 0x9a6]
mov byte [ebp - 0x9ba], al
movzx eax, word [ebp - 0x9a5]
push dword [ebp - 0x9bc]
mov dword [ebp - 0x9b8], 0
mov word [ebp - 0x9b8], ax
mov al, byte [ebp - 0x9a3]
mov byte [ebp - 0x9b6], al
call fcn.004060d0
push dword [ebp - 0x9b8]
lea ecx, [ebp - 0x3c]
call fcn.004060d0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x3c]
call fcn.00405710
push eax
push 0x49f1a8
lea ecx, [ebp - 0x20]
call fcn.00406690
push ecx
push 2
push str.235_nGood_System_Block_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Higher_Higher
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_Good_Block_Count_System_Block_Count
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
mov eax, dword [ebp - 0x9c0]
test eax, eax
jne 0x43dc94
push eax
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xf0
call fcn.00421270
test al, al
je 0x43da7b
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.240_nGMR_Head_Amplitude
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Time_spent_during_the_positioning_of_the_drive_heads
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xf1
call fcn.00421270
test al, al
je 0x43db5b
mov eax, dword [ebp - 0x9a8]
mov ecx, edi
mov dword [ebp - 0x28], eax
mov ax, word [ebp - 0x9a4]
mov word [ebp - 0x24], ax
lea eax, [ebp - 0x9b0]
push 0
push eax
push 0xf3
call fcn.00421270
movzx edx, word [ebp - 0x22]
test al, al
movzx ecx, word [ebp - 0x9a8]
cmovne edx, ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x22], dx
push dword [ebp - 0x24]
push dword [ebp - 0x28]
call fcn.00405d80
push ecx
push 2
push str.241_nTotal_LBAs_Written
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_LBAs_written
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xf2
call fcn.00421270
test al, al
je 0x43dc37
mov eax, dword [ebp - 0x9a8]
mov ecx, edi
mov dword [ebp - 0x30], eax
mov ax, word [ebp - 0x9a4]
mov word [ebp - 0x2c], ax
lea eax, [ebp - 0x9b0]
push 0
push eax
push 0xf4
call fcn.00421270
movzx edx, word [ebp - 0x2a]
test al, al
movzx ecx, word [ebp - 0x9a8]
cmovne edx, ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x2a], dx
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
call fcn.00405d80
push ecx
push 2
push str.242_nTotal_LBAs_Read
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_LBAs_read.
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
jmp 0x43dc4a
cmp dword [ebp - 0x9c0], 2
je 0x43dd3c
mov esi, dword [ebp - 0x9a0]
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43e3a5
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43df9d
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43df9d
test edx, edx
je 0x43df9d
cmp byte [edx], 0xf6
je 0x43ddca
inc eax
add edx, 0xc
jmp 0x43dc74
cmp eax, 2
jne 0x43dc44
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xf1
call fcn.00421270
test al, al
je 0x43dd3c
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.241_nTotal_GB_Written
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_GigaBytes_written_to_this_SSD
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xf2
call fcn.00421270
test al, al
je 0x43dc44
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.242_nTotal_GB_Read
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_GigaBytes_read_from_this_SSD
jmp 0x43dc21
mov al, byte [edx]
xorps xmm0, xmm0
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
mov ax, word [edx + 9]
movlpd qword [ebp - 0x28], xmm0
mov word [ebp - 0x24], ax
push dword [ebp - 0x24]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405e80
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.246_nTotal_Host_Sector_Writes
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9bc], edx
jne 0x43de66
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9bc]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43de7b
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43decd
cmp eax, 1
jl 0x43decd
cmp eax, dword [esi + 0x190]
jg 0x43decd
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43decd
cmp dword [ecx], 0xf
jne 0x43decd
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x8d4], eax
lea eax, [ebp - 0x8e8]
push eax
push edx
push 0x1074
mov dword [ebp - 0x8e0], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43dede
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43df35
cmp eax, 1
jl 0x43df35
cmp eax, dword [esi + 0x190]
jg 0x43df35
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43df35
cmp dword [ecx + eax*8], 0xf
jne 0x43df35
lea edx, [ebp - 0x924]
mov dword [ebp - 0x91c], 3
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x910], str.Lower
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43df46
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43df9d
cmp eax, 1
jl 0x43df9d
cmp eax, dword [esi + 0x190]
jg 0x43df9d
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43df9d
cmp dword [ecx + eax*8], 0xf
jne 0x43df9d
lea edx, [ebp - 0x960]
mov dword [ebp - 0x958], 4
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x94c], str.Total_count_of_sector_writing_operations_performed_by_the_host
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43e3a5
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e1a1
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43e1a1
test edx, edx
je 0x43e1a1
cmp byte [edx], 0xf7
je 0x43dfdd
inc eax
add edx, 0xc
jmp 0x43dfc1
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.004060d0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.247_nTotal_Host_Program_Pages
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9bc], edx
jne 0x43e06a
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9bc]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e07f
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e0d1
cmp eax, 1
jl 0x43e0d1
cmp eax, dword [esi + 0x190]
jg 0x43e0d1
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43e0d1
cmp dword [ecx], 0xf
jne 0x43e0d1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x988], eax
lea eax, [ebp - 0x99c]
push eax
push edx
push 0x1074
mov dword [ebp - 0x994], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e0e2
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e139
cmp eax, 1
jl 0x43e139
cmp eax, dword [esi + 0x190]
jg 0x43e139
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43e139
cmp dword [ecx + eax*8], 0xf
jne 0x43e139
lea edx, [ebp - 0xb4]
mov dword [ebp - 0xac], 3
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0xa0], str.Higher
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e14a
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e1a1
cmp eax, 1
jl 0x43e1a1
cmp eax, dword [esi + 0x190]
jg 0x43e1a1
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43e1a1
cmp dword [ecx + eax*8], 0xf
jne 0x43e1a1
lea edx, [ebp - 0x5a0]
mov dword [ebp - 0x598], 4
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x58c], str.Total_count_of_program_pages_used_by_the_host
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
cmp byte [edi + 0x15], 0
je 0x43e3a5
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e3a5
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43e3a5
test edx, edx
je 0x43e3a5
cmp byte [edx], 0xf8
je 0x43e1e1
inc eax
add edx, 0xc
jmp 0x43e1c5
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.004060d0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.248_nBackground_Program_Pages
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9bc], edx
jne 0x43e26e
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9bc]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e283
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e2d5
cmp eax, 1
jl 0x43e2d5
cmp eax, dword [esi + 0x190]
jg 0x43e2d5
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43e2d5
cmp dword [ecx], 0xf
jne 0x43e2d5
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0xf0]
push eax
push edx
push 0x1074
mov dword [ebp - 0xe8], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e2e6
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e33d
cmp eax, 1
jl 0x43e33d
cmp eax, dword [esi + 0x190]
jg 0x43e33d
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43e33d
cmp dword [ecx + eax*8], 0xf
jne 0x43e33d
lea edx, [ebp - 0x12c]
mov dword [ebp - 0x124], 3
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x118], str.Higher
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43e34e
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43e3a5
cmp eax, 1
jl 0x43e3a5
cmp eax, dword [esi + 0x190]
jg 0x43e3a5
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43e3a5
cmp dword [ecx + eax*8], 0xf
jne 0x43e3a5
lea edx, [ebp - 0x168]
mov dword [ebp - 0x160], 4
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x154], str.Total_count_of_background_program_pages
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp - 0x9c0]
cmp ecx, 2
jne 0x43e625
cmp byte [edi + 0x15], 0
je 0x43e4af
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e4af
xor eax, eax
add edx, ecx
cmp eax, 0x29
jg 0x43e4af
test edx, edx
je 0x43e4af
cmp byte [edx], 0xf9
je 0x43e3f3
inc eax
add edx, 0xc
jmp 0x43e3d7
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
push 0
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405d80
push ecx
push 2
push str.249_nISP_Refresh_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_ISP_refresh_events
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xfa
call fcn.00421270
test al, al
je 0x43e552
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.250_nTotal_Do_RefCal_Count
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_Do_RefCal_events
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xfb
call fcn.00421270
test al, al
je 0x43e92a
mov eax, dword [ebp - 0x9a8]
xorps xmm0, xmm0
movlpd qword [ebp - 0x30], xmm0
mov ecx, edi
mov dword [ebp - 0x30], eax
mov ax, word [ebp - 0x9a4]
mov word [ebp - 0x2c], ax
lea eax, [ebp - 0x9b0]
push 0
push eax
push 0xfc
call fcn.00421270
movzx edx, word [ebp - 0x2a]
test al, al
movzx ecx, word [ebp - 0x9a8]
cmovne edx, ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x2a], dx
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
call fcn.00405d80
push ecx
push 2
push str.251_nNAND_Read_Planes
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lower
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Total_count_of_NAND_Read_Planes.
jmp 0x43e910
test ecx, ecx
jne 0x43e92a
cmp byte [edi + 0x15], cl
je 0x43e828
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e72c
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43e72c
test edx, edx
je 0x43e72c
cmp byte [edx], 0xfa
je 0x43e66c
inc eax
add edx, 0xc
jmp 0x43e650
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.250_nRead_Error_Retry_Rate
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_errors_while_reading_from_a_disk
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
mov ecx, dword [ebp - 0x9c0]
cmp byte [edi + 0x15], 0
je 0x43e828
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e828
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43e828
test edx, edx
je 0x43e828
cmp byte [edx], 0xfb
je 0x43e76c
inc eax
add edx, 0xc
jmp 0x43e750
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.251_nMinimum_Spares_Remaining
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Highest__100___
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Number_of_remaining_spare_blocks_as_a_percentage_of_the_total_number_of_spare_blocks_available
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
jmp 0x43e830
test ecx, ecx
jne 0x43e92a
cmp byte [edi + 0x15], 0
je 0x43eb30
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43e92a
xor eax, eax
add edx, 2
cmp eax, 0x29
jg 0x43e92a
test edx, edx
je 0x43e92a
cmp byte [edx], 0xfc
je 0x43e870
inc eax
add edx, 0xc
jmp 0x43e854
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
push ecx
push 2
push str.252_nNewly_Added_Bad_Flash_Block
mov ecx, esi
call fcn.00430820
mov edi, dword [ebp - 0x9a0]
lea ecx, [ebp - 0x20]
mov esi, eax
add edi, 0x150
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, edi
push 3
push str.Lowest__0_
push esi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.The_total_number_of_bad_flash_blocks_the_drive_detected_since_it_was_first_initialized_in_manufacturing
push esi
mov esi, dword [ebp - 0x9a0]
mov ecx, edi
push dword [esi + 0x98]
call fcn.0041a310
mov edi, dword [ebp - 0x9b4]
cmp byte [edi + 0x15], 0
je 0x43eb30
mov edx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test edx, edx
je 0x43eb30
xor eax, eax
add edx, 2
nop
cmp eax, 0x29
jg 0x43eb30
test edx, edx
je 0x43eb30
cmp byte [edx], 0xfd
je 0x43e96c
inc eax
add edx, 0xc
jmp 0x43e950
mov al, byte [edx]
mov ecx, dword [edx + 5]
mov byte [ebp - 0x9b0], al
movzx eax, word [edx + 1]
mov word [ebp - 0x9ae], ax
mov al, byte [edx + 3]
mov byte [ebp - 0x9ac], al
mov al, byte [edx + 4]
mov byte [ebp - 0x9ab], al
movzx eax, word [edx + 9]
mov dword [ebp - 0x9a8], ecx
push ecx
lea ecx, [ebp - 0x20]
mov word [ebp - 0x9a4], ax
call fcn.00405ff0
lea ecx, [esi + 0x150]
push ecx
push dword [esi + 0x98]
push 0
push 2
push 0xffffffffffffffff
push 0x49ed98
push str.253_nBlock_Remap_Pass_Count
call fcn.00419a20
cmp dword [ebp - 0x20], 0
mov edx, eax
mov dword [ebp - 0x9bc], edx
jne 0x43e9f9
push 2
call fcn.0046a3df
mov edx, dword [ebp - 0x9bc]
add esp, 4
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov word [eax], cx
mov dword [ebp - 0x1c], ecx
mov byte [ebp - 0x18], 1
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43ea0e
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43ea60
cmp eax, 1
jl 0x43ea60
cmp eax, dword [esi + 0x190]
jg 0x43ea60
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
lea ecx, [ecx + eax*8]
je 0x43ea60
cmp dword [ecx], 0xf
jne 0x43ea60
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x190], eax
lea eax, [ebp - 0x1a4]
push eax
push edx
push 0x1074
mov dword [ebp - 0x19c], 2
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43ea71
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43eac8
cmp eax, 1
jl 0x43eac8
cmp eax, dword [esi + 0x190]
jg 0x43eac8
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43eac8
cmp dword [ecx + eax*8], 0xf
jne 0x43eac8
lea edx, [ebp - 0x21c]
mov dword [ebp - 0x214], 3
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x208], str.Lowest__0_
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x98]
cmp eax, 0xffffffff
jne 0x43ead9
mov eax, dword [esi + 0x190]
mov ecx, dword [esi + 0x18c]
test ecx, ecx
je 0x43eb30
cmp eax, 1
jl 0x43eb30
cmp eax, dword [esi + 0x190]
jg 0x43eb30
lea eax, [eax + eax*8]
cmp dword [ecx + eax*8 + 0xc], 0
je 0x43eb30
cmp dword [ecx + eax*8], 0xf
jne 0x43eb30
lea edx, [ebp - 0x258]
mov dword [ebp - 0x250], 4
push edx
push dword [ebp - 0x9bc]
mov dword [ebp - 0x244], str.The_count_of_successful_block_remapping_operations
push 0x1074
push dword [ecx + eax*8 + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x9c0]
test eax, eax
jne 0x43ebe4
cmp byte [edi + 0x15], al
je 0x43ec84
mov ecx, dword [edi + 0x1c]
xorps xmm0, xmm0
movups xmmword [ebp - 0x9b0], xmm0
test ecx, ecx
je 0x43ec84
add ecx, 2
nop
cmp eax, 0x29
jg 0x43ec84
test ecx, ecx
je 0x43ec84
cmp byte [ecx], 0xfe
je 0x43eb7c
inc eax
add ecx, 0xc
jmp 0x43eb60
push dword [ecx + 5]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.254_nFree_Fall_Protection
mov ecx, esi
call fcn.00430820
lea ecx, [ebp - 0x20]
mov edi, eax
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
add esi, 0x150
push edi
mov ecx, esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, esi
push 3
push str.Lowest__0_
push edi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of__Free_Fall_Events__detected
jmp 0x43ec70
cmp eax, 2
jne 0x43ec84
push 0
lea eax, [ebp - 0x9b0]
mov ecx, edi
push eax
push 0xfe
call fcn.00421270
test al, al
je 0x43ec84
push dword [ebp - 0x9a8]
lea ecx, [ebp - 0x20]
call fcn.00405ff0
push ecx
push 2
push str.254_nBackground_Scan_Over_Limit
mov ecx, esi
call fcn.00430820
lea ecx, [ebp - 0x20]
mov edi, eax
call fcn.00405710
push 2
push eax
mov eax, dword [ebp - 0x9a0]
add esi, 0x150
push edi
mov ecx, esi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x9a0]
mov ecx, esi
push 3
push str.Lowest__0_
push edi
push dword [eax + 0x98]
call fcn.0041a310
push 4
push str.Count_of_times_the_background_scan_went_over_its_limit
mov eax, dword [ebp - 0x9a0]
mov ecx, esi
push edi
push dword [eax + 0x98]
call fcn.0041a310
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x43ec94
push eax
call fcn.00469dd3
add esp, 4
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x43eca4
push eax
call fcn.00469dd3
add esp, 4
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.00469dc5
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 8