Function at 0x42e030
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x138
mov eax, dword [0x4d044c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x400
mov edi, edx
mov esi, ecx
call fcn.00460a14
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x42e06e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004606ac
mov esp, ebp
pop ebp
ret
mov edx, edi
mov ecx, esi
call fcn.0042de70
push str.FeatureStatus
push str.CommonInfo
push str.SoftwareK7_ComputingK7TotalSecurity
push 0x4c1ff4
mov edi, eax
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x11c], 0
lea eax, [ebp - 0x108]
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
push 0x104
mov byte [ebx], 0
push eax
mov byte [ebx + 0x104], 0
call dword [sym.imp.SHLWAPI.dll_wnsprintfA]
add esp, 0x18
lea eax, [ebp - 0x108]
push 0
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0045e320
mov dword [ebp - 0x110], eax
test eax, eax
je 0x42e135
push esi
lea eax, [ebp - 0x108]
push str.FSSReqInfo_08X
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [ebp - 0x108]
push 0x104
push ebx
push eax
push dword [ebp - 0x110]
call fcn.0045e550
push dword [ebp - 0x110]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp dword [ebx], 0x5843374b
jne 0x42e178
lea eax, [ebx + 0x104]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x114]
push eax
lea eax, [ebp - 0x11c]
push eax
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x124]
push eax
lea eax, [ebx + 5]
push str.d_d_d_d_d_s
push eax
call fcn.0045fb20
add esp, 0x20
cmp byte [0x4d3fac], 0
je 0x42e199
push edi
push esi
push dword [0x4d3e34]
push 0xffff
call dword [sym.imp.USER32.dll_PostMessageA]
jmp 0x42e3b3
mov eax, dword [0x4d3aec]
cmp eax, 2
je 0x42e1a8
cmp eax, 0xffffffff
jne 0x42e1cf
cmp dword [0x4d0dd0], 0
je 0x42e1cf
cmp esi, 0x3e9
jne 0x42e1c0
call fcn.00415bc0
jmp 0x42e1ef
cmp esi, 0x7d2
jne 0x42e1cf
call fcn.00415c70
jmp 0x42e1ef
cmp esi, 0x3ea
jne 0x42e1e0
mov ecx, edi
call fcn.0042d8f0
jmp 0x42e1ef
cmp esi, 0xfa1
jne 0x42e1ef
mov ecx, edi
call fcn.0042d6c0
push dword [ebp - 0x114]
mov edx, edi
mov ecx, esi
call fcn.004175b0
mov edx, dword [0x4d3af4]
xor ebx, ebx
mov dword [ebp - 0x10c], ebx
test edx, edx
je 0x42e249
mov ecx, 0x4d3b08
mov dword [ebp - 0x10c], edx
nop dword [eax + eax]
cmp dword [ecx - 4], 1
jne 0x42e241
cmp esi, dword [ecx - 8]
jne 0x42e231
mov dword [ecx], edi
mov eax, edi
jmp 0x42e233
mov eax, dword [ecx]
cmp eax, 5
je 0x42e240
add eax, 0xfffffff6
cmp eax, 1
ja 0x42e241
inc ebx
add ecx, 0xc
sub edx, 1
jne 0x42e220
cmp ebx, dword [0x4d3af0]
jb 0x42e2aa
cmp dword [0x4d3aec], 1
jne 0x42e2aa
cmp dword [0x4d59d4], 0
mov dword [0x4d3aec], 2
jne 0x42e2aa
lea eax, [ebp - 0x10c]
push eax
push 0
push 0
push 0x42f3d0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x4d59d4], eax
test eax, eax
je 0x42e2aa
push 0xfffffffffffffff1
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
push 0xff03
push dword [0x4d3e10]
call dword [sym.imp.USER32.dll_KillTimer]
push 0x4000
push 8
mov dword [ebp - 0x110], 0
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapAlloc]
mov ebx, eax
test ebx, ebx
je 0x42e3b3
lea edx, [ebp - 0x110]
mov ecx, ebx
call fcn.00449df0
cmp byte [0x4d4c92], 0
mov ecx, dword [0x4d3e34]
mov dword [ebp - 0x138], 0xffff
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x130], esi
mov dword [ebp - 0x12c], edi
jne 0x42e30f
call fcn.00449ae0
mov eax, dword [0x4d5a14]
xor edi, edi
test eax, eax
je 0x42e31e
call eax
mov edi, eax
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x10c], 4
push eax
lea eax, [ebp - 0x128]
mov edx, 0x10010
push eax
lea eax, [ebp - 0x138]
mov ecx, edi
push 0x10
push eax
call fcn.00449e90
mov eax, dword [ebp - 0x110]
add esp, 0x10
xor esi, esi
test eax, eax
je 0x42e3a0
nop word [eax + eax]
mov ecx, dword [ebx + esi*4]
cmp edi, ecx
je 0x42e39b
lea eax, [ebp - 0x10c]
mov dword [ebp - 0x10c], 4
push eax
lea eax, [ebp - 0x128]
mov edx, 0x10010
push eax
lea eax, [ebp - 0x138]
push 0x10
push eax
call fcn.00449e90
mov eax, dword [ebp - 0x110]
add esp, 0x10
inc esi
cmp esi, eax
jb 0x42e360
push ebx
push 0x10000
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [ebp - 4]
mov eax, 1
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004606ac
mov esp, ebp
pop ebp
ret