Function at 0x10030c0b
Capabilities:
Check for time delay via gettickcount
Check os version
Delete directory
Enumerate gui resources
Extract resource via kernel32 functions
Get common file path
Get disk size
Get file attributes
Get file size
Get file system object information
Get geographical location
Get graphical window text
Identify system language via api
Log keystrokes
Log keystrokes via polling
Modify service
Parse pe header
Query environment variable
Read .ini file
Set registry value

Disassembly:
mov eax, 0x1008602d
call fcn.10084b78
mov eax, 0x1944
call fcn.1007fb60
push ebx
push esi
xor esi, esi
mov dword [ebp - 0x5c], ecx
push edi
inc esi
mov byte [ebp - 0x61], dl
push esi
lea ecx, [ebp - 0xe28]
call fcn.10016b30
xor eax, eax
mov dword [ebp - 4], eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10030c62
push dword [ebp - 0x14]
lea ecx, [ebp - 0xe28]
call fcn.10016b9d
mov dword [eax], 0xd3df75dc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030c44
xor eax, eax
mov dword [ebp - 0x14], eax
push 6
pop ecx
cmp dword [ebp - 0x14], esi
jge 0x10030c81
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xc4], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030c6d
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_GetMenu]
mov ebx, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ebp - 0xc4], eax
jmp 0x10030cab
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030ca5
call ebx
push eax
call edi
xor eax, eax
inc dword [ebp - 0xc4]
cmp dword [ebp - 0xc4], eax
jle 0x10030c95
or eax, 0xffffffff
lea ecx, [ebp - 0xe28]
mov dword [ebp - 4], eax
call fcn.10016b98
push esi
lea ecx, [ebp - 0x1010]
call fcn.10016b30
xor eax, eax
mov dword [ebp - 4], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10030cfb
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1010]
call fcn.10016b9d
mov dword [eax], 0xd3df75dc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030cdd
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10030d1b
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xe4], 6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030d03
xor eax, eax
mov dword [ebp - 0xe4], eax
jmp 0x10030d39
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x10030d33
call ebx
push eax
call edi
xor eax, eax
inc dword [ebp - 0xe4]
cmp dword [ebp - 0xe4], eax
jle 0x10030d23
or eax, 0xffffffff
lea ecx, [ebp - 0x1010]
mov dword [ebp - 4], eax
call fcn.10016b98
push 7
pop eax
mov dword [ebp - 0x2c], eax
push 2
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x30], 0xfffffffa
pop ebx
mov dword [ebp - 0x2c], 0xffffffe5
cmp dword [ebp - 0x2c], 0xfffffff2
push 0xfffffffffffffff7
pop ecx
jle 0x10030e5e
xor eax, eax
mov dword [ebp - 0x24], 0x13dce9d0
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10030da6
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x750], 0xea66
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10030d8e
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffe9
jge 0x10030e51
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x10], 0xd
jmp 0x10030e1a
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10030de2
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x750], 0xb60e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10030dca
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff2
jg 0x10030e17
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x10030e09
push 0x1fcb
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff2
jle 0x10030deb
push 0xfffffffffffffff7
xor eax, eax
pop ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jl 0x10030dbf
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x750]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x750]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
or eax, 0xffffffff
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe9
push 0
pop eax
jl 0x10030db3
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff2
jg 0x10030d7f
movdqa xmm0, xmmword [0x10007f00]
lea eax, [ebp - 0x1404]
push eax
lea eax, [ebp - 0x1414]
mov dword [ebp - 0x28], 0xb51dba33
mov dword [ebp - 0x2c], 0xab72b21a
lea ecx, [ebp - 0x1784]
push eax
movdqu xmmword [ebp - 0x1414], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x131]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x714]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], ebx
mov dword [ebp - 0x3c], 0x586fd5d7
push 6
pop eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x30], 0x9b780f88
mov eax, dword [ebp - 0x28]
inc dword [ebp - 0x3c]
mov eax, 0xfffffc28
mov ecx, dword [ebp - 0x2c]
sub eax, ecx
mov dword [ebp - 0x3c], eax
lea ecx, [ebp - 0x714]
xor eax, eax
push eax
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
xor edx, edx
push 2
cmp ecx, dword [eax]
lea ecx, [ebp - 0x714]
setl dl
xor eax, eax
inc eax
xor ebx, ebx
cmp edx, eax
setge bl
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
mov esi, eax
xor eax, eax
cmp ebx, ecx
mov ecx, dword [ebp - 0x28]
setle al
xor edx, edx
cmp ecx, eax
setle dl
xor ecx, ecx
cmp edx, dword [esi]
setle cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], 3
cmp dword [ebp - 0x2c], eax
jl 0x10030f61
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x714]
call fcn.10016b9d
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x714]
mov esi, eax
call fcn.10016b9d
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x2c]
jns 0x10030f3a
or eax, 0xffffffff
lea ecx, [ebp - 0x714]
mov dword [ebp - 4], eax
call fcn.10016b98
xor ebx, ebx
lea ecx, [ebp - 0x1028]
inc ebx
push ebx
call fcn.10016b30
push 3
pop ecx
mov dword [ebp - 4], ecx
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0x7f39cee2
mov dword [ebp - 0x30], 0x33ecdc0f
mov dword [ebp - 0x48], 0x2a93
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10030fc1
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7e0], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x10030fa9
xor eax, eax
push 2
mov dword [ebp - 0x14], eax
pop esi
cmp dword [ebp - 0x14], esi
jge 0x10030fe4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x9c4], 0x900b0881
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10030fcc
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1003117a
mov dword [ebp - 0x14], 0x256a9ef7
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x30], 0xa117216
mov dword [ebp - 0x10], 0x52b3395c
mov dword [ebp - 0x34], 0x2d863e32
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0x67519ba6
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x100310cd
mov dword [ebp - 0x10], 0xfffffffc
xor edx, edx
mov eax, dword [ebp - 0x14]
mov ecx, 0x4fd5
mov eax, dword [ebp - 0x14]
cmp eax, 0xdd48
mov eax, dword [ebp - 0x28]
setl dl
sub ecx, edx
xor edx, edx
add ecx, eax
mov dword [ebp - 0x9c0], ecx
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setge dl
xor eax, eax
cmp edx, 0x7fc0
setg al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x9c0]
sub eax, 0x6717b38e
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x7e0]
mov eax, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x7dc]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x7e0]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
dec dword [ebp - 0x14]
jns 0x10031021
xor eax, eax
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x10031177
push esi
lea ecx, [ebp - 0xe40]
call fcn.10016b30
mov byte [ebp - 4], 4
xor eax, eax
mov dword [ebp - 0x34], 0x7d051992
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10031118
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe40]
call fcn.10016b9d
mov dword [eax], 0x5d3c
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x100310fa
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jg 0x1003115d
or ecx, 0xffffffff
mov dword [ebp - 0x34], 0x8f98
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x24], eax
jmp 0x1003113f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x186c], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10031132
dec dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
push 0
mov eax, dword [ebp + eax*4 - 0x7e0]
inc dword [ebp - 0x10]
pop eax
cmp dword [ebp - 0x10], esi
jle 0x10031123
lea ecx, [ebp - 0xe40]
mov byte [ebp - 4], 3
call fcn.10016b98
dec dword [ebp - 0x14]
jns 0x100310d9
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10030fec
mov dword [ebp - 0x14], eax
jmp 0x1003119f
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1028]
call fcn.10016b9d
mov dword [eax], 0xd3df75dc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031188
movdqa xmm0, xmmword [0x10007f60]
lea eax, [ebp - 0x11e4]
push eax
lea eax, [ebp - 0x11f4]
push eax
lea ecx, [ebp - 0x15cc]
movdqu xmmword [ebp - 0x11f4], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x12a]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x10ec]
push dword [esi]
call fcn.10016b72
push 5
pop eax
push 3
pop esi
mov byte [ebp - 4], al
lea ecx, [ebp - 0x10ec]
mov dword [ebp - 0x28], 0x3b6182ea
push esi
call fcn.10016b9d
and dword [eax], 0
xor eax, eax
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x10031231
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x1003122c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_DrawMenuBar]
xor eax, eax
dec dword [ebp - 0x28]
jns 0x10031214
lea ecx, [ebp - 0x10ec]
mov byte [ebp - 4], 3
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031262
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xcc], 6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003124a
xor eax, eax
mov dword [ebp - 0xcc], eax
push 0xfffffffffffffffe
pop esi
cmp dword [ebp - 0xcc], eax
jg 0x10031698
jmp 0x1003127b
xor eax, eax
mov dword [ebp - 0x24], 0xa61928c1
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x10
jg 0x1003132f
push ebx
lea ecx, [ebp - 0x4d0]
call fcn.10016b30
push 6
pop eax
mov byte [ebp - 4], al
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100312c9
push dword [ebp - 0x10]
lea ecx, [ebp - 0x4d0]
call fcn.10016b9d
mov dword [eax], 0xaa9ac70c
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100312ab
xor eax, eax
push eax
lea ecx, [ebp - 0x4d0]
call fcn.10016b9d
mov dword [eax], 0xfffffff9
jmp 0x100312fe
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x100312f0
push eax
call dword [sym.imp.KERNEL32.dll_EncodePointer]
xor eax, eax
push eax
lea ecx, [ebp - 0x4d0]
call fcn.10016b9d
inc dword [eax]
xor eax, eax
lea ecx, [ebp - 0x4d0]
push eax
call fcn.10016b9d
cmp dword [eax], 0x10
jl 0x100312dd
lea ecx, [ebp - 0x4d0]
mov byte [ebp - 4], 3
call fcn.10016b98
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x10
jle 0x1003128f
xor eax, eax
mov byte [ebp - 0x15], al
lea ecx, [ebp - 0x270]
push 3
call fcn.10016b30
push 7
pop eax
mov byte [ebp - 4], al
lea ecx, [ebp - 0xe50]
mov dword [ebp - 0x1c], 0xba394643
xor eax, eax
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x3c], 0x15b45bea
push 2
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], eax
pop esi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], ebx
push esi
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 8
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x1003139d
push dword [ebp - 0x14]
lea ecx, [ebp - 0x270]
call fcn.10016b9d
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10031382
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x100313c3
push dword [ebp - 0x14]
lea ecx, [ebp - 0xe50]
call fcn.10016b9d
mov dword [eax], 0xb82aec7f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100313a5
xor eax, eax
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], 0
je 0x100313d9
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor eax, eax
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x10031658
jmp 0x100313e9
xor eax, eax
mov dword [ebp - 0x28], ebx
or ecx, 0xffffffff
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x3c], 0x684a08de
mov dword [ebp - 0x3c], 0x369e
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x10031422
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x18fc], 0xb4ff5102
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x10031409
xor eax, eax
dec dword [ebp - 0x28]
lea ecx, [ebp - 0x270]
mov dword [ebp - 0x10], eax
push dword [ebp - 0x1c]
call fcn.10016b9d
imul esi, dword [ebp - 0x10], 0xfffc
lea ecx, [ebp - 0x270]
push ebx
sub esi, dword [eax]
neg esi
sbb esi, esi
inc esi
call fcn.10016b9d
cmp esi, dword [eax]
jge 0x100315d4
push 2
pop esi
xor eax, eax
mov dword [ebp - 0x24], 0x95d
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0xa6c]
push esi
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 9
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031499
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x65c], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031481
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x100314b5
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa6c]
call fcn.10016b9d
mov dword [eax], 8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003149e
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setg dl
cmp edx, ebx
jle 0x10031595
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x658], eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
sub ecx, dword [ebp - 0x28]
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x270]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
xor eax, eax
push eax
call fcn.10016b9d
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x270]
call fcn.10016b9d
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
sub edx, 0xb03c3fa3
neg edx
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, ecx
lea ecx, [ebp - 0x270]
setne bl
sub ebx, dword [eax]
neg ebx
sbb ebx, ebx
xor eax, eax
push eax
inc ebx
call fcn.10016b9d
mov ecx, dword [ebp - 0x2c]
xor edx, edx
cmp ebx, ecx
setle dl
cmp edx, dword [eax]
jle 0x10031563
xor eax, eax
cmp dword [ebp - 0x658], eax
jne 0x10031563
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x10031568
xor ebx, ebx
inc ebx
mov esi, ebx
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x270]
call fcn.10016b9d
mov ecx, dword [ebp - 0x2c]
sub esi, ecx
xor ecx, ecx
cmp esi, dword [eax]
setle cl
mov dword [ebp - 0x3c], ecx
imul eax, dword [ebp - 0x3c], 0xfffa
cmp eax, dword [ebp - 0x24]
jg 0x10031595
mov ecx, ebx
jmp 0x10031599
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
imul eax, ecx
test eax, eax
jne 0x100315a6
mov eax, dword [ebp - 0x2c]
push ebx
lea ecx, [ebp - 0xa6c]
call fcn.10016b9d
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x270]
call fcn.10016b9d
mov ecx, dword [ebp - 0x65c]
mov byte [ebp - 4], 8
mov dword [eax], ecx
lea ecx, [ebp - 0xa6c]
jmp 0x1003164a
movdqa xmm0, xmmword [0x10007f70]
lea eax, [ebp - 0x1324]
push eax
lea eax, [ebp - 0x1334]
mov dword [ebp - 0x34], ebx
push eax
lea ecx, [ebp - 0x16ac]
movdqu xmmword [ebp - 0x1334], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x132]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1518]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 0x34], 0xfffffff8
xor eax, eax
inc dword [ebp - 0x3c]
mov byte [ebp - 0x51], al
cmp byte [ebp - 0x51], al
je 0x10031644
push 0x2378
push eax
push 0x65a
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [ebp - 0x1518]
call fcn.10016b98
dec dword [ebp - 0x1c]
jns 0x100313e7
lea ecx, [ebp - 0xe50]
call fcn.10016b98
lea ecx, [ebp - 0x270]
mov byte [ebp - 4], 3
call fcn.10016b98
cmp byte [ebp - 0x15], 0
je 0x10031681
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call edi
inc dword [ebp - 0xcc]
xor eax, eax
push 0xfffffffffffffffe
pop esi
cmp dword [ebp - 0xcc], eax
jle 0x10031279
or eax, 0xffffffff
lea ecx, [ebp - 0x1028]
mov dword [ebp - 4], eax
call fcn.10016b98
push 4
lea ecx, [ebp - 0x88]
call fcn.10016b30
lea eax, [ebp - 0x1204]
mov dword [ebp - 4], 0xa
movdqa xmm0, xmmword [0x10007ef0]
lea ecx, [ebp - 0x15dc]
push eax
lea eax, [ebp - 0x1214]
push eax
movdqu xmmword [ebp - 0x1214], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x19d]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x4a0]
push dword [esi]
call fcn.10016b72
xor edi, edi
mov byte [ebp - 4], 0xb
inc edi
xor eax, eax
mov dword [ebp - 0x28], edi
push 3
mov dword [ebp - 0x20], eax
pop ebx
cmp dword [ebp - 0x20], ebx
jge 0x10031733
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x3d4], 0x64a6847d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x1003171b
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x1003175b
push dword [ebp - 0x20]
lea ecx, [ebp - 0x88]
call fcn.10016b9d
mov dword [eax], 0xb871c7bf
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x1003173c
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], edi
jge 0x1003177a
or ecx, 0xffffffff
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xe8], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], edi
jl 0x10031766
xor eax, eax
push eax
lea ecx, [ebp - 0x88]
call fcn.10016b9d
push 2
pop esi
lea ecx, [ebp - 0x88]
mov dword [eax], esi
xor eax, eax
push eax
call fcn.10016b9d
mov ecx, 0x4a87fce6
cmp dword [eax], 0
jl 0x10031b74
mov dword [ebp - 0x350], ecx
xor eax, eax
mov dword [ebp - 0x34c], ecx
mov dword [ebp - 0x348], ecx
mov dword [ebp - 0x344], ecx
mov dword [ebp - 0x24], 0x84868fda
mov dword [ebp - 0x30], 0xbadbefc7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x100317eb
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xd4], edi
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x100317d7
xor eax, eax
push eax
lea ecx, [ebp - 0x88]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x88]
push eax
call fcn.10016b9d
push edi
lea ecx, [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x3d4], 0x3d9b9503
call fcn.10016b9d
mov ecx, dword [ebp - 0x344]
xor edx, edx
cmp ecx, 0x2a30
lea ecx, [ebp - 0x88]
setg dl
xor ebx, ebx
cmp edx, dword [eax]
setl bl
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0x88]
mov esi, dword [eax]
xor eax, eax
push eax
imul esi, ebx
call fcn.10016b9d
xor ecx, ecx
cmp dword [eax], 6
setne cl
xor eax, eax
add ecx, 0x3d9b9503
add esi, ecx
lea ecx, [ebp - 0x88]
push eax
call fcn.10016b9d
xor ebx, ebx
lea ecx, [ebp - 0x88]
push 2
cmp esi, dword [eax]
setg bl
call fcn.10016b9d
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
mov dword [ebp - 0x344], ecx
cmp ecx, dword [ebp - 0xd4]
jg 0x100318b1
xor eax, eax
push 3
pop ebx
cmp dword [ebp - 0x24], eax
jne 0x10031b71
jmp 0x10031a88
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x28], eax
jne 0x10031912
push eax
lea ecx, [ebp - 0x88]
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3d4]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x1003190e
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10031914
mov esi, eax
jmp 0x10031916
xor eax, eax
mov esi, edi
push 3
pop ebx
mov dword [ebp - 0xe8], ebx
lea ecx, [ebp - 0x4a0]
push eax
call fcn.10016b9d
push ebx
lea ecx, [ebp - 0x88]
mov dword [eax], ebx
mov dword [ebp - 0x3c], esi
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, ebx
setne cl
add ecx, dword [eax]
xor eax, eax
cmp ecx, 0x2ca1
setge al
xor ecx, ecx
imul edx, eax, 0xffff
mov dword [ebp - 0x348], edx
mov eax, dword [ebp - 0x24]
cmp edx, eax
setg cl
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x2c], 0x10
jmp 0x10031a7e
mov dword [ebp - 0x28], 0x1b63
xor eax, eax
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100319b0
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x954], 0xd553b787
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x10031997
xor eax, eax
cmp dword [ebp - 0xd4], eax
je 0x10031a5f
push edi
lea ecx, [ebp - 0x88]
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
xor edx, edx
cmp dword [eax], ecx
mov eax, 0x5a6edb5b
mov ecx, dword [ebp - 0x28]
setne dl
sub eax, edx
add ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x28]
jle 0x100319eb
mov eax, dword [ebp - 0x28]
xor eax, eax
lea ecx, [ebp - 0x4a0]
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x4a0]
xor eax, eax
push eax
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x4a0]
push eax
call fcn.10016b9d
mov dword [ebp - 0x3c], 0x4f79aabf
lea ecx, [ebp - 0x88]
mov esi, dword [ebp - 0x3c]
xor eax, eax
add esi, 0x17887b34
mov dword [ebp - 0x954], esi
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov edx, dword [ebp + eax*4 - 0x3d4]
xor eax, eax
cmp esi, 0x59016633
setle al
xor ecx, ecx
cmp eax, edx
setl cl
cmp ecx, dword [ebp - 0x3cc]
jle 0x10031a65
mov eax, dword [ebp - 0x954]
mov eax, dword [ebp - 0xd4]
xor ecx, ecx
or edx, 0xffffffff
cmp eax, edx
setge cl
mov dword [ebp - 0x344], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x22
jne 0x10031982
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x10031aa4
push eax
lea ecx, [ebp - 0x88]
call fcn.10016b9d
mov eax, dword [ebp - 0xe8]
lea ecx, [ebp - 0x88]
mov eax, dword [ebp - 0x344]
xor eax, eax
push eax
call fcn.10016b9d
push 7
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3d4]
pop eax
cmp dword [ebp - 0x3cc], eax
jl 0x10031ad8
mov eax, dword [ebp - 0xd4]
push ebx
lea ecx, [ebp - 0x88]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x4a0]
push eax
call fcn.10016b9d
push ebx
lea ecx, [ebp - 0x88]
call fcn.10016b9d
lea ecx, [ebp - 0x88]
mov eax, dword [eax]
mov dword [ebp - 0xe8], eax
xor eax, eax
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3d4]
mov ecx, dword [ebp - 0xe8]
sub ecx, eax
je 0x10031b2d
mov eax, dword [ebp - 0x344]
push ebx
lea ecx, [ebp - 0x88]
call fcn.10016b9d
mov eax, dword [ebp - 0x344]
lea ecx, [ebp - 0x88]
mov dword [ebp - 0xd4], eax
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0x88]
dec dword [eax]
xor eax, eax
push eax
call fcn.10016b9d
mov ecx, 0x4a87fce6
cmp dword [eax], 0
jge 0x100317a7
push 2
pop esi
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10031b84
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
lea ecx, [ebp - 0x4a0]
call fcn.10016b98
or eax, 0xffffffff
lea ecx, [ebp - 0x88]
mov dword [ebp - 4], eax
call fcn.10016b98
push 7
pop eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 0xfffffffa
mov dword [ebp - 0x2c], 0xffffffe5
cmp dword [ebp - 0x2c], 0xfffffff2
jle 0x10031ca3
xor eax, eax
mov dword [ebp - 0x24], 0x13dce9d0
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10031bea
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x764], 0xea66
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031bd2
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffe9
jge 0x10031c96
mov dword [ebp - 0x10], edi
mov dword [ebp - 0x10], 0xd
jmp 0x10031c5f
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x10031c2a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x764], 0xb60e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031c12
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff2
jg 0x10031c5c
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10031c51
push 0x1fcb
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff2
jle 0x10031c33
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jl 0x10031c03
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x764]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x764]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
or eax, 0xffffffff
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe9
push 0
pop eax
jl 0x10031bf7
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff2
jg 0x10031bc3
push ebx
lea ecx, [ebp - 0xc10]
call fcn.10016b30
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0xe68]
or esi, 0xffffffff
mov dword [ebp - 0x10], 0x8ade19d2
mov dword [ebp - 0x34], esi
push ebx
call fcn.10016b30
mov byte [ebp - 4], 0xd
xor eax, eax
mov dword [ebp - 0x34], 0xe1c97412
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031d05
push dword [ebp - 0x14]
lea ecx, [ebp - 0xc10]
call fcn.10016b9d
mov dword [eax], 0x648
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031ce7
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031d2b
push dword [ebp - 0x14]
lea ecx, [ebp - 0xe68]
call fcn.10016b9d
mov dword [eax], 0x4f2887cf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031d0d
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10031d47
push dword [ebp - 0x10]
lea ecx, [ebp - 0xc10]
call fcn.10016b9d
mov dword [eax], 7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10031d30
dec dword [ebp - 0x3c]
lea ecx, [ebp - 0xe68]
call fcn.10016b98
lea ecx, [ebp - 0xc10]
mov dword [ebp - 4], esi
call fcn.10016b98
movdqa xmm0, xmmword [0x10007f00]
lea eax, [ebp - 0x13c4]
push eax
lea eax, [ebp - 0x13d4]
mov dword [ebp - 0x28], 0xb51dba33
mov dword [ebp - 0x2c], 0xab72b21a
lea ecx, [ebp - 0x170c]
push eax
movdqu xmmword [ebp - 0x13d4], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x126]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x7fc]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], 0xe
mov ecx, 0xfffffc28
mov dword [ebp - 0x3c], 0x586fd5d7
push 6
pop eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x30], 0x9b780f88
mov eax, dword [ebp - 0x28]
inc dword [ebp - 0x3c]
mov eax, dword [ebp - 0x2c]
sub ecx, eax
mov dword [ebp - 0x3c], ecx
xor eax, eax
push eax
lea ecx, [ebp - 0x7fc]
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
xor edx, edx
push 2
cmp ecx, dword [eax]
lea ecx, [ebp - 0x7fc]
setl dl
xor ebx, ebx
cmp edx, edi
setge bl
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
mov esi, eax
xor eax, eax
cmp ebx, ecx
mov ecx, dword [ebp - 0x28]
setle al
xor edx, edx
cmp ecx, eax
push 3
setle dl
xor ecx, ecx
cmp edx, dword [esi]
pop ebx
setle cl
xor eax, eax
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0x2c], eax
jl 0x10031e6b
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x7fc]
call fcn.10016b9d
push dword [ebp - 0x2c]
lea ecx, [ebp - 0x7fc]
mov esi, eax
call fcn.10016b9d
mov ecx, dword [esi]
mov dword [eax], ecx
dec dword [ebp - 0x2c]
jns 0x10031e44
or eax, 0xffffffff
lea ecx, [ebp - 0x7fc]
mov dword [ebp - 4], eax
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], 0x7f39cee2
mov dword [ebp - 0x30], 0x33ecdc0f
mov dword [ebp - 0x48], 0x2a93
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10031eb6
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x728], 9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10031e9e
xor eax, eax
push 2
mov dword [ebp - 0x14], eax
pop esi
cmp dword [ebp - 0x14], esi
jge 0x10031ed9
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x95c], 0x900b0881
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x10031ec1
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1003206d
mov dword [ebp - 0x14], 0x256a9ef7
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x30], 0xa117216
mov dword [ebp - 0x10], 0x52b3395c
mov dword [ebp - 0x34], 0x2d863e32
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0x67519ba6
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x10031fc2
mov dword [ebp - 0x10], 0xfffffffc
xor edx, edx
mov eax, dword [ebp - 0x14]
mov ecx, 0x4fd5
mov eax, dword [ebp - 0x14]
cmp eax, 0xdd48
mov eax, dword [ebp - 0x28]
setl dl
sub ecx, edx
xor edx, edx
add ecx, eax
mov dword [ebp - 0x958], ecx
mov eax, dword [ebp - 0x24]
cmp ecx, eax
setge dl
xor eax, eax
cmp edx, 0x7fc0
setg al
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
sub eax, dword [ebp - 0x24]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x958]
sub eax, 0x6717b38e
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x728]
mov eax, dword [ebp - 0x728]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x724]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x48]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp + eax*4 - 0x728]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x10], eax
dec dword [ebp - 0x14]
jns 0x10031f16
xor eax, eax
mov dword [ebp - 0x14], esi
cmp dword [ebp - 0x14], eax
jl 0x1003206a
push esi
lea ecx, [ebp - 0x1174]
call fcn.10016b30
mov dword [ebp - 4], 0xf
xor eax, eax
mov dword [ebp - 0x34], 0x7d051992
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10032010
push dword [ebp - 0x10]
lea ecx, [ebp - 0x1174]
call fcn.10016b9d
mov dword [eax], 0x5d3c
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10031ff2
xor eax, eax
mov dword [ebp - 0x10], eax
or ecx, 0xffffffff
cmp dword [ebp - 0x10], esi
jg 0x10032051
mov dword [ebp - 0x34], 0x8f98
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x24], eax
jmp 0x10032037
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x1848], ecx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], ebx
jl 0x1003202a
dec dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
push 0
mov eax, dword [ebp + eax*4 - 0x728]
inc dword [ebp - 0x10]
pop eax
jmp 0x10032016
mov dword [ebp - 4], ecx
lea ecx, [ebp - 0x1174]
call fcn.10016b98
dec dword [ebp - 0x14]
jns 0x10031fce
xor eax, eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jle 0x10031ee1
push edi
lea ecx, [ebp - 0x1100]
call fcn.10016b30
lea eax, [ebp - 0x1224]
mov dword [ebp - 4], 0x10
movdqa xmm0, xmmword [0x10007f60]
lea ecx, [ebp - 0x15d4]
push eax
lea eax, [ebp - 0x1234]
push eax
movdqu xmmword [ebp - 0x1234], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x134]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xe80]
push dword [esi]
call fcn.10016b72
mov byte [ebp - 4], 0x11
lea ecx, [ebp - 0xe80]
mov dword [ebp - 0x28], 0x3b6182ea
push ebx
call fcn.10016b9d
and dword [eax], 0
xor eax, eax
mov dword [ebp - 0x28], ebx
cmp dword [ebp - 0x28], eax
jl 0x10032111
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x1003210c
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_DrawMenuBar]
xor eax, eax
dec dword [ebp - 0x28]
jns 0x100320f4
lea ecx, [ebp - 0xe80]
mov byte [ebp - 4], 0x10
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0x24], 0xa61928c1
mov dword [ebp - 0x24], eax
jmp 0x100321c3
push edi
lea ecx, [ebp - 0x4b8]
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x10032169
push dword [ebp - 0x10]
lea ecx, [ebp - 0x4b8]
call fcn.10016b9d
mov dword [eax], 0xaa9ac70c
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x1003214b
xor eax, eax
push eax
lea ecx, [ebp - 0x4b8]
call fcn.10016b9d
mov dword [eax], 0xfffffff9
jmp 0x1003219e
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10032190
push eax
call dword [sym.imp.KERNEL32.dll_EncodePointer]
xor eax, eax
push eax
lea ecx, [ebp - 0x4b8]
call fcn.10016b9d
inc dword [eax]
xor eax, eax
lea ecx, [ebp - 0x4b8]
push eax
call fcn.10016b9d
cmp dword [eax], 0x10
jl 0x1003217d
lea ecx, [ebp - 0x4b8]
mov byte [ebp - 4], 0x10
call fcn.10016b98
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x10
jle 0x10032131
push ebx
lea ecx, [ebp - 0x288]
call fcn.10016b30
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x1040]
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x1c], 0xba394643
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x3c], 0x15b45bea
push 2
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], eax
pop esi
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], edi
push esi
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032236
push dword [ebp - 0x14]
lea ecx, [ebp - 0x288]
call fcn.10016b9d
mov dword [eax], edi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003221c
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x1003225c
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1040]
call fcn.10016b9d
mov dword [eax], 0xb82aec7f
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x1003223e
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032272
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor eax, eax
mov dword [ebp - 0x1c], esi
cmp dword [ebp - 0x1c], eax
jl 0x100324ef
jmp 0x10032282
xor eax, eax
mov dword [ebp - 0x28], edi
or ecx, 0xffffffff
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x3c], 0x684a08de
mov dword [ebp - 0x3c], 0x369e
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100322b9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x17e8], 0xb4ff5102
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100322a1
xor eax, eax
dec dword [ebp - 0x28]
lea ecx, [ebp - 0x288]
mov dword [ebp - 0x10], eax
push dword [ebp - 0x1c]
call fcn.10016b9d
imul esi, dword [ebp - 0x10], 0xfffc
lea ecx, [ebp - 0x288]
push edi
sub esi, dword [eax]
neg esi
sbb esi, esi
inc esi
call fcn.10016b9d
cmp esi, dword [eax]
jge 0x1003246b
push 2
pop ebx
xor eax, eax
mov dword [ebp - 0x24], 0x95d
mov dword [ebp - 0x30], eax
lea ecx, [ebp - 0xa84]
push ebx
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032330
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x670], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032318
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x1003234c
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa84]
call fcn.10016b9d
mov dword [eax], 8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032335
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
setg dl
cmp edx, edi
jle 0x10032424
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x66c], eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x3c]
sub ecx, eax
sub ecx, dword [ebp - 0x28]
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x288]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
xor eax, eax
push eax
call fcn.10016b9d
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x288]
call fcn.10016b9d
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x24]
sub edx, 0xb03c3fa3
neg edx
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, ecx
lea ecx, [ebp - 0x288]
setne bl
sub ebx, dword [eax]
neg ebx
sbb ebx, ebx
xor eax, eax
push eax
inc ebx
call fcn.10016b9d
mov ecx, dword [ebp - 0x2c]
xor edx, edx
cmp ebx, ecx
setle dl
cmp edx, dword [eax]
jle 0x100323f5
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x66c], eax
je 0x100323f7
mov esi, edi
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x288]
call fcn.10016b9d
mov ecx, dword [ebp - 0x2c]
sub esi, ecx
xor ecx, ecx
cmp esi, dword [eax]
setle cl
mov dword [ebp - 0x3c], ecx
imul eax, dword [ebp - 0x3c], 0xfffa
cmp eax, dword [ebp - 0x24]
jg 0x10032424
mov ecx, edi
jmp 0x10032428
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x30]
imul eax, ecx
test eax, eax
jne 0x10032435
mov eax, dword [ebp - 0x2c]
push edi
lea ecx, [ebp - 0xa84]
call fcn.10016b9d
push dword [ebp - 0x1c]
lea ecx, [ebp - 0x288]
call fcn.10016b9d
mov ecx, dword [ebp - 0x670]
mov byte [ebp - 4], 0x14
mov dword [eax], ecx
lea ecx, [ebp - 0xa84]
call fcn.10016b98
push 3
pop ebx
jmp 0x100324e6
movdqa xmm0, xmmword [0x10007f70]
lea eax, [ebp - 0x1344]
push eax
lea eax, [ebp - 0x1354]
mov dword [ebp - 0x34], edi
push eax
lea ecx, [ebp - 0x15ac]
movdqu xmmword [ebp - 0x1354], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x124]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x14a0]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 0x34], 0xfffffff8
xor eax, eax
inc dword [ebp - 0x3c]
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x100324db
push 0x2378
push eax
push 0x65a
push eax
call dword [sym.imp.USER32.dll_LoadStringA]
lea ecx, [ebp - 0x14a0]
call fcn.10016b98
dec dword [ebp - 0x1c]
jns 0x10032280
lea ecx, [ebp - 0x1040]
call fcn.10016b98
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 0x10
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10032531
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1100]
call fcn.10016b9d
mov dword [eax], 0xd3df75dc
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10032513
xor eax, eax
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x794]
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x3c], 0x7563ffaf
mov dword [ebp - 0x30], 0x182b4746
push edi
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x16
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], eax
jmp 0x10032572
push dword [ebp - 0x10]
call fcn.10016b9d
or ecx, 0xffffffff
mov dword [eax], ecx
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x794]
cmp dword [ebp - 0x10], edi
jl 0x10032562
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3c]
xor eax, eax
push eax
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
xor edx, edx
cmp dword [eax], ecx
setne dl
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
dec dword [ebp - 0x2c]
cmp ecx, eax
je 0x100325ac
xor eax, eax
jmp 0x100325b0
xor eax, eax
mov edi, eax
push eax
lea ecx, [ebp - 0x794]
call fcn.10016b9d
mov ecx, dword [ebp - 0x30]
xor edx, edx
cmp edi, ecx
mov esi, eax
mov ecx, dword [ebp - 0x28]
setle dl
xor eax, eax
cmp ecx, edx
mov ecx, dword [ebp - 0x38]
setle al
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x38]
setne dl
xor ebx, ebx
cmp edx, eax
mov eax, dword [ebp - 0x28]
setle bl
xor ecx, ecx
add ebx, 0x72c0
cmp ebx, eax
setg cl
xor ebx, ebx
cmp ecx, 0x473e
lea ecx, [ebp - 0x794]
setg bl
sub ebx, dword [esi]
neg ebx
sbb ebx, ebx
xor eax, eax
push eax
inc ebx
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
add ecx, ebx
mov byte [ebp - 4], 0x10
mov dword [eax], ecx
lea ecx, [ebp - 0x794]
call fcn.10016b98
xor eax, eax
xor ebx, ebx
mov dword [ebp - 0x14], eax
inc ebx
jmp 0x10032647
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0xfc], 6
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032636
mov dword [ebp - 0x2c], 3
lea ecx, [ebp - 0x82c]
mov dword [ebp - 0x24], ebx
push 4
call fcn.10016b30
or esi, 0xffffffff
mov byte [ebp - 4], 0x17
xor eax, eax
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x10], eax
jmp 0x1003268b
push dword [ebp - 0x10]
lea ecx, [ebp - 0x82c]
call fcn.10016b9d
mov dword [eax], 0xfff8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10032674
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x2c], 0x16
cmp dword [ebp - 0x2c], 0xfffffffc
jge 0x10032852
push ebx
lea ecx, [ebp - 0x738]
call fcn.10016b30
mov byte [ebp - 4], 0x18
xor eax, eax
mov dword [ebp - 0x50], 0x9031ea06
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100326e7
push dword [ebp - 0x10]
lea ecx, [ebp - 0x738]
call fcn.10016b9d
mov dword [eax], 0xd0bb94d0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100326c9
xor eax, eax
mov dword [ebp - 0x24], eax
jmp 0x10032814
mov dword [ebp - 0x10], 0xfffffff6
mov dword [ebp - 0x10], eax
jmp 0x10032807
mov dword [ebp - 0x14], 0xedbda7fe
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x3c], 0xfffffffd
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jg 0x100327ec
mov dword [ebp - 0x3c], 0xf58aae07
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032739
push eax
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
xor eax, eax
push eax
lea ecx, [ebp - 0x738]
call fcn.10016b9d
cmp dword [eax], 0
je 0x1003278e
xor eax, eax
lea ecx, [ebp - 0x738]
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x30]
xor ecx, ecx
cmp eax, 0xb11f
setg cl
xor eax, eax
mov dword [ebp - 0x3c], ecx
cmp dword [ebp - 0x3c], eax
jne 0x10032784
push eax
lea ecx, [ebp - 0x738]
call fcn.10016b9d
cmp dword [eax], 0
jne 0x10032784
xor eax, eax
jmp 0x10032786
mov eax, ebx
neg eax
je 0x1003278e
mov esi, ebx
jmp 0x10032792
xor eax, eax
mov esi, eax
push dword [ebp - 0x14]
lea ecx, [ebp - 0x82c]
call fcn.10016b9d
xor ecx, ecx
cmp esi, 0x6b379904
setg cl
xor ebx, ebx
sub ecx, dword [ebp - 0x48]
sub ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x14]
cmp dword [eax], ecx
lea ecx, [ebp - 0x82c]
push dword [ebp - 0x14]
sete bl
call fcn.10016b9d
xor ecx, ecx
push 0
cmp dword [eax], ebx
setg cl
mov dword [ebp - 0x3c], ecx
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x50], eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
pop eax
push 1
pop ebx
jle 0x1003271c
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032804
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsIconic]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jle 0x100326fe
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xb
je 0x100326ef
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032833
push eax
push 0x9a1
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
lea ecx, [ebp - 0x738]
mov byte [ebp - 4], 0x17
call fcn.10016b98
dec dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffffc
jl 0x100326a8
or esi, 0xffffffff
lea ecx, [ebp - 0x82c]
mov byte [ebp - 4], 0x10
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0xfc], eax
cmp dword [ebp - 0xfc], eax
jg 0x10032d46
push 2
pop edi
jmp 0x1003287c
xor eax, eax
mov dword [ebp - 0x14], 6
xor edx, edx
mov dword [ebp - 0x20], 8
mov ecx, ebx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x974], ebx
mov dword [ebp - 0x970], ebx
mov dword [ebp - 0x96c], ebx
mov dword [ebp - 0x968], ebx
mov dword [ebp - 0x28], 9
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
sub ecx, eax
mov eax, dword [ebp - 0x1c]
cmp ecx, eax
push 6
setge dl
cmp ebx, edx
pop ecx
sbb eax, eax
inc eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0xfffffff2
cmp dword [ebp - 0x20], ecx
jne 0x10032a82
mov dword [ebp - 0x2c], 0x41b6ba00
xor eax, eax
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jg 0x10032a5b
jmp 0x1003290a
xor eax, eax
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 3
jge 0x1003292f
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0x7d4], 0x5477a75e
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 3
jl 0x10032916
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jg 0x100329ab
push 2
lea ecx, [ebp - 0xc04]
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x19
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 2
jge 0x1003296f
push dword [ebp - 0x24]
lea ecx, [ebp - 0xc04]
call fcn.10016b9d
mov dword [eax], ebx
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 2
jl 0x10032954
xor eax, eax
push eax
lea ecx, [ebp - 0xc04]
call fcn.10016b9d
dec dword [eax]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp + eax*4 - 0x974]
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x974], ecx
lea ecx, [ebp - 0xc04]
mov byte [ebp - 4], 0x10
call fcn.10016b98
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jle 0x10032938
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x10032a40
mov eax, dword [ebp - 0x7d0]
xor ecx, ecx
mov eax, dword [ebp - 0x28]
cmp eax, 0xab17
setl cl
xor eax, eax
sub ecx, dword [ebp - 0x2c]
je 0x100329d5
cmp dword [ebp - 0x1c], eax
je 0x100329d5
mov eax, ebx
xor edx, edx
cmp eax, 0xae734f12
mov eax, dword [ebp - 0x1c]
setne dl
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x7d4]
mov eax, dword [ebp - 0x14]
sub eax, 0x6971
neg eax
sbb eax, eax
xor edx, edx
inc eax
cmp eax, ebx
mov eax, dword [ebp - 0x28]
setl dl
xor ecx, ecx
cmp edx, eax
mov edx, ebx
setg cl
mov dword [ebp - 0x28], ecx
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x7d4]
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x10032a2d
mov edx, eax
mov eax, dword [ebp - 0x7d4]
xor ecx, ecx
cmp edx, eax
setg cl
mov dword [ebp - 0x7cc], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x30], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jle 0x10032908
push 6
pop ecx
mov dword [ebp - 0x1c], 0xfffffff4
jmp 0x10032a6d
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], eax
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0x26
jge 0x10032a64
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
je 0x100328ed
push 2
pop edi
mov dword [ebp - 0x24], 0x9fdf99ff
xor eax, eax
mov dword [ebp - 0x34], 0xbf25cbd9
mov dword [ebp - 0x34], 0xfffffff9
mov dword [ebp - 0x34], 0xe673292c
mov dword [ebp - 0x34], 0x887e08a1
mov dword [ebp - 0x34], 0xbdb88dcf
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10032ace
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x15a4], 4
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10032ab6
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x10032af0
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x190c], 0x5bb00289
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10032ad7
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xfffffffa
jle 0x10032b96
mov dword [ebp - 0x34], 0x95364446
lea ecx, [ebp - 0xe98]
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x34], 0xf1a0734f
mov dword [ebp - 0x34], 0x6141e4f1
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], ebx
push edi
call fcn.10016b30
mov byte [ebp - 4], 0x1a
xor eax, eax
mov dword [ebp - 0x3c], 0x11378331
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x10032b5a
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe98]
call fcn.10016b9d
mov dword [eax], 4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10032b3c
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10032b74
push 0x39f
push 0xbff
push eax
call dword [sym.imp.USER32.dll_CheckMenuItem]
inc dword [ebp - 0x3c]
lea ecx, [ebp - 0xe98]
mov byte [ebp - 4], 0x10
call fcn.10016b98
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xfffffffa
push 0
pop eax
jg 0x10032afd
mov byte [ebp - 0x15], al
lea ecx, [ebp - 0xcac]
mov dword [ebp - 0x1c], esi
push 3
call fcn.10016b30
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0xa9c]
mov dword [ebp - 0x3c], ebx
push edi
call fcn.10016b30
mov byte [ebp - 4], 0x1c
xor eax, eax
mov dword [ebp - 0x30], 0x421dd2eb
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x10032bf1
push dword [ebp - 0x14]
lea ecx, [ebp - 0xcac]
call fcn.10016b9d
mov dword [eax], 0x7cad7d71
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10032bd2
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edi
jge 0x10032c13
push dword [ebp - 0x14]
lea ecx, [ebp - 0xa9c]
call fcn.10016b9d
mov dword [eax], ebx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jl 0x10032bf9
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x10032c3d
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0xcac]
push edi
call fcn.10016b9d
mov dword [eax], esi
imul eax, dword [ebp - 0x1c], 0x1023
cmp esi, eax
jle 0x10032c3d
xor eax, eax
mov edx, eax
cmp dword [ebp - 0x1c], eax
je 0x10032c3f
mov edx, ebx
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp edx, eax
setle cl
sub ecx, 0xffff
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0xa9c]
push eax
call fcn.10016b9d
mov edx, dword [ebp - 0x3c]
mov esi, eax
mov ecx, dword [ebp - 0x1c]
dec edx
xor eax, eax
cmp edx, ecx
setge al
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setg dl
xor ebx, ebx
cmp edx, dword [esi]
setne bl
xor ecx, ecx
cmp eax, ebx
setg cl
mov dword [ebp - 0x30], ecx
lea ecx, [ebp - 0xa9c]
call fcn.10016b98
lea ecx, [ebp - 0xcac]
mov byte [ebp - 4], 0x10
call fcn.10016b98
cmp byte [ebp - 0x15], 0
je 0x10032d2c
or esi, 0xffffffff
xor eax, eax
mov dword [ebp - 0x10], esi
mov dword [ebp - 0x28], 0x711e7bff
mov dword [ebp - 0x3c], 0xbe02189f
mov dword [ebp - 0x30], 0xdd2eb2fc
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10032ce2
push eax
call dword [sym.imp.USER32.dll_CreateIconIndirect]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x28], 0xa
imul eax, dword [ebp - 0x28], 0xfffffffb
cmp eax, esi
sbb eax, eax
inc eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x10]
je 0x10032d0a
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10032d17
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x10032d17
mov eax, dword [ebp - 0x28]
xor ebx, ebx
inc ebx
mov dword [ebp - 0x30], ebx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
jmp 0x10032d32
xor ebx, ebx
inc ebx
or esi, 0xffffffff
inc dword [ebp - 0xfc]
xor eax, eax
cmp dword [ebp - 0xfc], eax
jle 0x1003287a
lea ecx, [ebp - 0x1100]
mov dword [ebp - 4], esi
call fcn.10016b98
push 5
pop eax
mov edi, 0x4438bea1
lea ecx, [ebp - 0xab4]
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], 0x9105fa2e
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], ebx
push ebx
call fcn.10016b30
xor eax, eax
mov dword [ebp - 4], 0x1d
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10032da4
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x800], 0x66de6b93
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032d8c
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x10032dbd
push dword [ebp - 0x14]
lea ecx, [ebp - 0xab4]
call fcn.10016b9d
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10032da9
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
imul eax, eax, 0x2206
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
cmp eax, 2
mov eax, dword [ebp - 0x1c]
setge cl
add eax, 0x84e4f353
add eax, ecx
lea ecx, [ebp - 0xab4]
mov dword [ebp - 0x800], eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x1c]
mov esi, 0x9f94ad8a
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10032e9a
mov dword [ebp - 0x34], 0xfffffffa
lea ecx, [ebp - 0xeb0]
mov dword [ebp - 0x34], 0x33bab721
push ebx
call fcn.10016b30
mov byte [ebp - 4], 0x1e
xor eax, eax
mov dword [ebp - 0x98c], esi
mov dword [ebp - 0x988], esi
mov dword [ebp - 0x984], esi
mov dword [ebp - 0x980], esi
mov dword [ebp - 0x10], eax
jmp 0x10032e7b
push dword [ebp - 0x10]
call fcn.10016b9d
mov dword [eax], 0xcd1ac8c6
inc dword [ebp - 0x10]
lea ecx, [ebp - 0xeb0]
cmp dword [ebp - 0x10], ebx
jl 0x10032e6a
inc dword [ebp - 0x988]
mov byte [ebp - 4], 0x1d
call fcn.10016b98
dec dword [ebp - 0x2c]
jns 0x10032e2d
or eax, 0xffffffff
lea ecx, [ebp - 0xab4]
mov dword [ebp - 4], eax
call fcn.10016b98
push 4
lea ecx, [ebp - 0x94]
call fcn.10016b30
lea eax, [ebp - 0x1244]
mov dword [ebp - 4], 0x1f
movdqa xmm0, xmmword [0x10007ef0]
lea ecx, [ebp - 0x15c4]
push eax
lea eax, [ebp - 0x1254]
push eax
movdqu xmmword [ebp - 0x1254], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x133]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x440]
push dword [esi]
call fcn.10016b72
mov byte [ebp - 4], 0x20
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10032f31
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x3ec], 0x64a6847d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x10032f18
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x10032f59
push dword [ebp - 0x20]
lea ecx, [ebp - 0x94]
call fcn.10016b9d
mov dword [eax], 0xb871c7bf
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x10032f3a
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x10032f78
or ecx, 0xffffffff
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xdc], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10032f64
xor eax, eax
push eax
lea ecx, [ebp - 0x94]
call fcn.10016b9d
lea ecx, [ebp - 0x94]
mov dword [eax], 2
xor eax, eax
push eax
call fcn.10016b9d
cmp dword [eax], 0
jl 0x1003337c
mov eax, 0x4a87fce6
mov dword [ebp - 0x330], eax
mov dword [ebp - 0x32c], eax
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x324], eax
xor eax, eax
mov dword [ebp - 0x24], 0x84868fda
mov dword [ebp - 0x30], 0xbadbefc7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10032fea
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf4], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x10032fd6
xor eax, eax
push eax
lea ecx, [ebp - 0x94]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x94]
push eax
call fcn.10016b9d
push ebx
lea ecx, [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x3ec], 0x3d9b9503
call fcn.10016b9d
mov ecx, dword [ebp - 0x324]
xor edx, edx
cmp ecx, 0x2a30
lea ecx, [ebp - 0x94]
setg dl
xor ebx, ebx
cmp edx, dword [eax]
setl bl
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0x94]
mov esi, dword [eax]
xor eax, eax
push eax
imul esi, ebx
call fcn.10016b9d
xor ecx, ecx
cmp dword [eax], 6
setne cl
xor eax, eax
add ecx, 0x3d9b9503
add esi, ecx
lea ecx, [ebp - 0x94]
push eax
call fcn.10016b9d
xor ebx, ebx
lea ecx, [ebp - 0x94]
push 2
cmp esi, dword [eax]
setg bl
call fcn.10016b9d
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
mov dword [ebp - 0x324], ecx
cmp ecx, dword [ebp - 0xf4]
jg 0x100330ad
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x10033379
jmp 0x1003328f
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x28], eax
jne 0x10033111
push eax
lea ecx, [ebp - 0x94]
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3ec]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x1003310a
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10033113
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x10033118
xor eax, eax
xor ebx, ebx
inc ebx
mov esi, ebx
mov dword [ebp - 0xdc], 3
lea ecx, [ebp - 0x440]
push eax
call fcn.10016b9d
push 3
pop ecx
push ecx
mov dword [eax], ecx
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x3c], esi
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 3
setne cl
add ecx, dword [eax]
xor eax, eax
cmp ecx, 0x2ca1
setge al
xor ecx, ecx
imul edx, eax, 0xffff
mov dword [ebp - 0x328], edx
mov eax, dword [ebp - 0x24]
cmp edx, eax
setg cl
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x2c], 0x10
jmp 0x10033285
mov dword [ebp - 0x28], 0x1b63
xor eax, eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 2
jge 0x100331b7
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x97c], 0xd553b787
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1003319e
xor eax, eax
cmp dword [ebp - 0xf4], eax
je 0x10033266
push ebx
lea ecx, [ebp - 0x94]
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
xor edx, edx
cmp dword [eax], ecx
mov eax, 0x5a6edb5b
mov ecx, dword [ebp - 0x28]
setne dl
sub eax, edx
add ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x28]
jle 0x100331f2
mov eax, dword [ebp - 0x28]
xor eax, eax
lea ecx, [ebp - 0x440]
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x440]
xor eax, eax
push eax
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x440]
push eax
call fcn.10016b9d
mov dword [ebp - 0x3c], 0x4f79aabf
lea ecx, [ebp - 0x94]
mov esi, dword [ebp - 0x3c]
xor eax, eax
add esi, 0x17887b34
mov dword [ebp - 0x97c], esi
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov edx, dword [ebp + eax*4 - 0x3ec]
xor eax, eax
cmp esi, 0x59016633
setle al
xor ecx, ecx
cmp eax, edx
setl cl
cmp ecx, dword [ebp - 0x3e4]
jle 0x1003326c
mov eax, dword [ebp - 0x97c]
mov eax, dword [ebp - 0xf4]
xor ecx, ecx
or edx, 0xffffffff
cmp eax, edx
setge cl
mov dword [ebp - 0x324], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x22
jne 0x10033189
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x100332ab
push eax
lea ecx, [ebp - 0x94]
call fcn.10016b9d
mov eax, dword [ebp - 0xdc]
lea ecx, [ebp - 0x94]
mov eax, dword [ebp - 0x324]
xor eax, eax
push eax
call fcn.10016b9d
push 7
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3ec]
pop eax
cmp dword [ebp - 0x3e4], eax
jl 0x100332df
mov eax, dword [ebp - 0xf4]
push 3
lea ecx, [ebp - 0x94]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x440]
push eax
call fcn.10016b9d
push 3
lea ecx, [ebp - 0x94]
call fcn.10016b9d
lea ecx, [ebp - 0x94]
mov eax, dword [eax]
mov dword [ebp - 0xdc], eax
xor eax, eax
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x3ec]
mov ecx, dword [ebp - 0xdc]
sub ecx, eax
je 0x10033336
mov eax, dword [ebp - 0x324]
push 3
lea ecx, [ebp - 0x94]
call fcn.10016b9d
mov eax, dword [ebp - 0x324]
lea ecx, [ebp - 0x94]
mov dword [ebp - 0xf4], eax
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0x94]
dec dword [eax]
xor eax, eax
push eax
call fcn.10016b9d
push 1
pop ebx
cmp dword [eax], 0
jge 0x10032fa1
xor ebx, ebx
inc ebx
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x1003338c
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
lea ecx, [ebp - 0x440]
call fcn.10016b98
or eax, 0xffffffff
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], eax
call fcn.10016b98
movdqa xmm0, xmmword [0x10007f10]
lea eax, [ebp - 0x1444]
push eax
lea eax, [ebp - 0x1454]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], 0x69ad59e5
lea ecx, [ebp - 0x15e4]
push eax
movdqu xmmword [ebp - 0x1454], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x12f]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1054]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], 0x21
lea ecx, [ebp - 0x1054]
mov dword [ebp - 0x34], 0x1d01
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x3c], 0x9105fa2e
mov dword [ebp - 0x34], 0x811fc80a
inc dword [ebp - 0x3c]
push eax
call fcn.10016b9d
lea ecx, [ebp - 0x1054]
mov dword [eax], 0xa6b719d8
or eax, 0xffffffff
mov dword [ebp - 4], eax
call fcn.10016b98
push 7
pop eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 3
mov dword [ebp - 0x30], 0xfffffffa
mov dword [ebp - 0x2c], 0xffffffe5
cmp dword [ebp - 0x2c], 0xfffffff2
push 2
pop esi
jle 0x10033551
xor eax, eax
mov dword [ebp - 0x24], 0x13dce9d0
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x10033498
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x770], 0xea66
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x10033480
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0xffffffe9
jge 0x10033544
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x10], 0xd
jmp 0x1003350d
mov dword [ebp - 0x14], 0xfffffff7
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], esi
jge 0x100334d8
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x770], 0xb60e
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x100334c0
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xfffffff2
jg 0x1003350a
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x100334ff
push 0x1fcb
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetLocaleInfoA]
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffff2
jle 0x100334e1
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff6
jl 0x100334b1
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x770]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x770]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
or eax, 0xffffffff
mov dword [ebp - 0x28], eax
dec dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0xffffffe9
push 0
pop eax
jl 0x100334a5
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0xfffffff2
jg 0x10033471
push 3
lea ecx, [ebp - 0xc1c]
call fcn.10016b30
mov dword [ebp - 4], 0x22
lea ecx, [ebp - 0xec8]
or eax, 0xffffffff
mov dword [ebp - 0x10], 0x8ade19d2
mov dword [ebp - 0x34], eax
push 3
call fcn.10016b30
mov byte [ebp - 4], 0x23
or eax, 0xffffffff
mov dword [ebp - 0x34], 0xe1c97412
mov dword [ebp - 0x3c], eax
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x100335ba
push dword [ebp - 0x14]
lea ecx, [ebp - 0xc1c]
call fcn.10016b9d
mov dword [eax], 0x648
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x1003359b
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x100335e2
push dword [ebp - 0x14]
lea ecx, [ebp - 0xec8]
call fcn.10016b9d
mov dword [eax], 0x4f2887cf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x100335c3
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x100335fe
push dword [ebp - 0x10]
lea ecx, [ebp - 0xc1c]
call fcn.10016b9d
mov dword [eax], 7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100335e7
dec dword [ebp - 0x3c]
lea ecx, [ebp - 0xec8]
call fcn.10016b98
or eax, 0xffffffff
lea ecx, [ebp - 0xc1c]
mov dword [ebp - 4], eax
call fcn.10016b98
xor eax, eax
mov dword [ebp - 0x10], 0x4e2db58
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x1003363d
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
xor eax, eax
mov dword [ebp - 0x10], esi
jmp 0x10033664
mov dword [ebp - 0x30], 5
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10033658
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
dec dword [ebp - 0x10]
push 0
pop eax
cmp dword [ebp - 0x10], 0xfffffff0
jne 0x10033642
push 5
mov dword [ebp - 0x1c], edi
lea ecx, [ebp - 0xacc]
pop eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], 0x9105fa2e
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x2c], ebx
push ebx
call fcn.10016b30
xor eax, eax
mov dword [ebp - 4], 0x24
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x100336b5
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x7b8], 0x66de6b93
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x1003369d
xor eax, eax
mov dword [ebp - 0x14], eax
jmp 0x100336ce
push dword [ebp - 0x14]
lea ecx, [ebp - 0xacc]
call fcn.10016b9d
and dword [eax], 0
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x100336ba
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
imul eax, eax, 0x2206
push 2
pop edi
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
cmp eax, edi
mov eax, dword [ebp - 0x1c]
setge cl
add eax, 0x84e4f353
add eax, ecx
lea ecx, [ebp - 0xacc]
mov dword [ebp - 0x7b8], eax
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
xor eax, eax
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x100337ad
mov esi, 0x9f94ad8a
mov dword [ebp - 0x34], 0xfffffffa
lea ecx, [ebp - 0x1154]
mov dword [ebp - 0x34], 0x33bab721
push ebx
call fcn.10016b30
mov byte [ebp - 4], 0x25
xor eax, eax
mov dword [ebp - 0x9a4], esi
mov dword [ebp - 0x9a0], esi
mov dword [ebp - 0x99c], esi
mov dword [ebp - 0x998], esi
mov dword [ebp - 0x10], eax
jmp 0x1003378e
push dword [ebp - 0x10]
call fcn.10016b9d
mov dword [eax], 0xcd1ac8c6
inc dword [ebp - 0x10]
lea ecx, [ebp - 0x1154]
cmp dword [ebp - 0x10], ebx
jl 0x1003377d
inc dword [ebp - 0x9a0]
mov byte [ebp - 4], 0x24
call fcn.10016b98
dec dword [ebp - 0x2c]
jns 0x10033740
or eax, 0xffffffff
lea ecx, [ebp - 0xacc]
mov dword [ebp - 4], eax
call fcn.10016b98
push 4
lea ecx, [ebp - 0xb0]
call fcn.10016b30
lea eax, [ebp - 0x1264]
mov dword [ebp - 4], 0x26
movdqa xmm0, xmmword [0x10007ef0]
lea ecx, [ebp - 0x173c]
push eax
lea eax, [ebp - 0x1274]
push eax
movdqu xmmword [ebp - 0x1274], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x18c]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x4e8]
push dword [esi]
call fcn.10016b72
mov byte [ebp - 4], 0x27
xor eax, eax
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x10033844
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x38c], 0x64a6847d
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
jl 0x1003382b
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 4
jge 0x1003386c
push dword [ebp - 0x20]
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
mov dword [eax], 0xb871c7bf
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 4
jl 0x1003384d
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ebx
jge 0x1003388b
or ecx, 0xffffffff
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xbc], ecx
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ebx
jl 0x10033877
xor eax, eax
push eax
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
lea ecx, [ebp - 0xb0]
mov dword [eax], edi
xor eax, eax
push eax
call fcn.10016b9d
cmp dword [eax], 0
jl 0x10033c88
mov eax, 0x4a87fce6
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x33c], eax
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], eax
xor eax, eax
mov dword [ebp - 0x24], 0x84868fda
mov dword [ebp - 0x30], 0xbadbefc7
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100338f9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xc0], ebx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100338e5
xor eax, eax
push eax
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0xb0]
push eax
call fcn.10016b9d
push ebx
lea ecx, [ebp - 0xb0]
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x38c], 0x3d9b9503
call fcn.10016b9d
mov ecx, dword [ebp - 0x334]
xor edx, edx
cmp ecx, 0x2a30
lea ecx, [ebp - 0xb0]
setg dl
xor ebx, ebx
cmp edx, dword [eax]
setl bl
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0xb0]
mov esi, dword [eax]
xor eax, eax
push eax
imul esi, ebx
call fcn.10016b9d
xor ecx, ecx
cmp dword [eax], 6
setne cl
xor eax, eax
add ecx, 0x3d9b9503
add esi, ecx
lea ecx, [ebp - 0xb0]
push eax
call fcn.10016b9d
xor ebx, ebx
lea ecx, [ebp - 0xb0]
push edi
cmp esi, dword [eax]
setg bl
call fcn.10016b9d
xor ecx, ecx
cmp ebx, dword [eax]
setne cl
mov dword [ebp - 0x334], ecx
cmp ecx, dword [ebp - 0xc0]
jg 0x100339bb
xor eax, eax
cmp dword [ebp - 0x24], eax
jne 0x10033c85
jmp 0x10033b9b
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x28], eax
jne 0x10033a1f
push eax
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x38c]
mov ecx, dword [ebp - 0x30]
sub ecx, eax
mov eax, dword [ebp - 0x2c]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setl dl
xor ecx, ecx
cmp edx, eax
setg cl
xor eax, eax
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x10], eax
je 0x10033a18
mov eax, dword [ebp - 0x10]
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x10033a21
xor ebx, ebx
mov esi, eax
inc ebx
jmp 0x10033a26
xor eax, eax
xor ebx, ebx
inc ebx
mov esi, ebx
mov dword [ebp - 0xbc], 3
lea ecx, [ebp - 0x4e8]
push eax
call fcn.10016b9d
push 3
pop ecx
push ecx
mov dword [eax], ecx
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0x3c], esi
call fcn.10016b9d
mov ecx, dword [ebp - 0x3c]
mov edx, dword [ebp - 0x2c]
sub edx, ecx
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, 3
setne cl
add ecx, dword [eax]
xor eax, eax
cmp ecx, 0x2ca1
setge al
xor ecx, ecx
imul edx, eax, 0xffff
mov dword [ebp - 0x338], edx
mov eax, dword [ebp - 0x24]
cmp edx, eax
setg cl
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x2c], 0x10
jmp 0x10033b91
mov dword [ebp - 0x28], 0x1b63
xor eax, eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], edi
jge 0x10033ac3
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x9dc], 0xd553b787
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x10033aab
xor eax, eax
cmp dword [ebp - 0xc0], eax
je 0x10033b72
push ebx
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
mov ecx, dword [ebp - 0x28]
xor edx, edx
cmp dword [eax], ecx
mov eax, 0x5a6edb5b
mov ecx, dword [ebp - 0x28]
setne dl
sub eax, edx
add ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x28]
jle 0x10033afe
mov eax, dword [ebp - 0x28]
xor eax, eax
lea ecx, [ebp - 0x4e8]
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x24]
lea ecx, [ebp - 0x4e8]
xor eax, eax
push eax
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x4e8]
push eax
call fcn.10016b9d
mov dword [ebp - 0x3c], 0x4f79aabf
lea ecx, [ebp - 0xb0]
mov esi, dword [ebp - 0x3c]
xor eax, eax
add esi, 0x17887b34
mov dword [ebp - 0x9dc], esi
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov edx, dword [ebp + eax*4 - 0x38c]
xor eax, eax
cmp esi, 0x59016633
setle al
xor ecx, ecx
cmp eax, edx
setl cl
cmp ecx, dword [ebp - 0x384]
jle 0x10033b78
mov eax, dword [ebp - 0x9dc]
mov eax, dword [ebp - 0xc0]
xor ecx, ecx
or edx, 0xffffffff
cmp eax, edx
setge cl
mov dword [ebp - 0x334], ecx
inc dword [ebp - 0x2c]
cmp dword [ebp - 0x2c], 0x22
jne 0x10033a97
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x28], eax
xor eax, eax
cmp dword [ebp - 0x28], eax
je 0x10033bb7
push eax
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
mov eax, dword [ebp - 0xbc]
lea ecx, [ebp - 0xb0]
mov eax, dword [ebp - 0x334]
xor eax, eax
push eax
call fcn.10016b9d
push 7
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x38c]
pop eax
cmp dword [ebp - 0x384], eax
jl 0x10033beb
mov eax, dword [ebp - 0xc0]
push 3
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
xor eax, eax
lea ecx, [ebp - 0x4e8]
push eax
call fcn.10016b9d
push 3
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
lea ecx, [ebp - 0xb0]
mov eax, dword [eax]
mov dword [ebp - 0xbc], eax
xor eax, eax
push eax
call fcn.10016b9d
mov eax, dword [eax]
mov eax, dword [ebp + eax*4 - 0x38c]
mov ecx, dword [ebp - 0xbc]
sub ecx, eax
je 0x10033c42
mov eax, dword [ebp - 0x334]
push 3
lea ecx, [ebp - 0xb0]
call fcn.10016b9d
mov eax, dword [ebp - 0x334]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 0xc0], eax
xor eax, eax
push eax
call fcn.10016b9d
lea ecx, [ebp - 0xb0]
dec dword [eax]
xor eax, eax
push eax
call fcn.10016b9d
push 1
pop ebx
cmp dword [eax], 0
jge 0x100338b0
xor ebx, ebx
inc ebx
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10033c98
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLCID]
lea ecx, [ebp - 0x4e8]
call fcn.10016b98
or eax, 0xffffffff
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], eax
call fcn.10016b98
movdqa xmm0, xmmword [0x10007f10]
lea eax, [ebp - 0x1364]
push eax
lea eax, [ebp - 0x1374]
mov dword [ebp - 0x34], ebx
mov dword [ebp - 0x34], 0x69ad59e5
lea ecx, [ebp - 0x162c]
push eax
movdqu xmmword [ebp - 0x1374], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x12c]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0xee0]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0xee0]
mov dword [ebp - 0x34], 0x1d01
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x3c], 0x9105fa2e
mov dword [ebp - 0x34], 0x811fc80a
inc dword [ebp - 0x3c]
push eax
call fcn.10016b9d
or esi, 0xffffffff
lea ecx, [ebp - 0xee0]
mov dword [ebp - 4], esi
mov dword [eax], 0xa6b719d8
call fcn.10016b98
mov dword [ebp - 0x1c], 0xfffffff8
lea ecx, [ebp - 0x500]
push 4
call fcn.10016b30
push ebx
lea ecx, [ebp - 0xd24]
mov dword [ebp - 4], 0x29
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 4
jge 0x10033da4
push dword [ebp - 0x14]
lea ecx, [ebp - 0x500]
call fcn.10016b9d
mov dword [eax], esi
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x10033d89
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ebx
jge 0x10033dca
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd24]
call fcn.10016b9d
mov dword [eax], 0x67c74e2b
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x10033dac
xor eax, eax
mov dword [ebp - 0x1c], 0x16
cmp dword [ebp - 0x1c], 0xffffffec
jle 0x10033ed4
jmp 0x10033ddf
xor eax, eax
mov dword [ebp - 0x14], 0xfffffffd
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10033dfd
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
mov eax, dword [ebp - 0x14]
cmp eax, 0x698dc509
setg cl
cmp ecx, ebx
sbb eax, eax
inc eax
sub eax, 0x2e633725
je 0x10033e2a
xor eax, eax
cmp dword [ebp - 0x1c], eax
je 0x10033e2c
mov ecx, ebx
jmp 0x10033e2e
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x14]
dec ecx
xor edx, edx
cmp ecx, eax
setl dl
cmp edx, dword [ebp - 0x14]
je 0x10033e41
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
setl cl
imul ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x10033e6c
push 3
lea ecx, [ebp - 0x500]
call fcn.10016b9d
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x500]
push edi
call fcn.10016b9d
mov ecx, dword [ebp - 0x14]
imul ecx, dword [eax]
mov eax, dword [ebp - 0x1c]
inc ecx
imul eax, ecx
test eax, eax
jne 0x10033e99
push 3
lea ecx, [ebp - 0x500]
call fcn.10016b9d
mov eax, dword [ebp - 0x14]
lea ecx, [ebp - 0x500]
mov eax, dword [ebp - 0x14]
push 3
call fcn.10016b9d
mov esi, dword [ebp - 0x14]
lea ecx, [ebp - 0xd24]
sub esi, dword [eax]
xor eax, eax
sub esi, dword [ebp - 0x14]
push eax
call fcn.10016b9d
mov dword [eax], esi
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffec
jg 0x10033ddd
or esi, 0xffffffff
lea ecx, [ebp - 0xd24]
call fcn.10016b98
lea ecx, [ebp - 0x500]
mov dword [ebp - 4], esi
call fcn.10016b98
movdqa xmm0, xmmword [0x10007f20]
lea eax, [ebp - 0x1284]
push eax
lea eax, [ebp - 0x1294]
push eax
lea ecx, [ebp - 0x16dc]
movdqu xmmword [ebp - 0x1294], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x12e]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1dc]
push dword [esi]
call fcn.10016b72
lea eax, [ebp - 0x13e4]
mov dword [ebp - 4], 0x2b
movdqa xmm0, xmmword [0x10007e80]
lea ecx, [ebp - 0x163c]
push eax
lea eax, [ebp - 0x13f4]
push eax
movdqu xmmword [ebp - 0x13f4], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x179]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x518]
push dword [esi]
call fcn.10016b72
xor eax, eax
mov byte [ebp - 4], 0x2c
or esi, 0xffffffff
lea ecx, [ebp - 0x1dc]
push eax
mov dword [ebp - 0x14], esi
call fcn.10016b9d
mov dword [eax], edi
jmp 0x10033fbf
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], al
je 0x10033fb1
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
xor eax, eax
push eax
lea ecx, [ebp - 0x1dc]
call fcn.10016b9d
dec dword [eax]
xor eax, eax
lea ecx, [ebp - 0x1dc]
push eax
call fcn.10016b9d
cmp dword [eax], 0xfffffffd
jge 0x10033f9e
push ebx
lea ecx, [ebp - 0x518]
call fcn.10016b9d
and dword [eax], 0
jmp 0x10034222
push 0xfffffffffffffff7
pop eax
mov dword [ebp - 0x20], eax
lea ecx, [ebp - 0x224]
mov dword [ebp - 0x2c], 9
push ebx
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x2d
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x10034028
push dword [ebp - 0x10]
lea ecx, [ebp - 0x224]
call fcn.10016b9d
and dword [eax], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x1003400d
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jg 0x10034055
mov dword [ebp - 0x34], 6
lea ecx, [ebp - 0x224]
mov dword [ebp - 0x34], esi
push eax
call fcn.10016b9d
push 0
inc dword [eax]
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 3
pop eax
jle 0x10034031
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], eax
jl 0x10034205
mov dword [ebp - 0x10], 0xb71808ad
mov dword [ebp - 0x38], 0x43253674
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], eax
jg 0x100341f9
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x1dc]
add eax, 3
push eax
call fcn.10016b9d
push dword [ebp - 0x20]
lea ecx, [ebp - 0x224]
call fcn.10016b9d
push dword [ebp - 0x20]
lea ecx, [ebp - 0x224]
call fcn.10016b9d
mov ecx, dword [ebp - 0x2c]
sub ecx, dword [eax]
je 0x100340c8
push ebx
lea ecx, [ebp - 0x1dc]
call fcn.10016b9d
cmp dword [eax], 0
je 0x100340c8
mov eax, ebx
jmp 0x100340ca
xor eax, eax
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x224]
push dword [ebp - 0x20]
call fcn.10016b9d
mov edi, dword [ebp - 0x14]
lea ecx, [ebp - 0x1dc]
push 2
add edi, dword [eax]
call fcn.10016b9d
push dword [ebp - 0x20]
lea ecx, [ebp - 0x224]
mov esi, dword [eax]
imul esi, edi
call fcn.10016b9d
lea ecx, [ebp - 0x224]
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
push dword [ebp - 0x20]
call fcn.10016b9d
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x1dc]
mov eax, dword [ebp - 0x20]
add eax, 3
push eax
call fcn.10016b9d
mov eax, dword [ebp - 0x10]
lea ecx, [ebp - 0x1dc]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
inc eax
push eax
call fcn.10016b9d
mov ecx, dword [ebp - 0x38]
mov dword [eax], ecx
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jg 0x100341eb
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x30], 0xffff
cmp dword [ebp - 0x10], eax
jne 0x100341c4
push eax
lea ecx, [ebp - 0x224]
call fcn.10016b9d
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x3c], eax
xor eax, eax
cmp dword [ebp - 0x3c], eax
jne 0x10034190
push ebx
lea ecx, [ebp - 0x518]
call fcn.10016b9d
cmp dword [eax], 0
jne 0x10034190
xor eax, eax
mov ecx, eax
jmp 0x10034192
mov ecx, ebx
mov eax, dword [ebp - 0x10]
imul eax, ecx
test eax, eax
jne 0x100341a1
cmp dword [ebp - 0x38], eax
je 0x100341a3
mov eax, ebx
inc eax
cmp eax, 0xfffffff6
jl 0x100341b2
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x44], eax
je 0x100341b4
mov ecx, ebx
xor eax, eax
cmp ecx, 0x90cb
setne al
cmp eax, dword [ebp - 0x44]
jl 0x100341c7
mov eax, dword [ebp - 0x10]
push dword [ebp - 0x14]
lea ecx, [ebp - 0x224]
call fcn.10016b9d
mov ecx, dword [ebp - 0x30]
add ecx, dword [ebp - 0x2c]
mov dword [eax], ecx
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], eax
jle 0x10034151
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x1003407e
xor eax, eax
dec dword [ebp - 0x2c]
jns 0x10034061
or esi, 0xffffffff
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 0x2c
call fcn.10016b98
push ebx
lea ecx, [ebp - 0x518]
call fcn.10016b9d
inc dword [eax]
push ebx
lea ecx, [ebp - 0x518]
call fcn.10016b9d
cmp dword [eax], 7
jg 0x10033fe6
lea ecx, [ebp - 0x518]
call fcn.10016b98
lea ecx, [ebp - 0x1dc]
mov dword [ebp - 4], esi
call fcn.10016b98
push 7
pop eax
mov dword [ebp - 0x40], eax
lea ecx, [ebp - 0x91c]
mov dword [ebp - 0x24], 0xffff
push 4
call fcn.10016b30
xor eax, eax
mov dword [ebp - 4], 0x2e
mov dword [ebp - 0x10], eax
jmp 0x10034289
push dword [ebp - 0x10]
call fcn.10016b9d
mov dword [eax], 0xc7730f94
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
lea ecx, [ebp - 0x91c]
jl 0x10034278
push 3
call fcn.10016b9d
mov ecx, dword [ebp - 0x24]
mov dword [eax], ecx
xor eax, eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x27
jne 0x100343a9
push 0xfffffffffffffffe
pop edi
mov dword [ebp - 0x14], 0xad86e52d
mov dword [ebp - 0x14], eax
jmp 0x100342f8
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x100342e2
push 0x53a
push eax
push 0x25af
push 0x1a38
push eax
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
xor eax, eax
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x100342f5
push eax
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
xor eax, eax
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], edi
jge 0x100342bf
mov dword [ebp - 0x14], 0xffffffea
jmp 0x10034392
mov dword [ebp - 0x2c], 0x7af5af8b
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10034328
push eax
push 0x212
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
mov dword [ebp - 0x2c], eax
jmp 0x10034389
cmp dword [ebp - 0x14], 0xfffffff2
je 0x10034309
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 0x27
je 0x100342b3
lea ecx, [ebp - 0x91c]
mov dword [ebp - 4], esi
call fcn.10016b98
movdqa xmm0, xmmword [0x10007f10]
lea eax, [ebp - 0x12a4]
push eax
lea eax, [ebp - 0x12b4]
mov dword [ebp - 0x4c], 3
mov dword [ebp - 0x34], ebx
lea ecx, [ebp - 0x179c]
mov dword [ebp - 0x34], 0x69ad59e5
push eax
movdqu xmmword [ebp - 0x12b4], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x130]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x1068]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], 0x2f
lea ecx, [ebp - 0x1068]
mov dword [ebp - 0x34], 0x1d01
xor eax, eax
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x34], 0xfffffff8
mov dword [ebp - 0x3c], 0x9105fa2e
mov dword [ebp - 0x34], 0x811fc80a
inc dword [ebp - 0x3c]
push eax
call fcn.10016b9d
or esi, 0xffffffff
lea ecx, [ebp - 0x1068]
mov dword [ebp - 4], esi
mov dword [eax], 0xa6b719d8
call fcn.10016b98
mov dword [ebp - 0x50], 0xfffffffa
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x3c], 0x705
inc dword [ebp - 0x20]
mov dword [ebp - 0x20], 0x14
cmp dword [ebp - 0x20], 6
jg 0x1003471e
push 0x13
pop edi
jmp 0x1003448b
xor eax, eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x24], 0xb13281d2
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x38], 0x741311e2
mov dword [ebp - 0x44], 0x653649d9
mov dword [ebp - 0x1c], 0x3d8d5894
mov dword [ebp - 0x10], 0xffff
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x100344dc
push eax
push 0x2226
push 0x361
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetViewportExtEx]
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp ecx, eax
mov eax, dword [ebp - 0x24]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
mov eax, dword [ebp - 0x20]
neg ecx
sbb ecx, ecx
xor edx, edx
inc ecx
cmp ecx, eax
setne dl
sub edx, dword [ebp - 0x24]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0x20]
jne 0x10034523
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x38], eax
je 0x10034525
mov esi, ebx
mov eax, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
setge dl
xor eax, eax
sub edx, esi
cmp dword [ebp - 0x14], edx
jg 0x1003463e
cmp dword [ebp - 0x20], eax
jne 0x1003463e
or esi, 0xffffffff
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x38], 0xffff
mov dword [ebp - 0x10], edi
cmp dword [ebp - 0x10], 3
jg 0x1003461e
push 7
pop eax
mov dword [ebp - 0x40], eax
xor ecx, ecx
mov dword [ebp - 0x28], 0xfffffffd
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
test eax, eax
sets cl
cmp ecx, dword [ebp - 0x2c]
je 0x100345a5
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
xor edx, edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x2c]
cmp ecx, eax
setge dl
xor eax, eax
dec edx
je 0x100345c4
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x1003470f
push 0x1509
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VirtualQueryEx]
jmp 0x1003470f
mov dword [ebp - 0x30], eax
push 5
mov dword [ebp - 0x2c], 0xdd484073
pop ecx
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], edi
jle 0x1003470f
jmp 0x1003465b
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x48], ebx
dec dword [ebp - 0x28]
je 0x100346b7
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
neg ecx
add eax, ecx
je 0x10034681
mov ecx, eax
mov eax, dword [ebp - 0x20]
sub ecx, eax
je 0x100346cb
dec dword [ebp - 0x20]
push 6
pop eax
cmp dword [ebp - 0x20], eax
jle 0x10034489
mov edi, dword [sym.imp.GDI32.dll_RectInRegion]
mov dword [ebp - 0x40], 0xffffffe5
jmp 0x100358aa
movdqa xmm0, xmmword [0x10007eb0]
lea eax, [ebp - 0x1384]
push eax
lea eax, [ebp - 0x1394]
push eax
lea ecx, [ebp - 0x166c]
movdqu xmmword [ebp - 0x1394], xmm0
call fcn.10016bac
lea ecx, [ebp - 0x18b]
mov esi, eax
call fcn.100091a3
push eax
push dword [esi + 4]
lea ecx, [ebp - 0x308]
push dword [esi]
call fcn.10016b72
mov dword [ebp - 4], 0x30
lea ecx, [ebp - 0xc34]
mov dword [ebp - 0x14], 0x71c7bf0b
xor eax, eax
mov dword [ebp - 0x10], 0x3d9b9503
mov dword [ebp - 0x820], eax
mov dword [ebp - 0x81c], eax
mov dword [ebp - 0x818], eax
mov dword [ebp - 0x814], eax
mov dword [ebp - 0x1c], ebx
push 2
call fcn.10016b30
xor eax, eax
mov byte [ebp - 4], 0x31
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x100347e5
push dword [ebp - 0x14]
lea ecx, [ebp - 0xc34]
call fcn.10016b9d
push 3
pop ecx
mov dword [eax], ecx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x100347c5
xor eax, eax
jmp 0x100347e8
push 3
pop ecx
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], ecx
jge 0x10034808
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x183c], 0x4a839bb8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ecx
jl 0x100347f0
xor eax, eax
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], eax
jl 0x10034974
jmp 0x10034819
mov dword [ebp - 0x3c], 0xe58bfc4f
mov dword [ebp - 0x24], eax
jmp 0x10034836
cmp dword [ebp - 0x24], ecx
jl 0x10034825
mov esi, dword [ebp - 0x1c]
lea ecx, [ebp - 0xc34]
dec esi
neg esi
push eax
sbb esi, esi
neg esi
call fcn.10016b9d
lea ecx, [ebp - 0xc34]
mov dword [eax], esi
mov dword [ebp - 0x818], esi
call fcn.10016b98
or eax, 0xffffffff
lea ecx, [ebp - 0x308]
mov dword [ebp - 4], eax
call fcn.10016b98
mov dword [ebp - 0x20], 0x13dce9d0
lea ecx, [ebp - 0xef8]
push 3
call fcn.10016b30
mov dword [ebp - 4], 0x32
xor eax, eax
mov dword [ebp - 0x28], 0xf57a7c20
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x100349fa
push dword [ebp - 0x10]
lea ecx, [ebp - 0xef8]
call fcn.10016b9d
mov dword [eax], 0x77862fd4
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x100349db
xor eax, eax
push 2
pop esi
mov dword [ebp - 0x28], esi
cmp dword [ebp - 0x28], eax
jl 0x10034a20
mov byte [ebp - 0x15], al
cmp byte [ebp - 0x15], 0
je 0x10034a1b
or eax, 0xffffffff
lea ecx, [ebp - 0xef8]
mov dword [ebp - 4], eax
call fcn.10016b98
or ecx, 0xffffffff
xor eax, eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], esi
jge 0x10034a5b
cmp dword [ebp - 0x40], 0xfffffff2
jg 0x10034730
push 0xfffffffffffffffe
pop eax
mov dword [ebp - 0x1c], eax
xor eax, eax
mov dword [ebp - 0x30], 0x11721670
mov dword [ebp - 0x3c], 0x104acd6b
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x100358ea
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1140], 0xb5f7a0d7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x100358d2
xor eax, eax
mov dword [ebp - 0x1c], eax
mov esi, 0xb80ebbd4
cmp dword [ebp - 0x1c], 0xfffffffd
jl 0x10035a4e
jmp 0x10035900
mov dword [ebp - 0x2c], 0xf4a8b108
or edx, 0xffffffff
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 4
jge 0x10035928
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x16ec], edx
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x10035913
xor eax, eax
cmp dword [ebp - 0x2c], eax
jne 0x10035a4e
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
sub eax, dword [ebp - 0x1c]
neg eax
sbb eax, eax
add eax, 0xffff7060
cmp eax, dword [ebp - 0x1c]
jl 0x1003594e
inc dword [ebp - 0x3c]
lea ecx, [ebp - 0xc4c]
push 3
call fcn.10016b30
mov dword [ebp - 4], 0x3e
lea ecx, [ebp - 0xf40]
or esi, 0xffffffff
mov dword [ebp - 0x10], 0x8ade19d2
mov dword [ebp - 0x34], esi
push 3
call fcn.10016b30
mov byte [ebp - 4], 0x3f
xor eax, eax
mov dword [ebp - 0x34], 0xe1c97412
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x10035ab7
push dword [ebp - 0x14]
lea ecx, [ebp - 0xc4c]
call fcn.10016b9d
mov dword [eax], 0x648
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10035a98
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x10035adf
push dword [ebp - 0x14]
lea ecx, [ebp - 0xf40]
call fcn.10016b9d
mov dword [eax], 0x4f2887cf
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jl 0x10035ac0
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x10035afb
cmp dword [ebp - 0x10], 3
jl 0x10035ae4