Function at 0x419c60
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xac8
mov eax, dword [0x4c6af0]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [0x4cb118]
sub eax, 4
mov dword [ebp - 0xa54], eax
mov dword [ebp - 0x818], 0
mov dword [ebp - 4], 0
mov dword [ebp - 0x828], 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [0x4cb118]
push ecx
mov edx, dword [0x4cb110]
push edx
push 0x4b05e4
call fcn.00414420
add esp, 0x24
cmp dword [0x4cb160], 0
je 0x419ce3
movsx eax, byte [0x4c9e28]
neg eax
sbb eax, eax
and eax, 0xfffffff6
add eax, 0x1e
mov dword [ebp - 0xa54], eax
cmp dword [0x4cb160], 0
jne 0x419cfa
mov ecx, dword [0x4ca828]
mov dword [ebp - 0xab4], ecx
jmp 0x419d06
mov edx, dword [0x4ca830]
mov dword [ebp - 0xab4], edx
mov eax, dword [ebp - 0xab4]
mov dword [ebp - 0x814], eax
cmp dword [0x4cb0c4], 0
je 0x419d78
cmp dword [0x4cb160], 0
jne 0x419d30
mov dword [ebp - 0xa54], 0x23
jmp 0x419d56
fld qword [0x4b30e8]
fcomp qword [ebp + 0x14]
fnstsw ax
test ah, 1
jne 0x419d4c
mov dword [ebp - 0xa54], 0x2d
jmp 0x419d56
mov dword [ebp - 0xa54], 0x19
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xa54]
push ecx
push 0x4b05fc
call fcn.00414420
add esp, 0x24
mov dword [ebp - 0xa68], 0
jmp 0x419d93
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
mov eax, dword [ebp - 0xa68]
cmp eax, dword [0x4cb110]
jge 0x419dc9
movzx edx, word [ebp + 0x10]
mov eax, 1
mov ecx, dword [ebp - 0xa68]
shl eax, cl
and edx, eax
neg edx
sbb edx, edx
neg edx
mov ecx, dword [ebp - 0xa68]
mov byte [ebp + ecx - 0xa50], dl
jmp 0x419d84
push 0x410
push 0
push 0x4cdd90
call fcn.0044fbf0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa90], eax
cmp dword [0x4c1218], 0
je 0x419e00
mov edx, dword [0x4ca7fc]
mov dword [ebp - 0xab8], edx
jmp 0x419e0a
mov dword [ebp - 0xab8], 0x40
mov eax, dword [ebp - 0xab8]
mov dword [ebp - 0x838], eax
mov byte [ebp - 0xa79], 1
mov byte [ebp - 0xa5d], 1
cmp dword [0x4c80f4], 0
je 0x419e3b
mov ecx, dword [0x4cb118]
mov dword [ebp - 0xabc], ecx
jmp 0x419e76
cmp dword [0x4ca87c], 0
jne 0x419e5e
mov eax, dword [ebp - 0xa54]
imul eax, eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
mov dword [ebp - 0xac0], eax
jmp 0x419e6a
mov edx, dword [ebp - 0xa54]
mov dword [ebp - 0xac0], edx
mov eax, dword [ebp - 0xac0]
mov dword [ebp - 0xabc], eax
mov ecx, dword [ebp - 0xabc]
mov dword [ebp - 0xa8c], ecx
push 0x200
push 0
lea edx, [ebp - 0xa38]
push edx
call fcn.0044fbf0
add esp, 0xc
call fcn.00419b50
mov dword [ebp - 0x810], eax
mov eax, dword [ebp - 0x810]
and eax, 1
jne 0x419ebd
mov ecx, dword [ebp - 0x810]
add ecx, 1
mov dword [ebp - 0x810], ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0x810]
push edx
push 0x4b0618
call fcn.00414420
add esp, 0x24
cmp dword [0x516654], 1
jne 0x419efb
mov eax, dword [ebp - 0x810]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.00414cd0
add esp, 8
cmp dword [0x4cb0c0], 1
jl 0x419f2c
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0xa90]
push eax
push 0x4b0628
call fcn.00414420
add esp, 0x24
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0xa90], eax
mov dword [ebp - 0xa6c], 0
mov dword [ebp - 0xa88], 0
mov eax, dword [0x4cb0ec]
cdq
idiv dword [0x4cb0f4]
mov dword [ebp - 0xa40], eax
push 0x800
push 0
lea edx, [ebp - 0x808]
push edx
call fcn.0044fbf0
add esp, 0xc
mov dword [ebp - 0x80c], 0
mov dword [ebp - 0xa5c], 0
mov dword [ebp - 0x820], 0
cmp dword [0x5174fc], 1
jne 0x419fcc
cmp dword [0x4ca858], 0x100
jne 0x419fb3
mov dword [ebp - 0xac4], 1
jmp 0x419fbe
mov eax, dword [0x4ca858]
mov dword [ebp - 0xac4], eax
mov ecx, dword [ebp - 0xac4]
mov dword [ebp - 0x834], ecx
jmp 0x41a00f
cmp dword [0x4ca858], 0x100
jne 0x419fe4
mov dword [ebp - 0xac8], 1
jmp 0x419ff0
mov edx, dword [0x4ca858]
mov dword [ebp - 0xac8], edx
mov eax, dword [ebp - 0xac8]
mov dword [ebp - 0x834], eax
cmp dword [0x5174e8], 0
je 0x41a00f
mov dword [ebp - 0x834], 3
cmp dword [0x516654], 1
jne 0x41a66e
mov dword [ebp - 0xa3c], 0
jmp 0x41a037
mov ecx, dword [ebp - 0xa3c]
add ecx, 1
mov dword [ebp - 0xa3c], ecx
mov edx, dword [ebp - 0xa3c]
cmp edx, dword [0x4cb108]
jge 0x41a669
mov eax, dword [ebp - 0xa88]
cmp eax, dword [ebp - 0x834]
jge 0x41a669
cmp dword [0x4cb0c0], 1
jl 0x41a086
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xa3c]
push ecx
push 0x4b0638
call fcn.00414420
add esp, 0x24
cmp dword [0x4cb160], 0
jne 0x41a0a4
mov edx, dword [ebp - 0xa3c]
movzx eax, byte [edx + 0x4cacb0]
test eax, eax
jne 0x41a0a2
jmp 0x41a028
jmp 0x41a0b9
mov ecx, dword [ebp + 0xc]
add ecx, dword [ebp - 0xa3c]
movzx edx, byte [ecx]
test edx, edx
jne 0x41a0b9
jmp 0x41a028
mov eax, dword [ebp - 0x80c]
add eax, 1
mov dword [ebp - 0x80c], eax
cmp dword [0x4cb0c0], 1
jl 0x41a0f3
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x80c]
push ecx
push str.TestCnt:__d
call fcn.00414420
add esp, 0x24
cmp dword [ebp - 0xa3c], 0
jne 0x41a0fe
jmp 0x41a11d
mov edx, dword [ebp - 0x80c]
cmp edx, dword [0x4ca854]
jge 0x41a113
jmp 0x41a028
mov dword [ebp - 0x80c], 0
cmp dword [0x4cb0c0], 1
jl 0x41a148
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 0xa3c]
push eax
push 0x4b0650
call fcn.00414420
add esp, 0x24
mov ecx, dword [ebp - 0xa88]
add ecx, 1
mov dword [ebp - 0xa88], ecx
mov dword [ebp - 0xa64], 0
jmp 0x41a172
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
mov eax, dword [ebp - 0xa64]
cmp eax, dword [0x4cb11c]
jge 0x41a664
mov ecx, dword [ebp - 0xa64]
mov edx, dword [ecx*4 + 0x4cb120]
mov dword [ebp - 0xa78], edx
mov dword [ebp - 0x82c], 0
jmp 0x41a1b2
mov eax, dword [ebp - 0x82c]
add eax, 1
mov dword [ebp - 0x82c], eax
mov ecx, dword [ebp - 0x82c]
cmp ecx, dword [0x4cb0f4]
jge 0x41a625
mov dword [ebp - 0xa70], 0
jmp 0x41a1e2
mov edx, dword [ebp - 0xa70]
add edx, dword [ebp - 0x838]
mov dword [ebp - 0xa70], edx
mov eax, dword [ebp - 0xa70]
cmp eax, dword [0x4cb0f0]
jge 0x41a620
cmp dword [0x4cb928], 0
je 0x41a204
xor eax, eax
jmp 0x41ac64
cmp dword [0x5174a0], 0
jne 0x41a214
xor eax, eax
jmp 0x41ac64
mov ecx, dword [ebp - 0x82c]
imul ecx, dword [ebp - 0xa40]
add ecx, dword [ebp - 0xa70]
mov dword [ebp - 0x81c], ecx
mov edx, dword [0x4cb0f0]
sub edx, dword [ebp - 0xa70]
mov dword [ebp - 0xa74], edx
mov eax, dword [ebp - 0xa74]
cmp eax, dword [ebp - 0x838]
jle 0x41a259
mov ecx, dword [ebp - 0x838]
mov dword [ebp - 0xa74], ecx
cmp dword [0x4cb0c0], 1
jl 0x41a28e
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0xa74]
push edx
mov eax, dword [ebp - 0x81c]
push eax
mov ecx, dword [ebp - 0xa78]
push ecx
push 0x4b065c
call fcn.00414420
add esp, 0x24
push 0x200
push 0
lea edx, [ebp - 0xa38]
push edx
call fcn.0044fbf0
add esp, 0xc
mov dword [ebp - 0x830], 0
jmp 0x41a2bf
mov eax, dword [ebp - 0x830]
add eax, 1
mov dword [ebp - 0x830], eax
mov ecx, dword [ebp - 0x830]
cmp ecx, dword [ebp - 0xa74]
jge 0x41a325
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x830]
cdq
idiv dword [ebp - 0x810]
test edx, edx
je 0x41a323
mov eax, dword [ebp - 0x830]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov ecx, dword [ebp - 0x830]
and ecx, 7
mov edx, 1
shl edx, cl
movzx ecx, byte [ebp + eax - 0xa38]
or ecx, edx
mov eax, dword [ebp - 0x830]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov byte [ebp + eax - 0xa38], cl
jmp 0x41a2b0
movzx edx, byte [ebp - 0xa79]
push edx
mov eax, dword [ebp - 0xa74]
push eax
lea ecx, [ebp - 0xa38]
push ecx
mov edx, dword [ebp - 0xa3c]
push edx
mov eax, dword [ebp - 0x81c]
push eax
mov ecx, dword [ebp - 0xa78]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0042e990
add esp, 0x1c
test eax, eax
jne 0x41a365
jmp 0x41a1d0
cmp dword [0x516654], 1
jne 0x41a3ca
movzx eax, byte [ebp - 0xa5d]
push eax
mov ecx, dword [ebp - 0xa74]
push ecx
lea edx, [ebp - 0xa38]
push edx
mov eax, dword [ebp - 0xa3c]
push eax
mov ecx, dword [ebp - 0x81c]
push ecx
mov edx, dword [ebp - 0xa78]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042eaf0
add esp, 0x1c
test eax, eax
jne 0x41a3ae
jmp 0x41a1d0
push 0x4ce1a0
mov ecx, dword [ebp + 8]
push ecx
call fcn.0042ee30
add esp, 8
test eax, eax
jne 0x41a3c8
jmp 0x41a1d0
jmp 0x41a411
cmp dword [0x516654], 2
jne 0x41a411
movzx edx, byte [ebp - 0xa5d]
push edx
mov eax, dword [ebp - 0xa74]
push eax
push 0x4ce1a0
mov ecx, dword [ebp - 0xa3c]
push ecx
mov edx, dword [ebp - 0x81c]
push edx
mov eax, dword [ebp - 0xa78]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.0042eaf0
add esp, 0x1c
test eax, eax
jne 0x41a411
jmp 0x41a1d0
mov dword [ebp - 0xa98], 0x4ce1a0
mov dword [ebp - 0xa94], 0
mov dword [ebp - 0x830], 0
jmp 0x41a452
mov edx, dword [ebp - 0x830]
add edx, 1
mov dword [ebp - 0x830], edx
mov eax, dword [ebp - 0xa98]
add eax, dword [0x4cb110]
mov dword [ebp - 0xa98], eax
mov ecx, dword [ebp - 0x830]
cmp ecx, dword [ebp - 0xa74]
jge 0x41a61b
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x830]
cdq
idiv dword [ebp - 0x810]
test edx, edx
je 0x41a47d
jmp 0x41a431
mov dword [ebp - 0xa9c], 1
mov dword [ebp - 0xaa0], 1
mov dword [ebp - 0xa68], 0
jmp 0x41a4ac
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
mov eax, dword [ebp - 0xa68]
cmp eax, dword [0x4cb110]
jge 0x41a539
mov ecx, dword [ebp - 0xa68]
movzx edx, byte [ebp + ecx - 0xa50]
test edx, edx
jne 0x41a4ce
jmp 0x41a49d
mov eax, dword [ebp - 0xa98]
add eax, dword [ebp - 0xa68]
movzx ecx, byte [eax]
mov dword [ebp - 0xa80], ecx
cmp dword [ebp - 0xa80], 0x46
jle 0x41a4f6
mov dword [ebp - 0xaa0], 0
mov edx, dword [ebp - 0xa98]
add edx, dword [ebp - 0xa68]
movzx eax, byte [edx]
cmp eax, dword [ebp - 0xa8c]
jle 0x41a517
mov dword [ebp - 0xa9c], 0
mov ecx, dword [ebp - 0xa80]
mov edx, dword [ecx*4 + 0x4cdd90]
add edx, 1
mov eax, dword [ebp - 0xa80]
mov dword [eax*4 + 0x4cdd90], edx
jmp 0x41a49d
cmp dword [ebp - 0xa9c], 0
jne 0x41a5ce
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x830]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov ecx, dword [ebp - 0x830]
and ecx, 7
mov edx, 1
shl edx, cl
movzx ecx, byte [ebp + eax - 0x808]
or ecx, edx
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x830]
cdq
and edx, 7
add eax, edx
sar eax, 3
mov byte [ebp + eax - 0x808], cl
cmp dword [0x4cb0c0], 1
jl 0x41a5cc
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0xa3c]
push edx
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x830]
push eax
mov ecx, dword [ebp - 0xa78]
push ecx
push 0x4b0678
call fcn.00414420
add esp, 0x24
jmp 0x41a5dd
mov edx, dword [ebp - 0x818]
add edx, 1
mov dword [ebp - 0x818], edx
cmp dword [ebp - 0xaa0], 0
je 0x41a5ef
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xa6c]
add ecx, 1
mov dword [ebp - 0xa6c], ecx
cmp dword [ebp - 0xa3c], 0
jne 0x41a616
mov edx, dword [ebp - 0x828]
add edx, 1
mov dword [ebp - 0x828], edx
jmp 0x41a431
jmp 0x41a1d0
jmp 0x41a1a3
cmp dword [0x4cb0c0], 1
jl 0x41a65f
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 0x828]
push eax
mov ecx, dword [ebp - 0xa6c]
push ecx
mov edx, dword [ebp - 0x818]
push edx
mov eax, dword [ebp - 0xa78]
push eax
push 0x4b0698
call fcn.00414420
add esp, 0x24
jmp 0x41a163
jmp 0x41a028
jmp 0x41a9fb
cmp dword [0x516654], 2
jne 0x41a9fb
push 0
mov ecx, dword [ebp + 8]
push ecx
call fcn.0042fbd0
add esp, 8
mov dword [ebp - 0xa64], 0
jmp 0x41a6a4
mov edx, dword [ebp - 0xa64]
add edx, 1
mov dword [ebp - 0xa64], edx
mov eax, dword [ebp - 0xa64]
cmp eax, dword [0x4cb11c]
jge 0x41a9fb
mov ecx, dword [ebp - 0xa64]
mov edx, dword [ecx*4 + 0x4cb120]
mov dword [ebp - 0xa78], edx
mov dword [ebp - 0x82c], 0
jmp 0x41a6e4
mov eax, dword [ebp - 0x82c]
add eax, 1
mov dword [ebp - 0x82c], eax
mov ecx, dword [ebp - 0x82c]
cmp ecx, dword [0x4cb0f4]
jge 0x41a9bc
mov edx, dword [0x4cb164]
neg edx
sbb edx, edx
and edx, 2
mov dword [ebp - 0xaa4], edx
mov dword [ebp - 0xaa8], 2
mov dword [ebp - 0xa70], 0
jmp 0x41a731
mov eax, dword [ebp - 0xa70]
add eax, dword [ebp - 0x810]
mov dword [ebp - 0xa70], eax
mov ecx, dword [ebp - 0xa70]
cmp ecx, dword [0x4cb0f0]
jge 0x41a9b7
cmp dword [0x4cb928], 0
je 0x41a753
xor eax, eax
jmp 0x41ac64
cmp dword [0x5174a0], 0
jne 0x41a763
xor eax, eax
jmp 0x41ac64
mov edx, dword [ebp - 0x82c]
imul edx, dword [ebp - 0xa40]
add edx, dword [ebp - 0xa70]
mov dword [ebp - 0x81c], edx
mov eax, dword [0x4c81d0]
and eax, 0xf
cmp eax, 1
jne 0x41a79d
mov ecx, dword [ebp - 0x81c]
and ecx, 0xfffe
mov dword [ebp - 0x81c], ecx
jmp 0x41a7ba
mov edx, dword [0x4c81d0]
and edx, 0xf
cmp edx, 2
jne 0x41a7ba
mov eax, dword [ebp - 0x81c]
or eax, 1
mov dword [ebp - 0x81c], eax
mov ecx, dword [ebp - 0xaa4]
mov dword [ebp - 0xa3c], ecx
movzx edx, byte [ebp - 0xa79]
push edx
mov eax, dword [ebp - 0xaa8]
push eax
lea ecx, [ebp - 0xa38]
push ecx
mov edx, dword [ebp - 0xa3c]
push edx
mov eax, dword [ebp - 0x81c]
push eax
mov ecx, dword [ebp - 0xa78]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.0042e990
add esp, 0x1c
test eax, eax
jne 0x41a81e
mov eax, dword [ebp - 0xa5c]
add eax, 1
mov dword [ebp - 0xa5c], eax
cmp dword [0x4ca810], 0
je 0x41a81e
jmp 0x41a71f
push 0xa
call dword [sym.imp.KERNEL32.dll_Sleep]
movzx ecx, byte [ebp - 0xa5d]
push ecx
mov edx, dword [ebp - 0xaa8]
push edx
push 0x4ce1a0
mov eax, dword [ebp - 0xa3c]
push eax
mov ecx, dword [ebp - 0x81c]
push ecx
mov edx, dword [ebp - 0xa78]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.0042eaf0
add esp, 0x1c
test eax, eax
jne 0x41a86e
mov ecx, dword [ebp - 0x820]
add ecx, 1
mov dword [ebp - 0x820], ecx
mov dword [ebp - 0xaac], 0
mov dword [ebp - 0xab0], 0
mov dword [ebp - 0xa68], 0
jmp 0x41a89d
mov edx, dword [ebp - 0xa68]
add edx, 1
mov dword [ebp - 0xa68], edx
mov eax, dword [0x4cb110]
imul eax, dword [ebp - 0xaa8]
cmp dword [ebp - 0xa68], eax
jge 0x41a91b
mov ecx, dword [ebp - 0xa68]
movzx edx, byte [ecx + 0x4ce9a0]
mov dword [ebp - 0xa80], edx
cmp dword [ebp - 0xa80], 0x46
jle 0x41a8dc
mov eax, dword [ebp - 0xab0]
add eax, 1
mov dword [ebp - 0xab0], eax
mov ecx, dword [ebp - 0xa80]
cmp ecx, dword [ebp - 0xa8c]
jle 0x41a8f9
mov edx, dword [ebp - 0xaac]
add edx, 1
mov dword [ebp - 0xaac], edx
mov eax, dword [ebp - 0xa80]
mov ecx, dword [eax*4 + 0x4cdd90]
add ecx, 1
mov edx, dword [ebp - 0xa80]
mov dword [edx*4 + 0x4cdd90], ecx
jmp 0x41a88e
mov eax, dword [0x4cb110]
add eax, 5
cmp dword [ebp - 0xaac], eax
jle 0x41a962
cmp dword [0x4cb0c0], 1
jl 0x41a960
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0xa3c]
push ecx
mov edx, dword [ebp - 0x81c]
push edx
mov eax, dword [ebp - 0xa78]
push eax
push 0x4b06c0
call fcn.00414420
add esp, 0x24
jmp 0x41a971
mov ecx, dword [ebp - 0x818]
add ecx, 1
mov dword [ebp - 0x818], ecx
mov edx, dword [0x4cb110]
add edx, 5
cmp dword [ebp - 0xab0], edx
jge 0x41a98b
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xa6c]
add ecx, 1
mov dword [ebp - 0xa6c], ecx
cmp dword [ebp - 0xa3c], 0
jne 0x41a9b2
mov edx, dword [ebp - 0x828]
add edx, 1
mov dword [ebp - 0x828], edx
jmp 0x41a71f
jmp 0x41a6d5
cmp dword [0x4cb0c0], 1
jl 0x41a9f6
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov eax, dword [ebp - 0x828]
push eax
mov ecx, dword [ebp - 0xa6c]
push ecx
mov edx, dword [ebp - 0x818]
push edx
mov eax, dword [ebp - 0xa78]
push eax
push str.____CE_d__GoodBlockCount_d__d___d
call fcn.00414420
add esp, 0x24
jmp 0x41a695
cmp dword [0x4cb0c0], 1
jl 0x41aa2c
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0xa90]
push eax
push 0x4b0708
call fcn.00414420
add esp, 0x24
mov ecx, dword [ebp - 0xa5c]
mov dword [0x4c81b4], ecx
mov edx, dword [ebp - 0x820]
mov dword [0x4c81b8], edx
mov dword [ebp - 0x824], 0
mov dword [ebp - 0xa84], 0
mov dword [ebp - 0x81c], 0
jmp 0x41aa73
mov eax, dword [ebp - 0x81c]
add eax, 1
mov dword [ebp - 0x81c], eax
cmp dword [ebp - 0x81c], 0x400
jge 0x41ab28
mov dword [ebp - 0x830], 0
jmp 0x41aa9e
mov ecx, dword [ebp - 0x830]
add ecx, 1
mov dword [ebp - 0x830], ecx
cmp dword [ebp - 0x830], 8
jge 0x41ab23
mov eax, dword [ebp - 0x830]
cdq
and edx, 7
add eax, edx
sar eax, 3
add eax, dword [ebp - 0x81c]
movzx edx, byte [ebp + eax - 0x808]
mov ecx, dword [ebp - 0x830]
and ecx, 7
mov eax, 1
shl eax, cl
and edx, eax
je 0x41ab1e
mov ecx, dword [ebp - 0x824]
add ecx, 1
mov dword [ebp - 0x824], ecx
mov edx, dword [ebp - 0x81c]
mov eax, dword [ebp - 0x830]
lea ecx, [eax + edx*8]
mov dword [ebp - 0xa84], ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0xa84]
push edx
push str.badblock_10x_04X
call fcn.00414420
add esp, 0x24
jmp 0x41aa8f
jmp 0x41aa64
mov eax, dword [ebp - 0x828]
sub eax, dword [ebp - 0x824]
mov dword [ebp - 0xa58], eax
mov ecx, dword [ebp - 4]
mov dword [0x4c8140], ecx
mov edx, dword [ebp - 0x818]
mov dword [0x4c8144], edx
mov eax, dword [ebp - 0xa6c]
mov dword [0x4c8148], eax
fld qword [0x4b30e0]
fcomp qword [0x4c8188]
fnstsw ax
test ah, 0x41
jne 0x41ab82
cmp dword [0x4cb0e4], 3
jne 0x41ab82
mov ecx, dword [0x4c8140]
mov dword [ebp - 0x818], ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0xa6c]
push edx
mov eax, dword [ebp - 0x818]
push eax
push 0x4b072c
call fcn.00414420
add esp, 0x24
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x828]
push ecx
mov edx, dword [ebp - 0xa58]
push edx
push str.Goodblockcnt_d____d
call fcn.00414420
add esp, 0x24
cmp dword [0x4c1218], 0
je 0x41ac1f
cmp dword [ebp - 0x828], 0
jne 0x41abee
mov dword [ebp - 0xa58], 0
jmp 0x41ac15
mov eax, dword [0x4cb0f0]
imul eax, dword [0x4cb0f4]
imul eax, dword [0x4cb11c]
imul eax, dword [ebp - 0xa58]
cdq
idiv dword [ebp - 0x828]
mov dword [ebp - 0xa58], eax
mov eax, dword [ebp - 0xa58]
jmp 0x41ac64
cmp dword [ebp - 0xa6c], 0
jne 0x41ac34
mov dword [ebp - 0x818], 0
jmp 0x41ac5e
mov ecx, dword [0x4cb0f0]
imul ecx, dword [0x4cb0f4]
imul ecx, dword [0x4cb11c]
mov eax, ecx
imul eax, dword [ebp - 0x818]
cdq
idiv dword [ebp - 0xa6c]
mov dword [ebp - 0x818], eax
mov eax, dword [ebp - 0x818]
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.0044e8ae
mov esp, ebp
pop ebp
ret