Function at 0x42c2a0
Capabilities:
Disable automatic windows recovery features

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x42c72a
sub esp, 0x2c
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
cmp eax, ecx
jae 0x42c2cc
nop
mov edx, ecx
sub ecx, eax
jmp 0x42c2d0
mov edx, ecx
xor ecx, ecx
test ecx, ecx
je 0x42c69f
mov ecx, dword [esp + 0x30]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042c100
mov eax, dword [esp + 8]
test eax, eax
jle 0x42c318
mov ebx, dword [esp + 0x30]
mov ecx, dword [ebx + 4]
mov ebp, dword [ebx]
lea esi, [eax - 1]
cmp ecx, esi
jbe 0x42c698
lea ebp, [ebp + eax*8 - 8]
mov esi, dword [esp + 0x34]
cmp dword [ebp + 4], esi
xchg ebp, ebx
sete bl
xchg ebp, ebx
jmp 0x42c322
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
xor ebp, ebp
mov ecx, dword [ebx + 4]
mov edi, dword [ebx]
mov edx, dword [ebx + 8]
cmp ecx, eax
jle 0x42c34e
jbe 0x42c693
lea ebx, [edi + eax*8]
mov esi, dword [esp + 0x38]
cmp dword [ebx], esi
sete bl
mov esi, dword [esp + 0x34]
mov byte [esp + 0x13], bl
mov ebx, dword [esp + 0x30]
jmp 0x42c35c
mov dword [esp + 0x20], eax
xor eax, eax
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x20]
movzx ebx, byte [esp + 0x13]
test bl, bl
je 0x42c437
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x42c433
cmp ecx, eax
jbe 0x42c68e
lea ebx, [eax - 1]
lea ebp, [edi + eax*8]
mov ebp, dword [ebp + 4]
cmp ecx, ebx
jbe 0x42c687
lea ebx, [edi + eax*8 - 4]
mov dword [ebx], ebp
mov ebx, dword [esp + 0x30]
mov ecx, dword [ebx + 4]
mov ebp, dword [ebx]
mov edi, dword [ebx + 8]
cmp ecx, eax
jb 0x42c682
mov dword [esp + 0x1c], ecx
mov edx, eax
shl eax, 3
sub ecx, edx
sub edi, edx
mov dword [esp + 0x18], edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, eax
add edi, ebp
lea eax, [edx + 1]
mov edx, esi
mov esi, dword [esp + 0x1c]
cmp esi, eax
jb 0x42c67b
mov esi, dword [esp + 0x18]
dec esi
xchg esi, ebx
neg ebx
xchg esi, ebx
shl eax, 3
sar esi, 0x1f
and esi, eax
lea eax, [ebp + esi]
lea ebp, [ecx - 1]
cmp ecx, ebp
jg 0x42c3f5
mov ebp, ecx
cmp eax, edi
je 0x42c414
mov dword [esp], edi
mov dword [esp + 4], eax
shl ebp, 3
mov dword [esp + 8], ebp
call fcn.0045fd70
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
mov eax, dword [ebx + 8]
mov ebp, dword [ebx + 4]
lea ecx, [ebp - 1]
cmp eax, ecx
jb 0x42c674
mov dword [ebx + 4], ecx
mov eax, dword [esp + 0x38]
cmp edx, eax
jmp 0x42c623
test bl, bl
jmp 0x42c463
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x42c461
lea edx, [eax - 1]
cmp ecx, edx
jbe 0x42c66d
lea eax, [edi + eax*8 - 4]
mov ecx, dword [esp + 0x38]
mov dword [eax], ecx
cmp esi, ecx
mov edx, dword [esp + 0x30]
mov ebx, ecx
mov ecx, esi
jmp 0x42c61d
test bl, bl
je 0x42c485
cmp ecx, eax
jbe 0x42c668
lea eax, [edi + eax*8]
mov dword [eax], esi
mov eax, dword [esp + 0x38]
cmp esi, eax
mov ecx, esi
mov edx, dword [esp + 0x30]
mov ebx, eax
jmp 0x42c61d
mov dword [esp + 0x14], eax
lea ebx, [ecx + 1]
cmp edx, ebx
jl 0x42c507
jb 0x42c661
mov edx, dword [esp + 0x30]
mov dword [edx + 4], ebx
mov ebp, dword [edx]
mov edi, dword [edx + 8]
lea esi, [eax + 1]
cmp esi, ebx
ja 0x42c658
sub ecx, eax
sub edi, eax
lea edx, [edi - 1]
neg edx
shl esi, 3
sar edx, 0x1f
and edx, esi
add edx, ebp
cmp eax, ebx
ja 0x42c651
lea ebx, [ecx + 1]
xchg edi, ebx
neg ebx
xchg edi, ebx
mov esi, eax
shl eax, 3
sar edi, 0x1f
and edi, eax
add ebp, edi
cmp ecx, ebx
jg 0x42c4e3
mov ebx, ecx
cmp ebp, edx
je 0x42c5fb
mov dword [esp], edx
mov dword [esp + 4], ebp
shl ebx, 3
mov dword [esp + 8], ebx
call fcn.0045fd70
mov esi, dword [esp + 0x14]
jmp 0x42c5fb
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x28], edi
mov eax, dword [esp + 0x30]
mov dword [eax + 4], ebx
mov ecx, edx
shl edx, 1
mov dword [eax + 8], edx
shl ecx, 4
mov ebx, dword [eax + 0x10]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], ebx
call fcn.0040b600
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
mov edx, dword [ecx + 8]
mov ebx, dword [esp + 0x14]
cmp edx, ebx
jb 0x42c64a
mov edx, dword [esp + 0x1c]
cmp edx, ebx
jb 0x42c643
mov ebp, dword [esp + 0x28]
cmp eax, ebp
je 0x42c58b
mov dword [esp], eax
mov dword [esp + 4], ebp
shl ebx, 3
mov dword [esp + 8], ebx
call fcn.0045fd70
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x28]
mov esi, dword [ecx + 4]
mov edi, dword [ecx]
mov eax, ebp
mov ebp, dword [ecx + 8]
lea edx, [ebx + 1]
cmp esi, edx
jb 0x42c63a
sub ebp, ebx
dec ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl edx, 3
sar ebp, 0x1f
and ebp, edx
lea edx, [edi + ebp]
sub esi, ebx
lea ebp, [esi - 1]
mov esi, dword [esp + 0x18]
sub esi, ebx
mov edi, dword [esp + 0x1c]
sub edi, ebx
xchg edi, ebx
neg ebx
xchg edi, ebx
shl ebx, 3
sar edi, 0x1f
and edi, ebx
lea ebx, [edi + eax]
cmp esi, ebp
jl 0x42c5dc
mov esi, ebp
cmp ebx, edx
je 0x42c5f7
mov dword [esp], edx
mov dword [esp + 4], ebx
shl esi, 3
mov dword [esp + 8], esi
call fcn.0045fd70
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x30]
mov ebx, dword [edx]
mov ecx, dword [edx + 4]
cmp ecx, esi
jbe 0x42c633
lea eax, [ebx + esi*8]
mov ecx, dword [esp + 0x34]
mov dword [eax], ecx
lea eax, [ebx + esi*8 + 4]
mov ebx, dword [esp + 0x38]
mov dword [eax], ebx
cmp ecx, ebx
mov eax, ebx
mov ebx, edx
mov edx, ecx
jae 0x42c62a
nop
sub eax, edx
jmp 0x42c62c
xor eax, eax
add dword [ebx + 0xc], eax
add esp, 0x2c
ret
mov eax, esi
call fcn.0045f4d0
mov eax, edx
mov ecx, esi
call fcn.0045f530
mov ecx, ebx
call fcn.0045f510
mov ecx, ebx
call fcn.0045f510
mov ecx, ebx
call fcn.0045f530
mov eax, esi
mov ecx, ebx
call fcn.0045f530
mov ecx, ebx
call fcn.0045f510
call fcn.0045f4d0
mov eax, edx
call fcn.0045f4d0
mov edx, eax
call fcn.0045f510
mov ecx, esi
call fcn.0045f530
call fcn.0045f530
mov eax, ebx
call fcn.0045f4d0
call fcn.0045f4d0
call fcn.0045f4d0
mov eax, esi
call fcn.0045f4d0
call fcn.00435250
lea eax, [0x55fa6d]
mov dword [esp], eax
mov dword [esp + 4], 0x12
call fcn.00435e80
mov dword [esp + 4], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00435d00
lea eax, [0x55c2cd]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435e80
mov dword [esp + 4], 0
mov eax, dword [esp + 0x38]
mov dword [esp], eax
call fcn.00435d00
lea eax, [0x55c37b]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435e80
call fcn.004352c0
lea eax, [0x566115]
mov dword [esp], eax
mov dword [esp + 4], 0x29
call fcn.00433a80
nop
call fcn.0045e080
jmp fcn.0042c2a0