Function at 0x1002cc0b
Capabilities:
Check os version
Compare security identifiers
Get disk information
Get file size
Get graphical window text
Get keyboard layout
Query or enumerate registry key
Start service

Disassembly:
mov eax, 0x10074329
call fcn.100740b0
mov eax, 0x11b8
call fcn.10070490
push ebx
push esi
push edi
push 0xfffffffffffffffc
mov dword [ebp - 0x54], ecx
pop ecx
push 0
pop eax
push 3
pop edi
push 0xffffffffffffffff
pop ebx
push 1
mov dword [ebp - 0x20], 0xad313dd3
mov byte [ebp - 0x6d], dl
mov dword [ebp - 0x20], 0x14
pop esi
jmp 0x1002ce7d
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x40], 0x3e62c90a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1002cc74
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x200], 0xdd4f9520
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002cc5c
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1002cd71
mov dword [ebp - 0x38], 0x3690f1d8
mov dword [ebp - 0x38], eax
jmp 0x1002cd51
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x48], 0xd4d0043d
mov dword [ebp - 0x48], 0xa6219ff
mov dword [ebp - 0x34], edi
cmp dword [ebp - 0x34], esi
je 0x1002cd4e
mov dword [ebp - 0x10], 6
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x10], eax
je 0x1002cd27
cmp dword [ebp - 0x18], esi
sbb eax, eax
neg eax
cmp eax, 0xcd25bb5a
jb 0x1002ccc8
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
xor edx, edx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setg dl
cmp ebx, edx
sbb eax, eax
neg eax
dec eax
add eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x32f82966
setge cl
xor eax, eax
imul ecx, dword [ebp - 0x18]
cmp ecx, 0x369029ef
setl al
sub eax, dword [ebp - 0x18]
jne 0x1002cd0a
cmp dword [ebp - 0x38], eax
je 0x1002cd0c
mov eax, esi
inc eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
push 0xfffffffffffffffc
mov eax, esi
pop ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1fc], esi
dec dword [ebp - 0x34]
push 0
pop eax
cmp dword [ebp - 0x34], esi
jne 0x1002cca8
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xe
jge 0x1002cc8b
mov dword [ebp - 0x40], eax
jmp 0x1002cd68
cmp dword [ebp - 0x40], eax
jne 0x1002cd6e
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xffffffe4
jle 0x1002cd60
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1002cc7c
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jg 0x1002ce7a
xor edi, edi
mov dword [ebp - 0x34], 0xf94bbb87
mov dword [ebp - 0x30], 0x2f11
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x200], edi
je 0x1002ce50
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x28], 0xc574c3fc
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x200]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1002cddb
mov ecx, eax
cmp dword [ebp - 0x34], eax
je 0x1002cddd
mov ecx, esi
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x200], ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x200]
mov eax, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0x40]
neg ecx
sbb ecx, ecx
inc ecx
imul eax, ecx
test eax, eax
je 0x1002ce1a
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
push 0xfffffffffffffffc
mov eax, dword [ebp + eax*4 - 0x200]
cmp edx, eax
mov eax, dword [ebp - 0x18]
setg cl
imul ecx, dword [ebp + eax*4 - 0x200]
xor edi, edi
mov dword [ebp - 0x1f8], ecx
pop ecx
jmp 0x1002ce68
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x34], 0xfffffff5
jmp 0x1002ce62
dec dword [ebp - 0x48]
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff3
jge 0x1002ce5c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x1002cd89
push 3
xor eax, eax
pop edi
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff2
jg 0x1002cc4a
mov dword [ebp - 0x44], 0xfffffff8
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1002ceb4
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xcc8], 0x696a485b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002ce9c
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x17
jl 0x1002cef2
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0
cmp dword [ebp - 0x34], edi
jge 0x1002cee7
xor edi, edi
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0xcc8], edi
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jl 0x1002ced1
push 3
pop edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x17
jge 0x1002cebd
xor eax, eax
mov dword [ebp - 0x44], 0x57ad95e1
mov ecx, 0x15466bc6
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x20], 0x53aa9ac7
mov dword [ebp - 0x5f8], ecx
mov dword [ebp - 0x5f4], ecx
mov dword [ebp - 0x5f0], ecx
mov dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x48], 4
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x5f0]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
inc eax
cmp eax, esi
mov eax, dword [ebp - 0x48]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setg dl
sub eax, edx
sub eax, 0x3718
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], eax
jl 0x1002cfa1
mov dword [ebp - 0x20], eax
jmp 0x1002cf89
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5f8], 0xe7ad53a3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x1002cf78
mov eax, dword [ebp - 0x24]
push 0
mov eax, dword [ebp + eax*4 - 0x5f8]
dec dword [ebp - 0x24]
pop eax
jns 0x1002cf73
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x68], ebx
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1002cfdd
xor edi, edi
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xb48], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1002cfc5
push 3
xor eax, eax
pop edi
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xfffffff6
jne 0x1002d182
mov dword [ebp - 0x14], 0x17633efc
mov dword [ebp - 0x38], 0x49cec79e
mov dword [ebp - 0x3c], 0xcce005ab
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002d022
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x9b8], 0xfffffff7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002d00a
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jg 0x1002d16b
mov dword [ebp - 0x2c], 0x40a16501
mov dword [ebp - 0x28], 0x6b4ff510
mov dword [ebp - 0x10], eax
jmp 0x1002d052
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf54], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002d041
mov eax, dword [ebp - 0x34]
xor eax, eax
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x34], eax
jne 0x1002d06a
cmp dword [ebp - 0x14], eax
jne 0x1002d06c
mov esi, eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
sub ecx, eax
jne 0x1002d08a
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x1002d08a
xor ebx, ebx
mov ecx, eax
inc ebx
jmp 0x1002d08f
xor ebx, ebx
inc ebx
mov ecx, ebx
mov eax, dword [ebp - 0xb3c]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xb48]
sete dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp esi, ecx
jge 0x1002d0de
mov dword [ebp - 0x38], 0
jmp 0x1002d0d7
mov byte [ebp - 0x1a], 0
cmp byte [ebp - 0x1a], 0
je 0x1002d0d4
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], edi
jle 0x1002d0b6
jmp 0x1002d159
or ecx, 0xffffffff
mov dword [ebp - 0x48], ecx
push 0xfffffffffffffffa
mov dword [ebp - 0x44], 0x8e00457a
pop eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0
jmp 0x1002d107
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe64], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002d0fa
mov dword [ebp - 0x4c], 0xfffffff9
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb48], ecx
xor ecx, ecx
inc dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x38]
cmp eax, 0xd14a
setne cl
cmp dword [ebp - 0x38], ecx
jle 0x1002d145
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x3c], eax
jge 0x1002d154
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x1002d156
mov eax, ebx
mov dword [ebp - 0x4c], eax
inc dword [ebp - 0x14]
push 0
pop eax
push 1
pop esi
cmp dword [ebp - 0x14], edi
jle 0x1002d02e
mov dword [ebp - 0x4c], 0xeda7da9f
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff6
je 0x1002cfea
or ebx, 0xffffffff
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x3c], 0xa
jmp 0x1002d1f8
mov dword [ebp - 0x10], 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1002d1be
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc70], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1002d1a5
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002d1ef
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], edi
jg 0x1002d1ec
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp + eax*4 - 0xc70]
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0xc70], ecx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], edi
jle 0x1002d1ce
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff8
jl 0x1002d1c3
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xb
jle 0x1002d195
push 0xfffffffffffffff8
pop ebx
mov dword [ebp - 0x44], ebx
mov ecx, 0x6c3a0b8e
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002d228
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xad0], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002d214
xor eax, eax
mov dword [ebp - 0x14], eax
mov edx, 0xde9bf9f
cmp dword [ebp - 0x14], edi
jge 0x1002d249
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xae8], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002d235
xor eax, eax
dec dword [ebp - 0xae8]
inc dword [ebp - 0x48]
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x44], 0x57ad95e1
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002d28f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xa84], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002d27b
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1002d2ab
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x978], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002d297
xor eax, eax
dec dword [ebp - 0x978]
inc dword [ebp - 0x48]
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x44], 0x57ad95e1
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1002d2f1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xad8], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002d2dd
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1002d30d
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xaf8], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002d2f9
xor eax, eax
dec dword [ebp - 0xaf8]
inc dword [ebp - 0x48]
push 0xfffffffffffffffd
pop ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
push 5
pop ecx
jge 0x1002d340
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xb00], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jl 0x1002d32b
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x1002d360
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd58], 0x1a80d1c1
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1002d348
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x1002d380
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xce0], 0xf617a941
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1002d368
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x1002d3a0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xfd0], 0x6ca0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1002d388
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x1002d3bb
mov eax, dword [ebp - 0x20]
sub eax, 0xde637c5b
neg eax
sbb eax, eax
inc eax
cmp eax, dword [ebp - 0x20]
jl 0x1002d3bb
xor ecx, ecx
jmp 0x1002d3bd
mov ecx, esi
xor eax, eax
cmp ecx, 0x70ed99ea
setle al
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x20]
jl 0x1002d3da
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x1002d3dc
mov eax, esi
xor edx, edx
mov dword [ebp - 0xafc], 0xf6dd8d13
cmp eax, 0xfffffff6
mov eax, dword [ebp - 0x20]
setg dl
xor ecx, ecx
cmp edx, eax
setg cl
cmp ecx, esi
sbb ecx, ecx
xor ebx, ebx
inc ecx
mov dword [ebp - 0xd58], ecx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setne bl
xor edx, edx
cmp ebx, 0x22a19820
mov dword [ebp - 0xcdc], ebx
mov eax, dword [ebp - 0x20]
sete dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setl dl
xor ecx, ecx
cmp eax, 0xf6dd8d13
setge cl
xor ebx, ebx
cmp ecx, edx
setl bl
xor edx, edx
add ebx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ebx, eax
mov eax, dword [ebp - 0x20]
setne dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x20], 0xad313dd3
mov dword [ebp - 0x20], 0x14
cmp dword [ebp - 0x20], 0xfffffff2
jle 0x1002d6c2
push 0xfffffffffffffffc
xor eax, eax
pop ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x40], 0x3e62c90a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1002d4a7
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1d0], 0xdd4f9520
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002d48f
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1002d5ac
mov dword [ebp - 0x38], 0x3690f1d8
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xe
jl 0x1002d596
or ebx, 0xffffffff
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x48], 0xd4d0043d
mov dword [ebp - 0x48], 0xa6219ff
mov dword [ebp - 0x34], edi
cmp dword [ebp - 0x34], esi
je 0x1002d589
mov dword [ebp - 0x10], 6
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x10], eax
je 0x1002d562
cmp dword [ebp - 0x18], esi
sbb eax, eax
neg eax
cmp eax, 0xcd25bb5a
jb 0x1002d503
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
xor edx, edx
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setg dl
cmp ebx, edx
sbb eax, eax
neg eax
dec eax
add eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x32f82966
setge cl
xor eax, eax
imul ecx, dword [ebp - 0x18]
cmp ecx, 0x369029ef
setl al
sub eax, dword [ebp - 0x18]
jne 0x1002d545
cmp dword [ebp - 0x38], eax
je 0x1002d547
mov eax, esi
inc eax
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
push 0xfffffffffffffffc
mov eax, esi
pop ecx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x48], esi
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x1cc], esi
dec dword [ebp - 0x34]
push 0
pop eax
cmp dword [ebp - 0x34], esi
jne 0x1002d4e3
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xe
jge 0x1002d4c6
mov dword [ebp - 0x40], eax
jmp 0x1002d5a3
cmp dword [ebp - 0x40], eax
jne 0x1002d5a9
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xffffffe4
jle 0x1002d59b
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1002d4af
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jg 0x1002d6b5
xor edi, edi
mov dword [ebp - 0x34], 0xf94bbb87
mov dword [ebp - 0x30], 0x2f11
mov eax, dword [ebp - 0x18]
cmp dword [ebp + eax*4 - 0x1d0], edi
je 0x1002d68b
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x28], 0xc574c3fc
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1d0]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1002d616
mov ecx, eax
cmp dword [ebp - 0x34], eax
je 0x1002d618
mov ecx, esi
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1d0], ecx
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1cc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x1d0]
mov eax, dword [ebp - 0x1cc]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0x40]
neg ecx
sbb ecx, ecx
inc ecx
imul eax, ecx
test eax, eax
je 0x1002d655
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x18]
setl dl
xor ecx, ecx
push 0xfffffffffffffffc
mov eax, dword [ebp + eax*4 - 0x1d0]
cmp edx, eax
mov eax, dword [ebp - 0x18]
setg cl
imul ecx, dword [ebp + eax*4 - 0x1d0]
xor edi, edi
mov dword [ebp - 0x1c8], ecx
pop ecx
jmp 0x1002d6a3
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x34], 0xfffffff5
jmp 0x1002d69d
dec dword [ebp - 0x48]
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff3
jge 0x1002d697
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x1002d5c4
push 3
xor eax, eax
pop edi
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xfffffff2
jg 0x1002d47d
mov dword [ebp - 0x44], 0xfffffff8
or eax, 0xffffffff
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x10], 0
jmp 0x1002d6ec
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xda0], 0x696a485b
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002d6db
mov dword [ebp - 0x24], 0
jmp 0x1002d727
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0
cmp dword [ebp - 0x34], edi
jge 0x1002d724
xor edi, edi
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0xda0], edi
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 3
jl 0x1002d70e
push 3
pop edi
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x17
jge 0x1002d6fa
mov dword [ebp - 0x44], 0x57ad95e1
mov eax, 0x15466bc6
mov dword [ebp - 0x44], 9
mov dword [ebp - 0x20], 0x53aa9ac7
mov dword [ebp - 0x5d8], eax
mov dword [ebp - 0x5d4], eax
mov dword [ebp - 0x5d0], eax
mov dword [ebp - 0x5cc], eax
mov dword [ebp - 0x48], 4
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x5d0]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
neg eax
sbb eax, eax
inc eax
cmp eax, esi
mov eax, dword [ebp - 0x48]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x20]
setg dl
sub eax, edx
sub eax, 0x3718
neg eax
sbb eax, eax
inc eax
mov dword [ebp - 0x24], eax
xor eax, eax
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], eax
jl 0x1002d7e0
mov dword [ebp - 0x20], eax
jmp 0x1002d7c8
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x5d8], 0xe7ad53a3
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x1002d7b7
mov eax, dword [ebp - 0x24]
push 0
mov eax, dword [ebp + eax*4 - 0x5d8]
dec dword [ebp - 0x24]
pop eax
jns 0x1002d7b2
mov dword [ebp - 0x44], 9
or edx, 0xffffffff
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1002d81f
xor edi, edi
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xb5c], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1002d807
push 3
xor eax, eax
pop edi
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0xfffffff6
jne 0x1002d9ca
mov dword [ebp - 0x14], 0x17633efc
mov dword [ebp - 0x38], 0x49cec79e
mov dword [ebp - 0x3c], 0xcce005ab
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002d86a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xa94], 0xfffffff7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002d852
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jg 0x1002d938
mov dword [ebp - 0x2c], 0x40a16501
mov dword [ebp - 0x28], 0x6b4ff510
mov dword [ebp - 0x10], eax
jmp 0x1002d89a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf0c], 9
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002d889
mov eax, dword [ebp - 0x34]
xor eax, eax
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x34], eax
jne 0x1002d8b2
cmp dword [ebp - 0x14], eax
jne 0x1002d8b4
mov esi, eax
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x14]
sub ecx, eax
jne 0x1002d8d2
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x1002d8d2
xor edi, edi
mov ecx, eax
inc edi
jmp 0x1002d8d7
xor edi, edi
inc edi
mov ecx, edi
mov eax, dword [ebp - 0xb50]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xb5c]
sete dl
xor ecx, ecx
cmp edx, eax
setl cl
cmp esi, ecx
jge 0x1002d947
push 3
mov dword [ebp - 0x38], 0
pop edi
jmp 0x1002d91e
mov byte [ebp - 0x1a], 0
cmp byte [ebp - 0x1a], 0
je 0x1002d91b
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_DeleteDC]
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], edi
jle 0x1002d901
or edx, 0xffffffff
inc dword [ebp - 0x14]
push 0
pop eax
push 1
pop esi
cmp dword [ebp - 0x14], edi
jle 0x1002d876
mov dword [ebp - 0x4c], 0xeda7da9f
dec dword [ebp - 0x34]
jmp 0x1002d828
or edx, 0xffffffff
mov dword [ebp - 0x48], edx
push 0xfffffffffffffffa
mov dword [ebp - 0x44], 0x8e00457a
pop eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x10], 0
jmp 0x1002d970
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe7c], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002d963
mov dword [ebp - 0x4c], 0xfffffff9
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb5c], ecx
xor ecx, ecx
inc dword [ebp - 0x30]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x38]
cmp eax, 0xd14a
setne cl
cmp dword [ebp - 0x38], ecx
jle 0x1002d9ae
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x3c], eax
jge 0x1002d9bd
xor eax, eax
cmp dword [ebp - 0x48], eax
je 0x1002d9bf
mov eax, edi
push 3
mov dword [ebp - 0x4c], eax
pop edi
jmp 0x1002d926
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x3c], 4
mov dword [ebp - 0x3c], 0xa
jmp 0x1002da40
mov dword [ebp - 0x10], 8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x1002da06
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc10], 6
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x1002d9ed
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002da37
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], edi
jg 0x1002da34
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp + eax*4 - 0xc10]
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0xc10], ecx
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], edi
jle 0x1002da16
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff8
jl 0x1002da0b
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xb
jle 0x1002d9dd
mov dword [ebp - 0x44], 0xfffffff8
mov dword [ebp - 0x18], 0xa1f94964
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x30], 0x314b8123
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], eax
jmp 0x1002da7a
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xfe8], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002da6d
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
neg ecx
sub ecx, eax
jne 0x1002daa2
xor eax, eax
cmp dword [ebp - 0x18], eax
je 0x1002daa4
mov eax, esi
add eax, 0xffff0001
je 0x1002daf6
push 4
mov dword [ebp - 0x48], 0x82baef6e
mov dword [ebp - 0x10], 0
pop ecx
jmp 0x1002dacb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe5c], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1002dabe
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x20], 0
jmp 0x1002daec
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe5c], edx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1002dadf
jmp 0x1002dbf5
xor eax, eax
mov dword [ebp - 0x4c], 0x39c01058
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1002db1b
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x580], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002db07
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x1002dbeb
mov dword [ebp - 0x48], 0x9552
mov dword [ebp - 0x20], 2
cmp dword [ebp - 0x20], eax
jl 0x1002dbd4
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x10], 0xfffffffe
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 2
jg 0x1002dbcb
mov dword [ebp - 0x10], esi
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0x580]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0x580]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x57c]
imul ecx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp + eax*4 - 0x580]
neg ecx
sbb ecx, ecx
neg ecx
imul eax, ecx
sub eax, dword [ebp - 0x2c]
neg eax
sbb eax, eax
xor ecx, ecx
inc eax
cmp eax, 0x2f98de09
mov eax, dword [ebp - 0x20]
setg cl
mov dword [ebp + eax*4 - 0x580], ecx
test ecx, ecx
jne 0x1002dbb6
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x48], eax
je 0x1002dbb8
mov ecx, esi
mov eax, dword [ebp - 0x10]
add eax, ecx
mov dword [ebp - 0x10], eax
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 2
jle 0x1002db50
xor eax, eax
dec dword [ebp - 0x20]
jns 0x1002db3a
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], 0
je 0x1002dbe8
push eax
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegLoadKeyW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0x16
jl 0x1002db23
dec dword [ebp - 0x28]
mov dword [ebp - 0x20], 0x825e7a66
mov dword [ebp - 0x10], 0
jmp 0x1002dc19
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd8], 0x254e7f13
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002dc08
mov dword [ebp - 0x20], 0x10
jmp 0x1002dd23
mov dword [ebp - 0x2f4], esi
mov dword [ebp - 0x2f0], esi
mov dword [ebp - 0x2ec], esi
mov dword [ebp - 0x2e8], esi
mov dword [ebp - 0x14], 2
mov dword [ebp - 0x10], 0xa0f0f5eb
mov dword [ebp - 0x14], edi
cmp dword [ebp - 0x14], 0
jl 0x1002dd20
xor edi, edi
mov dword [ebp - 0x24], esi
mov eax, dword [ebp - 0x14]
cmp dword [ebp + eax*4 - 0x2f4], edi
jne 0x1002dc93
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp + eax*4 - 0x2f4]
mov eax, dword [ebp - 0x2e8]
test eax, eax
setg cl
cmp edx, ecx
jge 0x1002dc93
xor edx, edx
jmp 0x1002dc95
mov edx, esi
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x2f4]
cmp edx, eax
mov eax, dword [ebp - 0x2ec]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x14]
setg dl
mov dword [ebp + eax*4 - 0x2f4], edx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x20]
add eax, edx
add ecx, eax
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x24], 0
cmp dword [ebp - 0x24], 3
jg 0x1002dd12
mov dword [ebp - 0x10], 3
cmp dword [ebp - 0x10], 0
jl 0x1002dcf9
mov byte [ebp - 0x1a], 0
cmp byte [ebp - 0x1a], 0
je 0x1002dcf4
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
dec dword [ebp - 0x10]
jns 0x1002dce4
mov eax, dword [ebp - 0x14]
xor edi, edi
cmp dword [ebp + eax*4 - 0x2f4], edi
jne 0x1002dd14
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jle 0x1002dcd7
jmp 0x1002dd14
xor edi, edi
dec dword [ebp - 0x14]
jns 0x1002dc5f
push 3
pop edi
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xd
jne 0x1002dc2a
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
cmp eax, edx
setne cl
or eax, 0xffffffff
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0xd8]
setl dl
xor ecx, ecx
cmp edx, eax
setge cl
cmp ecx, 0x67e7
jg 0x1002ddd0
xor eax, eax
mov dword [ebp - 0x34], esi
cmp dword [ebp - 0xd8], eax
jne 0x1002dd7a
cmp dword [ebp - 0x34], eax
je 0x1002dd7c
mov eax, esi
dec eax
cmp esi, eax
mov eax, dword [ebp - 0x34]
sbb ecx, ecx
xor edx, edx
add ecx, 0x57d38c47
cmp ecx, eax
setge dl
xor ecx, ecx
sub edx, dword [ebp - 0x34]
imul edx, dword [ebp - 0x34]
imul edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
cmp eax, edx
mov eax, dword [ebp - 0xd8]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 0x65392fb3
setl al
mov dword [ebp - 0xd8], eax
jmp 0x1002ddef
mov dword [ebp - 0x44], 0xfffffffe
mov dword [ebp - 0x44], 0xed309061
mov dword [ebp - 0x44], 6
mov dword [ebp - 0x48], 0xf74462d1
inc dword [ebp - 0x48]
mov dword [ebp - 0x48], 0xa66fe7d8
push 4
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x10], 0
pop ecx
jmp 0x1002de16
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xe74], 0xba77
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1002de05
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], ecx
jge 0x1002de3f
mov eax, dword [ebp - 0x34]
mov dword [ebp + eax*4 - 0xe74], esi
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ecx
jl 0x1002de2b
xor eax, eax
mov dword [ebp - 0x4c], esi
mov dword [ebp - 0x10], 0xac64a684
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], 0
je 0x1002de5c
push eax
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002de82
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], 0
je 0x1002de7f
push 0x206f
push 0x1eac
call ebx
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe3
jge 0x1002de61
mov dword [ebp - 0x14], 0x60b4ffb8
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x1002deab
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1000], esi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002de97
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1002def7
mov dword [ebp - 0x2c], 0xdba33992
mov dword [ebp - 0x48], 0xffff
mov dword [ebp - 0x2c], 2
cmp dword [ebp - 0x2c], eax
jl 0x1002def4
mov dword [ebp - 0x44], 0xbd085c9e
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], 0
je 0x1002deec
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_UpdateColors]
xor eax, eax
inc dword [ebp - 0x48]
dec dword [ebp - 0x2c]
jns 0x1002deca
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jle 0x1002deb0
mov dword [ebp - 0x14], eax
jmp 0x1002df59
mov dword [ebp - 0x24], 0x21a35ca4
mov dword [ebp - 0x24], 0xe
jmp 0x1002df50
mov dword [ebp - 0x3c], 0x4c039ecf
mov dword [ebp - 0x3c], eax
jmp 0x1002df47
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x10], eax
jmp 0x1002df3e
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], 0
je 0x1002df3b
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x15
jne 0x1002df26
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x1c
jg 0x1002df1e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x16
jle 0x1002df12
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xb
jl 0x1002df02
mov dword [ebp - 0x14], eax
jmp 0x1002df75
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb2c], 0x6c3a0b8e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1002df64
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], 0xfff6
mov dword [ebp - 0x48], 0x5256ee97
mov dword [ebp - 0x48], 0x53494abc
mov dword [ebp - 0x34], 0x10
jmp 0x1002e015
push 5
pop eax
mov dword [ebp - 0x10], eax
xor edx, edx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x48], 0xfeb9e9d6
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x10]
sub eax, dword [ebp - 0x34]
imul ecx, eax, 0x9ef4
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x30]
setge dl
inc dword [ebp - 0x30]
cmp eax, edx
jg 0x1002dfd5
mov ecx, esi
jmp 0x1002dfd7
xor ecx, ecx
mov eax, dword [ebp - 0x10]
add eax, ecx
mov ecx, 0xd15de05d
cmp ecx, eax
mov eax, dword [ebp - 0x10]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setle dl
cmp esi, edx
sbb eax, eax
neg eax
mov dword [ebp - 0x48], eax
xor eax, eax
mov byte [ebp - 0x1a], al
cmp byte [ebp - 0x1a], al
je 0x1002e012
push 0x2294
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_GetClassNameW]
dec dword [ebp - 0x34]
push 0xfffffffffffffffd
pop eax
cmp dword [ebp - 0x34], eax
jge 0x1002df9b
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1002e043
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xb80], 0xde9bf9f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002e02b
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x24], eax
jmp 0x1002e111
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x1002e06d
or ecx, 0xffffffff
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x3f4], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x1002e059
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x1002e08f
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe8c], 0x2278213
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x1002e076
xor eax, eax
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0xffffffe6
jne 0x1002e10e
mov dword [ebp - 0x30], 0x90069f30
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x30], eax
je 0x1002e0c9
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, 0x47c9d5fa
setl cl
mov dword [ebp - 0x48], ecx
cmp dword [ebp - 0x48], 0
je 0x1002e0c7
mov edx, esi
jmp 0x1002e0cb
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x30]
or ecx, 0xffffffff
xor ebx, ebx
cmp eax, ecx
mov eax, dword [ebp - 0x3f0]
setg bl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x24]
push 0
setne cl
xor edx, edx
cmp ecx, ebx
setg dl
xor ecx, ecx
cmp edx, eax
pop eax
setne cl
mov dword [ebp - 0xe80], ecx
dec dword [ebp - 0x3f0]
cmp dword [ebp - 0x3f0], 0xffffffe6
je 0x1002e09e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x1b
jl 0x1002e04e
dec dword [ebp - 0xb80]
or ecx, 0xffffffff
mov dword [ebp - 0x2c], 0xd1878abc
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x3ca955a6
mov dword [ebp - 0x10], 0xf29855ee
mov dword [ebp - 0x48], 0xfffffff8
mov dword [ebp - 0x28], 0x5672fee6
mov dword [ebp - 0x10], eax
jmp 0x1002e15c
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1f4], ecx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002e14f
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x1f4], 0
je 0x1002e179
mov eax, dword [ebp - 0x1f0]
cmp dword [ebp - 0x1ec], esi
push 4
sbb eax, eax
xor edx, edx
inc eax
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1f4]
cmp ecx, eax
pop ebx
setne dl
imul eax, edx, 0xf948
xor edx, edx
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x1f0]
cmp eax, ebx
mov eax, dword [ebp - 0x1f0]
setle dl
xor ecx, ecx
cmp edx, eax
setle cl
add ecx, ecx
je 0x1002e1d8
cmp dword [ebp - 0x2c], 0
je 0x1002e1d8
mov ecx, esi
jmp 0x1002e1da
xor ecx, ecx
mov eax, dword [ebp - 0x1f4]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1f4]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x1f4]
setle cl
xor edx, edx
cmp ecx, 0xeb2d
setne dl
sub edx, eax
je 0x1002e2d7
mov dword [ebp - 0x30], 8
xor eax, eax
mov dword [ebp - 0x44], 2
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x10], eax
jmp 0x1002e236
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x890], 0x37c2b42d
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1002e225
mov ecx, dword [ebp - 0x30]
xor edx, edx
mov eax, dword [ebp - 0x30]
inc ecx
cmp eax, ecx
setle dl
sub edx, dword [ebp - 0x30]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x1002e2ad
push 5
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], ebx
dec dword [ebp - 0x28]
inc dword [ebp - 0x4c]
mov edi, 0x76c56d20
mov dword [ebp - 0x10], edi
mov ebx, 0xf3a4
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x18], 0
jmp 0x1002e30d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x7c], 0x6d2e8588
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1002e2ff
mov dword [ebp - 0x18], 0
jmp 0x1002e328