Function at 0x100240f2
Capabilities:
Get keyboard layout

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10080e95
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x350
push esi
mov dword [ebp - 0x44], 0xfffffffd
mov dword [ebp - 0x38], 0
push 2
lea ecx, [ebp - 0x2a0]
call fcn.10016697
and dword [ebp - 4], 0
mov dword [ebp - 0x20], 0
jmp 0x10024140
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x10024153
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x18], 0xcad2086b
jmp 0x10024139
mov dword [ebp - 0x20], 0
jmp 0x10024163
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 2
jge 0x1002417f
push dword [ebp - 0x20]
lea ecx, [ebp - 0x2a0]
call fcn.10016738
mov dword [eax], 1
jmp 0x1002415c
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x18]
cmp dword [ebp + eax - 0x18], ecx
jge 0x100241a1
mov dword [ebp - 0x244], 1
jmp 0x100241a8
and dword [ebp - 0x244], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
imul eax, dword [ebp - 0x38]
cmp eax, 0xffffffff
jne 0x100241ca
cmp dword [ebp - 0x38], 0
jne 0x100241ca
and dword [ebp - 0x1d4], 0
jmp 0x100241d4
mov dword [ebp - 0x1d4], 1
mov dword [ebp - 0x44], 0xfffffff8
mov eax, dword [ebp - 0x1d4]
mov dword [ebp - 0x38], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x38]
neg ecx
sub ecx, dword [ebp + eax - 0x18]
cmp dword [ebp - 0x44], ecx
jne 0x10024204
mov dword [ebp - 0xc8], 1
jmp 0x1002420b
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 5
jg 0x10024220
mov dword [ebp - 0x180], 1
jmp 0x10024227
and dword [ebp - 0x180], 0
cmp dword [ebp - 0x180], 0
jne 0x1002423c
mov dword [ebp - 0xd0], 1
jmp 0x10024243
and dword [ebp - 0xd0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
sub eax, dword [ebp - 0xd0]
mov ecx, 0x4325
sub ecx, eax
push 4
pop eax
imul eax, eax, 0
cmp ecx, dword [ebp + eax - 0x18]
je 0x10024272
mov dword [ebp - 0x188], 1
jmp 0x10024279
and dword [ebp - 0x188], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
imul eax, dword [ebp - 0x188]
imul esi, eax, 0xd52a
push 0
lea ecx, [ebp - 0x2a0]
call fcn.10016738
mov dword [eax], esi
mov dword [ebp - 0x38], 0xfffffff0
jmp 0x100242af
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 3
jne 0x10024510
mov dword [ebp - 0xb0], 0xfffffffb
mov dword [ebp - 0x44], 0
jmp 0x100242d3
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 0x17
je 0x100244ff
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x1a0], 0xc32c7527
mov dword [ebp - 0x2c], 0
jmp 0x100242fe
mov eax, dword [ebp - 0x2c]
dec eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jl 0x100244d8
mov dword [ebp - 0x4c], 1
mov dword [ebp - 0x4c], 0
jmp 0x1002431f
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 1
jg 0x100244d3
mov dword [ebp - 0x290], 0xea1dc7e9
mov eax, dword [ebp - 0x2c]
cmp dword [ebp + eax*4 - 0x18], 4
jle 0x10024349
mov dword [ebp - 0xd8], 1
jmp 0x10024350
and dword [ebp - 0xd8], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0xd8], eax
jl 0x10024367
mov dword [ebp - 0x190], 1
jmp 0x1002436e
and dword [ebp - 0x190], 0
cmp dword [ebp - 0x190], 0xffffffff
jg 0x10024383
mov dword [ebp - 0xe0], 1
jmp 0x1002438a
and dword [ebp - 0xe0], 0
mov eax, dword [ebp - 0xe0]
dec eax
jne 0x100243a2
cmp dword [ebp - 0x2c], 0
jne 0x100243a2
and dword [ebp - 0x198], 0
jmp 0x100243ac
mov dword [ebp - 0x198], 1
mov eax, dword [ebp - 0x2c]
imul eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x2c]
cmp eax, dword [ebp + ecx*4 - 0x18]
jg 0x100243cb
mov dword [ebp - 0x288], 1
jmp 0x100243d2
and dword [ebp - 0x288], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x18]
mov dword [ebp - 0x348], eax
cmp dword [ebp - 0xb0], 0xffff
ja 0x100243fd
cmp dword [ebp - 0x44], 0
jne 0x100243fd
and dword [ebp - 0x98], 0
jmp 0x10024407
mov dword [ebp - 0x98], 1
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x2a0]
call fcn.10016738
mov ecx, dword [ebp - 0x98]
mov dword [eax], ecx
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp + eax*4 - 0x18]
cmp eax, dword [ebp - 0x98]
je 0x10024438
mov dword [ebp - 0xe8], 1
jmp 0x1002443f
and dword [ebp - 0xe8], 0
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x1a0], eax
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x290], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x18], 0
ja 0x10024471
xor eax, eax
jne 0x10024471
and dword [ebp - 0xf0], 0
jmp 0x1002447b
mov dword [ebp - 0xf0], 1
cmp dword [ebp - 0xf0], 0xad33
jl 0x10024493
mov dword [ebp - 0x1a8], 1
jmp 0x1002449a
and dword [ebp - 0x1a8], 0
cmp dword [ebp - 0x1a8], 0xbf2fea27
je 0x100244b2
mov dword [ebp - 0xf8], 1
jmp 0x100244b9
and dword [ebp - 0xf8], 0
push 0
lea ecx, [ebp - 0x2a0]
call fcn.10016738
mov ecx, dword [ebp - 0xf8]
mov dword [eax], ecx
jmp 0x10024318
jmp 0x100242f7
mov byte [ebp - 0x3c], 0
movzx eax, byte [ebp - 0x3c]
test eax, eax
je 0x100244fa
push 1
push 0
push 0x1d23
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetScrollInfo]
jmp 0x100242cc
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb0], eax
jmp 0x100242a8
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a0]
call fcn.1001671c
movzx eax, byte [ebp + 0x20]
test eax, eax
je 0x10024bf4
mov dword [ebp - 0x58], 0x9b3198a8
mov dword [ebp - 0x70], 0
jmp 0x10024542
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 3
jge 0x10024558
mov eax, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x354], 0xffffffff
jmp 0x1002453b
mov dword [ebp - 0x58], 0
jmp 0x10024568
mov eax, dword [ebp - 0x58]
dec eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 0xfffffff3
je 0x10024659
and dword [ebp - 0x2ec], 0
and dword [ebp - 0x2e8], 0
and dword [ebp - 0x2e4], 0
and dword [ebp - 0x2e0], 0
lea ecx, [ebp - 0x9d]
call fcn.10008f03
push eax
lea eax, [ebp - 0x2dc]
push eax
lea eax, [ebp - 0x2ec]
push eax
lea ecx, [ebp - 0x35c]
call fcn.10016747
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x240]
call fcn.100166f6
mov dword [ebp - 4], 1
cmp dword [ebp - 0x58], 0
je 0x100245e1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x240]
call fcn.1001671c
jmp 0x10024659
push 1
lea ecx, [ebp - 0x240]
call fcn.10016738
and dword [eax], 0
jmp 0x10024617
push 1
lea ecx, [ebp - 0x240]
call fcn.10016738
mov dword [ebp - 0x1b0], eax
mov eax, dword [ebp - 0x1b0]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1b0]
mov dword [ecx], eax
push 1
lea ecx, [ebp - 0x240]
call fcn.10016738
cmp dword [eax], 3
jge 0x10024645
push 1
lea ecx, [ebp - 0x240]
call fcn.10016738
mov eax, dword [eax]
mov dword [ebp + eax*4 - 0x354], 0x6f6dd8d1
jmp 0x100245f3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x240]
call fcn.1001671c
jmp 0x10024561
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x24], 0xade2167
mov dword [ebp - 0x60], 0x335c0de4
mov dword [ebp - 0x78], 0xeb64d07d
mov dword [ebp - 0x9c], 0x3d97867a
mov dword [ebp - 0xa8], 0x8bbe26b5
push 3
lea ecx, [ebp - 0x230]
call fcn.10016697
mov dword [ebp - 4], 2
mov dword [ebp - 0xb8], 1
mov dword [ebp - 0x8c], 0
jmp 0x100246c2
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 3
jge 0x100246e4
push dword [ebp - 0x8c]
lea ecx, [ebp - 0x230]
call fcn.10016738
mov dword [eax], 0xfffffffa
jmp 0x100246b5
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x24], eax
jl 0x100246f8
mov dword [ebp - 0x1c8], 1
jmp 0x100246ff
and dword [ebp - 0x1c8], 0
xor eax, eax
je 0x10024713
xor eax, eax
je 0x10024713
mov dword [ebp - 0x100], 1
jmp 0x1002471a
and dword [ebp - 0x100], 0
cmp dword [ebp - 0x100], 0x11bbb4f5
je 0x10024732
mov dword [ebp - 0x1b8], 1
jmp 0x10024739
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x1b8]
test eax, eax
jne 0x10024756
cmp dword [ebp - 0x24], 0
jne 0x10024756
and dword [ebp - 0x108], 0
jmp 0x10024760
mov dword [ebp - 0x108], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x108]
jl 0x10024777
mov dword [ebp - 0x1c0], 1
jmp 0x1002477e
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1c0]
add eax, 0xbe85
cmp eax, 0xb996
jge 0x1002479c
mov dword [ebp - 0x110], 1
jmp 0x100247a3
and dword [ebp - 0x110], 0
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x78]
mov dword [ebp - 0x310], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2fc], eax
mov eax, dword [ebp - 0x60]
inc eax
inc eax
cmp dword [ebp - 0x1c8], eax
jg 0x100247dd
mov dword [ebp - 0x118], 1
jmp 0x100247e4
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0x118], eax
je 0x100247fb
mov dword [ebp - 0x280], 1
jmp 0x10024802
and dword [ebp - 0x280], 0
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x31c], eax
cmp dword [ebp - 0x78], 0
je 0x1002481a
mov eax, 0xdaa08bbd
test eax, eax
jne 0x10024829
cmp dword [ebp - 0x60], 0
jne 0x10024829
and dword [ebp - 0x1d0], 0
jmp 0x10024833
mov dword [ebp - 0x1d0], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x1d0]
jle 0x1002484a
mov dword [ebp - 0x120], 1
jmp 0x10024851
and dword [ebp - 0x120], 0
cmp dword [ebp - 0x120], 0xffffffff
jge 0x10024866
mov dword [ebp - 0x1d8], 1
jmp 0x1002486d
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xa8], eax
mov esi, dword [ebp - 0xa8]
push 0
lea ecx, [ebp - 0x230]
call fcn.10016738
mov dword [eax], esi
push 0
lea ecx, [ebp - 0x230]
call fcn.10016738
mov esi, dword [ebp - 0xa8]
imul esi, dword [eax]
push 1
lea ecx, [ebp - 0x230]
call fcn.10016738
cmp esi, dword [eax]
je 0x100248cd
mov dword [ebp - 0x130], 1
jmp 0x100248d4
and dword [ebp - 0x130], 0
mov eax, dword [ebp - 0x60]
cmp dword [ebp - 0x78], eax
jne 0x100248e8
mov dword [ebp - 0x128], 1
jmp 0x100248ef
and dword [ebp - 0x128], 0
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x128]
mov dword [ebp - 0x254], eax
mov eax, dword [ebp - 0xb8]
inc eax
mov dword [ebp - 0xb8], eax
mov eax, dword [ebp - 0x250]
cmp eax, dword [ebp - 0x254]
jl 0x1002492e
mov dword [ebp - 0x1e0], 1
jmp 0x10024935
and dword [ebp - 0x1e0], 0
push 0
lea ecx, [ebp - 0x230]
call fcn.10016738
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1e0]
jne 0x10024958
mov dword [ebp - 0x284], 1
jmp 0x1002495f
and dword [ebp - 0x284], 0
push 0
lea ecx, [ebp - 0x230]
call fcn.10016738
mov esi, dword [ebp - 0x130]
sub esi, dword [ebp - 0x9c]
push 1
lea ecx, [ebp - 0x230]
call fcn.10016738
mov dword [eax], esi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x230]
call fcn.1001671c
mov eax, dword [ebp - 0x25c]
mov dword [ebp - 0x2a4], eax
mov eax, dword [ebp - 0x2a4]
movzx eax, byte [eax]
test eax, eax
je 0x10024ab8
push 1
lea ecx, [ebp - 0x2b0]
call fcn.10016697
mov dword [ebp - 4], 3
mov dword [ebp - 0x28], 0
jmp 0x100249d7
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 2
jge 0x100249ed
mov eax, dword [ebp - 0x28]
mov dword [ebp + eax*4 - 0x328], 0xf9b3
jmp 0x100249d0
mov dword [ebp - 0x28], 0
jmp 0x100249fd
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 1
jge 0x10024a16
push dword [ebp - 0x28]
lea ecx, [ebp - 0x2b0]
call fcn.10016738
or dword [eax], 0xffffffff
jmp 0x100249f6
push 0
lea ecx, [ebp - 0x2b0]
call fcn.10016738
mov dword [eax], 1
jmp 0x10024a4f
push 0
lea ecx, [ebp - 0x2b0]
call fcn.10016738
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e8]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x1e8]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x2b0]
call fcn.10016738
cmp dword [eax], 0
jl 0x10024a90
mov dword [ebp - 0x50], 0xfffffffe
mov dword [ebp - 0x50], 0
jmp 0x10024a78
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 2
jge 0x10024a8e
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x328], 0xffffffff
jmp 0x10024a71
jmp 0x10024a2b
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2b0]
call fcn.1001671c
push 0
push 0x1c64
push 0x35b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetDlgItemInt]
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x94], 0x68819570
cmp dword [ebp - 0x94], 0
je 0x10024ade
cmp dword [ebp - 0x94], 0
jne 0x10024aee
push 4
pop eax
test eax, eax
jne 0x10024aee
and dword [ebp - 0x138], 0
jmp 0x10024af8
mov dword [ebp - 0x138], 1
push 8
pop eax
sub eax, dword [ebp - 0x138]
cmp dword [ebp - 0x94], eax
jne 0x10024b15
mov dword [ebp - 0x1f0], 1
jmp 0x10024b1c
and dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x94]
cmp eax, dword [ebp - 0x1f0]
jge 0x10024b3b
or eax, 0xffffffff
je 0x10024b3b
mov dword [ebp - 0x140], 1
jmp 0x10024b42
and dword [ebp - 0x140], 0
mov eax, dword [ebp - 0x140]
add eax, 5
je 0x10024b60
push 0xfffffffffffffffe
pop eax
test eax, eax
je 0x10024b60
mov dword [ebp - 0x1f8], 1
jmp 0x10024b67
and dword [ebp - 0x1f8], 0
cmp dword [ebp - 0x1f8], 9
jne 0x10024b7c
mov dword [ebp - 0x200], 1
jmp 0x10024b83
and dword [ebp - 0x200], 0
mov dword [ebp - 0x148], 0x57e8b72f
mov eax, dword [ebp - 0x148]
cmp eax, dword [ebp - 0x200]
jle 0x10024ba7
mov dword [ebp - 0x150], 1
jmp 0x10024bae
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0x150]
add eax, 7
cmp eax, 4
jl 0x10024bd4
mov byte [ebp - 0x45], 0
movzx eax, byte [ebp - 0x45]
test eax, eax
je 0x10024bd2
push 0
push 0
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
jmp 0x10024bef
mov byte [ebp - 0x3a], 0
movzx eax, byte [ebp - 0x3a]
test eax, eax
je 0x10024bef
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
jmp 0x10025884
mov dword [ebp - 0x80], 0xd16df251
mov dword [ebp - 0x160], 0x288a137b
mov dword [ebp - 0x90], 0xb6968939
mov dword [ebp - 0x158], 0x3700
mov dword [ebp - 0x264], 0
push 0xfffffffffffffffa
pop eax
test eax, eax
je 0x10024ca9
mov eax, 0x9e03d258
test eax, eax
je 0x10024c48
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x300], eax
mov eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0x80]
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x158], eax
jge 0x10024c5f
mov dword [ebp - 0x208], 1
jmp 0x10024c66
and dword [ebp - 0x208], 0
mov eax, dword [ebp - 0x208]
sub eax, dword [ebp - 0x158]
jne 0x10024c86
mov eax, 0x92e3
test eax, eax
jne 0x10024c86
and dword [ebp - 0x210], 0
jmp 0x10024c90
mov dword [ebp - 0x210], 1
cmp dword [ebp - 0x210], 0xfffffffe
jg 0x10024ca0
cmp dword [ebp - 0x90], 0
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x304], eax
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x160], eax
imul eax, dword [ebp - 0x90], 0xe2e
sub eax, 0x7b47e0fa
cmp dword [ebp - 0x160], eax
je 0x10024cd5
mov dword [ebp - 0x218], 1
jmp 0x10024cdc
and dword [ebp - 0x218], 0
mov eax, dword [ebp - 0x218]
mov dword [ebp - 0x264], eax
mov byte [ebp - 0x3e], 0
movzx eax, byte [ebp - 0x3e]
test eax, eax
je 0x10024d0d
push 0x1e53
push 0x1bfa
push 0
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_CreateCaret]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x258], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x10], 0xbb0c
mov dword [ebp - 0x1c], 1
mov dword [ebp - 0x54], 0xbcb1a7a8
mov dword [ebp - 0x294], 0xffffffff
mov dword [ebp - 0x30], 0
jmp 0x10024d60
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jge 0x10024d76
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x2d8], 0x3c3fa3c
jmp 0x10024d59
mov dword [ebp - 0x30], 0
jmp 0x10024d86
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jge 0x10024d99
mov eax, dword [ebp - 0x30]
mov dword [ebp + eax*4 - 0x34], 0x5db0ff84
jmp 0x10024d7f
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30c], eax
mov dword [ebp - 0x54], 0x6bde
imul eax, dword [ebp - 0x54], 0x16
sub eax, dword [ebp - 0x10]
je 0x10024dc7
mov eax, 0xf59ec134
test eax, eax
je 0x10024dc7
mov dword [ebp - 0x168], 1
jmp 0x10024dce
and dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x168]
test eax, eax
je 0x10024dee
cmp dword [ebp - 0x54], 0
je 0x10024dee
mov dword [ebp - 0x28c], 1
jmp 0x10024df5
and dword [ebp - 0x28c], 0
cmp dword [ebp - 0x10], 0
je 0x10024e0b
xor eax, eax
je 0x10024e0b
mov dword [ebp - 0x26c], 1
jmp 0x10024e12
and dword [ebp - 0x26c], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x1c], eax
jne 0x10024e2c
mov dword [ebp - 0x220], 1
jmp 0x10024e33
and dword [ebp - 0x220], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x220], eax
jne 0x10024e4a
mov dword [ebp - 0x2b4], 1
jmp 0x10024e51
and dword [ebp - 0x2b4], 0
mov eax, 0x13ed
cmp eax, 0xcb8e
jge 0x10024e69
mov dword [ebp - 0x234], 1
jmp 0x10024e70
and dword [ebp - 0x234], 0
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x234]
cmp dword [ebp - 0x10], eax
jl 0x10024e8b
mov dword [ebp - 0x174], 1
jmp 0x10024e92
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x174]
sub eax, dword [ebp - 0x10]
jmp 0x10024ea9
and dword [ebp - 0xc0], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0xc0]
add ecx, dword [ebp + eax - 0x2d8]
mov dword [ebp - 0x17c], ecx
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x17c]
mov dword [ebp + eax - 0x34], ecx
cmp dword [ebp - 0x17c], 0xffffffff
jg 0x10024eed
mov dword [ebp - 0x204], 1
jmp 0x10024ef4
and dword [ebp - 0x204], 0
mov eax, dword [ebp - 0x10]
cmp dword [ebp - 0x204], eax
jl 0x100252a4
mov dword [ebp - 0x5c], 7
mov dword [ebp - 0xac], 0xffffffff
mov dword [ebp - 0x1cc], 4
mov dword [ebp - 0x10], 0xfffffffb
jmp 0x10024f2e
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 7
jg 0x10025168
mov dword [ebp - 0x1dc], 0x510212ae
mov dword [ebp - 0x19c], 0x8de61175
mov dword [ebp - 0x88], 0
jmp 0x10024f65
mov eax, dword [ebp - 0x88]
inc eax
mov dword [ebp - 0x88], eax
cmp dword [ebp - 0x88], 3
jge 0x10024f81
mov eax, dword [ebp - 0x88]
mov dword [ebp + eax*4 - 0x2cc], 0xfffffffb
jmp 0x10024f58
cmp dword [ebp - 0x5c], 0xffffffff
jg 0x10024f93
mov dword [ebp - 0x1b4], 1
jmp 0x10024f9a
and dword [ebp - 0x1b4], 0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x318], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2d8]
push 4
pop ecx
shl ecx, 0
sub eax, dword [ebp + ecx - 0x2cc]
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x2cc]
jle 0x10024fd7
mov dword [ebp - 0x184], 1
jmp 0x10024fde
and dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x5c]
cmp dword [ebp - 0x184], eax
jge 0x10024ff5
mov dword [ebp - 0x18c], 1
jmp 0x10024ffc
and dword [ebp - 0x18c], 0
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp - 0x1dc]
cmp eax, dword [ebp - 0x18c]
jge 0x1002501f
mov dword [ebp - 0x21c], 1
jmp 0x10025026
and dword [ebp - 0x21c], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x21c]
imul ecx, dword [ebp + eax - 0x2cc]
mov dword [ebp - 0x194], ecx
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x194]
mov dword [ebp + eax - 0x2cc], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x34]
cmp dword [ebp - 0x194], eax
jl 0x10025070
mov dword [ebp - 0x1e4], 1
jmp 0x10025077
and dword [ebp - 0x1e4], 0
mov eax, dword [ebp - 0x1e4]
sub eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x19c]
cmp eax, dword [ebp - 0x19c]
jge 0x1002509b
mov dword [ebp - 0x20c], 1
jmp 0x100250a2
and dword [ebp - 0x20c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x34]
cmp eax, dword [ebp - 0x20c]
jle 0x100250c0
mov dword [ebp - 0x1a4], 1
jmp 0x100250c7
and dword [ebp - 0x1a4], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2d8]
cmp dword [ebp - 0x1a4], eax
je 0x100250e7
mov dword [ebp - 0x1ec], 1
jmp 0x100250ee
and dword [ebp - 0x1ec], 0
cmp dword [ebp - 0x1ec], 7
jl 0x10025103
mov dword [ebp - 0x1ac], 1
jmp 0x1002510a
and dword [ebp - 0x1ac], 0
cmp dword [ebp - 0x1ac], 9
jb 0x1002511f
mov dword [ebp - 0x224], 1
jmp 0x10025126
and dword [ebp - 0x224], 0
mov eax, dword [ebp - 0x224]
mov ecx, dword [ebp - 0x1b4]
lea eax, [ecx + eax + 0xa]
test eax, eax
je 0x10025153
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x34], 0
je 0x10025153
mov dword [ebp - 0x1f4], 1
jmp 0x1002515a
and dword [ebp - 0x1f4], 0
mov eax, dword [ebp - 0x1f4]
mov dword [ebp - 0x1c], eax
jmp 0x10024f27
cmp dword [ebp - 0xac], 0
je 0x1002518a
mov dword [ebp - 0x54], 0x7ccf
cmp dword [ebp - 0x54], 0
je 0x1002518a
mov dword [ebp - 0x1c4], 1
jmp 0x10025191
and dword [ebp - 0x1c4], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x34], 0
jne 0x100251ab
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x34], 0
je 0x100251c4
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x34], 0
je 0x100251c4
mov dword [ebp - 0x1bc], 1
jmp 0x100251cb
and dword [ebp - 0x1bc], 0
cmp dword [ebp - 0x1bc], 0x59701027
je 0x100251e3
mov dword [ebp - 0x214], 1
jmp 0x100251ea
and dword [ebp - 0x214], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x34]
mov ecx, dword [ebp - 0x214]
lea eax, [eax + ecx + 0xfffc]
imul eax, dword [ebp - 0xac]
cmp eax, dword [ebp - 0x5c]
jl 0x10025219
mov dword [ebp - 0x1fc], 1
jmp 0x10025220
and dword [ebp - 0x1fc], 0
mov eax, dword [ebp - 0x1c4]
cmp eax, dword [ebp - 0x1fc]
jge 0x1002523a
mov dword [ebp - 0xa4], 1
jmp 0x10025241
and dword [ebp - 0xa4], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xa4]
mov dword [ebp + eax - 0x34], ecx
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x1cc], eax
mov eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x320], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2d8]
add eax, 0x4799d989
imul eax, dword [ebp - 0x1c]
cmp dword [ebp - 0xac], eax
jle 0x10025292
mov dword [ebp - 0x16c], 1
jmp 0x10025299
and dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 0x1c], eax
jmp 0x100252ea
mov dword [ebp - 0x1c], 0
jmp 0x100252b4
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xffffffe5
jne 0x100252ea
mov dword [ebp - 0x10], 0
jmp 0x100252ca
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0x1b
jge 0x100252e8
mov dword [ebp - 0x274], 0x6c84d1b3
mov eax, dword [ebp - 0x274]
mov dword [ebp - 0x294], eax
jmp 0x100252c3
jmp 0x100252ad
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x268], eax
push 3
lea ecx, [ebp - 0x334]
call fcn.10016697
mov dword [ebp - 4], 4
mov dword [ebp - 0x7c], 0x6aabecba
mov dword [ebp - 0x68], 0
jmp 0x1002531e
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 3
jge 0x1002533a
push dword [ebp - 0x68]
lea ecx, [ebp - 0x334]
call fcn.10016738
mov dword [eax], 0x313dd33a
jmp 0x10025317
mov dword [ebp - 0x7c], 0
jmp 0x1002534a
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 2
jg 0x100253c0
push 3
lea ecx, [ebp - 0x2f8]
call fcn.10016697
mov byte [ebp - 4], 5
mov dword [ebp - 0x84], 0
jmp 0x1002537a
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 3
jge 0x1002539c
push dword [ebp - 0x84]
lea ecx, [ebp - 0x2f8]
call fcn.10016738
mov dword [eax], 0xf2fb
jmp 0x1002536d
push 1
lea ecx, [ebp - 0x2f8]
call fcn.10016738
mov dword [eax], 0x8c9f3690
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x2f8]
call fcn.1001671c
jmp 0x10025343
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x334]
call fcn.1001671c
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x278], eax
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x14], 1
mov dword [ebp - 0xcc], 0x6f49c23e
mov dword [ebp - 0xf4], 0xfffffff9
cmp dword [ebp - 0x14], 0
jne 0x10025417
cmp dword [ebp - 0x14], 0
jne 0x10025417
and dword [ebp - 0x170], 0
jmp 0x10025421
mov dword [ebp - 0x170], 1
mov eax, dword [ebp - 0x170]
sub eax, 0x4c0b0b93
je 0x10025487
mov byte [ebp - 0x39], 0
movzx eax, byte [ebp - 0x39]
test eax, eax
je 0x10025453
push 0x25d0
push 0x1d6e
push 0
push 0
push 0x1165
call dword [sym.imp.USER32.dll_MsgWaitForMultipleObjects]
mov dword [ebp - 0x14], 0xe
jmp 0x10025463
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x12
jl 0x10025482
mov byte [ebp - 0x3b], 0
movzx eax, byte [ebp - 0x3b]
test eax, eax
je 0x10025480
push 0x1876
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
jmp 0x1002545c
jmp 0x1002569f
mov dword [ebp - 0x248], 0xa5d87207
mov dword [ebp - 0x6c], 0
jmp 0x100254a1
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 3
jge 0x100254b7
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x2c0], 0x2fdcba86
jmp 0x1002549a
mov dword [ebp - 0x14], 0x15
jmp 0x100254c7
mov eax, dword [ebp - 0x14]
dec eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffffed
je 0x1002569f
mov dword [ebp - 0x64], 0xffffffff
mov dword [ebp - 0x10c], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2c0]
mov dword [ebp - 0x314], eax
cmp dword [ebp - 0x64], 0
jne 0x10025509
cmp dword [ebp - 0x64], 0
jne 0x10025509
and dword [ebp - 0x178], 0
jmp 0x10025513
mov dword [ebp - 0x178], 1
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0x178], eax
jg 0x1002552a
mov dword [ebp - 0xc4], 1
jmp 0x10025531
and dword [ebp - 0xc4], 0
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0x40a9
jle 0x10025555
mov dword [ebp - 0xd4], 1
jmp 0x1002555c
and dword [ebp - 0xd4], 0
cmp dword [ebp - 0xd4], 0x9a85
jg 0x10025574
mov dword [ebp - 0xdc], 1
jmp 0x1002557b
and dword [ebp - 0xdc], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x2c0]
cmp eax, dword [ebp - 0xdc]
jle 0x1002559b
mov dword [ebp - 0xe4], 1
jmp 0x100255a2
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0x64]
cmp dword [ebp - 0xe4], eax
jg 0x100255b9
mov dword [ebp - 0xec], 1
jmp 0x100255c0
and dword [ebp - 0xec], 0
mov eax, dword [ebp - 0xec]
sub eax, dword [ebp - 0x64]
mov dword [ebp - 0xf4], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xf4]
sub ecx, dword [ebp + eax - 0x2c0]
cmp dword [ebp - 0x14], ecx
jge 0x100255f3
mov dword [ebp - 0xfc], 1
jmp 0x100255fa
and dword [ebp - 0xfc], 0
mov eax, dword [ebp - 0x14]
cmp dword [ebp - 0xfc], eax
jg 0x10025611
mov dword [ebp - 0x104], 1
jmp 0x10025618
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0x104]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x338], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x308], eax
mov eax, 0xfff6
test eax, eax
je 0x1002565e
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x2c0], 0
je 0x1002565e
mov dword [ebp - 0x114], 1
jmp 0x10025665
and dword [ebp - 0x114], 0
mov eax, dword [ebp - 0x114]
sub eax, 0x7802f8b3
neg eax
mov dword [ebp - 0x248], eax
mov byte [ebp - 0x3f], 0
movzx eax, byte [ebp - 0x3f]
test eax, eax
je 0x1002569a
push 0
push 0
push 0x26c
push 0x17d3
push 0
call dword [sym.imp.USER32.dll_InsertMenuA]
jmp 0x100254c0
mov eax, dword [ebp - 0x258]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x260]
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0x268]
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0x74], 0
jmp 0x100256d3
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 3
jge 0x100256e9
mov eax, dword [ebp - 0x74]
mov dword [ebp + eax*4 - 0x344], 0
jmp 0x100256cc
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x344]
inc eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x344], eax
mov byte [ebp - 0x3d], 0
movzx eax, byte [ebp - 0x3d]
test eax, eax
je 0x10025724
push 0
push 0
push 0x24fd
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebp - 0x11c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x11c]
imul eax, dword [ecx]
test eax, eax
jne 0x1002574b
mov eax, 0xd373ee76
test eax, eax
jne 0x1002574b
and dword [ebp - 0x124], 0
jmp 0x10025755
mov dword [ebp - 0x124], 1
cmp dword [ebp - 0x124], 0x4c92
jne 0x1002576d
mov dword [ebp - 0x12c], 1
jmp 0x10025774
and dword [ebp - 0x12c], 0
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax]
cmp dword [ebp - 0x12c], eax
je 0x10025790
mov dword [ebp - 0x134], 1
jmp 0x10025797
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax]
cmp dword [ebp - 0x134], eax
jge 0x100257b3
mov dword [ebp - 0x13c], 1
jmp 0x100257ba
and dword [ebp - 0x13c], 0
cmp dword [ebp - 0x13c], 0xb779c63c
jbe 0x100257d2
mov dword [ebp - 0x144], 1
jmp 0x100257d9
and dword [ebp - 0x144], 0
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax]
cmp dword [ebp - 0x144], eax
je 0x100257f5
mov dword [ebp - 0x270], 1
jmp 0x100257fc
and dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x14c]
mov dword [eax], 0xffff
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x14c]
imul eax, dword [ecx]
test eax, eax
jne 0x10025829
mov dword [ebp - 0x154], 1
jmp 0x10025830
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax]
cmp dword [ebp - 0x154], eax
jle 0x1002584c
mov dword [ebp - 0x15c], 1
jmp 0x10025853
and dword [ebp - 0x15c], 0
mov eax, dword [ebp - 0xbc]
mov eax, dword [eax]
cmp dword [ebp - 0x15c], eax
je 0x1002586f
mov dword [ebp - 0x164], 1
jmp 0x10025876
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x164]
mov dword [eax], ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret