Function at 0x421120
Capabilities:
Create directory
Get hostname
Read .ini file

Disassembly:
push 0x284
mov eax, 0x4b213b
call fcn.00487ec7
mov esi, ecx
mov dword [ebp - 0x228], esi
mov ebx, dword [ebp + 8]
lea edi, [esi + 0x238]
push ebx
mov ecx, edi
mov dword [ebp - 0x218], edi
call fcn.0040ab14
cmp dword [eax + 0x16d8], 0
je 0x422078
mov eax, dword fs:[0x2c]
mov ecx, dword [eax]
mov eax, dword [0x505f28]
cmp eax, dword [ecx + 4]
jg 0x422080
push 0
call fcn.0049271f
pop ecx
mov ecx, eax
mov dword [ebp - 0x22c], edx
mov eax, dword [esi + 0x3f0]
cdq
mov dword [ebp - 0x230], ecx
sub ecx, dword [ebx*8 + 0x505f30]
mov dword [ebp - 0x218], eax
mov eax, dword [ebp - 0x22c]
sbb eax, dword [ebx*8 + 0x505f34]
cmp eax, edx
jl 0x422078
jg 0x4211c1
cmp ecx, dword [ebp - 0x218]
jb 0x422078
mov eax, dword [ebp - 0x230]
lea ecx, [ebp - 0x244]
mov dword [ebx*8 + 0x505f30], eax
mov eax, dword [ebp - 0x22c]
mov dword [ebx*8 + 0x505f34], eax
call fcn.0040364a
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x238]
call fcn.0040364a
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x290]
call fcn.0046b8c1
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x214]
call fcn.0040364a
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x220]
call fcn.0040364a
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x240]
call fcn.0040364a
mov byte [ebp - 4], 6
xor eax, eax
mov dword [ebp - 0x234], eax
lea ecx, [ebp - 0x214]
lea eax, [esi + 0x63ac]
push eax
call fcn.00401ffd
mov esi, dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push 0
push dword [ebp - 0x214]
call esi
push ebx
mov ecx, edi
call fcn.0040ab14
add eax, 0x1894
lea ecx, [ebp - 0x220]
push eax
call fcn.00401ffd
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x214]
push dword [eax - 0xc]
push eax
call fcn.00403393
push 0
push dword [ebp - 0x214]
call esi
push ecx
lea eax, [ebp - 0x220]
mov dword [ebp - 0x224], esp
mov ecx, esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 7
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 8
push ebx
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x228]
call fcn.004075ae
lea eax, [ebp - 0x23c]
mov esi, 0x100
push eax
lea eax, [ebp - 0x210]
mov dword [ebp - 0x23c], esi
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 9
push str.Smart.ini
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0040a72e
add esp, 0x18
mov byte [ebp - 4], 0xa
push dword [eax]
lea eax, [ebp - 0x210]
push eax
push str.ComputerName
push 0x4d13a8
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0xd
push str.Smart.ini
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
add esp, 0x18
mov byte [ebp - 4], 0xe
push dword [eax]
lea eax, [ebp - 0x210]
push esi
push eax
push 0x4c9ff4
push str.Date
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.0040259b
lea eax, [ebp - 0x210]
push eax
call fcn.0048cb73
pop ecx
push eax
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x238]
call fcn.00402266
mov eax, dword [ebp - 0x238]
cmp dword [eax - 0xc], 0
jne 0x4215c7
xor eax, eax
inc eax
mov dword [ebp - 0x234], eax
lea eax, [ebp - 0x21c]
push ecx
push eax
lea ecx, [ebp - 0x230]
call fcn.00422571
mov byte [ebp - 4], 0x11
mov ecx, eax
call fcn.0040e7d0
push eax
push 0x4ca26c
lea eax, [ebp - 0x210]
push esi
push eax
call fcn.00422654
add esp, 0x10
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0x13
push str.Smart.ini
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0040a72e
mov esi, eax
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x220]
push str.FIRST
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
add esp, 0x24
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x210]
push dword [esi]
push ecx
push str.Date
push dword [eax]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x1804]
lea eax, [ebp - 0x210]
push 0x4ca738
push 0x100
push eax
call fcn.00422654
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0x19
push str.Smart.ini
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
mov esi, eax
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x220]
push str.FIRST
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.0040a72e
add esp, 0x34
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x210]
push dword [esi]
push ecx
push str.HealthStatus
push dword [eax]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x218]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0x1f
push str.Smart.ini
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
mov esi, eax
mov byte [ebp - 4], 0x20
lea eax, [ebp - 0x220]
push str.THRESHOLD
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.0040a72e
add esp, 0x24
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x210]
push dword [esi]
push 0x100
push ecx
push 0x4c9ff4
push 0x4d13ec
push dword [eax]
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x218]
lea ecx, [ecx - 0x10]
call fcn.0040259b
lea eax, [ebp - 0x210]
push eax
call fcn.0048cb73
pop ecx
push eax
lea eax, [ebp - 0x210]
push eax
lea ecx, [ebp - 0x238]
call fcn.00402266
mov eax, dword [ebp - 0x238]
cmp dword [eax - 0xc], 0
jne 0x4216a7
xor esi, esi
inc esi
mov dword [ebp - 0x234], esi
jmp 0x4216ad
mov esi, dword [ebp - 0x234]
push ecx
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x230]
call fcn.00422571
mov byte [ebp - 4], 0x25
mov ecx, eax
call fcn.0040e7d0
push eax
push 0x4ca26c
lea eax, [ebp - 0x210]
push 0x100
push eax
call fcn.00422654
add esp, 0x10
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0x27
push str.Smart.ini
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.0040a72e
add esp, 0x18
mov byte [ebp - 4], 0x28
push dword [eax]
lea eax, [ebp - 0x210]
push eax
push str.Date
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x1804]
lea eax, [ebp - 0x210]
push 0x4ca738
push 0x100
push eax
call fcn.00422654
push 0x4ca734
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x21c]
push eax
call fcn.0040a72e
mov byte [ebp - 4], 0x2b
push str.Smart.ini
push eax
lea eax, [ebp - 0x224]
push eax
call fcn.0040a72e
add esp, 0x28
mov byte [ebp - 4], 0x2c
push dword [eax]
lea eax, [ebp - 0x210]
push eax
push str.HealthStatus
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x21c]
lea ecx, [ecx - 0x10]
call fcn.0040259b
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17bc], 0xfffffed4
jle 0x421884
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17bc]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push 0x4cf048
call fcn.00402306
mov byte [ebp - 4], 0x2f
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x30
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x31
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
xor ecx, ecx
cmp dword [eax + 0x17ac], ecx
jle 0x421912
mov eax, dword [ebp - 0x228]
cmp dword [eax + 0x63dc], ecx
jne 0x421912
push ecx
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17ac]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.PowerOnHours
call fcn.00402306
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x33
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x34
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17b8]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.PowerOnCount
call fcn.00402306
mov byte [ebp - 4], 0x35
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x37
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17e0], 0
jl 0x421a09
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17e0]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push 0x4cb030
call fcn.00402306
mov byte [ebp - 4], 0x38
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x39
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x3a
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17cc], 0
jl 0x421a89
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17cc]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.HostWrites
call fcn.00402306
mov byte [ebp - 4], 0x3b
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x3c
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x3d
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17d0], 0
jl 0x421b09
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17d0]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.HostReads
call fcn.00402306
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x40
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17d8], 0
jl 0x421b89
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17d8]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.NandWrites
call fcn.00402306
mov byte [ebp - 4], 0x41
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x42
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x43
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17d4], 0
jl 0x421c09
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17d4]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.GBytesErased
call fcn.00402306
mov byte [ebp - 4], 0x44
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x45
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x46
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
cmp dword [eax + 0x17dc], 0
jl 0x421c89
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
push dword [eax + 0x17dc]
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push str.WearLevelingCount
call fcn.00402306
mov byte [ebp - 4], 0x47
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x48
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x218], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x49
mov byte [ebp - 4], 6
call fcn.004220d3
xor ecx, ecx
mov dword [ebp - 0x218], ecx
mov ecx, edi
push ebx
call fcn.0040ab14
cmp dword [eax + 0x17a4], 0
jbe 0x42200f
and dword [ebp - 0x228], 0
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1400]
push eax
lea eax, [ebp - 0x238]
push str._02X
push eax
call fcn.00403636
add esp, 0xc
mov ecx, edi
push ebx
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1569]
mov ecx, edi
push eax
push esi
push ebx
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1403]
push eax
push dword [ebp - 0x22c]
lea eax, [ebp - 0x238]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x224], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x21c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x4b
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x248], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x4c
mov byte [ebp - 4], 6
call fcn.004220d3
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1400]
sub eax, 5
je 0x421f4f
sub eax, 0xbf
je 0x421ec0
sub eax, 1
je 0x421e31
sub eax, 1
jne 0x421fe8
push eax
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
push ebx
movzx esi, byte [eax + ecx + 0x1406]
mov ecx, edi
shl esi, 8
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1405]
or eax, esi
push eax
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x24c], esp
push str.UncorrectableSectorCount
call fcn.00402306
mov byte [ebp - 4], 0x56
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x250], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x254], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x58
jmp 0x421fd9
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
push ebx
movzx esi, byte [eax + ecx + 0x1406]
mov ecx, edi
shl esi, 8
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1405]
or eax, esi
push eax
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x258], esp
push str.CurrentPendingSectorCount
call fcn.00402306
mov byte [ebp - 4], 0x53
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x25c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x54
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x260], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x55
jmp 0x421fd9
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
push ebx
movzx esi, byte [eax + ecx + 0x1406]
mov ecx, edi
shl esi, 8
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1405]
or eax, esi
push eax
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x264], esp
push str.ReallocationEventCount
call fcn.00402306
mov byte [ebp - 4], 0x50
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x268], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x51
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x26c], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x52
jmp 0x421fd9
push 0
push esi
push ebx
mov ecx, edi
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
push ebx
movzx esi, byte [eax + ecx + 0x1406]
mov ecx, edi
shl esi, 8
call fcn.0040ab14
mov ecx, dword [ebp - 0x228]
movzx eax, byte [eax + ecx + 0x1405]
or eax, esi
push eax
push dword [ebp - 0x22c]
push dword [ebp - 0x230]
push ecx
mov ecx, esp
mov dword [ebp - 0x270], esp
push str.ReallocatedSectorsCount
call fcn.00402306
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x220]
push ecx
mov ecx, esp
mov dword [ebp - 0x274], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x4e
lea eax, [ebp - 0x214]
push ecx
mov ecx, esp
mov dword [ebp - 0x278], esp
push eax
call fcn.00401f6f
mov byte [ebp - 4], 0x4f
mov byte [ebp - 4], 6
call fcn.004220d3
mov esi, dword [ebp - 0x234]
inc dword [ebp - 0x218]
mov ecx, edi
add dword [ebp - 0x228], 0xc
push ebx
call fcn.0040ab14
mov ecx, dword [ebp - 0x218]
cmp ecx, dword [eax + 0x17a4]
jb 0x421cad
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x240]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x220]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x214]
lea ecx, [ecx - 0x10]
call fcn.0040259b
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x290]
call fcn.0046b8e3
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x238]
lea ecx, [ecx - 0x10]
call fcn.0040259b
or dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x244]
lea ecx, [ecx - 0x10]
call fcn.0040259b
call fcn.00487e76
ret 4
push 0x505f28
call fcn.00487784
cmp dword [0x505f28], 0xffffffff
pop ecx
jne 0x421174
xor eax, eax
mov dword [ebp - 4], eax
mov edi, 0x505f30
mov esi, edi
mov ecx, 0x9e
mov dword [edi], eax
mov dword [edi + 4], eax
add edi, 8
rep movsd dword es:[edi], dword [esi]
or dword [ebp - 4], 0xffffffff
push 0x505f28
call fcn.0048773a
mov edi, dword [ebp - 0x218]
mov esi, dword [ebp - 0x228]
pop ecx
jmp 0x421174