Function at 0x10017c5d
Capabilities:
Check os version
Create process on windows
Delete directory
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get graphical window text
Log keystrokes
Parse pe header
Read .ini file
Set registry value

Disassembly:
mov eax, 0x1008a841
call fcn.100897d8
mov eax, 0x1554
call fcn.10085120
push ebx
push esi
push edi
mov dword [ebp - 0x1c], 9
xor eax, eax
push 3
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x68], ecx
pop ecx
mov dword [ebp - 0x34], 0xe56e31bb
mov dword [ebp - 0x18], eax
push 6
mov byte [ebp - 0x71], dl
pop edx
cmp dword [ebp - 0x18], ecx
jge 0x10017caf
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x14b8], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10017c9b
xor eax, eax
mov esi, dword [sym.imp.USER32.dll_CharLowerBuffW]
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x10017cc8
push 0xcb0
push eax
call esi
xor eax, eax
push 1
pop edi
cmp dword [ebp - 0x1c], eax
je 0x10017cf0
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x50], edx
je 0x10017cee
mov ecx, edi
jmp 0x10017cf2
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, 0x26f39384
setle al
imul eax, dword [ebp - 0x34]
test eax, eax
jne 0x10017d08
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
cmp eax, ecx
push 9
setl dl
xor ebx, ebx
test edx, edx
setg bl
xor ecx, ecx
imul ebx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
cmp ebx, eax
pop eax
setle cl
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x1c], eax
xor eax, eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x34], 0xe56e31bb
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10017d70
push 6
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1488], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10017d5c
xor eax, eax
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x10017d83
push 0xcb0
push eax
call esi
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10017da8
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x50], edx
je 0x10017da6
mov ecx, edi
jmp 0x10017daa
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, 0x26f39384
setle al
imul eax, dword [ebp - 0x34]
test eax, eax
jne 0x10017dc0
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
cmp eax, ecx
push 9
setl dl
xor ebx, ebx
test edx, edx
pop edx
setg bl
xor ecx, ecx
imul ebx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
cmp ebx, eax
setle cl
xor eax, eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x4c], 0x426ae69e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10017e25
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5e8], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10017e11
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jl 0x10017e4c
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x10017e44
push 0x1c43
push eax
call dword [sym.imp.USER32.dll_CharUpperBuffW]
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10017e2d
push 9
pop edx
push 0xfffffffffffffffb
pop ecx
push 2
pop ebx
mov dword [ebp - 0x28], edx
cmp dword [ebp - 0x28], ecx
push 0xffffffffffffffff
pop ecx
jl 0x10017f79
jmp 0x10017e65
xor eax, eax
mov dword [ebp - 0x1c], 0x315362d
mov dword [ebp - 0x50], 4
mov dword [ebp - 0x50], 0xfffffffa
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], eax
jmp 0x10017e93
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdf8], 0x5024d8f3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10017e82
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
test edx, edx
sets cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x48]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x50], eax
jge 0x10017ed2
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10017ed5
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5e8]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x48]
cmp eax, 0xfffffffe
mov eax, dword [ebp - 0x28]
setl cl
xor edx, edx
imul ecx, ecx, 0xfff7
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x1c]
cmp edx, 0xbe1552b9
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, 0xffffffff
setne cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
mov edx, eax
cmp dword [ebp - 0x10], eax
je 0x10017f44
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
add eax, 0x35ca4204
cmp eax, 0xdcad
push 0xfffffffffffffffb
setg cl
add ecx, edx
mov dword [ebp - 0xdf4], ecx
dec dword [ebp - 0x28]
pop eax
cmp dword [ebp - 0x28], eax
jge 0x10017e63
push 9
or ecx, 0xffffffff
pop edx
mov dword [ebp - 0x40], ecx
xor eax, eax
mov dword [ebp - 0x40], 0xf90a3cfc
mov dword [ebp - 0x40], 0xfffffffc
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x50], 0xb7b8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10017fb6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x133c], 0xde0bcd8c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10017f9e
xor eax, eax
dec dword [ebp - 0x50]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x34], 0xe56e31bb
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x10017fe8
push 6
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x14f4], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10017fd4
xor eax, eax
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x10017ffb
push 0xcb0
push eax
call esi
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x1001801c
mov ecx, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x50], edx
jne 0x1001801e
xor eax, eax
mov edi, eax
xor eax, eax
cmp edi, 0x26f39384
setle al
imul eax, dword [ebp - 0x34]
test eax, eax
jne 0x10018034
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
xor edx, edx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
cmp eax, ecx
push 3
setl dl
xor ebx, ebx
test edx, edx
setg bl
xor ecx, ecx
imul ebx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
cmp ebx, eax
pop ebx
setle cl
xor eax, eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x84c]
mov dword [ebp - 0x34], 0xdb3ae355
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x40], 0xfffffffd
mov dword [ebp - 0x40], 0xf0720718
mov dword [ebp - 0x40], 0xfa8bc07c
push ebx
call fcn.100144f8
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x18], eax
jmp 0x100180b9
push dword [ebp - 0x18]
lea ecx, [ebp - 0x84c]
call fcn.10014565
mov dword [eax], 0xd7006986
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100180a2
push 2
pop esi
xor ebx, ebx
mov dword [ebp - 0x34], esi
push 3
inc ebx
pop edi
cmp dword [ebp - 0x34], 0xfffffff9
jge 0x100181c0
push 4
lea ecx, [ebp - 0xd7c]
call fcn.100144f8
mov byte [ebp - 4], bl
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffc
mov dword [ebp - 0x40], 0xfffffff9
mov dword [ebp - 0x50], 0xc02a3062
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10018120
push dword [ebp - 0x18]
lea ecx, [ebp - 0xd7c]
call fcn.10014565
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10018104
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], edi
jg 0x10018176
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x40], 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10018155
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd04], 0xfffffff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x1001813d
xor eax, eax
dec dword [ebp - 0x50]
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x1001816e
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
xor eax, eax
or ecx, 0xffffffff
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], edi
jle 0x1001812b
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x38], eax
jl 0x100181aa
push dword [ebp - 0x38]
lea ecx, [ebp - 0x84c]
call fcn.10014565
push dword [ebp - 0x38]
lea ecx, [ebp - 0x84c]
mov esi, eax
call fcn.10014565
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x38]
jns 0x1001817e
push 2
xor eax, eax
pop esi
lea ecx, [ebp - 0xd7c]
mov byte [ebp - 4], al
call fcn.10014560
dec dword [ebp - 0x34]
jmp 0x100180ca
or eax, 0xffffffff
lea ecx, [ebp - 0x84c]
mov dword [ebp - 4], eax
call fcn.10014560
push 9
xor eax, eax
pop ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], 0x426ae69e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10018202
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x700], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100181ee
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jl 0x1001822d
xor ebx, ebx
mov byte [ebp - 0x59], bl
cmp byte [ebp - 0x59], bl
je 0x10018220
push 0x1c43
push ebx
call dword [sym.imp.USER32.dll_CharUpperBuffW]
dec dword [ebp - 0x28]
jns 0x1001820c
xor ebx, ebx
push 9
inc ebx
xor eax, eax
pop ecx
push 0xfffffffffffffffb
mov dword [ebp - 0x28], ecx
pop edx
cmp dword [ebp - 0x28], edx
jl 0x10018353
push edx
pop edi
jmp 0x10018242
xor eax, eax
mov dword [ebp - 0x1c], 0x315362d
mov dword [ebp - 0x50], 4
mov dword [ebp - 0x50], 0xfffffffa
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], eax
jmp 0x10018270
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe0c], 0x5024d8f3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1001825f
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
test edx, edx
sets cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x48]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x50], eax
jge 0x100182af
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x100182b2
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x700]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x48]
cmp eax, 0xfffffffe
mov eax, dword [ebp - 0x28]
setl cl
xor edx, edx
imul ecx, ecx, 0xfff7
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x1c]
cmp edx, 0xbe1552b9
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, 0xffffffff
setne cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
mov edx, eax
cmp dword [ebp - 0x10], eax
je 0x10018321
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
add eax, 0x35ca4204
cmp eax, 0xdcad
setg cl
add ecx, edx
mov dword [ebp - 0xe08], ecx
dec dword [ebp - 0x28]
cmp dword [ebp - 0x28], edi
jge 0x10018240
push 3
pop edi
push 9
pop ecx
mov dword [ebp - 0x40], 0xfffffff6
or eax, 0xffffffff
mov dword [ebp - 0x40], 0xd453606d
mov dword [ebp - 0x40], eax
xor eax, eax
mov dword [ebp - 0x40], 4
mov dword [ebp - 0x40], 0x244d513c
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x40], 0x15e82aa9
mov dword [ebp - 0x50], 0xfffe
mov dword [ebp - 0x18], eax
jmp 0x1001839e
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x134c], 0x738ab659
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x1001838d
dec dword [ebp - 0x50]
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x964]
push edi
call fcn.100144f8
mov dword [ebp - 4], esi
xor eax, eax
mov dword [ebp - 0x10], 0x6aabecba
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x100183e7
push dword [ebp - 0x18]
lea ecx, [ebp - 0x964]
call fcn.10014565
mov dword [eax], 0x313dd33a
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x100183c9
xor eax, eax
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], eax
jl 0x10018419
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x10018414
push dword [ebp - 0x18]
lea ecx, [ebp - 0x964]
call fcn.10014565
cmp dword [eax], 0
jne 0x10018412
dec dword [ebp - 0x18]
jns 0x100183fa
xor eax, eax
dec dword [ebp - 0x10]
jns 0x100183ef
or eax, 0xffffffff
lea ecx, [ebp - 0x964]
mov dword [ebp - 4], eax
call fcn.10014560
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x1c], 0xf94f378
mov dword [ebp - 0x50], 0xfffffff6
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1001845d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x84], 0xc2e0cf57
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018445
xor eax, eax
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], 0
je 0x10018479
push 0x1229
push 0x3c7
push eax
call dword [sym.imp.USER32.dll_DeleteMenu]
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], eax
jl 0x1001859a
mov dword [ebp - 0x20], 0xccbad86e
mov dword [ebp - 0x50], 0x6aac8953
mov dword [ebp - 0x3c], 0x5257
mov dword [ebp - 0x4c], 0xeb236728
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jl 0x1001856c
mov dword [ebp - 0x50], 0xd0d1d847
cmp dword [ebp - 0x1c], eax
jne 0x1001850a
mov eax, dword [ebp - 0x84]
xor edx, edx
mov dword [ebp - 0x50], 0xf74
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x84]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp + eax*4 - 0x84]
mov eax, dword [ebp - 0x1c]
cmp eax, 0x552
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp eax, edx
setle cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x84]
add eax, dword [ebp - 0x50]
jne 0x1001850a
mov ecx, eax
jmp 0x1001850c
mov ecx, ebx
mov eax, dword [ebp - 0x20]
imul eax, dword [ebp - 0x1c]
imul eax, ecx
cmp eax, dword [ebp - 0x3c]
jle 0x1001852c
mov eax, dword [ebp - 0x1c]
cmp dword [ebp + eax*4 - 0x84], 0
je 0x1001852c
mov edx, ebx
jmp 0x10018530
xor eax, eax
mov edx, eax
mov eax, dword [ebp - 0x20]
xor ecx, ecx
mov eax, dword [ebp + eax*4 - 0x84]
cmp eax, edx
setg cl
xor eax, eax
mov dword [ebp - 0x84], ecx
test ecx, ecx
je 0x10018557
cmp dword [ebp - 0x84], eax
je 0x10018557
mov eax, ebx
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x4c], eax
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x100184ad
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0x11
je 0x10018591
xor ebx, ebx
mov eax, dword [ebp - 0x84]
mov dword [ebp - 0x84], ebx
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0x11
jne 0x10018577
xor ebx, ebx
inc ebx
xor eax, eax
dec dword [ebp - 0x1c]
jns 0x10018485
mov dword [ebp - 0x60], 0xe56e31bb
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x40], 0xf90a3cfc
mov dword [ebp - 0x40], 0xfffffffc
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x50], 0xb7b8
mov dword [ebp - 0x18], eax
jmp 0x100185d5
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x13d4], 0xde0bcd8c
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100185c4
dec dword [ebp - 0x50]
lea ecx, [ebp - 0x864]
mov dword [ebp - 0x34], ebx
push esi
call fcn.100144f8
mov dword [ebp - 4], edi
xor eax, eax
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x1001861d
push dword [ebp - 0x18]
lea ecx, [ebp - 0x864]
call fcn.10014565
mov dword [eax], 0x32a27689
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x100185ff
xor eax, eax
mov dword [ebp - 0x34], edi
cmp dword [ebp - 0x34], 0xffffffe5
jg 0x10018705
push 0xfffffffffffffffb
pop esi
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x40], 0xc3a23fe5
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x38], eax
jl 0x10018698
mov dword [ebp - 0x18], 0x73d2d672
mov dword [ebp - 0x40], 0xfffffffc
mov dword [ebp - 0x18], eax
jmp 0x10018666
mov dword [ebp - 0x40], 0xddcd1665
mov dword [ebp - 0x40], 0x95da2282
dec dword [ebp - 0x50]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x10018652
push dword [ebp - 0x38]
lea ecx, [ebp - 0x864]
call fcn.10014565
push dword [ebp - 0x38]
lea ecx, [ebp - 0x864]
mov esi, eax
call fcn.10014565
mov ecx, dword [esi]
push 0
mov dword [eax], ecx
dec dword [ebp - 0x38]
pop eax
jns 0x1001863f
push 0xfffffffffffffffb
pop esi
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], esi
jne 0x100186f8
push 4
lea ecx, [ebp - 0xafc]
call fcn.100144f8
xor eax, eax
mov byte [ebp - 4], 4
mov dword [ebp - 0x18], eax
jmp 0x100186c5
push dword [ebp - 0x18]
call fcn.10014565
mov dword [eax], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
lea ecx, [ebp - 0xafc]
jl 0x100186b8
push edi
call fcn.10014565
push 3
lea ecx, [ebp - 0xafc]
and dword [eax], 0
pop eax
mov byte [ebp - 4], al
call fcn.10014560
dec dword [ebp - 0x38]
push 3
pop edi
cmp dword [ebp - 0x38], esi
je 0x100186a0
xor eax, eax
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xffffffe5
jle 0x1001862d
or edi, 0xffffffff
lea ecx, [ebp - 0x864]
mov dword [ebp - 4], edi
call fcn.10014560
xor eax, eax
push 3
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x1001873a
push 6
pop edx
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x1494], edx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10018726
xor eax, eax
mov dword [ebp - 0x34], 0xf6af1124
mov dword [ebp - 0x40], 0x2c25fcc5
mov dword [ebp - 0x18], eax
jmp 0x1001875a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x14a0], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x1001874d
mov dword [ebp - 0x34], 0xffffffee
mov esi, 0x226c312f
jmp 0x1001881d
push ebx
lea ecx, [ebp - 0xecc]
call fcn.100144f8
mov dword [ebp - 4], 5
xor eax, eax
mov dword [ebp - 0x18], 0x654fddd3
mov dword [ebp - 0x40], 0xc9fb37b0
mov dword [ebp - 0x40], 0xfffffffd
mov dword [ebp - 0x220], esi
mov dword [ebp - 0x21c], esi
mov dword [ebp - 0x218], esi
mov dword [ebp - 0x214], esi
mov dword [ebp - 0x40], 0xa32fd2d1
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x100187e2
push dword [ebp - 0x18]
lea ecx, [ebp - 0xecc]
call fcn.10014565
mov dword [eax], 0x3fa7
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100187c4
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], eax
jg 0x10018809
xor ebx, ebx
mov byte [ebp - 0x59], bl
cmp byte [ebp - 0x59], bl
je 0x100187fe
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jle 0x100187ec
xor ebx, ebx
inc ebx
dec dword [ebp - 0x50]
lea ecx, [ebp - 0xecc]
mov dword [ebp - 4], edi
call fcn.10014560
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0x1b
jg 0x10018770
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x50], 0x7a5eafb5
mov dword [ebp - 0x50], 0xc5530c4e
mov dword [ebp - 0x58], 0x4f9a0237
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x18], eax
jmp 0x1001885a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x98], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018849
push 0xfffffffffffffff8
pop esi
mov dword [ebp - 0x98], esi
cmp dword [ebp - 0x98], esi
je 0x1001889f
xor ebx, ebx
mov dword [ebp - 0x4c], 4
mov byte [ebp - 0x59], bl
cmp byte [ebp - 0x59], bl
je 0x1001888b
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.OLEAUT32.dll_VariantTimeToDosDateTime]
mov eax, dword [ebp - 0x4c]
inc dword [ebp - 0x98]
cmp dword [ebp - 0x98], esi
jne 0x10018872
xor ebx, ebx
inc ebx
xor eax, eax
cmp dword [ebp - 0x98], eax
je 0x10018916
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x50], 0x23b4
mov eax, dword [ebp - 0x50]
imul eax, dword [ebp - 0x20]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x20]
jne 0x100188d0
xor eax, eax
cmp dword [ebp - 0x20], eax
jne 0x100188d2
mov ecx, eax
jmp 0x100188d4
xor eax, eax
mov ecx, ebx
mov dword [ebp - 0x98], eax
xor edx, edx
mov eax, dword [ebp - 0x20]
imul eax, ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x58]
cmp eax, ebx
mov eax, dword [ebp - 0x58]
setge dl
xor ecx, ecx
cmp edx, eax
setne cl
xor eax, eax
cmp ecx, 0x78ef8a6e
setg al
mov dword [ebp - 0x58], eax
mov eax, ebx
imul ecx, eax, 0xfffffffd
xor edx, edx
mov eax, dword [ebp - 0x48]
cmp ecx, eax
mov ecx, 0xffff
setge dl
xor eax, eax
mov dword [ebp - 0x48], edx
mov byte [ebp - 0x11], al
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x10], 0x4643a64e
mov dword [ebp - 0x18], 0xef7d594
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x1001895d
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xefc], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018949
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_GetDC]
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x17
jl 0x10018995
xor ebx, ebx
mov byte [ebp - 0x59], bl
cmp byte [ebp - 0x59], bl
je 0x10018989
push ebx
call esi
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_SelectClipRgn]
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x17
jge 0x10018974
xor ebx, ebx
inc ebx
mov eax, dword [ebp - 0x2c]
mov ecx, ebx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
sub ecx, eax
jne 0x100189b6
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
push 3
add eax, dword [ebp - 0x2c]
je 0x10018a74
xor eax, eax
mov dword [ebp - 0x18], eax
pop ecx
cmp dword [ebp - 0x18], ecx
jge 0x100189f0
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x828], 0xfffffff8
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x100189d8
xor eax, eax
mov dword [ebp - 0x2c], 2
cmp dword [ebp - 0x2c], eax
jl 0x10018ae5
mov dword [ebp - 0x18], 0x17c0ec0d
mov dword [ebp - 0x50], 0xe1b8d813
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 2
jg 0x10018a2f
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x828]
mov dword [ebp - 0x50], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 2
jle 0x10018a17
xor eax, eax
cmp dword [ebp - 0x820], eax
jne 0x10018a3e
mov edx, eax
cmp dword [ebp - 0x10], eax
je 0x10018a40
mov edx, ebx
mov eax, dword [ebp - 0x2c]
xor ecx, ecx
push 0
mov eax, dword [ebp + eax*4 - 0x828]
cmp eax, 0x5799
setge cl
sub ecx, edx
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x820]
mov dword [ebp - 0x18], ecx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x50], eax
dec dword [ebp - 0x2c]
pop eax
jns 0x10018a00
jmp 0x10018ae0
mov dword [ebp - 0x48], 0x47cd
mov dword [ebp - 0x50], 4
pop eax
mov dword [ebp - 0x4c], eax
xor eax, eax
mov byte [ebp - 0x59], al
cmp byte [ebp - 0x59], al
je 0x10018aa8
push 0x6ed
push eax
push 0x913
push 0x1faf
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x18], 0xfffffff7
mov eax, dword [ebp - 0x18]
cmp eax, 0xf544
push 7
setge cl
pop eax
cmp eax, ecx
sbb eax, eax
neg eax
mov dword [ebp - 0x4c], eax
push 3
pop ecx
xor eax, eax
cmp byte [ebp - 0x11], 0
je 0x10018c7d
mov dword [ebp - 0x20], 0xffffffff
mov dword [ebp - 0x40], 0x9e4a0435
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10018b19
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5a4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018b05
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10018c67
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x50], 0xfffffff8
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x30], eax
jmp 0x10018c40
mov dword [ebp - 0x3c], 9
mov dword [ebp - 0x50], 0xcb8e0045
mov dword [ebp - 0x54], 0x34071e99
cmp dword [ebp - 0x3c], eax
jne 0x10018c49
mov dword [ebp - 0x3c], eax
jmp 0x10018c34
mov dword [ebp - 0x48], 0x658a6001
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10018b82
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5c4], ebx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10018b6e
xor eax, eax
mov dword [ebp - 0x5bc], eax
cmp dword [ebp - 0x5bc], eax
jl 0x10018c29
xor ebx, ebx
xor edx, edx
push 6
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x50], 0xfffffff7
mov eax, dword [ebp - 0x5bc]
cmp eax, 0xa81a
mov eax, dword [ebp - 0x30]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], ebx
jne 0x10018be3
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp ecx, eax
mov edx, 0xffff
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], edx
sbb eax, eax
neg eax
cmp eax, edx
setne cl
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
neg eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x5bc]
jns 0x10018b96
xor ebx, ebx
push 3
inc ebx
xor eax, eax
pop ecx
cmp dword [ebp - 0x5a4], eax
jne 0x10018c3d
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
jle 0x10018b5f
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x10018b39
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10018c61
push eax
call esi
push eax
call edi
push eax
call dword [sym.imp.GDI32.dll_RectVisible]
xor eax, eax
dec dword [ebp - 0x20]
push 3
pop ecx
cmp dword [ebp - 0x20], 0xffffffea
jl 0x10018b21
push 0xcb0
push eax
call dword [sym.imp.USER32.dll_CharLowerBuffW]
mov dword [ebp - 0x50], 0xfb63
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], 0xe74b
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x48], 2
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x4c], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x10018cc4
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x28]
neg edx
sbb edx, edx
inc edx
mov dword [ebp - 0x44], edx
jne 0x10018cc6
xor eax, eax
mov ebx, eax
xor eax, eax
cmp ebx, 0x26f39384
setle al
imul eax, dword [ebp - 0x60]
test eax, eax
jne 0x10018cdc
mov eax, dword [ebp - 0x60]
mov eax, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x44]
cmp eax, ecx
push 3
setl dl
xor ebx, ebx
test edx, edx
setg bl
xor ecx, ecx
imul ebx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x28]
cmp ebx, eax
pop ebx
setle cl
xor eax, eax
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0xed680444
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], 0xea0627e8
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], 0x90b2811f
mov dword [ebp - 0x54], 0xddb2097e
mov dword [ebp - 0x18], eax
jmp 0x10018d56
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd94], 0x2daf
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018d45
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0xdae9
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x10]
sub edx, 0xfa81
neg edx
sbb edx, edx
xor eax, eax
add edx, 0x1f39
cmp edx, dword [ebp - 0x10]
jle 0x10018d98
cmp dword [ebp - 0x20], eax
je 0x10018d98
xor edi, edi
inc edi
mov eax, edi
jmp 0x10018d9b
xor edi, edi
inc edi
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
mov eax, dword [ebp - 0x20]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
push ebx
setg dl
xor ecx, ecx
add edx, dword [ebp - 0x48]
imul edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0xd8c]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xd8c]
setg cl
imul eax, ecx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x87c]
setl dl
sub edx, eax
sub edx, dword [ebp - 0x48]
neg edx
sbb edx, edx
xor eax, eax
inc edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x34], 0xdb3ae355
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x40], 0xfffffffd
mov dword [ebp - 0x40], 0xf0720718
mov dword [ebp - 0x40], 0xfa8bc07c
call fcn.100144f8
push 6
pop eax
mov dword [ebp - 4], eax
xor eax, eax
mov dword [ebp - 0x18], eax
jmp 0x10018e7a
push dword [ebp - 0x18]
lea ecx, [ebp - 0x87c]
call fcn.10014565
mov dword [eax], 0xd7006986
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10018e63
push 2
pop ebx
mov dword [ebp - 0x34], ebx
cmp dword [ebp - 0x34], 0xfffffff9
jge 0x10018f8a
push 4
lea ecx, [ebp - 0xee4]
call fcn.100144f8
push 7
pop eax
mov byte [ebp - 4], al
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffc
mov dword [ebp - 0x40], 0xfffffff9
mov dword [ebp - 0x44], 0xc02a3062
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10018ede
push dword [ebp - 0x18]
lea ecx, [ebp - 0xee4]
call fcn.10014565
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10018ec2
xor eax, eax
push 3
mov dword [ebp - 0x38], eax
pop esi
cmp dword [ebp - 0x38], esi
jg 0x10018f37
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x40], 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10018f16
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xd14], 0xfffffff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018efe
xor eax, eax
dec dword [ebp - 0x44]
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10018f2f
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
xor eax, eax
or ecx, 0xffffffff
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], esi
jle 0x10018eec
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x38], eax
jl 0x10018f66
push dword [ebp - 0x38]
lea ecx, [ebp - 0x87c]
call fcn.10014565
push dword [ebp - 0x38]
lea ecx, [ebp - 0x87c]
mov esi, eax
call fcn.10014565
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x38]
jns 0x10018f3f
push 6
pop eax
lea ecx, [ebp - 0xee4]
mov byte [ebp - 4], al
call fcn.10014560
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff9
jl 0x10018e8f
mov esi, dword [sym.imp.USER32.dll_GetDesktopWindow]
or eax, 0xffffffff
lea ecx, [ebp - 0x87c]
mov dword [ebp - 4], eax
call fcn.10014560
or eax, 0xffffffff
mov dword [ebp - 0x20], eax
xor eax, eax
mov dword [ebp - 0x40], 0x9e4a0435
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10018fc6
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6dc], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10018fb2
xor eax, eax
mov dword [ebp - 0x20], eax
jmp 0x10019122
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x44], 0xfffffff8
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], eax
jg 0x10019103
push 9
pop ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x44], 0xcb8e0045
mov dword [ebp - 0x54], 0x34071e99
cmp dword [ebp - 0x3c], eax
jne 0x10019103
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], eax
jg 0x100190f7
push 3
pop ecx
mov dword [ebp - 0x48], 0x658a6001
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ecx
jge 0x10019039
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x594], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ecx
jl 0x10019025
xor eax, eax
mov dword [ebp - 0x58c], eax
cmp dword [ebp - 0x58c], eax
jl 0x100190e0
mov edi, 0xffff
xor edx, edx
push 6
pop eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], 0xfffffff7
mov eax, dword [ebp - 0x58c]
cmp eax, 0xa81a
mov eax, dword [ebp - 0x30]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x44], eax
xor eax, eax
cmp dword [ebp - 0x44], eax
jne 0x1001909f
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp ecx, eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
sbb eax, eax
neg eax
cmp eax, edi
setne cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
neg eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x58c]
jns 0x10019050
xor edi, edi
push 3
inc edi
xor eax, eax
pop ecx
cmp dword [ebp - 0x6dc], eax
jne 0x100190f4
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
jle 0x10019016
push 9
pop ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x10018fed
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1001911f
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_RectVisible]
xor eax, eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
jl 0x10018fce
push 9
pop ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x4c], 0x426ae69e
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x1001915b
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5b8], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10019147
xor eax, eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], eax
jl 0x10019182
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1001917a
push 0x1c43
push eax
call dword [sym.imp.USER32.dll_CharUpperBuffW]
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10019163
push 9
pop ecx
mov dword [ebp - 0x28], ecx
push 0xfffffffffffffffb
pop ecx
cmp dword [ebp - 0x28], ecx
jl 0x100192a3
jmp 0x10019195
xor eax, eax
mov dword [ebp - 0x1c], 0x315362d
mov dword [ebp - 0x44], 4
mov dword [ebp - 0x44], 0xfffffffa
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x18], eax
jmp 0x100191c3
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xe20], 0x5024d8f3
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100191b2
mov ecx, dword [ebp - 0x28]
xor edx, edx
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
xor ecx, ecx
test edx, edx
sets cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x50]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x44], eax
jge 0x10019202
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10019205
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x5b8]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x50]
cmp eax, 0xfffffffe
mov eax, dword [ebp - 0x28]
setl cl
xor edx, edx
imul ecx, ecx, 0xfff7
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setge dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setge cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x1c]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x1c]
cmp edx, 0xbe1552b9
sbb eax, eax
xor ecx, ecx
neg eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
cmp eax, 0xffffffff
setne cl
xor eax, eax
mov dword [ebp - 0x4c], ecx
mov edx, eax
cmp dword [ebp - 0x10], eax
je 0x10019274
mov edx, edi
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
add eax, 0x35ca4204
cmp eax, 0xdcad
push 0xfffffffffffffffb
setg cl
add ecx, edx
mov dword [ebp - 0xe1c], ecx
dec dword [ebp - 0x28]
pop eax
cmp dword [ebp - 0x28], eax
jge 0x10019193
or eax, 0xffffffff
mov dword [ebp - 0x34], eax
xor eax, eax
mov dword [ebp - 0x34], eax
jmp 0x100192ff
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x18], eax
jmp 0x100192e1
mov dword [ebp - 0x4c], 0x609c
cmp dword [ebp - 0x4c], eax
jne 0x100192e7
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100192de
push eax
push 0xb2a
call esi
push eax
call dword [sym.imp.USER32.dll_SetDlgItemTextW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xd
jle 0x100192b8
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100192fc
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
xor eax, eax
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], ebx
je 0x100192b0
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0xed680444
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x50], 0xea0627e8
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x44], 0x90b2811f
push 3
mov dword [ebp - 0x54], 0xddb2097e
mov dword [ebp - 0x18], eax
pop ebx
jmp 0x10019348
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xdac], 0x2daf
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10019337
mov eax, dword [ebp - 0x20]
xor ecx, ecx
cmp eax, 0xdae9
mov eax, dword [ebp - 0x20]
setl cl
xor edx, edx
cmp ecx, eax
setge dl
sub edx, dword [ebp - 0x10]
sub edx, 0xfa81
neg edx
sbb edx, edx
xor eax, eax
add edx, 0x1f39
cmp edx, dword [ebp - 0x10]
jle 0x10019385
cmp dword [ebp - 0x20], eax
je 0x10019385
mov eax, edi
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
mov eax, dword [ebp - 0x20]
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
push 4
setg dl
xor ecx, ecx
add edx, dword [ebp - 0x48]
imul edx, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x50]
cmp edx, eax
setle cl
sub ecx, dword [ebp - 0x50]
mov eax, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0xda4]
setne dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0xda4]
setg cl
imul eax, ecx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
mov dword [ebp - 0x44], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x44]
sub edx, ebx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg cl
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x20]
setl dl
sub edx, eax
sub edx, dword [ebp - 0x48]
neg edx
sbb edx, edx
or eax, 0xffffffff
inc edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x2c], 0xac204e2
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0xee94ccb0
mov dword [ebp - 0x44], 0xfffffffd
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x40], 0x2384b6d7
pop eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x2c], 0xffffffe5
cmp dword [ebp - 0x2c], 0xb
jge 0x1001946c
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10019463
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xb
jl 0x10019450
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x2c]
neg edx
sbb edx, edx
xor ecx, ecx
neg edx
imul edx, dword [ebp - 0x2c]
imul edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x3c]
cmp edx, eax
setge cl
imul ecx, dword [ebp - 0x3c]
cmp ecx, 0xfffffff9
jne 0x1001949c
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
mov ecx, 0xffff
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setge cl
xor ebx, ebx
imul ecx, ecx, 0x5cbf
cmp ecx, eax
mov eax, dword [ebp - 0x3c]
setl bl
xor edx, edx
neg ebx
cmp ebx, eax
mov eax, dword [ebp - 0x44]
setge dl
xor ecx, ecx
cmp edx, eax
mov edx, dword [ebp - 0x2c]
setg cl
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
add edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
cmp edx, eax
mov eax, dword [ebp - 0x3c]
setge cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x2c]
setg dl
xor ebx, ebx
cmp eax, edx
setne bl
sub ebx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
neg ebx
sbb ebx, ebx
xor ecx, ecx
inc ebx
cmp ebx, eax
setl cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], eax
xor eax, eax
cmp dword [ebp - 0x2c], eax
je 0x1001957e
mov dword [ebp - 0x44], 0x4fc3
inc dword [ebp - 0x44]
mov dword [ebp - 0x1c], eax
jmp 0x10019576
mov dword [ebp - 0x4c], 0xfffffffd
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1001956c
push 0x250d
push 0xd83
call esi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetPixel]
xor eax, eax
mov dword [ebp - 0x4c], 0xffffdc61
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe9
jge 0x10019540
jmp 0x100195c8
mov dword [ebp - 0x20], 0xadcf
or ecx, 0xffffffff
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x1c], eax
jl 0x100195ad
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x20]
jne 0x100195ad
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x20]
xor eax, eax
mov dword [ebp - 0x2c], 0xa3fa0b5b
cmp dword [ebp - 0x10], eax
jne 0x100195c3
cmp dword [ebp - 0x20], eax
je 0x100195c5
mov eax, edi
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x34], 0xdb3ae355
lea ecx, [ebp - 0x894]
push 3
xor eax, eax
mov dword [ebp - 0x40], eax
pop ebx
mov dword [ebp - 0x40], 0xfffffffd
mov dword [ebp - 0x40], 0xf0720718
mov dword [ebp - 0x40], 0xfa8bc07c
push ebx
call fcn.100144f8
xor eax, eax
mov dword [ebp - 4], 8
mov dword [ebp - 0x18], eax
jmp 0x1001961d
push dword [ebp - 0x18]
lea ecx, [ebp - 0x894]
call fcn.10014565
mov dword [eax], 0xd7006986
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10019606
push 2
pop esi
mov dword [ebp - 0x34], esi
jmp 0x10019716
push 4
lea ecx, [ebp - 0xef8]
call fcn.100144f8
push 9
pop eax
mov byte [ebp - 4], al
xor eax, eax
mov dword [ebp - 0x38], 0xfffffffc
mov dword [ebp - 0x40], 0xfffffff9
mov dword [ebp - 0x44], 0xc02a3062
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x1001967c
push dword [ebp - 0x18]
lea ecx, [ebp - 0xef8]
call fcn.10014565
and dword [eax], 0
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10019660
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jg 0x100196d2
or ecx, 0xffffffff
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x40], 8
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x100196b1
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xfa4], 0xfffffff6
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10019699
xor eax, eax
dec dword [ebp - 0x44]
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100196ca
push eax
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopyInd]
xor eax, eax
or ecx, 0xffffffff
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jle 0x10019687
mov dword [ebp - 0x38], esi
cmp dword [ebp - 0x38], eax
jl 0x10019704
push dword [ebp - 0x38]
lea ecx, [ebp - 0x894]
call fcn.10014565
push dword [ebp - 0x38]
lea ecx, [ebp - 0x894]
mov esi, eax
call fcn.10014565
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x38]
jns 0x100196da
push 2
pop esi
lea ecx, [ebp - 0xef8]
mov byte [ebp - 4], 8
call fcn.10014560
dec dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff9
jl 0x1001962d
or eax, 0xffffffff
lea ecx, [ebp - 0x894]
mov dword [ebp - 4], eax
call fcn.10014560
push ebx
lea ecx, [ebp - 0x5d4]
call fcn.100144f8
mov dword [ebp - 4], 0xa
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x34], 0xb969161d
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10019776
push dword [ebp - 0x18]
lea ecx, [ebp - 0x5d4]
call fcn.10014565
mov dword [eax], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10019758
xor eax, eax
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], eax
jl 0x10019858
jmp 0x10019786
xor eax, eax
mov dword [ebp - 0x40], 0x68be135e
mov dword [ebp - 0x18], 0xfffffffc
mov dword [ebp - 0x10], 0x57ea0d01
mov dword [ebp - 0x50], 0xf0244c3f
push 7
pop ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], 0x4e7f
mov dword [ebp - 0x60], 0x52dd8607
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100197d8
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call ebx
push eax
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x5d4]
xor eax, eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x50]
push dword [ebp - 0x20]
call fcn.10014565
mov eax, dword [ebp - 0x60]
lea ecx, [ebp - 0x5d4]
mov eax, dword [ebp - 0x18]
push edi
call fcn.10014565
mov eax, dword [eax]
cmp eax, dword [ebp - 0x10]
jge 0x10019816
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x34]
lea ecx, [ebp - 0x5d4]
mov eax, dword [ebp - 0x48]
push edi
call fcn.10014565
dec dword [ebp - 0x48]
xor eax, eax
cmp dword [ebp - 0x20], 0xfffe
jne 0x1001983d
mov edx, edi
cmp dword [ebp - 0x20], eax
jne 0x1001983f
mov edx, eax
mov eax, dword [ebp - 0x18]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x60], ecx
dec dword [ebp - 0x20]
jns 0x10019784
push 3
pop ebx
or eax, 0xffffffff
lea ecx, [ebp - 0x5d4]
mov dword [ebp - 4], eax
call fcn.10014560
or ecx, 0xffffffff
xor eax, eax
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x40], 0x9e4a0435
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10019894
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x6e0], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10019880
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0xffffffea
jge 0x10019a03
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x44], 0xfffffff8
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], eax
jg 0x100199d3
push 9
pop ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x44], 0xcb8e0045
mov dword [ebp - 0x54], 0x34071e99
cmp dword [ebp - 0x3c], eax
jne 0x100199d3
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], eax
jg 0x100199c7
mov dword [ebp - 0x48], 0x658a6001
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10019909
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x5e4], edi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x100198f5
xor eax, eax
mov dword [ebp - 0x5dc], eax
cmp dword [ebp - 0x5dc], eax
jl 0x100199b0
push 6
pop ebx
mov edi, 0xffff
mov dword [ebp - 0x44], ebx
xor edx, edx
mov dword [ebp - 0x44], 0xfffffff7
mov eax, dword [ebp - 0x5dc]
cmp eax, 0xa81a
mov eax, dword [ebp - 0x30]
setle dl
xor ecx, ecx
cmp edx, eax
sete cl
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x20]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x44], eax
xor eax, eax
cmp dword [ebp - 0x44], eax
jne 0x1001996f
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x48]
xor ecx, ecx
cmp ecx, eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x4c]
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], edi
sbb eax, eax
neg eax
cmp eax, edi
setne cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
neg eax
mov dword [ebp - 0x54], eax
dec dword [ebp - 0x5dc]
jns 0x10019923
xor edi, edi
push 3
inc edi
xor eax, eax
pop ebx
cmp dword [ebp - 0x6e0], eax
jne 0x100199c4
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], eax
jle 0x100198e6
push 9
pop ecx
inc dword [ebp - 0x30]
cmp dword [ebp - 0x30], eax
jle 0x100198c0
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x100199f3
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_RectVisible]
xor eax, eax
dec dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xffffffea
jl 0x100198a1
or ecx, 0xffffffff
mov dword [ebp - 0x40], 0xa2fc53d
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10019a2a
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0xc0], 0x713a473e
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10019a12
xor eax, eax
add dword [ebp - 0xbc], 0x3450
je 0x10019a55
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10019b74
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
jmp 0x10019b74
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x44], 0xcedda565
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov esi, dword [ebp - 0xbc]
sub esi, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xbc]
neg esi
mov eax, dword [ebp - 0x38]
sbb esi, esi
xor edx, edx
inc esi
cmp ecx, eax
mov eax, dword [ebp - 0x34]
setle dl
xor ecx, ecx
cmp esi, eax
setge cl
imul edx, ecx
test edx, edx
je 0x10019ac3
xor eax, eax
mov dword [ebp - 0x4c], 0x2fe8
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0xffffffed
jl 0x10019b31
or eax, 0xffffffff
mov dword [ebp - 0x4c], eax
dec dword [ebp - 0x38]
cmp dword [ebp - 0x38], 0xffffffed
jge 0x10019ab5
jmp 0x10019b31
push edi
lea ecx, [ebp - 0x97c]
call fcn.100144f8
xor eax, eax
mov dword [ebp - 4], 0xb
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x10019afe
push dword [ebp - 0x18]
lea ecx, [ebp - 0x97c]
call fcn.10014565
mov dword [eax], 0x7cba
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x10019ae0
xor eax, eax
mov dword [ebp - 0xbc], eax
lea ecx, [ebp - 0x97c]
push eax
call fcn.10014565
mov ecx, dword [ebp - 0x34]
xor edx, edx
cmp ecx, dword [eax]
lea ecx, [ebp - 0x97c]
setl dl
or eax, 0xffffffff
mov dword [ebp - 0xbc], edx
mov dword [ebp - 4], eax
call fcn.10014560
mov eax, dword [ebp - 0xbc]
xor edx, edx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
cmp eax, 0x6d20
mov eax, dword [ebp - 0xbc]
setge dl
xor ecx, ecx
cmp edx, eax
push 7
setge cl
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x34]
pop ecx
sub ecx, eax
push 2
mov dword [ebp - 0xc0], ecx
pop esi
push ebx
lea ecx, [ebp - 0x230]
call fcn.100144f8
mov dword [ebp - 4], 0xc
mov eax, 0x2272
mov dword [ebp - 0x30], 0xcb457102
mov dword [ebp - 0xc70], eax
mov dword [ebp - 0xc6c], eax
mov dword [ebp - 0xc68], eax
mov dword [ebp - 0xc64], eax
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], ebx
jge 0x10019bd3
push dword [ebp - 0x18]
lea ecx, [ebp - 0x230]
call fcn.10014565
mov dword [eax], 0xb3c692be
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x10019bb5
xor eax, eax
mov dword [ebp - 0x30], esi
cmp dword [ebp - 0x30], eax
jl 0x10019e1d
push 9
pop ecx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x4c], 0x920
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], 0x87b332e0
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 4
jge 0x10019c18
mov eax, dword [ebp - 0x18]
mov dword [ebp + eax*4 - 0x750], 0xfffffff9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 4
jl 0x10019bff
xor eax, eax
mov dword [ebp - 0x744], esi
cmp dword [ebp - 0x744], eax
jl 0x10019c7d
mov dword [ebp - 0x10], 8
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10019c3e
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
xor eax, eax
mov dword [ebp - 0x10], esi
cmp dword [ebp - 0x10], eax
jl 0x10019c75
push dword [ebp - 0x30]
lea ecx, [ebp - 0x230]
call fcn.10014565
push dword [ebp - 0x744]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.10014565
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x10]
jns 0x10019c46
push 2
xor eax, eax
pop esi
dec dword [ebp - 0x744]
jns 0x10019c26
mov dword [ebp - 0x58], eax
jmp 0x10019e0b
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x34], eax
jmp 0x10019dff
mov dword [ebp - 0x18], 0xfffffffe
mov dword [ebp - 0x18], esi
cmp dword [ebp - 0x18], eax
jl 0x10019dfc
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x24], 0x8a9a
mov dword [ebp - 0x3c], ebx
cmp dword [ebp - 0x3c], eax
jl 0x10019df3
push 6
or ebx, 0xffffffff
pop ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x20], esi
cmp dword [ebp - 0x20], eax
jl 0x10019de7
mov dword [ebp - 0x54], ebx
lea ecx, [ebp - 0x230]
push dword [ebp - 0x58]
call fcn.10014565
push dword [ebp - 0x20]
lea ecx, [ebp - 0x230]
mov esi, eax
call fcn.10014565
mov ecx, dword [eax]
mov dword [esi], ecx
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x4c]
xor eax, eax
cmp dword [ebp - 0x3c], eax
jne 0x10019d51
mov eax, dword [ebp - 0x48]
xor ecx, ecx
sub eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x3c]
cmp eax, 0x404d
mov eax, dword [ebp - 0x58]
setne cl
mov dword [ebp + eax*4 - 0x750], ecx
lea eax, [ecx - 6]
test eax, eax
je 0x10019d32
xor eax, eax
cmp dword [ebp - 0x20], eax
je 0x10019d34
mov esi, edi
jmp 0x10019d36
xor eax, eax
mov esi, eax
push dword [ebp - 0x20]
lea ecx, [ebp - 0x230]
call fcn.10014565
mov ecx, dword [ebp - 0x18]
sub esi, ecx
cmp esi, dword [eax]
jne 0x10019d51
xor eax, eax
jmp 0x10019d53
mov eax, edi
mov dword [ebp - 0x44], eax
lea ecx, [ebp - 0x230]
push edi
call fcn.10014565
mov esi, dword [ebp - 0x44]
sub esi, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x48]
neg esi
push 2
sbb esi, esi
xor edx, edx
inc esi
cmp esi, ecx
pop esi
setge dl
cmp edx, dword [eax]
jne 0x10019d8a
push esi
lea ecx, [ebp - 0x230]
call fcn.10014565
push dword [ebp - 0x20]
lea ecx, [ebp - 0x230]
call fcn.10014565
mov ecx, dword [ebp - 0xc68]
xor edx, edx
push 9
cmp ecx, dword [eax]
setge dl
xor eax, eax
cmp edx, ebx
setg al
xor ecx, ecx
cmp eax, 0xebb4ee00
mov eax, dword [ebp - 0x54]
setne cl
sub ecx, eax
cmp ecx, 0xfffffff6
pop ecx
sbb eax, eax
xor edx, edx
neg eax
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x44], ecx
dec dword [ebp - 0x20]
jns 0x10019cd1
push 6
xor eax, eax
pop ecx
dec dword [ebp - 0x3c]
jns 0x10019cbf
push 3
pop ebx
dec dword [ebp - 0x18]
jns 0x10019ca3
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], esi
jle 0x10019c90
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], esi
jle 0x10019c85
dec dword [ebp - 0x30]
jns 0x10019bdf
or eax, 0xffffffff
lea ecx, [ebp - 0x230]
mov dword [ebp - 4], eax
call fcn.10014560
push esi
lea ecx, [ebp - 0xbf8]
call fcn.100144f8
or eax, 0xffffffff
mov dword [ebp - 4], 0xd
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], esi
jge 0x10019e6f
push dword [ebp - 0x18]
lea ecx, [ebp - 0xbf8]
call fcn.10014565
mov dword [eax], 0xf0ea75c9
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], esi
jl 0x10019e51
xor eax, eax
mov dword [ebp - 0x18], edi
cmp dword [ebp - 0x18], eax
jl 0x10019ec2
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10019ea7
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
push 0xc8b
push 0xad1
push 0x24ed
push 0x523
xor edi, edi
push edi
call dword [sym.imp.USER32.dll_TrackPopupMenu]
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x10019eba
push eax
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
xor eax, eax
dec dword [ebp - 0x18]
jns 0x10019e77
xor edi, edi
inc edi
push eax
lea ecx, [ebp - 0xbf8]
call fcn.10014565
lea ecx, [ebp - 0xbf8]
mov eax, dword [eax]
mov dword [ebp - 0x18], eax
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.10014560
push 7
pop eax
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x4b4]
mov dword [ebp - 0x1c], 0xa5043c4a
push ebx
call fcn.100144f8
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x8ac]
mov dword [ebp - 0x48], 0x885b
push ebx
call fcn.100144f8
mov byte [ebp - 4], 0xf
xor eax, eax
mov dword [ebp - 0x10], 0xfffffff7
mov dword [ebp - 0x44], 0x1259
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jge 0x10019f51
push dword [ebp - 0x38]
lea ecx, [ebp - 0x4b4]
call fcn.10014565
mov dword [eax], 0x62daab72
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jl 0x10019f33
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], ebx
jge 0x10019f77
push 7
pop edi
push dword [ebp - 0x38]
lea ecx, [ebp - 0x8ac]
call fcn.10014565
mov dword [eax], edi
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jl 0x10019f5c
xor edi, edi
inc edi
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
je 0x1001a01e
push esi
lea ecx, [ebp - 0x4b4]
call fcn.10014565
xor ebx, ebx
cmp dword [eax], ebx
je 0x10019fb1
push esi
lea ecx, [ebp - 0x4b4]
call fcn.10014565
cmp dword [eax], ebx
je 0x10019fb1
mov esi, edi
jmp 0x10019fb5
xor eax, eax
mov esi, eax
inc dword [ebp - 0x48]
lea ecx, [ebp - 0x4b4]
mov eax, dword [ebp - 0x48]
push 2
call fcn.10014565
xor edx, edx
push 2
mov dword [eax], esi
neg esi
cmp esi, 0x9935ff57
pop esi
setne dl
sub edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
neg edx
push esi
sbb edx, edx
xor ecx, ecx
inc edx
cmp eax, edx
setg cl
xor eax, eax
cmp eax, ecx
mov eax, dword [ebp - 0x20]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setge cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x4b4]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
call fcn.10014565
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [eax]
jg 0x1001a01e
mov ecx, edi
jmp 0x1001a022
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x20]
xor ebx, ebx
cmp ecx, eax
lea ecx, [ebp - 0x8ac]
push esi
setg bl
call fcn.10014565
mov dword [eax], ebx
xor eax, eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x1001a131
mov dword [ebp - 0x50], 0xe69e
lea ecx, [ebp - 0xdc4]
mov dword [ebp - 0x40], 0xa1dc7e90
or ebx, 0xffffffff
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x40], 0xcd5c0f4
mov dword [ebp - 0x40], 0x84085efb
mov dword [ebp - 0x24], 0x6bbbd28a
mov dword [ebp - 0x4c], 0xfffffffd
mov dword [ebp - 0x40], 0x18e6f963
push edi
call fcn.100144f8
mov byte [ebp - 4], 0x10
xor eax, eax
mov dword [ebp - 0x54], 4
mov dword [ebp - 0x18], eax
jmp 0x1001a0b7
push dword [ebp - 0x18]
lea ecx, [ebp - 0xdc4]
call fcn.10014565
mov dword [eax], 0x43ad33dc
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a0a0
mov eax, dword [ebp - 0x50]
lea ecx, [ebp - 0x8ac]
inc dword [ebp - 0x44]
push esi
call fcn.10014565
mov ecx, dword [ebp - 0x4c]
mov edx, ebx
sub edx, ecx
mov esi, eax
add edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x54]
neg edx
push 2
sbb edx, edx
xor eax, eax
neg edx
dec edx
cmp edx, ecx
lea ecx, [ebp - 0x4b4]
setle al
xor ebx, ebx
cmp dword [esi], eax
pop esi
push esi
setg bl
call fcn.10014565
xor ecx, ecx
mov dword [eax], ebx
mov eax, dword [ebp - 0x24]
cmp ebx, eax
setl cl
sub ecx, dword [ebp - 0x50]
add ecx, 0x435c
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0xdc4]
mov byte [ebp - 4], 0xf
call fcn.10014560
dec dword [ebp - 0x1c]
jns 0x1001a04b
lea ecx, [ebp - 0x8ac]
call fcn.10014560
or ebx, 0xffffffff
lea ecx, [ebp - 0x4b4]
mov dword [ebp - 4], ebx
call fcn.10014560
push 9
pop eax
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x44], 0x33fd
push 3
mov dword [ebp - 0x38], eax
pop ebx
cmp dword [ebp - 0x38], ebx
jge 0x1001a185
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0xf08], 0x21b0ae28
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jl 0x1001a16d
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], edi
jge 0x1001a1a1
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x5c8], edi
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], edi
jl 0x1001a18d
xor eax, eax
mov byte [ebp - 0x11], al
cmp byte [ebp - 0x11], 0
je 0x1001a1b2
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
mov eax, dword [ebp - 0x18]
or eax, 0xffffffff
mov dword [ebp - 0xf00], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [ebp - 0x5c8]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0xf00]
dec eax
push 9
pop ecx
cmp ecx, eax
mov eax, dword [ebp - 0x18]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp eax, ecx
setg dl
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x44]
sub edx, 0x5f5a2f6
neg edx
sbb edx, edx
inc edx
imul ecx, edx, 0xfffb
xor edx, edx
cmp ecx, eax
setne dl
xor eax, eax
cmp edx, 0x458a922a
setle al
sub eax, 0xcf8b
imul eax, dword [ebp - 0x18]
add eax, 0xfffffffb
neg eax
sbb eax, eax
or ecx, 0xffffffff
inc eax
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x44], 0xb786
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], edi
jge 0x1001a253
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x70], 0x8eac8b13
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], edi
jl 0x1001a23e
xor eax, eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], esi
jge 0x1001a270
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x7c], 0xcb50bf34
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], esi
jl 0x1001a25b
xor eax, eax
mov dword [ebp - 0x7c], eax
or esi, 0xffffffff
cmp dword [ebp - 0x7c], eax
jl 0x1001a3cc
push 4
lea ecx, [ebp - 0x3f4]
call fcn.100144f8
xor eax, eax
mov dword [ebp - 4], 0x11
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 4
jge 0x1001a2bd
push dword [ebp - 0x38]
lea ecx, [ebp - 0x3f4]
call fcn.10014565
mov dword [eax], 0xa1cf0415
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], 4
jl 0x1001a29e
xor eax, eax
mov dword [ebp - 0x38], eax
jmp 0x1001a2d3
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0xddc], 0x43eef7d
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ebx
jl 0x1001a2c2
mov eax, dword [ebp - 0x7c]
cmp dword [ebp + eax*4 - 0x70], 0
jne 0x1001a3be
mov eax, dword [ebp - 0x7c]
xor edx, edx
mov ecx, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp + eax*4 - 0x70]
cmp ecx, eax
mov eax, dword [ebp - 0x70]
setl dl
sub edx, eax
mov eax, dword [ebp - 0x7c]
imul eax, edx
test eax, eax
jne 0x1001a311
mov edx, eax
cmp dword [ebp - 0x7c], eax
je 0x1001a313
mov edx, edi
mov eax, dword [ebp - 0x7c]
xor ecx, ecx
push edi
mov eax, dword [ebp + eax*4 - 0x70]
cmp eax, edx
mov eax, dword [ebp - 0x7c]
setle cl
xor ebx, ebx
mov eax, dword [ebp + eax*4 - 0x70]
add ecx, eax
mov eax, dword [ebp - 0x7c]
cmp eax, ecx
lea ecx, [ebp - 0x3f4]
setge bl
call fcn.10014565
xor ecx, ecx
mov dword [eax], ebx
mov dword [ebp - 0xddc], ebx
mov eax, dword [ebp - 0x7c]
mov eax, dword [ebp + eax*4 - 0x70]
cmp ebx, eax
mov eax, dword [ebp - 0x7c]
setle cl
mov eax, dword [ebp + eax*4 - 0x70]
sub ecx, eax
mov eax, dword [ebp - 0x7c]
cmp ecx, dword [ebp + eax*4 - 0x70]
jne 0x1001a36b
lea ecx, [ebp - 0x3f4]
mov dword [ebp - 4], esi
call fcn.10014560
mov eax, dword [ebp - 0x7c]
xor edx, edx
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x7c]
add eax, ecx
add dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
setl dl
xor eax, eax
add edx, 4
je 0x1001a3fb
cmp dword [ebp - 0x18], eax
je 0x1001a3fb
mov eax, edi
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0x18]
sub ecx, eax
neg ecx
push 9
sbb ecx, ecx
xor eax, eax
inc ecx
cmp eax, ecx
mov eax, dword [ebp - 0x70]
sbb ecx, ecx
xor edx, edx
neg ecx
cmp ecx, eax
mov eax, dword [ebp - 0x44]
setg dl
xor ecx, ecx
cmp edx, eax
pop eax
setg cl
mov dword [ebp - 0x4c], ecx
lea ecx, [ebp - 0x994]
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x20], 0xfffffff6
mov dword [ebp - 0x1c], 0xfffffff9
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x44], 0x6a0122d8
mov dword [ebp - 0x44], edi
push edi
call fcn.100144f8
xor eax, eax
mov dword [ebp - 4], 0x12
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], edi
jge 0x1001a488
push dword [ebp - 0x18]
lea ecx, [ebp - 0x994]
call fcn.10014565
mov dword [eax], esi
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jl 0x1001a46e
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1001a4cd
mov eax, dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x20]
add edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
cmp edx, eax
setg cl
cmp ecx, dword [ebp - 0x38]
jne 0x1001a4cd
xor eax, eax
jmp 0x1001a4cf
mov eax, edi
xor edx, edx
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setge dl
sub edx, dword [ebp - 0x3c]
neg edx
sbb edx, edx
inc edx
imul edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x38]
jne 0x1001a4f7
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x1001a4f9
mov eax, edi
xor edx, edx
cmp eax, 0xfffe
mov eax, dword [ebp - 0x3c]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x44], ecx
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x3c]
add eax, 0xffffdf46
add ecx, eax
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
setl dl
imul edx, dword [ebp - 0x3c]
test edx, edx
jne 0x1001a538
xor eax, eax
mov ebx, eax
cmp dword [ebp - 0x20], eax
je 0x1001a53a
mov ebx, edi
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
cmp eax, 0x6cc72b75
setge cl
xor edx, edx
mov dword [ebp - 0x48], ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x48]
cmp eax, ecx
mov esi, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
setne dl
sub esi, edx
neg esi
sbb esi, esi
xor ecx, ecx
add eax, ebx
inc esi
cmp esi, eax
setge cl
xor eax, eax
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0x994]
push eax
call fcn.10014565
mov edx, dword [ebp - 0x20]
mov esi, eax
mov ecx, dword [ebp - 0x38]
xor eax, eax
cmp edx, ecx
lea ecx, [ebp - 0x994]
setl al
or ebx, 0xffffffff
mov dword [esi], eax
mov dword [ebp - 4], ebx
call fcn.10014560
mov dword [ebp - 0x4c], 0x426ae69e
lea ecx, [ebp - 0x2a8]
push 2
call fcn.100144f8
mov dword [ebp - 4], 0x13
xor eax, eax
push 0xfffffffffffffff6
pop esi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x60], 0x8907
mov dword [ebp - 0x30], 0x78cd
mov dword [ebp - 0x48], 5
push 3
mov dword [ebp - 0x38], eax
pop ecx
cmp dword [ebp - 0x38], ecx
jge 0x1001a601
mov eax, dword [ebp - 0x38]
mov dword [ebp + eax*4 - 0x13c], 0xfffffffc
inc dword [ebp - 0x38]
cmp dword [ebp - 0x38], ecx
jl 0x1001a5e9
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 2
jge 0x1001a629