Function at 0x4441c0
Capabilities:
Delete file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a192a
mov eax, dword fs:[0]
push eax
sub esp, 0x9dc
mov eax, dword [0x4c448c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [0x4c7dd0]
mov edi, ecx
mov dword [ebp - 0x944], edi
mov dword [ebp - 0x93c], eax
test eax, eax
jne 0x44421b
mov eax, dword [str.pl_rsrc_english.dll]
push eax
mov dword [str.pl_rsrc_english.dll], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov dword [0x4c7dd0], eax
mov esi, edi
call fcn.004497f0
test al, al
je 0x448c76
mov eax, dword [edi + 0x30e4]
cmp dword [eax - 0xc], 0
lea ecx, [edi + 0x30e4]
jne 0x444242
push edi
call fcn.0044a200
call fcn.0043fe70
push edi
lea esi, [ebp - 0x99c]
lea ebx, [ebp - 0x968]
mov dword [ebp - 0x99c], 0
call fcn.00444000
test al, al
jne 0x444286
push 2
call fcn.0047125f
add esp, 4
xor ecx, ecx
mov word [eax], cx
mov dword [ebp - 0x968], eax
mov dword [ebp - 0x99c], 2
lea esi, [edi + 0x30e4]
call fcn.0044dfc0
mov eax, dword [edi + 0x30e4]
xor esi, esi
push esi
push 0x100
push 2
push esi
push 1
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x930], eax
cmp eax, 0xffffffff
je 0x448c7a
mov eax, dword [ebp - 0x99c]
mov ecx, dword [ebp - 0x968]
push esi
lea edx, [ebp - 0x9a4]
push edx
mov edx, dword [ebp - 0x930]
push eax
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, dword [ebp - 0x930]
lea eax, [ebp - 0x998]
push eax
push ecx
mov dword [ebp - 0x998], esi
call dword [sym.imp.KERNEL32.dll_GetHandleInformation]
test eax, eax
je 0x44430d
mov edx, dword [ebp - 0x930]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x968]
push eax
call fcn.00472958
lea eax, [edi + 0x2fbc]
add esp, 4
push eax
mov dword [ebp - 0x998], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov dword [ebp - 0x9b4], esi
mov dword [ebp - 0x9b0], esi
mov dword [ebp - 0x9ac], esi
mov dword [ebp - 4], esi
mov dword [ebp - 0x964], esi
mov dword [ebp - 0x960], esi
mov dword [ebp - 0x95c], esi
mov dword [ebp - 0x954], esi
mov dword [ebp - 0x950], esi
mov dword [ebp - 0x94c], esi
mov byte [ebp - 4], 2
mov edx, dword [0x4c41fc]
mov eax, dword [edx + 0xc]
mov ecx, 0x4c41fc
call eax
add eax, 0x10
mov dword [ebp - 0x92c], eax
lea ecx, [ebp - 0x9b4]
push ecx
mov byte [ebp - 4], 3
mov eax, dword [edi + 0x30e4]
push eax
push edi
lea edx, [ebp - 0x954]
lea ecx, [ebp - 0x964]
call fcn.0044e080
test al, al
jne 0x444406
mov edx, dword [ebp - 0x998]
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x92c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4443e0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea ebx, [ebp - 0x954]
call fcn.00416bc0
lea ebx, [ebp - 0x964]
call fcn.00416bc0
lea ebx, [ebp - 0x9b4]
call fcn.00416bc0
jmp 0x448c89
mov ebx, dword [edi + 0x30e4]
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x954]
push ecx
lea ebx, [edi + 0x30e8]
push ebx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.ConfigPasswordMD5
call fcn.0044efd0
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push str.True
lea eax, [ebp - 0x964]
mov ecx, 0x4b381c
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
xor ebx, ebx
add esp, 8
cmp eax, ebx
sete dl
mov byte [edi + 0x30d9], dl
mov eax, str.True
cmp byte [0x4c84bc], bl
jne 0x444498
mov eax, str.False
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push eax
lea eax, [ebp - 0x964]
mov ecx, str.HideProcessIcons
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x3083], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ClearLogAtExit
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowPerCoreUtilGraph
mov byte [edi + 0x307d], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x30a8], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowPerCoreFreqGraph
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x30a9], cl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphLegend
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete dl
mov byte [edi + 0x30a6], dl
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowMemoryLoadGraph
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x30ab], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphCPU
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x30a3], cl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphResponsiveness
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphMemoryLoad
mov byte [edi + 0x30a2], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x30a5], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphProBalanceEvents
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete cl
lea edx, [ebp - 0x954]
mov byte [edi + 0x30a4], cl
push edx
lea eax, [ebp - 0x92c]
push eax
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGraphSelectedProcessesCPUHistory
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ShowThreadsAndModulesView
mov byte [edi + 0x30a7], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x3086], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ShowGridLinesInListViews
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x301b], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.AutomaticUpdate
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.RoundRobinSkipCore0
mov byte [edi + 0x309e], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete al
lea ecx, [ebp - 0x954]
mov byte [edi + 0x3060], al
push ecx
lea edx, [ebp - 0x92c]
push edx
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.OocOn
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x3019], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.DisableProBalanceWhenSysIdle
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push ebx
lea eax, [ebp - 0x964]
mov ecx, str.ProBalanceDropOneRandomCore
mov byte [edi + 0x3054], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x3057], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.OocDisableCoreParkingWhileIn
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [edi + 0x30aa], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.Exp2
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
sete dl
push eax
lea ecx, [ebp - 0x92c]
mov byte [edi + 0x30d8], dl
push ecx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LowerIOPriorityDuringRestraint
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [edi + 0x3055], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.MatchExclusionsByPathnameToo
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x964]
push eax
push 0x7530
sete cl
push str.DisableProBalanceIfSysIdleThisManyMS
mov byte [edi + 0x3056], cl
call fcn.0044f0f0
mov dword [edi + 0x304c], eax
mov eax, dword [edi + 0x30f0]
add edi, 0x30f0
cmp dword [eax - 4], 1
jle 0x444a7b
mov ecx, dword [eax - 0xc]
push ecx
push edi
call fcn.00401ff0
mov eax, dword [edi]
lea edx, [ebp - 0x954]
push edx
lea ecx, [ebp - 0x92c]
push ecx
push eax
lea eax, [ebp - 0x964]
mov ecx, str.PlayOnRestraint
call fcn.0044efd0
lea eax, [ebp - 0x92c]
call fcn.00406b40
mov esi, dword [ebp - 0x944]
mov eax, dword [esi + 0x30f4]
cmp dword [eax - 4], 1
lea edi, [esi + 0x30f4]
jle 0x444ac9
mov edx, dword [eax - 0xc]
push edx
push edi
call fcn.00401ff0
mov eax, dword [edi]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push eax
lea eax, [ebp - 0x964]
mov ecx, str.PlayOnRestore
call fcn.0044efd0
lea eax, [ebp - 0x92c]
call fcn.00406b40
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.TameOnlyNormal
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3076], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.DoNotLowerPriorityClass
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x3087], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ExcludeServices
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LowerToIdleInsteadOfBelowNormal
mov byte [esi + 0x3072], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3077], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ExcludeForegroundProcesses
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x3078], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.RestrainByAffinity
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.RestraintAffinity
mov byte [esi + 0x3080], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], ebx
je 0x444d59
mov edx, dword [ebp - 0x93c]
push 0x339
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
xor ecx, ecx
add esp, 4
test eax, eax
setne cl
test ecx, ecx
jne 0x444ce6
push 0x80004005
call fcn.004018d0
push eax
mov eax, dword [ebp - 0x92c]
push eax
call fcn.00473ffc
add esp, 8
test eax, eax
jne 0x444d1a
mov eax, dword [ebp - 0x944]
mov dword [eax + 0x3088], 0xfffffffe
mov dword [eax + 0x308c], 0xffffffff
mov esi, eax
xor ebx, ebx
jmp 0x444d65
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 4], 1
jle 0x444d3c
mov ecx, dword [ecx - 0xc]
push ecx
lea edx, [ebp - 0x92c]
push edx
call fcn.00401ff0
mov ecx, dword [ebp - 0x92c]
call fcn.0042c1a0
mov ecx, dword [ebp - 0x944]
mov dword [ecx + 0x3088], eax
mov dword [ecx + 0x308c], edx
mov esi, ecx
xor ebx, ebx
jmp 0x444d65
mov dword [esi + 0x3088], ebx
mov dword [esi + 0x308c], ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.PlaySoundOnRestraint
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3098], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.PlaySoundOnRestore
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
mov eax, dword [esi + 0x2f34]
sete cl
mov byte [esi + 0x3099], cl
cmp eax, ebx
je 0x444e08
cmp eax, 0x20
jbe 0x444dff
mov eax, dword [0x4c5b3c]
jmp 0x444e0d
mov eax, dword [eax*4 + 0x4c5abc]
jmp 0x444e0d
mov eax, 0x46
lea edx, [ebp - 0x954]
push edx
lea ecx, [ebp - 0x964]
push ecx
push eax
push str.TotalProcessorUsageBeforeRestraint
call fcn.0044f0f0
lea edx, [ebp - 0x954]
push edx
mov dword [esi + 0x3038], eax
lea eax, [ebp - 0x964]
push eax
push 0x14
push str.PerProcessUsageBeforeRestraint
call fcn.0044f0f0
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x964]
push edx
push 0x44c
push str.TimeOverQuotaBeforeRestraint
mov dword [esi + 0x301c], eax
call fcn.0044f0f0
mov dword [esi + 0x303c], eax
mov eax, dword [esi + 0x2f34]
cmp eax, ebx
je 0x444e8e
cmp eax, 0x20
jbe 0x444e85
mov eax, dword [0x4c5c3c]
jmp 0x444e93
mov eax, dword [eax*4 + 0x4c5bbc]
jmp 0x444e93
mov eax, 5
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x964]
push edx
push eax
push str.PerProcessUsageForRestore
call fcn.0044f0f0
mov dword [esi + 0x3020], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x964]
push ecx
push 0x1068
push str.MinimumTimeOfRestraint
call fcn.0044f0f0
lea edx, [ebp - 0x954]
push edx
mov dword [esi + 0x3040], eax
lea eax, [ebp - 0x964]
push eax
push ebx
push str.MaximumTimeOfRestraint
call fcn.0044f0f0
mov dword [esi + 0x3044], eax
lea eax, [esi + 0x30fc]
push eax
mov dword [ebp - 0x934], ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x32b0]
mov edx, dword [ecx + 4]
lea edi, [esi + 0x32ac]
push edx
mov ecx, edi
call fcn.0041d480
mov eax, dword [edi + 4]
mov dword [eax + 4], eax
mov eax, dword [edi + 4]
mov dword [eax], eax
mov eax, dword [edi + 4]
mov dword [eax + 8], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, 0x4b37c0
mov dword [edi + 8], ebx
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], ebx
je 0x44508a
push 0x4b1a4c
lea eax, [ebp - 0x930]
push eax
lea ecx, [ebp - 0x92c]
push ecx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x930]
cmp dword [edx - 0xc], 0
je 0x445079
jmp 0x444fa0
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x930]
mov ebx, dword [edx - 0xc]
test ebx, ebx
js 0x445371
mov eax, dword [edx - 8]
mov ecx, 1
sub ecx, dword [edx - 4]
sub eax, ebx
or eax, ecx
jge 0x444fe7
mov eax, ebx
lea ecx, [ebp - 0x930]
call fcn.00401f90
mov edx, dword [ebp - 0x930]
lea eax, [ebx + 1]
push eax
push edx
call fcn.00473d4c
mov eax, dword [ebp - 0x930]
add esp, 8
cmp ebx, dword [eax - 8]
jg 0x445371
mov dword [eax - 0xc], ebx
mov edx, dword [ebp - 0x930]
xor ecx, ecx
mov word [edx + ebx*2], cx
push edi
lea ecx, [ebp - 0x930]
call fcn.0043a6e0
mov byte [eax], 1
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x445047
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x444fa0
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea eax, [esi + 0x30fc]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esi + 0x34d8]
mov ecx, dword [esi + 0x34d4]
lea edi, [esi + 0x34d4]
push eax
push ecx
lea ecx, [ebp - 0x990]
push ecx
push edi
mov dword [ebp - 0x934], ebx
mov dword [ebp - 0x9a4], edi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.OocHardCodedExclusionOverrides
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], ebx
je 0x445216
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x445205
jmp 0x445130
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x930]
mov ebx, dword [edx - 0xc]
test ebx, ebx
js 0x445371
mov eax, dword [edx - 8]
mov ecx, 1
sub ecx, dword [edx - 4]
sub eax, ebx
or eax, ecx
jge 0x445177
mov eax, ebx
lea ecx, [ebp - 0x930]
call fcn.00401f90
mov edx, dword [ebp - 0x930]
lea eax, [ebx + 1]
push eax
push edx
call fcn.00473d4c
mov eax, dword [ebp - 0x930]
add esp, 8
cmp ebx, dword [eax - 8]
jg 0x445371
mov dword [eax - 0xc], ebx
mov edx, dword [ebp - 0x930]
xor ecx, ecx
mov word [edx + ebx*2], cx
lea ecx, [ebp - 0x930]
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4451d3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x445130
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push 0x4aac78
lea eax, [ebp - 0x964]
mov ecx, str.RoundRobinAffinitySelection
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x964]
push eax
push 5
sete cl
push str.PowerSaver_IdleTime
mov byte [esi + 0x3068], cl
call fcn.0044f0f0
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
mov dword [esi + 0x30b4], eax
push str.Power_saver
lea eax, [ebp - 0x964]
mov ecx, str.PowerSaver_TargetGUID
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
cmp dword [eax - 0xc], ebx
je 0x4452eb
cmp byte [esi + 0x2f38], bl
je 0x4452eb
lea edi, [esi + 0x30f8]
lea eax, [ebp - 0x92c]
call fcn.00406b40
lea ecx, [ebp - 0x92c]
push ecx
lea eax, [esi + 0x2f38]
lea ebx, [esi + 0x30b8]
push eax
call fcn.004276a0
test al, al
jne 0x4452e9
xor eax, eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
xor ebx, ebx
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.EnergySaverEnabled
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.EnergySaverForceActivePowerProfile
mov byte [esi + 0x30af], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
jne 0x44537b
mov byte [esi + 0x30ad], 1
jmp 0x445381
push 0x80070057
call fcn.004018d0
mov byte [esi + 0x30ad], bl
lea eax, [ebp - 0x954]
push eax
lea edi, [esi + 0x30ec]
push edi
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.EnergySaverUpPowerProfileName
call fcn.0044efd0
mov ecx, dword [edi]
cmp dword [ecx - 0xc], ebx
jne 0x4453b1
mov byte [esi + 0x30ad], bl
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aac6c
lea eax, [ebp - 0x964]
mov ecx, str.EnergySaverEvents
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.DisableEnergySaverWhenMultimediaRunning
mov byte [esi + 0x30b0], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x30b1], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.DisableEnergySaverWhenGameRunning
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [esi + 0x324c]
sete cl
push eax
mov byte [esi + 0x30b2], cl
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x30cc]
mov ecx, dword [esi + 0x30c8]
lea edi, [esi + 0x30c8]
push eax
push ecx
lea edx, [ebp - 0x990]
push edx
push edi
mov dword [ebp - 0x934], ebx
call fcn.00406fa0
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.PowerSaver_Exclusions
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], ebx
je 0x4455f6
push 0x4b1a4c
lea eax, [ebp - 0x930]
push eax
lea ecx, [ebp - 0x92c]
push ecx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 6
mov edx, dword [ebp - 0x930]
cmp dword [edx - 0xc], 0
je 0x4455e5
nop
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x930]
mov ebx, dword [edx - 0xc]
test ebx, ebx
js 0x445371
mov eax, dword [edx - 8]
mov ecx, 1
sub ecx, dword [edx - 4]
sub eax, ebx
or eax, ecx
jge 0x445557
mov eax, ebx
lea ecx, [ebp - 0x930]
call fcn.00401f90
mov edx, dword [ebp - 0x930]
lea eax, [ebx + 1]
push eax
push edx
call fcn.00473d4c
mov eax, dword [ebp - 0x930]
add esp, 8
cmp ebx, dword [eax - 8]
jg 0x445371
mov dword [eax - 0xc], ebx
mov edx, dword [ebp - 0x930]
xor ecx, ecx
mov word [edx + ebx*2], cx
lea ecx, [ebp - 0x930]
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4455b3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x445510
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea eax, [esi + 0x324c]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.EnergyBooster
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [esi + 0x3294]
sete cl
push eax
mov byte [esi + 0x30ae], cl
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 4]
mov ecx, dword [edi]
push eax
push ecx
lea edx, [ebp - 0x990]
push edx
push edi
mov dword [ebp - 0x934], ebx
call fcn.00406fa0
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DisabledEBProfiles
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], ebx
je 0x44577e
push 0x4b1a4c
lea eax, [ebp - 0x930]
push eax
lea ecx, [ebp - 0x92c]
push ecx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 7
mov edx, dword [ebp - 0x930]
cmp dword [edx - 0xc], 0
je 0x44576d
lea edi, [esi + 0x32bc]
jmp 0x4456e0
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x930]
push eax
push str.Adding__s_to_disabled_profiles_list
call fcn.004261a0
add esp, 8
push edi
lea ecx, [ebp - 0x930]
call fcn.0043a6e0
mov byte [eax], 1
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x44573b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x4456e0
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea eax, [esi + 0x3294]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x964]
push edx
push 0x2710
push str.BalloonTipDuration
call fcn.0044f0f0
mov dword [esi + 0x3030], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.EnableSystemTrayNotification
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3063], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ShowBalloonsForOocPriorityRestoration
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x964]
push eax
push ebx
sete cl
push str.DefaultsLevel
mov byte [esi + 0x3064], cl
call fcn.0044f0f0
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x964]
push edx
push 0x3e8
push str.UpdateSpeedGUI
mov dword [esi + 0x2ffc], eax
call fcn.0044f0f0
mov dword [esi + 0x3028], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x964]
push ecx
push 0x3e8
push str.UpdateSpeedCore
call fcn.0044f0f0
mov ecx, dword [esi + 0x3028]
mov dword [esi + 0x302c], eax
cmp ecx, 0x3e8
jg 0x4458bb
je 0x4458dd
cmp ecx, ebx
je 0x4458dd
cmp ecx, 0xfa
je 0x4458dd
cmp ecx, 0x1f4
jmp 0x4458d1
cmp ecx, 0x7d0
je 0x4458dd
cmp ecx, 0x1388
je 0x4458dd
cmp ecx, 0x2710
je 0x4458dd
mov dword [esi + 0x3028], 0x3e8
cmp eax, 0x3e8
jg 0x4458ff
je 0x445923
cmp eax, 0xfa
jg 0x4458f8
je 0x445923
cmp eax, ebx
je 0x445923
cmp eax, 0x64
jmp 0x445912
cmp eax, 0x1f4
jmp 0x445912
cmp eax, 0x7d0
je 0x445923
cmp eax, 0x1388
je 0x445923
cmp eax, 0x2710
je 0x445923
cmp eax, 0xa
jge 0x445923
mov dword [esi + 0x302c], 0x64
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aac78
lea eax, [ebp - 0x964]
mov ecx, str.DebugLogging
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.MatchWildcardsToPathnames
mov byte [esi + 0x3061], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x964]
push edx
cmp eax, ebx
push ebx
sete al
push str.TrimAllProcessesAtThisIntervalInMs
mov byte [esi + 0x3081], al
call fcn.0044f0f0
mov dword [esi + 0x3090], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x964]
push ecx
push ebx
push str.DelayStartMins
call fcn.0044f0f0
lea edx, [ebp - 0x954]
push edx
mov dword [esi + 0x305c], eax
lea eax, [ebp - 0x964]
push eax
push 0xa
push str.CloseApplicationTimeoutSeconds
mov dword [esi + 0x3050], ebx
call fcn.0044f0f0
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
mov dword [esi + 0x3034], eax
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.ManageOnlyCurrentUser
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x3082], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ForcedMode
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.IgnoreProtectedProcesses
mov byte [esi + 0x3079], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3071], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.BoostForegroundProcess
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
cmp dword [eax - 0xc], ebx
jne 0x445b22
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.BoostForegroundProcess
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x306f], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.BoostForegroundThread
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], ebx
jne 0x445b92
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.BoostForegroundThread
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.SoundsOff
mov byte [esi + 0x3074], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x307c], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ExitOnCloseWindow
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x307f], cl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.AggressivelyTrimProcessLassoWorkingSet
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.DivideCPUPercentThresholdsBySystemCPUCount
mov byte [esi + 0x307b], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete al
lea edi, [esi + 0x32ec]
mov byte [esi + 0x3075], al
mov eax, dword [edi + 4]
mov ecx, dword [edi]
push eax
push ecx
lea ecx, [ebp - 0x990]
push ecx
push edi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.ForegroundBoostExclusions
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x934], ebx
cmp dword [ecx - 0xc], ebx
jne 0x445d2a
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.ForegroundBoostExclusions
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], ebx
je 0x445e56
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x445e45
jmp 0x445d70
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x930]
mov ebx, dword [edx - 0xc]
test ebx, ebx
js 0x445371
mov eax, dword [edx - 8]
mov ecx, 1
sub ecx, dword [edx - 4]
sub eax, ebx
or eax, ecx
jge 0x445db7
mov eax, ebx
lea ecx, [ebp - 0x930]
call fcn.00401f90
mov edx, dword [ebp - 0x930]
lea eax, [ebx + 1]
push eax
push edx
call fcn.00473d4c
mov eax, dword [ebp - 0x930]
add esp, 8
cmp ebx, dword [eax - 8]
jg 0x445371
mov dword [eax - 0xc], ebx
mov edx, dword [ebp - 0x930]
xor ecx, ecx
mov word [edx + ebx*2], cx
lea ecx, [ebp - 0x930]
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x445e13
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x445d70
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.UseStaticIcon
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x3070], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.ShowResponsivnessInTrayInsteadOfProcessorUsage
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LogDisable
mov byte [esi + 0x3073], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x309a], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LogEmitCSV
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x3058], cl
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LogProBalanceParkingChanges
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete dl
mov byte [esi + 0x309f], dl
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogProcessExecutions
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3066], al
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.LogProcessTerminations
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x306c], cl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogProcessesDisallowed
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogDefaultPriorityAdjustments
mov byte [esi + 0x3067], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x3069], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogDefaultAffinityAdjustments
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete cl
lea edx, [ebp - 0x954]
mov byte [esi + 0x306d], cl
push edx
lea eax, [ebp - 0x92c]
push eax
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogOutOfControlProcessesRestored2
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogOutOfControlProcessesRestrained
mov byte [esi + 0x3065], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea ecx, [ebp - 0x954]
push ecx
sete al
lea edx, [ebp - 0x92c]
push edx
mov byte [esi + 0x306b], al
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogInstanceLimitTerminations
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x306e], cl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogPruning
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
sete dl
push str.True
lea eax, [ebp - 0x964]
mov ecx, str.LogPowerProfileChanges
mov byte [esi + 0x309c], dl
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
push 0x4aac6c
push edx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
sete al
lea edi, [esi + 0x32cc]
mov byte [esi + 0x309d], al
mov eax, dword [edi + 4]
mov dword [ebp - 0x990], edi
mov ecx, dword [edi]
push eax
push ecx
lea ecx, [ebp - 0x814]
push ecx
push edi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.AllowedProcesses
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x934], ebx
cmp dword [ecx - 0xc], ebx
je 0x4463a6
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x446395
mov edi, edi
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x930]
mov ebx, dword [edx - 0xc]
test ebx, ebx
js 0x445371
mov eax, dword [edx - 8]
mov ecx, 1
sub ecx, dword [edx - 4]
sub eax, ebx
or eax, ecx
jge 0x446307
mov eax, ebx
lea ecx, [ebp - 0x930]
call fcn.00401f90
mov edx, dword [ebp - 0x930]
lea eax, [ebx + 1]
push eax
push edx
call fcn.00473d4c
mov eax, dword [ebp - 0x930]
add esp, 8
cmp ebx, dword [eax - 8]
jg 0x445371
mov dword [eax - 0xc], ebx
mov edx, dword [ebp - 0x930]
xor ecx, ecx
mov word [edx + ebx*2], cx
lea ecx, [ebp - 0x930]
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446363
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x4462c0
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea eax, [esi + 0x321c]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x32e0]
mov edx, dword [esi + 0x32dc]
lea eax, [esi + 0x32dc]
push ecx
push edx
lea ecx, [ebp - 0x814]
push ecx
push eax
mov dword [ebp - 0x9a0], eax
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DisallowedProcesses
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x934], ebx
cmp dword [ecx - 0xc], ebx
je 0x4464cf
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x4464be
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, dword [ebp - 0x9a0]
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x446490
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x446440
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
xor ebx, ebx
lea eax, [esi + 0x321c]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.ApplyInstanceCountLimitsToAllUsers
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edx, [ebp - 0x954]
push edx
sete cl
lea eax, [ebp - 0x92c]
push eax
mov byte [esi + 0x309b], cl
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.SendTerminationNotificationMessage
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
push 0x4aac6c
push ecx
call fcn.00473ffc
add esp, 8
cmp eax, ebx
lea edi, [esi + 0x3114]
sete dl
push edi
mov byte [esi + 0x307a], dl
mov dword [ebp - 0x96c], edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x3310]
mov edx, dword [esi + 0x330c]
lea eax, [esi + 0x330c]
push ecx
push edx
lea ecx, [ebp - 0x814]
push ecx
push eax
mov dword [ebp - 0x97c], eax
call fcn.00406fa0
lea ebx, [esi + 0x331c]
mov dword [ebp - 0x978], ebx
call fcn.00452dd0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
xor ebx, ebx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, 0x4b4300
mov byte [esi + 0x307e], bl
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x934], ebx
cmp dword [ecx - 0xc], ebx
je 0x4467ca
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x4467b5
lea ecx, [ecx]
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jle 0x44675d
push 0x3b
push eax
call fcn.004756bc
add esp, 8
test eax, eax
je 0x44675d
sub eax, dword [ebp - 0x930]
sar eax, 1
mov edi, eax
test edi, edi
jle 0x44675d
lea edx, [ebp - 0x930]
push edx
xor ecx, ecx
lea edx, [ebp - 0x968]
call fcn.00415880
mov bl, 0xc
lea ecx, [edi + 1]
lea esi, [ebp - 0x940]
lea edx, [ebp - 0x930]
mov byte [ebp - 4], bl
call fcn.00415860
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x968]
cmp dword [eax - 0xc], 0
mov esi, dword [ebp - 0x940]
je 0x446712
mov ecx, dword [ebp - 0x944]
mov eax, 1
mov byte [ecx + 0x307e], al
cmp dword [esi - 4], eax
jle 0x4466e1
mov edx, dword [esi - 0xc]
push edx
lea eax, [ebp - 0x940]
push eax
call fcn.00401ff0
mov esi, dword [ebp - 0x940]
push esi
call fcn.00474765
mov edi, dword [ebp - 0x97c]
add esp, 4
lea ecx, [ebp - 0x968]
mov dword [ebp - 0x980], eax
call fcn.00406c00
mov edi, dword [ebp - 0x978]
lea eax, [ebp - 0x980]
call fcn.00452d40
lea eax, [esi - 0x10]
mov byte [ebp - 4], bl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446731
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x968]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446757
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x944]
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446783
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xb
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x446620
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov edi, dword [ebp - 0x96c]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea edi, [esi + 0x312c]
push edi
mov dword [ebp - 0x96c], edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x3330]
mov edx, dword [esi + 0x332c]
lea eax, [esi + 0x332c]
push ecx
push edx
lea ecx, [ebp - 0x814]
push ecx
push eax
mov dword [ebp - 0x97c], eax
call fcn.00406fa0
lea ebx, [esi + 0x333c]
mov dword [ebp - 0x978], ebx
call fcn.00452dd0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
xor ebx, ebx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.ProcessThrottles
mov byte [esi + 0x3085], bl
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x934], ebx
cmp dword [ecx - 0xc], ebx
je 0x446a3e
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x446a29
mov edi, edi
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jle 0x4469d1
push 0x3b
push eax
call fcn.004756bc
add esp, 8
test eax, eax
je 0x4469d1
sub eax, dword [ebp - 0x930]
sar eax, 1
mov edi, eax
test edi, edi
jle 0x4469d1
lea edx, [ebp - 0x930]
push edx
xor ecx, ecx
lea edx, [ebp - 0x968]
call fcn.00415880
lea ecx, [edi + 1]
lea esi, [ebp - 0x940]
lea edx, [ebp - 0x930]
mov byte [ebp - 4], 0xf
call fcn.00415860
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x968]
cmp dword [eax - 0xc], 0
mov esi, dword [ebp - 0x940]
je 0x446985
mov ebx, 1
cmp dword [esi - 4], ebx
jle 0x446944
mov ecx, dword [esi - 0xc]
push ecx
lea edx, [ebp - 0x940]
push edx
call fcn.00401ff0
mov esi, dword [ebp - 0x940]
push esi
call fcn.00474765
add esp, 4
mov dword [ebp - 0x980], eax
test eax, eax
jle 0x446985
mov eax, dword [ebp - 0x944]
mov edi, dword [ebp - 0x97c]
lea ecx, [ebp - 0x968]
mov byte [eax + 0x3085], bl
call fcn.00406c00
mov edi, dword [ebp - 0x978]
lea eax, [ebp - 0x980]
call fcn.00452d40
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0xf
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4469a5
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x968]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4469cb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x944]
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4469f7
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x446890
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov edi, dword [ebp - 0x96c]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea edi, [esi + 0x3144]
push edi
mov dword [ebp - 0x974], edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ebx, [esi + 0x336c]
mov dword [ebp - 0x978], ebx
call fcn.00452dd0
lea ebx, [esi + 0x335c]
mov dword [ebp - 0x988], ebx
call fcn.004318b0
mov ecx, dword [esi + 0x3350]
mov edx, dword [esi + 0x334c]
lea eax, [esi + 0x334c]
push ecx
push edx
lea ecx, [ebp - 0x814]
push ecx
push eax
mov dword [ebp - 0x97c], eax
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.OneTimeProcessThrottles
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x446d6b
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x446d56
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jle 0x446cfe
push 0x3b
push eax
call fcn.004756bc
add esp, 8
test eax, eax
je 0x446cfe
sub eax, dword [ebp - 0x930]
sar eax, 1
mov edi, eax
test edi, edi
jle 0x446cfe
lea edx, [ebp - 0x930]
push edx
xor ecx, ecx
lea edx, [ebp - 0x96c]
call fcn.00415880
lea ecx, [edi + 1]
lea esi, [ebp - 0x940]
lea edx, [ebp - 0x930]
mov byte [ebp - 4], 0x12
call fcn.00415860
mov bl, 0x13
mov byte [ebp - 4], bl
mov esi, dword [ebp - 0x940]
cmp dword [esi - 0xc], 0
jle 0x446cb2
push 0x3b
push esi
call fcn.004756bc
add esp, 8
test eax, eax
je 0x446cb2
sub eax, esi
sar eax, 1
mov edi, eax
js 0x446cb2
lea ecx, [edi + 1]
lea esi, [ebp - 0x968]
lea edx, [ebp - 0x940]
call fcn.00415860
mov esi, edi
lea edi, [ebp - 0x940]
mov byte [ebp - 4], 0x14
call fcn.00417bf0
mov eax, dword [ebp - 0x96c]
cmp dword [eax - 0xc], 0
je 0x446c87
mov esi, dword [ebp - 0x940]
cmp dword [esi - 0xc], 0
je 0x446c8d
mov ecx, dword [ebp - 0x968]
cmp dword [ecx - 0xc], 0
je 0x446c8d
mov esi, edi
call fcn.00402b80
push eax
call fcn.00474736
add esp, 4
lea esi, [ebp - 0x968]
mov dword [ebp - 0x984], eax
call fcn.00402b80
push eax
call fcn.00474765
add esp, 4
mov dword [ebp - 0x980], eax
test eax, eax
jle 0x446c87
mov edx, dword [ebp - 0x944]
mov edi, dword [ebp - 0x97c]
lea ecx, [ebp - 0x96c]
mov byte [edx + 0x3085], 1
call fcn.00406c00
mov edi, dword [ebp - 0x978]
lea eax, [ebp - 0x980]
call fcn.00452d40
mov edi, dword [ebp - 0x988]
lea eax, [ebp - 0x984]
call fcn.00431820
mov esi, dword [ebp - 0x940]
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x968]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446cb2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0x12
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446cd2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x96c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446cf8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x944]
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446d24
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x446b10
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov edi, dword [ebp - 0x974]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [esi + 0x315c]
push eax
mov dword [ebp - 0x974], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esi + 0x3380]
mov ecx, dword [esi + 0x337c]
lea edi, [esi + 0x337c]
push eax
push ecx
lea ecx, [ebp - 0x814]
push ecx
push edi
mov dword [ebp - 0x980], edi
call fcn.00406fa0
lea ebx, [esi + 0x338c]
mov dword [ebp - 0x96c], ebx
call fcn.00452dd0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultPriorities
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x446f3a
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
mov byte [ebp - 0x935], 1
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x15
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x446f2b
mov bl, byte [ebp - 0x935]
test bl, bl
je 0x446e69
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, dword [ebp - 0x980]
call fcn.00406c00
jmp 0x446eb0
cmp dword [ecx - 4], 1
jle 0x446e85
mov ecx, dword [ecx - 0xc]
push ecx
lea edx, [ebp - 0x930]
push edx
call fcn.00401ff0
mov ecx, dword [ebp - 0x930]
call fcn.0043e4d0
mov dword [ebp - 0x97c], eax
cmp eax, 0xffffffff
jne 0x446e9f
mov dword [ebp - 0x97c], 0x20
mov edi, dword [ebp - 0x96c]
lea eax, [ebp - 0x97c]
call fcn.00452d40
test bl, bl
sete al
mov byte [ebp - 0x935], al
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x446ee1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x15
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
jne 0x446e45
mov edi, dword [ebp - 0x980]
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov eax, dword [ebp - 0x96c]
mov ecx, dword [eax + 4]
mov edx, dword [edi + 4]
sub ecx, dword [eax]
sub edx, dword [edi]
xor ecx, edx
test ecx, 0xfffffffc
je 0x446fa6
mov edx, dword [ebp - 0x93c]
push 0xfb
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
mov ebx, dword [ebp - 0x944]
add esp, 4
push eax
call fcn.004664a0
mov eax, dword [edi + 4]
mov ecx, dword [edi]
add esp, 4
push eax
push ecx
lea eax, [ebp - 0x814]
push eax
push edi
call fcn.00406fa0
mov ebx, dword [ebp - 0x96c]
call fcn.00452dd0
mov esi, dword [ebp - 0x944]
mov ecx, dword [ebp - 0x974]
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [esi + 0x3264]
push eax
mov dword [ebp - 0x940], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi + 0x3480]
mov edx, dword [esi + 0x347c]
lea eax, [esi + 0x347c]
push ecx
push edx
lea edx, [ebp - 0x814]
push edx
push eax
mov dword [ebp - 0x96c], eax
call fcn.00406fa0
lea ebx, [esi + 0x348c]
mov dword [ebp - 0x968], ebx
call fcn.004318b0
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultIOPriorities
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x44716a
push 0x4b1a4c
lea eax, [ebp - 0x930]
push eax
lea ecx, [ebp - 0x92c]
push ecx
lea ebx, [ebp - 0x934]
mov byte [ebp - 0x935], 1
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x16
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
je 0x44715b
mov bl, byte [ebp - 0x935]
test bl, bl
je 0x4470aa
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, dword [ebp - 0x96c]
call fcn.00406c00
jmp 0x4470e6
cmp dword [eax - 4], 1
jle 0x4470c6
mov edx, dword [eax - 0xc]
push edx
lea eax, [ebp - 0x930]
push eax
call fcn.00401ff0
mov eax, dword [ebp - 0x930]
push eax
call fcn.00474765
mov edi, dword [ebp - 0x968]
mov dword [ebp - 0x974], eax
add esp, 4
lea eax, [ebp - 0x974]
call fcn.00431820
test bl, bl
sete cl
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
mov byte [ebp - 0x935], cl
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x447117
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x16
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x447086
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov eax, dword [ebp - 0x940]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call fcn.00452400
mov edi, dword [ebp - 0x944]
lea eax, [edi + 0x327c]
push eax
mov dword [ebp - 0x978], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultMemoryPriorities
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
cmp dword [eax - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x447314
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
mov byte [ebp - 0x935], 1
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x17
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
je 0x447305
lea ecx, [ecx]
mov bl, byte [ebp - 0x935]
test bl, bl
je 0x44724e
lea edi, [ebp - 0x930]
call fcn.00403810
mov edi, dword [ebp - 0x944]
add edi, 0x349c
lea ecx, [ebp - 0x930]
call fcn.00406c00
jmp 0x44728a
cmp dword [eax - 4], 1
jle 0x44726a
mov eax, dword [eax - 0xc]
push eax
lea ecx, [ebp - 0x930]
push ecx
call fcn.00401ff0
mov eax, dword [ebp - 0x930]
push eax
call fcn.00474765
mov dword [ebp - 0x974], eax
add esp, 4
add edi, 0x34ac
lea eax, [ebp - 0x974]
call fcn.00452d40
test bl, bl
sete dl
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
mov byte [ebp - 0x935], dl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4472bb
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x17
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
mov edi, dword [ebp - 0x944]
jne 0x447220
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov eax, dword [edi + 0x34b0]
mov ecx, dword [edi + 0x34a0]
sub eax, dword [edi + 0x34ac]
sub ecx, dword [edi + 0x349c]
xor eax, ecx
test eax, 0xfffffffc
je 0x447361
mov ecx, dword [edi + 0x34a0]
mov edx, dword [edi + 0x349c]
lea eax, [edi + 0x349c]
push ecx
push edx
lea edx, [ebp - 0x814]
push edx
push eax
call fcn.00406fa0
lea ebx, [edi + 0x34ac]
call fcn.00452dd0
mov eax, dword [ebp - 0x978]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0x940]
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebp - 0x968]
mov edx, dword [eax + 4]
sub edx, dword [eax]
mov eax, dword [ebp - 0x96c]
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
xor edx, ecx
test edx, 0xfffffffc
je 0x4473e9
mov edx, dword [ebp - 0x93c]
push 0x2b1
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
add esp, 4
push eax
mov ebx, edi
call fcn.004664a0
mov eax, dword [ebp - 0x96c]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
add esp, 4
push ecx
push edx
lea edx, [ebp - 0x814]
push edx
push eax
call fcn.00406fa0
mov ebx, dword [ebp - 0x968]
call fcn.004318b0
mov eax, dword [ebp - 0x940]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [ebp - 0x978]
push ecx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edx, dword [edi + 0x34b0]
mov eax, dword [edi + 0x34a0]
sub edx, dword [edi + 0x34ac]
sub eax, dword [edi + 0x349c]
xor edx, eax
test edx, 0xfffffffc
je 0x44747a
mov edx, dword [ebp - 0x93c]
push 0x3bc
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
add esp, 4
push eax
mov ebx, edi
call fcn.004664a0
mov ecx, dword [edi + 0x34a0]
mov edx, dword [edi + 0x349c]
lea eax, [edi + 0x349c]
add esp, 4
push ecx
push edx
lea ecx, [ebp - 0x814]
push ecx
push eax
call fcn.00406fa0
lea ebx, [edi + 0x34ac]
call fcn.00452dd0
mov edx, dword [ebp - 0x978]
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [edi + 0x3174]
push eax
mov dword [ebp - 0x974], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [edi + 0x34ac]
push eax
lea eax, [edi + 0x349c]
push eax
call fcn.0043eb70
mov eax, dword [edi + 0x33a0]
mov ecx, dword [edi + 0x339c]
lea esi, [edi + 0x339c]
add esp, 8
push eax
push ecx
lea eax, [ebp - 0x814]
push eax
push esi
mov dword [ebp - 0x978], esi
call fcn.00406fa0
lea ebx, [edi + 0x33ac]
mov dword [ebp - 0x96c], ebx
call fcn.00452f10
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultAffinities
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
cmp dword [eax - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x447683
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
mov byte [ebp - 0x935], 1
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x18
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x447668
mov bl, byte [ebp - 0x935]
test bl, bl
je 0x447594
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, dword [ebp - 0x978]
call fcn.00406c00
jmp 0x4475ed
mov esi, 1
cmp dword [ecx - 4], esi
jle 0x4475b4
mov eax, dword [ecx - 0xc]
push eax
lea ecx, [ebp - 0x930]
push ecx
call fcn.00401ff0
mov ecx, dword [ebp - 0x930]
call fcn.0042c1a0
mov dword [ebp - 0x818], eax
and eax, edx
mov dword [ebp - 0x814], edx
cmp eax, 0xffffffff
jne 0x4475dc
mov dword [ebp - 0x818], esi
mov dword [ebp - 0x814], 0
mov edi, dword [ebp - 0x96c]
lea eax, [ebp - 0x818]
call fcn.00452e70
test bl, bl
sete dl
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
mov byte [ebp - 0x935], dl
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x44761e
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x18
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
jne 0x447570
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov esi, dword [ebp - 0x978]
mov ebx, dword [ebp - 0x96c]
mov eax, dword [ebx + 4]
sub eax, dword [ebx]
mov ecx, dword [esi + 4]
sub ecx, dword [esi]
sar eax, 1
xor eax, ecx
test eax, 0xfffffffc
je 0x4476e6
mov edx, dword [ebp - 0x93c]
push 0xfc
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
add esp, 4
push eax
mov ebx, edi
call fcn.004664a0
mov eax, dword [ebp - 0x978]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
add esp, 4
push ecx
push edx
lea edx, [ebp - 0x814]
push edx
push eax
call fcn.00406fa0
mov ebx, dword [ebp - 0x96c]
call fcn.00452f10
mov eax, dword [ebp - 0x974]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [edi + 0x3234]
push eax
mov dword [ebp - 0x974], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x3450]
mov ecx, dword [edi + 0x344c]
lea esi, [edi + 0x344c]
push eax
push ecx
lea ecx, [ebp - 0x814]
push ecx
push esi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DisableThreadPriorityBoostBoost
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x44782f
push 0x4b1a4c
lea edx, [ebp - 0x930]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 0xc], 0
je 0x447820
jmp 0x4477a0
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4477ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x4477a0
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DisableThreadPriorityBoost
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
cmp dword [eax - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x44792f
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
je 0x447920
mov edi, edi
lea ebx, [ebp - 0x930]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x930]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4478ec
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x930]
cmp dword [eax - 0xc], 0
jne 0x4478a0
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 3
call fcn.00401ea0
mov ecx, dword [ebp - 0x974]
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [edi + 0x34bc]
push eax
mov dword [ebp - 0x974], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [edi + 0x3460]
mov edx, dword [edi + 0x345c]
lea eax, [edi + 0x345c]
push ecx
push edx
lea edx, [ebp - 0x814]
push edx
push eax
mov dword [ebp - 0x980], eax
call fcn.00406fa0
lea esi, [edi + 0x346c]
mov dword [ebp - 0x97c], esi
call fcn.00453180
mov eax, dword [0x4c41fc]
mov edx, dword [eax + 0xc]
mov ecx, 0x4c41fc
call edx
add eax, 0x10
mov dword [ebp - 0x994], eax
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x994]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultPowerSchemesEx
mov byte [ebp - 4], 0x1b
call fcn.0044efd0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.DefaultPowerSchemes
call fcn.0044efd0
mov eax, dword [ebp - 0x994]
cmp dword [eax - 0xc], 0
je 0x447a28
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
je 0x447a18
lea edx, [ebp - 0x92c]
push edx
mov edx, 0x4b1a4c
call fcn.00417b80
mov eax, dword [ebp - 0x994]
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ebx, [ebp - 0x92c]
call fcn.00418c50
mov eax, dword [ebp - 0x92c]
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x934], 0
test eax, eax
je 0x447c48
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x1c
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
mov eax, dword [ecx - 0xc]
test eax, eax
je 0x447c39
js 0x447aab
push 0x4b1ad0
push ecx
call fcn.00474087
add esp, 8
test eax, eax
je 0x447aab
sub eax, dword [ebp - 0x930]
sar eax, 1
mov esi, eax
cmp esi, 0xffffffff
jne 0x447b03
mov edx, dword [ebp - 0x93c]
push 0x3bc
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
add esp, 4
push eax
mov ebx, edi
call fcn.004664a0
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
add esp, 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447bf4
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
jmp 0x447bf4
lea ecx, [ebp - 0x930]
push ecx
mov eax, esi
xor ecx, ecx
lea edx, [ebp - 0x940]
call fcn.00415880
lea edi, [ebp - 0x940]
mov byte [ebp - 4], 0x1d
call fcn.00403810
lea ecx, [esi + 1]
lea esi, [ebp - 0x978]
lea edx, [ebp - 0x930]
call fcn.00415860
mov eax, dword [ebp - 0x944]
mov edx, esi
push edx
add eax, 0x2f38
push eax
lea ebx, [ebp - 0x820]
mov byte [ebp - 4], 0x1e
call fcn.004276a0
test al, al
je 0x447de7
mov ecx, edi
mov edi, dword [ebp - 0x980]
call fcn.00406c00
mov edi, dword [ebp - 0x97c]
mov eax, ebx
call fcn.00428f00
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x978]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447ba2
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x940]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447bc8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447bee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, dword [ebp - 0x944]
push 0x4b1a4c
lea ecx, [ebp - 0x930]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x930]
mov byte [ebp - 4], 0x1c
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x930]
mov eax, dword [ecx - 0xc]
test eax, eax
jne 0x447a88
lea eax, [ebp - 0x930]
mov byte [ebp - 4], 0x1b
call fcn.00401ea0
mov eax, dword [ebp - 0x97c]
mov ecx, dword [ebp - 0x980]
push eax
push ecx
call fcn.0043e930
mov edx, dword [ebp - 0x974]
add esp, 8
push edx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [edi + 0x31bc]
push eax
mov dword [ebp - 0x814], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x33e0]
mov ecx, dword [edi + 0x33dc]
lea esi, [edi + 0x33dc]
push eax
push ecx
lea eax, [ebp - 0x974]
push eax
push esi
mov dword [ebp - 0x980], esi
call fcn.00406fa0
mov ecx, dword [edi + 0x33f0]
mov edx, dword [edi + 0x33ec]
lea eax, [edi + 0x33ec]
push ecx
push edx
lea ecx, [ebp - 0x974]
push ecx
push eax
mov dword [ebp - 0x96c], eax
call fcn.00406fa0
lea ebx, [edi + 0x33fc]
mov dword [ebp - 0x97c], ebx
call fcn.00406e00
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.KeepRunningProcesses
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov eax, dword [ecx - 0xc]
mov dword [ebp - 0x934], 0
test eax, eax
je 0x4481cc
push 0x4b1a4c
lea edx, [ebp - 0x940]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x940]
mov byte [ebp - 4], 0x1f
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov ecx, dword [ebp - 0x940]
cmp dword [ecx - 0xc], 0
je 0x4481b7
lea edi, [ebp - 0x940]
call fcn.00403810
mov eax, dword [ebp - 0x940]
cmp dword [eax - 0xc], 0
jl 0x447d9b
push 0x4b1ad0
push eax
call fcn.00474087
add esp, 8
test eax, eax
je 0x447d9b
sub eax, dword [ebp - 0x940]
sar eax, 1
mov ebx, eax
cmp ebx, 0xffffffff
jne 0x447e91
mov edx, dword [ebp - 0x93c]
push 0x1be
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
mov ebx, dword [ebp - 0x944]
add esp, 4
push eax
call fcn.004664a0
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x940]
add eax, 0xfffffff0
add esp, 4
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jmp 0x448161
mov edx, dword [ebp - 0x93c]
push 0x3bc
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
mov ebx, dword [ebp - 0x944]
add esp, 4
push eax
call fcn.004664a0
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0x978]
add eax, 0xfffffff0
add esp, 4
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447e3a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x940]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447e60
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x930]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x447bee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov edi, ebx
jmp 0x447bf4
lea ecx, [ebp - 0x940]
push ecx
mov eax, ebx
xor ecx, ecx
lea edx, [ebp - 0x930]
call fcn.00415880
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x930]
cmp dword [ecx - 4], 1
jle 0x447ecd
mov edx, dword [ecx - 0xc]
push edx
lea eax, [ebp - 0x930]
push eax
call fcn.00401ff0
mov ecx, dword [ebp - 0x930]
lea edx, [ebp - 0x968]
push edx
call fcn.00402ba0
mov byte [ebp - 4], 0x21
mov edi, dword [ebp - 0x980]
lea ecx, [ebp - 0x968]
call fcn.00406c00
mov ecx, dword [ebp - 0x940]
mov eax, dword [ecx - 0xc]
lea esi, [ebx + 1]
test esi, esi
js 0x447f2c
cmp esi, eax
jg 0x447f2c
lea eax, [ecx + esi*2]
push 0x4b1ad0
push eax
call fcn.00474087
mov ecx, dword [ebp - 0x940]
add esp, 8
test eax, eax
je 0x447f2c
sub eax, ecx
sar eax, 1
mov dword [ebp - 0x978], eax
cmp eax, 0xffffffff
jne 0x447f3f
mov ecx, dword [ecx - 0xc]
dec ecx
mov dword [ebp - 0x978], ecx
mov byte [ebp - 0x935], 0
jmp 0x447f46
mov byte [ebp - 0x935], 1
mov eax, dword [ebp - 0x978]
lea ecx, [ebp - 0x940]
sub eax, ebx
push ecx
dec eax
mov ecx, esi
lea edx, [ebp - 0x974]
call fcn.00415880
lea edi, [ebp - 0x930]
mov byte [ebp - 4], 0x22
call fcn.00406b40
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x974]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x447f98
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x930]
cmp dword [esi - 4], 1
jle 0x447fba
mov ecx, dword [esi - 0xc]
push ecx
lea edx, [ebp - 0x930]
push edx
call fcn.00401ff0
mov esi, dword [ebp - 0x930]
lea eax, [ebp - 0x924]
mov dword [ebp - 0x928], eax
test esi, esi
jne 0x447fd2
mov dword [ebp - 0x928], esi
jmp 0x448016
mov ecx, dword [ebp - 0x930]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ebx, eax
lea edi, [ebp - 0x924]
lea ecx, [ebx + 1]
lea esi, [ebp - 0x928]
call fcn.004075f0
mov edx, dword [ebp - 0x928]
mov ecx, dword [ebp - 0x930]
lea eax, [ebx + ebx + 2]
push edx
mov edx, eax
call fcn.004062d0
mov esi, dword [ebp - 0x930]
add esp, 4
mov byte [ebp - 4], 0x23
mov edx, dword [ebp - 0x928]
lea edi, [ebp - 0x968]
call fcn.00402c40
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x928]
lea ecx, [ebp - 0x924]
cmp eax, ecx
je 0x448048
push eax
call fcn.00473a61
add esp, 4
mov edi, dword [ebp - 0x96c]
lea ecx, [ebp - 0x968]
call fcn.00406c00
cmp byte [ebp - 0x935], 0
je 0x4480e6
mov ecx, dword [ebp - 0x978]
inc ecx
lea esi, [ebp - 0x988]
lea edx, [ebp - 0x940]
call fcn.00415860
lea edi, [ebp - 0x930]
mov byte [ebp - 4], 0x24
call fcn.00406b40
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x988]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4480b3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [ebp - 0x930]
cmp dword [esi - 4], 1
jle 0x4480d5
mov ecx, dword [esi - 0xc]
push ecx
lea edx, [ebp - 0x930]
push edx
call fcn.00401ff0
mov esi, dword [ebp - 0x930]
push esi
call fcn.00474765
add esp, 4
mov dword [ebp - 0x984], eax
jmp 0x4480f0
mov dword [ebp - 0x984], 0
mov edi, dword [ebp - 0x97c]
lea eax, [ebp - 0x984]
call fcn.00452f40
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x968]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x448127
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea eax, [esi - 0x10]
mov byte [ebp - 4], 0x1f
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x448147
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x940]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x44816d
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x940]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
lea ebx, [ebp - 0x940]
mov byte [ebp - 4], 0x1f
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x940]
cmp dword [eax - 0xc], 0
jne 0x447d5f
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x940]
mov byte [ebp - 4], 0x1b
call fcn.00401ea0
mov esi, dword [ebp - 0x980]
mov eax, dword [ebp - 0x96c]
mov ecx, dword [eax + 4]
mov edx, dword [esi + 4]
sub ecx, dword [eax]
sub edx, dword [esi]
xor ecx, edx
test ecx, 0xfffffffc
je 0x44824e
mov edx, dword [ebp - 0x93c]
push 0x1be
mov ebx, 0x3ff
lea esi, [ebp - 0x810]
call fcn.004341a0
add esp, 4
push eax
mov ebx, edi
call fcn.004664a0
mov eax, dword [ebp - 0x96c]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
add esp, 4
push ecx
push edx
lea ecx, [ebp - 0x974]
push ecx
push eax
call fcn.00406fa0
mov eax, dword [ebp - 0x980]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push ecx
push edx
lea edx, [ebp - 0x974]
push edx
push eax
call fcn.00406fa0
mov ebx, dword [ebp - 0x97c]
call fcn.00406e00
mov eax, dword [ebp - 0x814]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0x9e8]
call fcn.0040b5b0
mov byte [ebp - 4], 0x25
mov edx, dword [0x4c41fc]
mov eax, dword [edx + 0xc]
mov ecx, 0x4c41fc
call eax
add eax, 0x10
mov dword [ebp - 0x970], eax
mov byte [ebp - 4], 0x26
mov edx, dword [0x4c41fc]
mov eax, dword [edx + 0xc]
mov ecx, 0x4c41fc
call eax
add eax, 0x10
mov dword [ebp - 0x98c], eax
lea esi, [edi + 0x3204]
mov byte [ebp - 4], 0x27
push esi
mov dword [ebp - 0x980], esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x3300]
mov ecx, dword [edi + 0x32fc]
lea edx, [edi + 0x32fc]
push eax
push ecx
lea ecx, [ebp - 0x814]
push ecx
push edx
mov dword [ebp - 0x984], edx
call fcn.004534b0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.WatchdogRules2
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
mov eax, dword [ecx - 0xc]
test eax, eax
je 0x448642
lea edi, [ebp - 0x92c]
call fcn.00403810
mov ebx, edi
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov dword [ebp - 0x814], 0
mov edx, 0x4aab50
lea edi, [ebp - 0x9c4]
call fcn.00402c40
mov edx, 0x4aab50
lea edi, [ebp - 0x9c0]
call fcn.00402c40
push 0x4b1a4c
lea edx, [ebp - 0x974]
push edx
lea eax, [ebp - 0x92c]
xor esi, esi
push eax
lea ebx, [ebp - 0x814]
mov dword [ebp - 0x97c], esi
call fcn.00429b00
lea edi, [ebp - 0x98c]
mov byte [ebp - 4], 0x28
call fcn.00406b40
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x974]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4483b0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0x98c]
cmp dword [ecx - 0xc], 0
je 0x448636
lea ebx, [ebp - 0x98c]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov edx, dword [ebp - 0x98c]
cmp dword [edx - 0xc], 0
je 0x448335
push 0x4b1ad0
lea eax, [ebp - 0x988]
push eax
lea ecx, [ebp - 0x98c]
push ecx
lea ebx, [ebp - 0x97c]
call fcn.00429b00
lea edi, [ebp - 0x970]
mov byte [ebp - 4], 0x29
call fcn.00406b40
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x988]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x448435
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
cmp dword [ebp - 0x97c], 0xffffffff
je 0x448335
lea ebx, [ebp - 0x970]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
mov eax, dword [ebp - 0x970]
mov ecx, dword [eax - 0xc]
test ecx, ecx
je 0x448483
js 0x445371
cmp word [eax], 0x2d
jne 0x448483
mov edx, 0x4aab50
lea edi, [ebp - 0x970]
call fcn.00402c40
mov eax, dword [ebp - 0x970]
cmp esi, 9
ja case.default.0x44848c
jmp dword [esi*4 + 0x448ca8]
lea edi, [ebp - 0x9e8]
jmp 0x4485fa
cmp dword [eax - 4], 1
jle 0x4484ba
mov ecx, dword [eax - 0xc]
push ecx
lea edx, [ebp - 0x970]
push edx
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9e0], eax
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x4484ea
mov eax, dword [eax - 0xc]
push eax
lea ecx, [ebp - 0x970]
push ecx
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9dc], eax
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x44851a
mov edx, dword [eax - 0xc]
push edx
lea eax, [ebp - 0x970]
push eax
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9d8], eax
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x44854a
mov ecx, dword [eax - 0xc]
push ecx
lea edx, [ebp - 0x970]
push edx
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9d4], eax
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x44857a
mov eax, dword [eax - 0xc]
push eax
lea ecx, [ebp - 0x970]
push ecx
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
cdq
add esp, 4
mov dword [ebp - 0x9d0], eax
mov dword [ebp - 0x9cc], edx
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x4485ae
mov edx, dword [eax - 0xc]
push edx
lea eax, [ebp - 0x970]
push eax
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9c8], eax
jmp case.default.0x44848c
cmp dword [eax - 4], 1
jle 0x4485db
mov ecx, dword [eax - 0xc]
push ecx
lea edx, [ebp - 0x970]
push edx
call fcn.00401ff0
mov eax, dword [ebp - 0x970]
push eax
call fcn.00474736
add esp, 4
mov dword [ebp - 0x9bc], eax
jmp case.default.0x44848c
lea edi, [ebp - 0x9c4]
jmp 0x4485fa
lea edi, [ebp - 0x9c0]
lea eax, [ebp - 0x970]
call fcn.00406b40
inc esi
cmp esi, 0xb
jg 0x448620
mov eax, dword [ebp - 0x98c]
cmp dword [eax - 0xc], 0
jne 0x4483e2
jmp 0x448335
mov ebx, dword [ebp - 0x984]
lea ecx, [ebp - 0x9e8]
call fcn.00452a70
jmp 0x448335
mov edi, dword [ebp - 0x944]
mov esi, dword [ebp - 0x980]
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [ebp - 0x954]
push ecx
lea edx, [ebp - 0x92c]
push edx
push str.False
lea eax, [ebp - 0x964]
mov ecx, str.HighPerfModeEnabled
call fcn.0044efd0
mov eax, dword [ebp - 0x92c]
push 0x4aac6c
push eax
call fcn.00473ffc
add esp, 8
test eax, eax
lea ebx, [edi + 0x318c]
sete cl
push ebx
mov byte [edi + 0x3084], cl
mov dword [ebp - 0x814], ebx
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x33c0]
mov ecx, dword [edi + 0x33bc]
lea esi, [edi + 0x33bc]
push eax
push ecx
lea edx, [ebp - 0x988]
push edx
push esi
mov dword [ebp - 0x974], esi
call fcn.00406fa0
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.AutomaticHighPerfModeProcessPaths
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], 0
jne 0x448717
lea eax, [ebp - 0x954]
push eax
lea ecx, [ebp - 0x92c]
push ecx
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.AutomaticHighPerfModeProcessPaths
call fcn.0044efd0
mov edx, dword [ebp - 0x92c]
cmp dword [edx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x4487f8
push 0x4b1a4c
lea eax, [ebp - 0x93c]
push eax
lea ecx, [ebp - 0x92c]
push ecx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2a
mov edx, dword [ebp - 0x93c]
cmp dword [edx - 0xc], 0
je 0x4487e3
lea ebx, [ebp - 0x93c]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x93c]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x93c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4487af
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x93c]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2a
mov eax, dword [ebp - 0x93c]
cmp dword [eax - 0xc], 0
jne 0x448763
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x93c]
mov byte [ebp - 4], 0x27
call fcn.00401ea0
mov ebx, dword [ebp - 0x814]
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [edi + 0x31d4]
push eax
mov dword [ebp - 0x814], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [edi + 0x3420]
mov ecx, dword [edi + 0x341c]
lea esi, [edi + 0x341c]
push eax
push ecx
lea ecx, [ebp - 0x988]
push ecx
push esi
mov dword [ebp - 0x984], esi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, 0x4b46b4
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x44893f
push 0x4b1a4c
lea edx, [ebp - 0x93c]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x93c]
cmp dword [ecx - 0xc], 0
je 0x448930
jmp 0x4488b0
lea ebx, [ebp - 0x93c]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x93c]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x93c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4488fc
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x93c]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2b
mov eax, dword [ebp - 0x93c]
cmp dword [eax - 0xc], 0
jne 0x4488b0
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x93c]
mov byte [ebp - 4], 0x27
call fcn.00401ea0
mov eax, dword [edi + 0x3410]
mov ecx, dword [edi + 0x340c]
lea esi, [edi + 0x340c]
push eax
push ecx
lea ecx, [ebp - 0x97c]
push ecx
push esi
mov dword [ebp - 0x988], esi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.Display
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x448a64
push 0x4b1a4c
lea edx, [ebp - 0x93c]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x93c]
cmp dword [ecx - 0xc], 0
je 0x448a55
lea ebx, [ebp - 0x93c]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x93c]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x93c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x448a21
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x93c]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0x93c]
cmp dword [eax - 0xc], 0
jne 0x4489d5
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x93c]
mov byte [ebp - 4], 0x27
call fcn.00401ea0
mov eax, dword [edi + 0x3430]
mov ecx, dword [edi + 0x342c]
lea esi, [edi + 0x342c]
push eax
push ecx
lea ecx, [ebp - 0x97c]
push ecx
push esi
call fcn.00406fa0
lea edx, [ebp - 0x954]
push edx
lea eax, [ebp - 0x92c]
push eax
push 0x4aab50
lea eax, [ebp - 0x964]
mov ecx, str.AllowDisplaysPreventPC
call fcn.0044efd0
mov ecx, dword [ebp - 0x92c]
cmp dword [ecx - 0xc], 0
mov dword [ebp - 0x934], 0
je 0x448b83
push 0x4b1a4c
lea edx, [ebp - 0x93c]
push edx
lea eax, [ebp - 0x92c]
push eax
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x93c]
cmp dword [ecx - 0xc], 0
je 0x448b74
lea ebx, [ebp - 0x93c]
call fcn.00416a10
mov ebx, eax
call fcn.00416a90
lea edi, [ebp - 0x93c]
call fcn.00403810
mov ecx, edi
mov edi, esi
call fcn.00406c00
mov byte [ebp - 4], 0x27
mov eax, dword [ebp - 0x93c]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x448b40
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0x4b1a4c
lea ecx, [ebp - 0x93c]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea ebx, [ebp - 0x934]
call fcn.00429b00
mov byte [ebp - 4], 0x2d
mov eax, dword [ebp - 0x93c]
cmp dword [eax - 0xc], 0
jne 0x448af4
mov edi, dword [ebp - 0x944]
lea eax, [ebp - 0x93c]
mov byte [ebp - 4], 0x27
call fcn.00401ea0
mov ecx, dword [ebp - 0x814]
push ecx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [ebp - 0x944]
add edi, 0x30dc
mov ecx, ebx
call fcn.00449640
lea edi, [ebx + 0x30e0]
mov ecx, ebx
call fcn.00449640
mov edx, str.iologvr.log
mov eax, edi
call fcn.00415360
mov ecx, dword [ebp - 0x990]
call fcn.0043ed80
mov ecx, dword [ebp - 0x9a0]
call fcn.0043ed80
mov ecx, dword [ebp - 0x9a4]
call fcn.0043ed80
mov ecx, dword [ebp - 0x974]
call fcn.0043ed80
mov ecx, dword [ebp - 0x988]
call fcn.0043ed80
mov ecx, dword [ebp - 0x984]
call fcn.0043ed80
mov byte [ebx + 0x3018], 1
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebp - 0x998]
push edx
mov dword [ebx + 0x3000], eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea eax, [ebp - 0x98c]
call fcn.00401ea0
lea eax, [ebp - 0x970]
call fcn.00401ea0
lea esi, [ebp - 0x9e8]
call fcn.0040b610
lea eax, [ebp - 0x994]
call fcn.00401ea0
lea eax, [ebp - 0x92c]
call fcn.00401ea0
lea ebx, [ebp - 0x954]
call fcn.00416bc0
lea ebx, [ebp - 0x964]
call fcn.00416bc0
lea ebx, [ebp - 0x9b4]
call fcn.00416bc0
mov al, 1
jmp 0x448c8b
mov eax, dword [ebp - 0x968]
push eax
call fcn.00472958
add esp, 4
xor al, al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00474985
mov esp, ebp
pop ebp
ret