Function at 0x10002a90
Capabilities:
Get number of processors
Terminate process

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff4
mov eax, dword [0x10054dfc]
mov eax, dword [ebp - 8]
mov eax, 0x10
cmp dword [ebp + 0xa8], esi
jb 0x10002ac7
mov eax, dword [0x10054eec]
mov eax, dword [ebp - 8]
add eax, eax
mov dword [ebp - 0xc], eax
mov dword [0x10054d40], edi
mov dword [0x10054e70], ecx
mov edi, dword [ebp - 8]
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
mov eax, 8
push eax
mov esi, dword [0x10054f64]
sub esi, eax
push esi
call sub.USER32.dll_GetDlgItem
mov eax, dword [0x10054fec]
mov ecx, dword [ebp - 8]
mov dx, 0x9c
mov ecx, dword [ebp - 8]
mov eax, dword [0x10054ce4]
mov ax, 0x10
cmp dword [0x10054d54], eax
jl 0x10002b2e
mov eax, dword [ebp - 8]
mov ecx, dword [0x10054f84]
xor edx, dword [ebp - 8]
mov ax, 0x20
sub ecx, edx
mov dword [ebp - 8], ecx
mov dword [0x10054fec], esi
mov dword [ebp - 8], edi
mov dword [0x10054ff4], esi
mov dword [0x10054e74], ecx
mov esi, dword [ebp - 8]
add dword [0x10054eac], 0x27
push 4
push dword fs:[0x30]
sub dword [ebp - 0x18], 0x12192
call sub.kernel32.dll_IsBadReadPtr
cmp eax, 0
je 0x10002ba6
push dword [ebp - 8]
call sub.kernel32.dll_InitializeCriticalSection
mov eax, dword [0x10054e1c]
mov eax, dword [ebp - 8]
and edx, eax
mov eax, dword [ebp - 0xc]
mov eax, 0x10
test esi, esi
jb 0x10002b95
mov eax, dword [0x10054d18]
mov edi, dword [ebp - 0xc]
mov ax, 0x80
mov eax, dword [0x10055020]
xor edi, edi
mov dword [ebp - 0xc], eax
mov dword [0x10054f64], ecx
mov dword [0x100550d8], eax
mov dword [ebp - 0xc], eax
mov edx, dword [ebp - 0xc]
sbb eax, dword [0x10054d4c]
push 0
call dword [sym.imp.kernel32.dll_ExitProcess]
mov eax, dword [0x10054d2c]
or eax, dword [ebp - 8]
mov ax, 1
mov eax, dword [ebp - 0xc]
mov ecx, dword [0x10054e30]
sub ecx, eax
cmp eax, dword [0x10055018]
ja 0x10002be7
mov eax, dword [0x10054d44]
mov eax, dword [ebp - 0xc]
mov ax, 0xdc
sub eax, eax
mov dword [ebp - 8], eax
mov dword [0x10054fd8], eax
mov dword [0x10054e84], edx
add eax, dword [0x10054dac]
mov edi, dword [0x10054ec4]
mov eax, dword [0x10054d78]
mov eax, dword [ebp - 0xc]
add ecx, edx
mov ecx, dword [ebp - 8]
mov eax, dword [0x10054e80]
sub edi, edx
cmp dword [0x10054d4c], eax
jb 0x10002c2f
mov eax, dword [ebp - 0xc]
mov esi, dword [0x10054d58]
mov esi, dword [ebp - 0xc]
sub eax, edi
mov eax, dword [ebp - 0xc]
mov dword [ebp - 8], esi
mov dword [0x10055074], esi
mov dword [0x10055048], edx
mov dword [0x10054e8c], ecx
push dword [0x100550dc]
call sub.USER32.dll_GetSysColorBrush
mov eax, dword [0x10055078]
mov esi, dword [ebp - 8]
sub edi, eax
mov eax, dword [ebp - 0xc]
sub edi, eax
cmp dword [0x10054f10], 0x20
jne 0x10002c80
mov dword [0x10054db0], edi
and eax, dword [ebp - 0xc]
mov ecx, dword [0x10054d64]
mov esi, dword [ebp - 8]
sub eax, ecx
mov eax, dword [0x10054d60]
sbb dword [ebp - 8], eax
mov dword [0x10054d78], eax
mov dword [ebp - 0xc], eax
and dword [0x10054d0c], 0xff0000ff
mov dword [0x10054e70], ecx
mov dword [0x10054f80], eax
mov dword [ebp - 8], eax
mov dword [0x10054fe8], eax
push 1
push edx
call sub.USER32.dll_GetDlgItem
mov eax, dword [0x10054e08]
mov edi, dword [ebp - 8]
add eax, ecx
mov edx, dword [0x10055030]
sub edi, eax
cmp eax, dword [ebp + 2]
ja 0x10002cd2
mov dword [0x10054cec], ecx
mov eax, dword [0x10055030]
mov edx, dword [ebp - 8]
sub esi, esi
add edi, eax
mov dword [ebp - 8], eax
mov dword [0x10054e8c], esi
mov dword [0x10055058], eax
mov esi, dword [0x10054e48]
mov dword [0x10055030], eax
mov eax, dword [ebp - 0xc]
push eax
call sub.USER32.dll_IsCharUpperA
mov eax, dword [0x10054ecc]
mov eax, dword [ebp - 8]
mov dx, 4
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10054f7c]
sub eax, edi
cmp dword [0x10054e0c], eax
jl 0x10002d29
mov dword [ebp - 8], eax
sbb edi, dword [0x10054de8]
mov eax, dword [ebp - 0xc]
mov ax, 4
mov eax, dword [0x10054f68]
mov ecx, 0xf5
mov dword [ebp - 8], edi
mov dword [0x10055094], eax
mov ecx, dword [ebp - 8]
mov esi, dword [0x10054d38]
mov edi, dword [ebp - 8]
mov dword [ebp - 0xc], eax
lea edx, [ebp - 0xc]
mov dword [0x10055024], eax
push edx
call sub.USER32.dll_GetWindowTextLengthA
mov eax, dword [0x10054e18]
mov ecx, dword [ebp - 8]
mov ax, 0xb6
cmp esi, dword [ebp + 0xc4]
jne 0x10002d75
mov eax, dword [0x100550c4]
mov edi, dword [ebp - 8]
mov edx, 0x80
mov edx, dword [ebp - 0xc]
mov esi, dword [0x10054e6c]
mov dword [ebp - 8], edi
mov dword [0x10054ce4], eax
mov dword [ebp - 8], esi
mov edi, dword [0x10054fe4]
mov eax, dword [ebp - 0xc]
add eax, eax
cmp eax, esi
jne 0x10002db0
mov esi, dword [0x10054ce4]
mov eax, dword [0x10054ffc]
mov eax, dword [ebp - 0xc]
add eax, ecx
mov eax, dword [0x10054cec]
mov edi, 8
mov dword [ebp - 0xc], edx
mov dword [0x100550dc], esi
mov dword [0x10055080], esi
mov esi, dword [sym.imp.USER32.dll_GetMenu]
mov dword [0x100550a4], esi
push 4
push 0x2000
mov dword [ebp - 8], edx
push 0xe00
push 0
call sub.kernel32.dll_VirtualAlloc
mov ecx, dword [0x10054ce4]
mov eax, dword [ebp - 8]
add edx, eax
cmp eax, 1
je 0x10002e00
mov ecx, dword [0x10055074]
mov edx, dword [ebp - 0xc]
sub ecx, edi
add ecx, edi
mov dword [ebp - 8], eax
mov dword [0x10054e74], esi
mov dword [ebp - 0xc], eax
mov dword [0x10054db4], eax
mov dword [0x10054d78], eax
xor dword [ebp - 0xc], eax
push dword [0x10054f8c]
push eax
call sub.USER32.dll_GetDlgItem
mov eax, dword [0x10054de0]
mov esi, dword [ebp - 0xc]
sub eax, eax
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10054fc0]
cmp dword [0x10054fcc], 0x40
je 0x10002e55
mov dword [ebp - 0xc], edx
mov eax, dword [0x100550a0]
mov eax, dword [ebp - 0xc]
add edx, eax
sbb edx, dword [ebp - 0xc]
mov edi, dword [0x10054ce4]
mov dword [ebp - 8], ecx
mov dword [0x10054ddc], eax
mov dword [0x10054db0], eax
mov dword [ebp - 8], edx
mov eax, dword [0x10054ce4]
push dword [ebp - 8]
call sub.USER32.dll_GetSysColorBrush
mov ecx, dword [0x10054ec4]
mov eax, dword [ebp - 0xc]
mov di, 0x8b
mov esi, dword [ebp - 0xc]
add edx, eax
cmp dword [0x10054f98], eax
jg 0x10002e9a
mov edi, dword [0x10054f5c]
mov eax, dword [0x10054ef0]
mov eax, dword [ebp - 8]
sub edx, ecx
mov esi, dword [ebp - 8]
sub edi, edx
mov dword [ebp - 8], eax
mov dword [0x10054db4], ecx
mov dword [ebp - 0xc], esi
lea eax, [ebp - 0xc]
push eax
call sub.USER32.dll_IsCharUpperA
mov eax, dword [0x10054e8c]
mov esi, dword [ebp - 0xc]
mov ecx, 0x85
sub edi, ecx
cmp esi, dword [ebp + 2]
jg 0x10002ed9
or edx, dword [0x10054dbc]
mov edi, dword [ebp - 0xc]
sub eax, eax
mov eax, 0x13
mov dword [ebp - 0xc], eax
mov dword [0x10055010], edx
mov dword [0x10054e58], esi
mov eax, dword [0x10055028]
mov edx, dword [0x10054d08]
push 4
push 0x4000
mov dword [0x10054fb8], eax
push 0xe00
push 0
call sub.kernel32.dll_VirtualAlloc
mov edx, dword [0x10054d84]
mov edx, dword [ebp - 0xc]
mov eax, 0xc9
mov edi, dword [ebp - 0xc]
mov ax, 0x9e
test eax, eax
jne 0x10002f3c
mov dword [0x10054db0], edi
mov esi, dword [0x10054dcc]
mov esi, dword [ebp - 0xc]
add eax, edx
mov eax, dword [0x10054de8]
mov dword [ebp - 8], edx
mov dword [0x10054cf8], eax
mov dword [ebp - 0xc], esi
mov dword [ebp - 0xc], edx
mov edi, dword [ebp - 8]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 8]
call sub.USER32.dll_GetFocus
mov eax, dword [0x10054fe4]
mov edx, dword [ebp - 8]
add eax, esi
mov eax, dword [ebp - 0xc]
mov dx, 8
test eax, eax
jg 0x10002f86
mov dword [0x10054f58], ecx
mov eax, dword [0x10054d68]
mov eax, dword [ebp - 0xc]
mov eax, 0xf7
mov ecx, 0x12
mov dword [ebp - 0xc], eax
mov dword [0x10054ce4], esi
mov esi, dword [ebp - 8]
mov dword [0x10054d38], esi
mov dword [0x10054fa0], ecx
mov dword [0x10055028], edi
mov dword [0x10054f78], edi
push 4
mov dword [ebp - 0xc], ecx
mov dword [0x10054eb8], eax
push 0x2000
mov dword [0x10054f04], eax
push 0x900
push 0
call sub.kernel32.dll_VirtualAlloc
mov eax, dword [0x10054e04]
mov edx, dword [ebp - 0xc]
mov ax, 0xf5
mov eax, dword [0x10054e50]
cmp dword [0x10054dac], eax
je 0x10002ffc
mov eax, dword [ebp - 8]
and edx, dword [0x10054ef0]
mov eax, dword [0x10054ee8]
sub esi, dword [ebp - 0xc]
add ecx, edx
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
mov dword [0x10055008], edi
mov dword [0x10054d08], edi
mov dword [0x10054f8c], ecx
mov dword [ebp - 0xc], eax
push 4
push 0x4000
push 0x100
push 0
call sub.kernel32.dll_VirtualAlloc
mov eax, dword [0x10054fc4]
mov esi, dword [ebp - 0xc]
add eax, eax
test ecx, ecx
jp 0x1000304b
mov edi, dword [ebp - 8]
mov edx, dword [0x10054e9c]
mov eax, dword [ebp - 0xc]
mov eax, 0x7b
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10055050]
mov dword [ebp - 0xc], eax
mov dword [0x10054ed0], esi
mov dword [0x10054f4c], ecx
mov esi, dword [ebp - 8]
mov dword [0x10054e9c], eax
push 4
mov dword [ebp - 0xc], eax
mov dword [0x10054e7c], eax
push 0x8000
mov dword [ebp - 0xc], edx
push 0x500
mov dword [0x10055098], eax
push 0
call sub.kernel32.dll_VirtualAlloc
mov edx, dword [0x10054e40]
mov eax, dword [ebp - 8]
add edx, eax
mov edx, dword [ebp - 8]
mov eax, 0x3f
cmp eax, dword [0x10054f68]
jne 0x100030b6
mov dword [ebp - 0xc], eax
mov esi, dword [0x100550bc]
mov eax, dword [ebp - 0xc]
sub edi, eax
xor eax, dword [0x10054eb8]
mov dword [ebp - 8], eax
mov dword [0x10054f88], edx
mov dword [ebp - 8], eax
mov dword [0x10054fd8], eax
mov ecx, dword [ebp - 8]
mov eax, dword [0x1005509c]
mov eax, dword [ebp - 8]
push eax
call sub.USER32.dll_IsWindowEnabled
mov eax, dword [0x10054d3c]
mov ecx, dword [ebp - 0xc]
add edx, ecx
mov eax, dword [0x10054d54]
test edi, edi
jo 0x100030f5
mov eax, dword [0x10054ce8]
mov eax, dword [ebp - 0xc]
mov eax, 0x40
mov edi, dword [ebp - 8]
mov eax, dword [0x10054f9c]
mov dword [ebp - 0xc], edi
mov dword [0x10054e80], ecx
mov eax, dword [ebp - 0xc]
mov dword [0x10054dc8], eax
push 4
call sub.USER32.dll_IsCharUpperA
mov ecx, dword [0x10054fe4]
mov esi, dword [ebp - 8]
sub esi, eax
mov eax, dword [ebp - 0xc]
cmp dword [0x10054de0], 0x7b
jnp 0x10003134
mov edx, dword [0x10054ce4]
mov edi, dword [ebp - 0xc]
sub eax, eax
mov ecx, dword [0x10054fb0]
mov dword [ebp - 8], eax
mov dword [0x10054eac], eax
mov dword [ebp - 0xc], eax
mov dword [0x10054f74], edx
push 2
mov dword [0x10054e7c], edi
push 0x2000
push 0xf00
push 0
call sub.kernel32.dll_VirtualAlloc
mov ecx, dword [0x1005509c]
mov eax, dword [ebp - 8]
mov edi, 1
cmp eax, eax
jb 0x10003189
mov eax, dword [0x10054ce4]
mov esi, dword [ebp - 8]
add eax, eax
mov eax, dword [ebp - 8]
mov dword [ebp - 8], edx
mov dword [0x100550b8], eax
mov dword [0x100550e0], edi
mov dword [0x10054fd4], esi
mov edi, dword [ebp - 8]
call sub.USER32.dll_GetFocus
mov eax, dword [0x10054f64]
mov eax, dword [ebp - 8]
mov eax, 0x40
mov edx, dword [ebp - 0xc]
sub eax, esi
test edi, edi
ja 0x100031d9
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 8]
mov esi, dword [0x10054fd0]
adc eax, dword [ebp - 0xc]
mov ax, 0xf5
mov esi, dword [0x10054dac]
mov ecx, 0x80
mov dword [ebp - 8], eax
mov dword [0x10054f1c], ecx
mov dword [ebp - 0xc], edi
mov dword [0x10054e94], eax
mov ecx, dword [ebp - 8]
mov dword [0x10054dc8], eax
mov eax, dword [ebp - 0xc]
or dword [0x10054ce4], 0xffff
push dword [0x10055058]
call sub.USER32.dll_GetWindowTextLengthA
mov edi, dword [0x10054e1c]
mov eax, dword [ebp - 8]
sub ecx, edx
mov ecx, 0xb8
cmp dword [0x10054ed0], 0x10
jae 0x1000323c
mov edx, dword [0x100550b0]
mov eax, dword [0x10054f74]
mov edi, dword [ebp - 0xc]
mov di, 0x20
mov eax, dword [ebp - 8]
mov eax, dword [0x10054ce4]
add edi, eax
mov dword [ebp - 0xc], eax
mov dword [0x10054ee8], eax
mov dword [ebp - 0xc], ecx
mov edi, dword [0x10054ffc]
add dword [0x10054f20], 8
push dword [0x10055068]
call sub.USER32.dll_IsWindowEnabled
mov esi, dword [0x1005502c]
mov edi, dword [ebp - 8]
mov ax, 2
cmp dword [0x10054d7c], 0x10
jne 0x10003290
mov eax, dword [0x10054ec4]
mov eax, dword [ebp - 0xc]
mov dx, 0xe3
mov edi, dword [ebp - 0xc]
xor eax, dword [0x100550e0]
mov di, 0xff
mov dword [ebp - 0xc], edi
mov dword [0x10054e44], ecx
mov dword [0x10054d68], eax
mov dword [0x10054e44], eax
mov dword [ebp - 8], ecx
push dword [0x10054f74]
call sub.USER32.dll_GetWindowTextLengthA
mov ecx, dword [0x10054d4c]
mov eax, dword [ebp - 0xc]
mov ecx, 2
mov eax, dword [0x10054e28]
cmp dword [ebp + 9], edi
jbe 0x100032d6
mov dword [ebp - 0xc], edi
mov eax, dword [0x10054dcc]
mov esi, dword [ebp - 8]
add eax, eax
mov eax, dword [ebp - 8]
sub eax, eax
mov dword [ebp - 0xc], eax
mov dword [0x10054e08], eax
mov esi, dword [0x10054fd8]
call sub.USER32.dll_GetDesktopWindow
mov eax, dword [0x10054d58]
mov eax, dword [ebp - 0xc]
sub esi, edx
sub ecx, edi
cmp edi, dword [0x10054f88]
jg 0x10003317
mov eax, dword [0x10054ce8]
mov edi, dword [ebp - 8]
mov eax, 0x80
mov dword [ebp - 8], esi
mov dword [0x10054ce4], edx
mov dword [ebp - 0xc], ecx
mov dword [0x10054d9c], edx
mov edx, dword [0x10054dc8]
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov dword [0x100550a8], eax
push dword [ebp - 0xc]
call sub.USER32.dll_GetWindowTextLengthA
mov eax, dword [0x10054f80]
sub ecx, dword [ebp - 0xc]
mov ecx, 0xd5
mov esi, dword [0x10054d98]
cmp eax, 0
ja 0x10003364
mov edx, dword [ebp - 8]
mov eax, dword [0x10054d64]
mov edx, dword [ebp - 8]
add eax, ecx
mov eax, dword [0x10054dc8]
mov dword [ebp - 0xc], eax
sub dword [0x10054d8c], 0x26
mov dword [ebp - 0xc], esi
lea esi, [ebp - 8]
mov dword [ebp - 0xc], eax
lea ecx, [ebp - 0xc]
push ecx
call sub.USER32.dll_IsCharUpperA
mov eax, dword [0x10054d4c]
mov esi, dword [ebp - 8]
mov edx, 0xd5
mov eax, dword [0x10054ecc]
cmp eax, edx
jne 0x100033a7
mov eax, dword [0x10054dd4]
mov esi, dword [0x10054de0]
mov eax, dword [ebp - 8]
add eax, ecx
mov dword [ebp - 0xc], eax
mov dword [0x10054ea8], eax
mov dword [ebp - 8], eax
mov dword [0x10054fbc], edx
mov eax, dword [ebp - 0xc]
call sub.USER32.dll_GetDesktopWindow
mov eax, dword [0x10054d40]
mov eax, dword [ebp - 0xc]
sub eax, eax
mov edi, dword [ebp - 0xc]
test eax, eax
jp 0x100033e9
mov dword [0x10055054], eax
mov eax, dword [0x10054fd0]
mov eax, dword [ebp - 8]
add esi, eax
or eax, dword [ebp - 8]
mov eax, dword [0x10054fbc]
sub eax, eax
mov dword [ebp - 8], eax
mov dword [0x10054d30], eax
mov dword [ebp - 0xc], eax
mov dword [0x10054f84], eax
mov ecx, dword [ebp - 8]
and ecx, eax
push ecx
call sub.USER32.dll_GetSysColorBrush
mov edx, dword [0x100550c0]
mov eax, dword [ebp - 8]
mov eax, 2
add edx, edx
cmp edx, dword [ebp + 4]
jl 0x10003429
mov dword [ebp - 8], edi
mov ecx, dword [0x10054ce4]
mov ecx, dword [ebp - 0xc]
add edx, eax
sub eax, esi
mov dword [ebp - 0xc], eax
mov dword [0x10054d60], eax
mov dword [0x10054e1c], eax
mov esi, dword [ebp - 8]
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], edi
push 2
push 0x4000
push 0x600
push 0
call sub.kernel32.dll_VirtualAlloc
mov esi, dword [0x10054e14]
mov ecx, dword [ebp - 0xc]
sub edi, eax
mov ecx, dword [0x10054ea4]
xor eax, eax
cmp dword [0x10054ee4], 0x80
jl 0x1000348f
mov eax, dword [ebp - 0xc]
mov ecx, dword [0x10054d40]
mov eax, dword [0x10054ef4]
mov eax, dword [ebp - 0xc]
add eax, ecx
mov edi, dword [0x10054e58]
sub esi, edx
mov dword [ebp - 0xc], edi
mov dword [0x10054fc0], eax
mov dword [ebp - 8], eax
mov dword [0x1005506c], eax
mov dword [ebp - 8], eax
call sub.USER32.dll_GetDesktopWindow
mov edx, dword [0x10054fe8]
mov eax, dword [ebp - 0xc]
sub eax, eax
mov esi, dword [ebp - 0xc]
mov ecx, dword [0x10054ff4]
sub edx, edi
cmp edx, 0
jnp 0x100034ce
mov eax, dword [ebp - 8]
mov eax, dword [0x10054e5c]
mov eax, dword [ebp - 0xc]
add eax, eax
mov dword [ebp - 0xc], esi
mov dword [0x10054d1c], ecx
mov dword [0x100550d0], edi
mov edi, dword [ebp - 8]
mov edi, dword [ebp - 8]
mov edi, dword [ebp - 8]
push edi
call sub.USER32.dll_IsCharUpperA
mov esi, dword [0x10055010]
mov esi, dword [ebp - 0xc]
mov ax, 0x60
mov esi, dword [ebp - 8]
mov eax, dword [0x10054e2c]
mov eax, 8
cmp dword [0x10054cf0], eax
jne 0x10003520
mov esi, dword [0x10054fb0]
mov eax, dword [ebp - 0xc]
mov dx, 2
mov eax, dword [0x10054f18]
mov dx, 1
mov dword [ebp - 0xc], edi
mov dword [0x10054d68], eax
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
push eax
call sub.USER32.dll_GetWindowTextLengthA
mov eax, dword [0x10054e88]
mov edi, dword [ebp - 0xc]
sub ecx, edx
mov eax, dword [ebp - 8]
mov ecx, dword [0x10054ce4]
mov ecx, 0x7a
cmp esi, 1
ja 0x10003574
mov dword [ebp - 8], esi
mov ecx, dword [0x10054d88]
mov esi, dword [ebp - 0xc]
mov eax, 0x5c
mov eax, dword [0x10054ce4]
mov dword [ebp - 8], esi
mov dword [0x10054d74], edi
mov dword [0x10054e68], esi
mov eax, dword [ebp - 0xc]
mov dword [0x10054f5c], eax
mov eax, dword [0x10054eec]
sub eax, eax
push eax
call sub.USER32.dll_IsCharUpperA
and eax, dword [0x10054e30]
mov eax, dword [ebp - 8]
add eax, esi
mov eax, dword [ebp - 0xc]
mov ecx, dword [0x10054de0]
sub eax, eax
cmp edi, 1
jb 0x100035d5
mov dword [0x10054ef0], eax
mov edx, dword [0x10054f88]
mov eax, dword [ebp - 8]
mov di, 0x20
mov eax, dword [0x10054ff4]
add eax, ecx
mov dword [ebp - 0xc], eax
mov dword [0x10054ec4], ecx
mov dword [0x10054fa0], edi
mov dword [0x10055010], edi
mov dword [0x10054e70], edi
sbb eax, dword [0x10054e60]
sub eax, eax
push eax
push dword [0x10054ff0]
call sub.USER32.dll_GetDlgItem
mov esi, dword [0x10055094]
mov edi, dword [ebp - 0xc]
mov dx, 0x64
mov eax, dword [ebp - 0xc]
mov dx, 0x80
cmp edx, dword [0x10055068]
jne 0x10003632
mov edi, dword [0x10054e70]
mov dword [0x10055064], edx
sub eax, dword [0x10054d38]
mov edx, dword [ebp - 0xc]
sub edi, edi
mov edi, dword [ebp - 0xc]
sub ecx, edx
mov dword [ebp - 8], esi
or dword [0x10054dd8], esi
mov dword [ebp - 8], esi
mov dword [0x10055038], eax
push 0x80
call sub.USER32.dll_GetSysColorBrush
mov edi, dword [0x10054f1c]
mov eax, dword [ebp - 8]
add eax, eax
mov ecx, dword [0x10055040]
add eax, eax
cmp esi, 1
jne 0x10003677
or dword [ebp - 8], 0x33
mov edx, dword [0x10054ce4]
mov eax, dword [0x10054cf4]
mov eax, dword [ebp - 0xc]
mov ax, 0x80
sub eax, eax
mov dword [ebp - 0xc], esi
mov dword [0x100550c0], eax
mov dword [ebp - 0xc], eax
mov dword [0x100550c0], eax
mov dword [ebp - 0xc], eax
call sub.USER32.dll_GetDesktopWindow
mov edx, dword [0x10055050]
mov ecx, dword [ebp - 0xc]
sub eax, eax
mov eax, dword [0x10054d04]
cmp edx, eax
jl 0x100036be
mov eax, dword [0x10054cf8]
mov edi, dword [ebp - 8]
mov eax, 4
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10054f2c]
mov dword [ebp - 0xc], eax
mov dword [0x10054e28], eax
mov dword [0x10054ea8], edx
mov dword [ebp - 0xc], eax
mov dword [0x10054ce4], edi
push 4
mov dword [0x10054f44], ecx
push 0x4000
push 0xd00
mov dword [ebp - 8], esi
push 0
call sub.kernel32.dll_VirtualAlloc
mov edi, dword [0x10054de8]
mov eax, dword [ebp - 0xc]
mov ax, 0
cmp dword [0x10054cec], 4
jl 0x10003721
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10054fcc]
mov ecx, dword [ebp - 8]
sub eax, esi
mov dx, 1
mov dword [ebp - 0xc], esi
mov dword [0x10054e7c], esi
mov dword [ebp - 0xc], eax
and dword [0x10055010], edx
mov dword [0x10054ed0], eax
mov eax, dword [ebp - 0xc]
mov dword [0x10054f38], esi
lea eax, [ebp - 0xc]
push eax
call sub.USER32.dll_IsCharUpperA
mov ecx, dword [0x10054efc]
mov eax, dword [ebp - 8]
mov ax, 0xbd
sub eax, ecx
cmp eax, eax
jbe 0x10003766
mov esi, dword [0x10054dd4]
mov eax, dword [ebp - 0xc]
and edi, eax
mov dword [ebp - 8], eax
mov dword [0x10054f84], esi
mov dword [ebp - 0xc], edi
mov dword [0x10054fb0], edx
or dword [0x10054f3c], ecx
mov dword [0x10054ce4], edx
mov esi, dword [ebp - 8]
lea eax, [ebp - 0xc]
push eax
call sub.USER32.dll_GetSysColorBrush
mov eax, dword [0x10054ce4]
mov eax, dword [ebp - 0xc]
add eax, eax
cmp eax, dword [0x10054d80]
jae 0x100037ae
mov dword [ebp - 0xc], edx
mov edi, dword [0x100550d8]
mov eax, dword [ebp - 8]
sub ecx, edx
mov eax, dword [0x10055018]
add eax, eax
mov dword [ebp - 8], ecx
mov dword [0x10054ce4], edi
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 8]
mov dword [0x10055038], eax
mov ecx, dword [ebp - 8]
call fcn.100027c0
mov eax, dword [0x10054e38]
mov esi, dword [ebp - 0xc]
mov ecx, 0x20
mov eax, 0xdb
cmp eax, 1
jl 0x100037e8
and esi, dword [ebp - 8]
adc esi, dword [0x100550dc]
mov edi, dword [ebp - 8]
sub ecx, esi
mov dword [ebp - 0xc], ecx
mov dword [0x10055058], eax
mov dword [ebp - 8], esi
mov edi, dword [0x10054e04]
call sub.USER32.dll_GetFocus
mov edi, dword [0x10054d38]
mov esi, dword [ebp - 0xc]
add ecx, eax
mov edx, dword [ebp - 8]
test eax, eax
jne 0x10003825
mov ecx, dword [0x10054d04]
mov eax, dword [0x10054e20]
mov esi, dword [ebp - 0xc]
mov ax, 0x7a
mov edx, dword [ebp - 8]
mov dword [ebp - 8], esi
mov dword [0x10054d68], eax
call fcn.10001550
mov dword [0x10054d34], eax
push 0xbb
call sub.USER32.dll_IsCharUpperA
call fcn.100011c0
mov eax, dword [0x1005504c]
mov eax, dword [ebp - 8]
mov dx, 1
mov eax, dword [0x10054d0c]
sub eax, eax
cmp dword [0x10054cec], 0x20
ja 0x1000387a
mov eax, dword [0x10055058]
mov edx, dword [0x10054ed0]
mov edx, dword [ebp - 8]
add ecx, eax
mov eax, 0xdc
mov dword [ebp - 8], ecx
mov dword [0x10054e48], eax
mov esi, dword [ebp - 8]
mov dword [0x10054d2c], eax
call fcn.10001d00
mov eax, dword [0x10054d68]
mov edx, dword [ebp - 8]
mov cx, 0x5e
mov esi, dword [0x10054ce4]
add eax, edi
cmp dword [0x10054ff8], eax
js 0x100038c4
mov ecx, dword [0x10054d3c]
mov esi, dword [ebp - 0xc]
sub ecx, eax
mov eax, dword [0x10054cf4]
mov eax, 0xb
mov dword [ebp - 0xc], eax
mov dword [0x10054dbc], ecx
add dword [ebp - 8], eax
mov dword [ebp - 8], edx
mov eax, dword [0x10054d58]
mov eax, dword [ebp - 8]
or eax, esi
mov edi, dword [ebp - 0xc]
mov edi, dword [0x10054ec4]
test eax, eax
je 0x10003902
mov eax, dword [ebp - 8]
mov edx, dword [0x10054e9c]
mov eax, dword [ebp - 8]
sub eax, ecx
mov eax, dword [0x10054dd8]
mov eax, 0x40
mov dword [ebp - 0xc], esi
mov dword [0x10054d90], edx
mov dword [0x10054f2c], esi
mov eax, dword [ebp - 8]
call fcn.100025c0
mov esi, dword [0x10054fe4]
mov edi, dword [ebp - 0xc]
mov ax, 0x6e
mov ecx, dword [ebp - 8]
mov eax, 0x2d
cmp esi, 1
je 0x10003953
or dword [ebp - 8], 0xffff
mov eax, dword [0x10054fa8]
mov eax, dword [0x10054ff0]
mov edi, dword [ebp - 8]
mov ax, 0xd4
mov eax, dword [0x10054d84]
mov eax, 4
mov dword [ebp - 8], ecx
mov dword [0x10054eac], eax
mov dword [0x10054e50], eax
and edi, dword [ebp - 8]
call fcn.100027c0
or edi, dword [0x10054f88]
mov ecx, dword [ebp - 0xc]
sub edx, ecx
mov eax, dword [ebp - 0xc]
mov edi, dword [0x100550b0]
cmp dword [0x10054d58], eax
jl 0x100039a5
mov eax, dword [0x10054d80]
mov eax, dword [ebp - 8]
add esi, ecx
mov eax, dword [ebp - 8]
mov edx, dword [0x10054ce4]
mov cx, 0xe8
mov dword [ebp - 8], esi
mov dword [0x10054dd8], edi
mov dword [ebp - 8], eax
mov dword [0x100550a8], ecx
mov eax, dword [0x10054dec]
mov dword [0x10054fc0], eax
call fcn.100011c0
mov eax, dword [0x10054ce4]
mov eax, dword [ebp - 8]
mov esi, 0xcd
mov eax, dword [ebp - 0xc]
mov edx, dword [0x10054d68]
cmp edi, dword [ebp + 0x57]
jno 0x100039ee
mov esi, dword [ebp - 8]
mov eax, dword [0x100550e0]
mov edi, dword [ebp - 8]
sub eax, eax
add ecx, edi
mov dword [ebp - 8], eax
mov dword [0x10055080], edx
mov dword [ebp - 0xc], edx
add esi, dword [0x10054f34]
mov eax, dword [ebp - 8]
mov ecx, dword [0x10054f98]
mov edx, dword [ebp - 8]
mov dx, 1
mov esi, dword [ebp - 0xc]
mov eax, dword [0x10054d30]
sub edi, eax
cmp dword [0x10054dd8], 0x43
jg 0x10003a35
mov esi, dword [0x10054e6c]
mov esi, dword [0x10054ce4]
mov esi, dword [ebp - 0xc]
xor edi, esi
mov dword [ebp - 8], edi
mov dword [0x10054dd4], esi
mov dword [0x10054f2c], eax
mov dword [ebp - 8], ecx
mov eax, dword [0x10054fb0]
call fcn.10001d00
mov eax, dword [0x10054ce4]
mov esi, dword [ebp - 8]
mov dx, 0xcc
mov ecx, dword [ebp - 8]
mov esi, dword [0x10054ce4]
mov eax, 1
cmp dword [ebp + 8], eax
jbe 0x10003a79
mov edi, dword [0x100550d8]
adc edi, dword [ebp - 0xc]
sub eax, edx
mov edi, dword [0x10054e44]
mov dword [ebp - 8], eax
mov dword [0x10055064], ecx
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
mov dword [0x10054d4c], eax
mov esi, dword [0x10054e8c]
mov esi, 0x92
push esi
call sub.USER32.dll_IsCharUpperA
call fcn.100014a0
mov eax, dword [0x10055098]
mov eax, dword [ebp - 8]
mov ax, 0x80
mov edi, dword [ebp - 8]
mov eax, dword [0x10054eac]
cmp dword [ebp + 0x80], esi
jb 0x10003ae3
add eax, dword [0x10054e9c]
mov dword [ebp - 8], edx
mov esi, dword [0x10054de8]
mov eax, dword [ebp - 8]
mov si, 0x64
mov eax, dword [0x10054ef0]
sub dword [ebp - 8], eax
mov dword [0x10054ff4], ecx
mov dword [0x10054ce4], edx
mov dword [0x10054cec], edi
mov eax, dword [ebp - 8]
mov edx, dword [0x10054d18]
mov eax, dword [0x10054d64]
mov ecx, dword [ebp - 8]
add ecx, esi
mov ecx, dword [ebp - 8]
mov ax, 0x97
cmp dword [0x10054f04], 0x21
jp 0x10003b2b
mov dword [ebp - 0xc], eax
mov dword [ebp - 8], ecx
mov esi, dword [0x10054db0]
mov ecx, dword [ebp - 8]
sub eax, eax
mov eax, dword [ebp - 0xc]
mov ax, 2
mov dword [ebp - 0xc], ecx
mov dword [0x10054fd8], eax
mov eax, dword [ebp - 8]
mov dword [0x10054cfc], eax
mov eax, dword [0x10054eb8]
or eax, dword [0x10055024]
call fcn.100027c0
call fcn.100020c0
mov edx, dword [0x10054e5c]
mov esi, dword [ebp - 8]
mov ax, 0x5f
cmp esi, dword [ebp + 4]
ja 0x10003b78
mov dword [0x10055000], eax
mov edx, dword [0x10054fc0]
mov edi, dword [ebp - 0xc]
sub eax, edi
mov ecx, dword [0x10054d9c]
xor eax, eax
mov dword [ebp - 0xc], eax
mov dword [0x10054e90], eax
mov dword [ebp - 0xc], esi
add esi, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
mov eax, dword [0x10054ce4]
push eax
call sub.USER32.dll_IsWindowEnabled
call fcn.100027c0
call sub.USER32.dll_GetDesktopWindow
call fcn.100014a0
leave
ret