Function at 0x1002e062
Capabilities:
Compare security identifiers
Create directory
Delete file
Extract resource via kernel32 functions
Get common file path
Get disk information
Get file attributes
Get file size
Identify system language via api
Resume thread

Disassembly:
mov eax, 0x1006c280
call fcn.1006bc0c
mov eax, 0x12cc
call fcn.10069770
push ebx
mov byte [ebp - 0x91], dl
mov ebx, 0x974a5202
xor edx, edx
mov dword [ebp - 0x60], ecx
push esi
inc edx
or ecx, 0xffffffff
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], ecx
push edi
mov edi, dword [sym.imp.KERNEL32.dll_CompareFileTime]
mov dword [ebp - 0x48], 0xc8cdab0b
mov dword [ebp - 0x48], 0xfffffff8
push 0xfffffffffffffff6
mov dword [ebp - 0x48], ecx
pop esi
mov dword [ebp - 0x48], 0x9458d81c
mov dword [ebp - 0x34], 0xffffffec
push 0
pop eax
cmp dword [ebp - 0x34], esi
jne 0x1002e186
mov dword [ebp - 0x24], ecx
xor edx, edx
mov dword [ebp - 0x38], 0x86e3e45b
mov dword [ebp - 0x2c], 0x889e022a
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
add ecx, 0x28ea
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
imul eax, dword [ebp - 0x24]
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x10], ecx
inc edx
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp eax, edx
setg cl
sub ecx, 0x220985a9
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x34]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x24]
jge 0x1002e131
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x1002e133
mov eax, edx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jne 0x1002e173
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002e159
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002e168
push eax
push eax
call edi
xor eax, eax
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
je 0x1002e146
xor edx, edx
inc edx
inc dword [ebp - 0x34]
push 0xffffffffffffffff
pop ecx
cmp dword [ebp - 0x34], esi
je 0x1002e0cd
xor eax, eax
or ecx, ecx
mov esi, dword [sym.imp.USER32.dll_TranslateMDISysAccel]
cmp dword [ebp - 0x10], eax
je 0x1002e1d3
mov dword [ebp - 0x18], 0x3e3f36a5
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x2c], 0xd9780293
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002e21a
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call esi
jmp 0x1002e218
mov dword [ebp - 0x48], 0xbab1
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], 0x17d239f9
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x8ad385e3
push 4
pop ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x1c], eax
jmp 0x1002e210
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1258], 0x2bba6dad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x1002e1ff
inc dword [ebp - 0x38]
xor eax, eax
xor ecx, ecx
inc ecx
mov dword [ebp - 0x34], ecx
or ecx, 0xffffffff
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x10], 0xcd45
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x28], 0xa2e71cc
mov dword [ebp - 0x18], 0xfffffffa
mov dword [ebp - 0x30], 0xe60a2fc5
mov dword [ebp - 0x3c], 0xfc331464
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x58], 2
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 3
jge 0x1002e289
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1200], 0x6611625f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1002e270
xor eax, eax
mov ecx, 0xffff
cmp dword [ebp - 0x10], eax
je 0x1002e30b
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0x10]
push 0
sub eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
cmp eax, ecx
sbb eax, eax
inc eax
pop eax
sets al
cmp eax, dword [ebp - 0x10]
jne 0x1002e2c0
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1002e2c2
xor ebx, ebx
inc ebx
mov eax, ebx
jmp 0x1002e2c5
xor eax, eax
xor ebx, ebx
inc ebx
mov dword [ebp - 0x38], eax
xor edx, edx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, 9
setl al
cmp eax, dword [ebp - 0x10]
jge 0x1002e309
mov ecx, ebx
jmp 0x1002e310
xor eax, eax
xor ebx, ebx
mov ecx, eax
inc ebx
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x30], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xfc75c14a
setle cl
mov dword [ebp - 0x3c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
neg edx
cmp edx, eax
setl cl
xor eax, eax
cmp dword [ebp - 0x10], ecx
jl 0x1002e4e3
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], 0xb6ef5427
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 4
jge 0x1002e397
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xd20], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1002e37e
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1002e3e5
cmp dword [ebp - 0x38], eax
je 0x1002e3a8
mov ecx, ebx
cmp dword [ebp - 0x1c], eax
jne 0x1002e3aa
mov ecx, eax
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, dword [ebp - 0x30]
jge 0x1002e3cc
cmp dword [ebp - 0x18], eax
je 0x1002e3cc
mov eax, ebx
mov dword [ebp - 0xd20], eax
or eax, 0xffffffff
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x1002e3e3
mov eax, ebx
jmp 0x1002e3e5
xor eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
dec eax
je 0x1002e3fc
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x1002e3fe
mov ecx, ebx
jmp 0x1002e400
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
sub ecx, eax
add ecx, dword [ebp - 0x1c]
mov eax, 0xffff
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x10], eax
jb 0x1002e4ba
mov dword [ebp - 0x24], 0x4c396c7b
xor edx, edx
mov dword [ebp - 0x44], 0x652606bd
mov dword [ebp - 0x44], 0xd9bf4d75
mov ecx, dword [ebp - 0xd1c]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
imul eax, edx
xor edx, edx
neg eax
cmp eax, 0x9976
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xd940
setne al
add eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x30]
jne 0x1002e477
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
xor ebx, ebx
neg eax
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setg bl
xor edx, edx
add ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp eax, ebx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor ebx, ebx
inc ebx
cmp ebx, ecx
sbb eax, eax
neg eax
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x30], eax
jmp 0x1002e502
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1002e4db
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002e4d3
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1002e504
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffea
jge 0x1002e4c1
jmp 0x1002e504
mov dword [ebp - 0x1c], eax
jmp 0x1002e4f9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x123c], 0x2ac45f48
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 3
jl 0x1002e4e8
mov dword [ebp - 0x30], ebx
xor eax, eax
dec dword [ebp - 0x58]
mov dword [ebp - 0x48], 0xc8cdab0b
mov dword [ebp - 0x48], 0xfffffff8
mov dword [ebp - 0x28], ebx
push 0xfffffffffffffff9
pop ecx
mov dword [ebp - 0x6fc], ecx
mov dword [ebp - 0x6f8], ecx
mov dword [ebp - 0x6f4], ecx
mov dword [ebp - 0x6f0], ecx
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x11
jle 0x1002e5ad
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
cmp eax, 0xfff6
setne cl
sub ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
imul eax, dword [ebp - 0x18]
add ecx, 0xed4a55f1
sub eax, 0xec17
cmp eax, ecx
jle 0x1002e576
mov eax, dword [ebp - 0x6f8]
mov eax, dword [ebp - 0x6f8]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x6f8]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002e5a1
push 0x1bb6
push eax
call dword [sym.imp.USER32.dll_CharLowerBuffW]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x11
push 0
pop eax
jg 0x1002e543
or ecx, 0xffffffff
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x10], 0x42c70bb7
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x4c], 0x15869b9
mov dword [ebp - 0x38], 0xb60d90c3
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1002e5eb
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x90], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1002e5d3
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jl 0x1002e6d7
mov dword [ebp - 0x44], 0x8fe831e3
mov dword [ebp - 0x38], 0x6d983a5c
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x10]
sub edx, 0xfffa
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov edx, ebx
setge cl
sub ecx, dword [ebp - 0x44]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
sub edx, eax
add edx, dword [ebp - 0x58]
add edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x90]
cmp edx, eax
mov eax, dword [ebp - 0x90]
setge cl
xor edx, edx
cmp ecx, 0x5ead4a2b
setle dl
imul edx, eax
xor eax, eax
cmp edx, dword [ebp - 0x2c]
jge 0x1002e6c8
cmp dword [ebp - 0x4c], eax
je 0x1002e6c8
mov eax, ebx
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x10]
push 0
pop eax
jns 0x1002e5f7
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 9
jge 0x1002e779
jmp 0x1002e6e8
xor eax, eax
mov dword [ebp - 0x24], 0x72f548f9
mov dword [ebp - 0x1c], eax
jmp 0x1002e701
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xf1c], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1002e6f4
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
imul eax, ecx, 5
test eax, eax
jne 0x1002e72f
mov edx, eax
cmp dword [ebp - 0x90], eax
je 0x1002e731
mov edx, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, edx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
setl cl
sub edx, ecx
neg edx
push 1
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
setl bl
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, ebx
pop ebx
setge al
mov dword [ebp - 0xf10], eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 9
jl 0x1002e6e6
mov ebx, 0x9458d81c
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x34], 0xffffffec
jmp 0x1002e834
or eax, 0xffffffff
xor edx, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x38], 0x86e3e45b
mov dword [ebp - 0x2c], 0x889e022a
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
add ecx, 0x28ea
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
imul eax, dword [ebp - 0x24]
xor ecx, ecx
cmp edx, eax
setne cl
xor edx, edx
mov dword [ebp - 0x40], ecx
inc edx
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov eax, dword [ebp - 0x24]
cmp eax, edx
setg cl
sub ecx, 0x220985a9
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x34]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x24]
jge 0x1002e7f4
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x1002e7f6
mov eax, edx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x40], eax
jmp 0x1002e82b
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002e819
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002e828
push eax
push eax
call edi
xor eax, eax
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xfffffff6
je 0x1002e806
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff6
je 0x1002e78d
xor eax, eax
cmp dword [ebp - 0x40], eax
je 0x1002e916
mov dword [ebp - 0x18], 0x3e3f36a5
or eax, 0xffffffff
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x2c], 0xd9780293
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002e88e
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call esi
xor eax, eax
xor esi, esi
inc esi
mov dword [ebp - 0x18], 0xfffffff8
or ecx, 0xffffffff
mov dword [ebp - 0x2c], 0x4c38b6b0
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x880e033c
mov dword [ebp - 0x44], 0x54671013
mov dword [ebp - 0x38], 0xde6bc044
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x4c], 0x9cc02768
mov dword [ebp - 0x58], 0xf9052196
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002e8ef
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1f4], 0x8d4081c2
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002e8d7
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x1002e911
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7f8], 0x465cd386
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1002e8f8
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002e979
mov dword [ebp - 0x48], 0xbab1
or esi, 0xffffffff
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], 0x17d239f9
mov dword [ebp - 0x48], esi
xor esi, esi
mov dword [ebp - 0x48], 0x8ad385e3
inc esi
push 4
pop ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x1c], eax
jmp 0x1002e959
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x12a8], 0x2bba6dad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ecx
jl 0x1002e948
inc dword [ebp - 0x38]
xor eax, eax
jmp 0x1002e891
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xee4], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002e968
mov eax, dword [ebp - 0x1f4]
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1002e9d4
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, 0x2e42
setge cl
imul eax, ecx, 0xb059
test eax, eax
jne 0x1002e9af
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x1f4], eax
je 0x1002e9bf
mov eax, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7f4]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x7f8]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x1002e9ee
mov ecx, eax
cmp dword [ebp - 0x7f8], eax
je 0x1002e9f0
mov ecx, esi
mov eax, dword [ebp - 0x58]
imul eax, ecx
push 0xfffffffffffffff9
sub eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x1f4]
sub ecx, eax
neg ecx
pop eax
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x7f4], ecx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x540], eax
mov dword [ebp - 0x53c], eax
mov dword [ebp - 0x538], eax
xor eax, eax
mov dword [ebp - 0x53c], eax
jmp 0x1002ea73
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002ea4a
push 0x371
call dword [sym.imp.USER32.dll_MessageBeep]
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002ea6d
push eax
push 0xef5
push 0x1b3d
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_SetScrollPos]
xor eax, eax
dec dword [ebp - 0x53c]
cmp dword [ebp - 0x53c], 0xfffffff0
jl 0x1002ea34
mov dword [ebp - 0x40], 0x974a5202
or ecx, 0xffffffff
mov dword [ebp - 0x18], 0xfffffff8
mov dword [ebp - 0x2c], 0x4c38b6b0
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x880e033c
mov dword [ebp - 0x44], 0x54671013
mov dword [ebp - 0x38], 0xde6bc044
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x4c], 0x9cc02768
mov dword [ebp - 0x58], 0xf9052196
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002eae1
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1c4], 0x8d4081c2
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002eac9
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 3
jge 0x1002eb03
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x7b0], 0x465cd386
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 3
jl 0x1002eaea
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002eb19
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xef4], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002eb08
mov eax, dword [ebp - 0x1c4]
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1002eb74
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, 0x2e42
setge cl
imul eax, ecx, 0xb059
test eax, eax
jne 0x1002eb4f
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x1c4], eax
je 0x1002eb5f
mov eax, dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x7ac]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x7b0]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x1002eb8e
mov ecx, eax
cmp dword [ebp - 0x7b0], eax
je 0x1002eb90
mov ecx, esi
mov eax, dword [ebp - 0x58]
imul eax, ecx
sub eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x1c4]
sub ecx, eax
neg ecx
sbb ecx, ecx
or eax, 0xffffffff
inc ecx
mov dword [ebp - 0x7ac], ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], eax
mov eax, 0xad8530de
mov dword [ebp - 0x48], 0xc8cdab0b
mov dword [ebp - 0x38], 0x85a9576c
mov dword [ebp - 0x9f0], eax
mov dword [ebp - 0x9ec], eax
mov dword [ebp - 0x9e8], eax
mov dword [ebp - 0x9e4], eax
xor eax, eax
mov dword [ebp - 0x18], 0xb0815898
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x9ec]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x1c], eax
jmp 0x1002ec29
mov dword [ebp - 0x38], 0x3e45bbbd
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002ec23
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
xor eax, eax
inc dword [ebp - 0x38]
dec dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 0xffffffe7
jne 0x1002ec0b
mov dword [ebp - 0x48], 0xfffffff8
or ecx, 0xffffffff
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x10], 0xfc558bac
mov dword [ebp - 0x38], 0x7822e6e
mov dword [ebp - 0x1c], eax
jmp 0x1002ec60
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xcc], 0xca3691f6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002ec4f
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 0xcc]
sub edx, 0x4794
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0xcc]
sete cl
xor edx, edx
cmp ecx, 0x98ce
setg dl
xor ecx, ecx
imul eax, edx
mov edx, dword [ebp - 0xcc]
cmp eax, 0xfffffff8
mov eax, dword [ebp - 0x10]
setne cl
imul edx, ecx
sub edx, eax
jne 0x1002ecc1
xor eax, eax
cmp dword [ebp - 0x10], eax
jne 0x1002ecc1
mov esi, eax
mov eax, dword [ebp - 0x10]
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
push 3
setle dl
xor eax, eax
cmp esi, 0x9bf5
pop esi
setne al
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x10]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0xcc]
setne cl
add eax, ecx
mov ecx, dword [ebp - 0x10]
add ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0xcc]
jle 0x1002ed44
inc eax
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xcc]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xcc]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x1002ed65
mov dword [ebp - 0x1c], eax
jmp 0x1002ed5a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa60], 0x88f1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002ed49
inc dword [ebp - 0xa58]
mov dword [ebp - 0x48], ebx
or eax, 0xffffffff
mov dword [ebp - 0x1c], 0x5052061f
xor ebx, ebx
mov dword [ebp - 0x38], 0x4e76
inc ebx
mov dword [ebp - 0x2c], 0x1d102278
mov dword [ebp - 0x44], 0x9694d2b5
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x48], 4
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x58], 0x8e8d
push 2
mov dword [ebp - 0x10], eax
pop ecx
cmp dword [ebp - 0x10], ecx
jge 0x1002edc9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf04], 0xf7c8b166
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1002edb1
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ecx
jge 0x1002ede9
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xfd4], 0xfffffffb
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jl 0x1002edd1
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x1002ee25
mov eax, dword [ebp - 0x1c]
mov ecx, ebx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
sub ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0x1c]
jl 0x1002ee0c
mov edx, ebx
cmp dword [ebp - 0x44], eax
jne 0x1002ee0e
mov edx, eax
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, edx
setle cl
imul ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x44]
jne 0x1002ee25
xor eax, eax
jmp 0x1002ee27
mov eax, ebx
mov dword [ebp - 0x4c], eax
dec dword [ebp - 0x58]
mov dword [ebp - 0x34], 0xffffffec
jmp 0x1002f416
or eax, 0xffffffff
xor edx, edx
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x38], 0x86e3e45b
mov dword [ebp - 0x2c], 0x889e022a
mov ecx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
add ecx, 0x28ea
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setg dl
imul eax, dword [ebp - 0x24]
xor ecx, ecx
cmp edx, eax
setne cl
mov dword [ebp - 0x40], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x24]
cmp eax, ebx
setg cl
sub ecx, 0x220985a9
neg ecx
sbb ecx, ecx
inc ecx
sub ecx, dword [ebp - 0x34]
neg ecx
sbb ecx, ecx
inc ecx
cmp ecx, dword [ebp - 0x24]
jge 0x1002ee9d
xor eax, eax
cmp dword [ebp - 0x24], eax
je 0x1002ee9f
mov eax, ebx
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0xfffffff6
jne 0x1002f413
jmp 0x1002eebb
xor eax, eax
mov dword [ebp - 0x10], 0xcd45
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x28], 0xa2e71cc
mov dword [ebp - 0x18], 0xfffffffa
mov dword [ebp - 0x20], 0xe60a2fc5
mov dword [ebp - 0x3c], 0xfc331464
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x58], 2
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1002ef16
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1188], 0x6611625f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002eefe
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1002ef92
mov eax, dword [ebp - 0x10]
mov ecx, 0xffff
imul eax, dword [ebp - 0x10]
push 0
sub eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
cmp eax, ecx
sbb eax, eax
inc eax
pop eax
sets al
cmp eax, dword [ebp - 0x10]
jne 0x1002ef4a
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1002ef4c
mov eax, ebx
jmp 0x1002ef4c
xor eax, eax
mov dword [ebp - 0x38], eax
xor edx, edx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, 9
setl al
cmp eax, dword [ebp - 0x10]
jge 0x1002ef90
mov ecx, ebx
jmp 0x1002ef94
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x20], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xfc75c14a
setle cl
mov dword [ebp - 0x3c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
neg edx
cmp edx, eax
setl cl
xor eax, eax
cmp dword [ebp - 0x10], ecx
jl 0x1002f167
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], 0xb6ef5427
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 4
jge 0x1002f01b
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xd60], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1002f002
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1002f069
cmp dword [ebp - 0x38], eax
je 0x1002f02c
mov ecx, ebx
cmp dword [ebp - 0x1c], eax
jne 0x1002f02e
mov ecx, eax
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, dword [ebp - 0x20]
jge 0x1002f050
cmp dword [ebp - 0x18], eax
je 0x1002f050
mov eax, ebx
mov dword [ebp - 0xd60], eax
or eax, 0xffffffff
mov dword [ebp - 0x30], eax
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1002f067
mov eax, ebx
jmp 0x1002f069
xor eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
dec eax
je 0x1002f080
xor eax, eax
cmp dword [ebp - 0x30], eax
je 0x1002f082
mov ecx, ebx
jmp 0x1002f084
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
sub ecx, eax
add ecx, dword [ebp - 0x1c]
mov eax, 0xffff
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x10], eax
jb 0x1002f13e
mov dword [ebp - 0x24], 0x4c396c7b
xor edx, edx
mov dword [ebp - 0x44], 0x652606bd
mov dword [ebp - 0x44], 0xd9bf4d75
mov ecx, dword [ebp - 0xd5c]
mov eax, dword [ebp - 0x28]
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
setl dl
imul eax, edx
xor edx, edx
neg eax
cmp eax, 0x9976
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xd940
setne al
add eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x20]
jne 0x1002f0fb
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x30]
xor ebx, ebx
neg eax
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
setg bl
xor edx, edx
add ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp eax, ebx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor ebx, ebx
inc ebx
cmp ebx, ecx
sbb eax, eax
neg eax
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x20], eax
jmp 0x1002f185
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1002f15f
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002f157
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1002f187
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffea
jge 0x1002f145
jmp 0x1002f187
mov dword [ebp - 0x1c], eax
jmp 0x1002f17d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x11f4], 0x2ac45f48
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002f16c
mov dword [ebp - 0x20], ebx
xor eax, eax
dec dword [ebp - 0x58]
mov dword [ebp - 0x28], ebx
push 0xfffffffffffffff9
pop ecx
mov dword [ebp - 0x74c], ecx
mov dword [ebp - 0x748], ecx
mov dword [ebp - 0x744], ecx
mov dword [ebp - 0x740], ecx
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x11
jle 0x1002f222
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
cmp eax, 0xfff6
setne cl
sub ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
imul eax, dword [ebp - 0x18]
add ecx, 0xed4a55f1
sub eax, 0xec17
cmp eax, ecx
jle 0x1002f1eb
mov eax, dword [ebp - 0x748]
mov eax, dword [ebp - 0x748]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x748]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002f216
push 0x1bb6
push eax
call dword [sym.imp.USER32.dll_CharLowerBuffW]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x11
push 0
pop eax
jg 0x1002f1b8
mov byte [ebp - 0x4d], al
mov dword [ebp - 0x10], 0x42c70bb7
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x4c], 0x15869b9
mov dword [ebp - 0x38], 0xb60d90c3
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1002f25d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x8c], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1002f245
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jl 0x1002f349
mov dword [ebp - 0x44], 0x8fe831e3
mov dword [ebp - 0x38], 0x6d983a5c
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
mov eax, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x10]
sub edx, 0xfffa
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov edx, ebx
setge cl
sub ecx, dword [ebp - 0x44]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
sub edx, eax
add edx, dword [ebp - 0x58]
add edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x8c]
cmp edx, eax
mov eax, dword [ebp - 0x8c]
setge cl
xor edx, edx
cmp ecx, 0x5ead4a2b
setle dl
imul edx, eax
xor eax, eax
cmp edx, dword [ebp - 0x2c]
jge 0x1002f33a
cmp dword [ebp - 0x4c], eax
je 0x1002f33a
mov eax, ebx
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x10]
push 0
pop eax
jns 0x1002f269
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 9
jge 0x1002f3ea
mov dword [ebp - 0x24], 0x72f548f9
mov dword [ebp - 0x1c], eax
jmp 0x1002f36f
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xf34], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1002f362
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
imul eax, ecx, 5
test eax, eax
jne 0x1002f39d
mov edx, eax
cmp dword [ebp - 0x8c], eax
je 0x1002f39f
mov edx, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, edx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
setl cl
sub edx, ecx
neg edx
push 0
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
setl bl
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, ebx
setge al
mov dword [ebp - 0xf28], eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 9
pop eax
push 1
pop ebx
jl 0x1002f356
cmp byte [ebp - 0x4d], 0
je 0x1002f3f8
push eax
push eax
call dword [sym.imp.KERNEL32.dll_LoadResource]
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002f406
push eax
push eax
call edi
dec dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xfffffff6
je 0x1002eeb9
inc dword [ebp - 0x34]
cmp dword [ebp - 0x34], 0xfffffff6
je 0x1002ee39
mov dword [ebp - 0x10], 0xd4f2
or ecx, 0xffffffff
mov dword [ebp - 0x894], ecx
xor eax, eax
mov dword [ebp - 0x890], ecx
mov dword [ebp - 0x88c], ecx
mov dword [ebp - 0x888], ecx
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x1c], eax
jmp 0x1002f461
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xaa0], 0xc2285faa
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002f450
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xa98], 0xfffffff8
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x88c], ebx
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xfffffff4
je 0x1002f50d
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x32
jge 0x1002f501
mov dword [ebp - 0x24], 0xf08664a1
cmp dword [ebp - 0x24], eax
je 0x1002f4ef
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setg dl
xor ecx, ecx
mov dword [ebp - 0x894], edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, ebx
setl cl
mov dword [ebp - 0xaa0], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x32
push 0
pop eax
jl 0x1002f4a2
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff4
jne 0x1002f490
or ecx, 0xffffffff
cmp dword [ebp - 0x40], eax
je 0x1002f55d
mov dword [ebp - 0x18], 0x3e3f36a5
mov dword [ebp - 0x2c], ecx
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x34]
mov eax, dword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
xor eax, eax
mov dword [ebp - 0x2c], 0xd9780293
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002f5a4
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_TranslateMDISysAccel]
xor eax, eax
or ecx, 0xffffffff
jmp 0x1002f5a4
mov dword [ebp - 0x48], 0xbab1
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], 0x17d239f9
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x8ad385e3
push 4
pop edx
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x1c], eax
jmp 0x1002f59a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x1288], 0x2bba6dad
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], edx
jl 0x1002f589
inc dword [ebp - 0x38]
xor eax, eax
mov dword [ebp - 0x18], 0xfffffff8
mov dword [ebp - 0x2c], 0x4c38b6b0
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x48], 0x880e033c
mov dword [ebp - 0x44], 0x54671013
mov dword [ebp - 0x38], 0xde6bc044
mov dword [ebp - 0x1c], 0xfffffffc
mov dword [ebp - 0x4c], 0x9cc02768
mov dword [ebp - 0x58], 0xf9052196
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], ebx
jge 0x1002f5ff
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x1a0], 0x8d4081c2
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x1002f5e7
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], esi
jge 0x1002f61f
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0x828], 0x465cd386
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x1002f607
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x1002f635
mov eax, dword [ebp - 0x10]
mov dword [ebp + eax*4 - 0xf0c], 0
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x1002f624
mov eax, dword [ebp - 0x1a0]
dec dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x38], eax
xor eax, eax
cmp dword [ebp - 0x38], eax
jne 0x1002f690
mov eax, dword [ebp - 0x44]
xor ecx, ecx
cmp eax, 0x2e42
setge cl
imul eax, ecx, 0xb059
test eax, eax
jne 0x1002f66b
mov eax, dword [ebp - 0x2c]
xor eax, eax
cmp dword [ebp - 0x1a0], eax
je 0x1002f67b
mov eax, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x824]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x828]
mov eax, dword [ebp - 0x18]
xor eax, eax
cmp dword [ebp - 0x4c], eax
jne 0x1002f6aa
mov ecx, eax
cmp dword [ebp - 0x828], eax
je 0x1002f6ac
mov ecx, ebx
mov eax, dword [ebp - 0x58]
imul eax, ecx
sub eax, dword [ebp - 0x58]
mov ecx, dword [ebp - 0x1a0]
sub ecx, eax
neg ecx
sbb ecx, ecx
inc ecx
xor eax, eax
mov dword [ebp - 0x824], ecx
mov dword [ebp - 0x20], 0xfc558bac
mov dword [ebp - 0x38], 0x7822e6e
mov dword [ebp - 0x1c], eax
jmp 0x1002f6ee
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xe8], 0xca3691f6
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1002f6dd
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0xe8]
mov eax, dword [ebp - 0xe8]
sub edx, 0x4794
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0xe8]
sete cl
xor edx, edx
cmp ecx, 0x98ce
setg dl
xor ecx, ecx
imul eax, edx
mov edx, dword [ebp - 0xe8]
cmp eax, 0xfffffff8
mov eax, dword [ebp - 0x20]
setne cl
imul edx, ecx
sub edx, eax
jne 0x1002f74f
xor eax, eax
mov esi, eax
cmp dword [ebp - 0x20], eax
je 0x1002f751
mov esi, ebx
mov eax, dword [ebp - 0x20]
xor edx, edx
neg eax
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x20]
cmp ecx, eax
push 3
setle dl
xor eax, eax
cmp esi, 0x9bf5
pop esi
setne al
xor ecx, ecx
cmp edx, eax
mov eax, dword [ebp - 0x20]
setg cl
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x38]
setle dl
xor ecx, ecx
cmp eax, edx
mov eax, dword [ebp - 0xe8]
setne cl
add eax, ecx
mov ecx, dword [ebp - 0x20]
add ecx, eax
cmp ecx, dword [ebp - 0xe8]
jle 0x1002f7d1
mov dword [ebp - 0x18], 4
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe8]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0xe8]
neg eax
sbb eax, eax
neg eax
mov dword [ebp - 0x2c], eax
jmp 0x1002f7f4
xor eax, eax
mov dword [ebp - 0x1c], eax
jmp 0x1002f7e9
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa74], 0x88f1
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002f7d8
inc dword [ebp - 0xa6c]
mov dword [ebp - 0x3c], ebx
or eax, 0xffffffff
mov dword [ebp - 0x1c], 0x5052061f
mov dword [ebp - 0x38], 0x4e76
mov dword [ebp - 0x2c], 0x1d102278
mov dword [ebp - 0x44], 0x9694d2b5
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x48], 4
mov dword [ebp - 0x48], eax
xor eax, eax
mov dword [ebp - 0x58], 0x8e8d
push 2
mov dword [ebp - 0x20], eax
pop ecx
cmp dword [ebp - 0x20], ecx
jge 0x1002f855
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0xf6c], 0xf7c8b166
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1002f83d
xor eax, eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], ecx
jge 0x1002f875
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x107c], 0xfffffffb
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], ecx
jl 0x1002f85d
xor eax, eax
cmp dword [ebp - 0x1c], eax
jne 0x1002f8b1
mov eax, dword [ebp - 0x1c]
mov ecx, ebx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x2c]
sub ecx, eax
xor eax, eax
cmp ecx, dword [ebp - 0x1c]
jl 0x1002f898
mov edx, ebx
cmp dword [ebp - 0x44], eax
jne 0x1002f89a
mov edx, eax
mov eax, dword [ebp - 0x1c]
xor ecx, ecx
cmp eax, edx
setle cl
imul ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x44]
jne 0x1002f8b1
xor eax, eax
jmp 0x1002f8b3
mov eax, ebx
mov dword [ebp - 0x4c], eax
or eax, 0xffffffff
dec dword [ebp - 0x58]
mov dword [ebp - 0x40], 0x974a5202
mov dword [ebp - 0x10], 0xd4f2
mov dword [ebp - 0x8ac], eax
mov dword [ebp - 0x8a8], eax
mov dword [ebp - 0x8a4], eax
mov dword [ebp - 0x8a0], eax
xor eax, eax
mov dword [ebp - 0x2c], 9
mov dword [ebp - 0x1c], eax
jmp 0x1002f901
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xab8], 0xc2285faa
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002f8f0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xab0], 0xfffffff8
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp - 0x8a4], ebx
mov dword [ebp - 0x10], eax
jmp 0x1002f9a0
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x38], eax
inc dword [ebp - 0x20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x32
jge 0x1002f99d
mov dword [ebp - 0x24], 0xf08664a1
cmp dword [ebp - 0x24], eax
je 0x1002f98b
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x20]
cmp eax, ecx
setg dl
xor ecx, ecx
mov dword [ebp - 0x8ac], edx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x24]
cmp eax, ebx
setl cl
mov dword [ebp - 0xab8], ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0x32
push 0
pop eax
jl 0x1002f93e
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xfffffff4
jne 0x1002f92c
or ecx, 0xffffffff
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x10], 0xcd45
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x38], 4
mov dword [ebp - 0x28], 0xa2e71cc
mov dword [ebp - 0x18], 0xfffffffa
mov dword [ebp - 0x30], 0xe60a2fc5
mov dword [ebp - 0x3c], 0xfc331464
mov dword [ebp - 0x2c], 0xfffffffe
mov dword [ebp - 0x58], 2
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1002fa07
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x11a0], 0x6611625f
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002f9ef
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1002fa83
mov eax, dword [ebp - 0x10]
mov ecx, 0xffff
imul eax, dword [ebp - 0x10]
push 0
sub eax, dword [ebp - 0x10]
neg eax
sbb eax, eax
inc eax
cmp eax, ecx
sbb eax, eax
inc eax
pop eax
sets al
cmp eax, dword [ebp - 0x10]
jne 0x1002fa3b
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1002fa3d
mov eax, ebx
jmp 0x1002fa3d
xor eax, eax
mov dword [ebp - 0x38], eax
xor edx, edx
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor edx, edx
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, 9
setl al
cmp eax, dword [ebp - 0x10]
jge 0x1002fa81
mov ecx, ebx
jmp 0x1002fa85
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
xor edx, edx
cmp ecx, eax
mov eax, dword [ebp - 0x10]
setg dl
xor ecx, ecx
cmp edx, eax
setle cl
mov dword [ebp - 0x30], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x10]
cmp eax, 0xfc75c14a
setle cl
mov dword [ebp - 0x3c], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x18]
neg edx
cmp edx, eax
setl cl
xor eax, eax
cmp dword [ebp - 0x10], ecx
jl 0x1002fc58
mov dword [ebp - 0x1c], 0xfffffffe
mov dword [ebp - 0x38], 0xb6ef5427
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x34], 9
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 4
jge 0x1002fb0c
mov eax, dword [ebp - 0x24]
mov dword [ebp + eax*4 - 0xd40], 0
inc dword [ebp - 0x24]
cmp dword [ebp - 0x24], 4
jl 0x1002faf3
xor eax, eax
cmp dword [ebp - 0x3c], eax
je 0x1002fb5a
cmp dword [ebp - 0x38], eax
je 0x1002fb1d
mov ecx, ebx
cmp dword [ebp - 0x1c], eax
jne 0x1002fb1f
mov ecx, eax
mov eax, dword [ebp - 0x1c]
xor edx, edx
cmp eax, ecx
mov eax, dword [ebp - 0x18]
setge dl
xor ecx, ecx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, dword [ebp - 0x30]
jge 0x1002fb41
cmp dword [ebp - 0x18], eax
je 0x1002fb41
mov eax, ebx
mov dword [ebp - 0xd40], eax
or eax, 0xffffffff
mov dword [ebp - 0x34], eax
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x1002fb58
mov eax, ebx
jmp 0x1002fb5a
xor eax, eax
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
dec eax
je 0x1002fb71
xor eax, eax
cmp dword [ebp - 0x34], eax
je 0x1002fb73
mov ecx, ebx
jmp 0x1002fb75
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x18]
sub ecx, eax
add ecx, dword [ebp - 0x1c]
mov eax, 0xffff
mov dword [ebp - 0x1c], ecx
cmp dword [ebp - 0x10], eax
jb 0x1002fc2f
mov dword [ebp - 0x24], 0x4c396c7b
xor edx, edx
mov dword [ebp - 0x44], 0x652606bd
mov dword [ebp - 0x44], 0xd9bf4d75
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0xd3c]
cmp eax, ecx
mov eax, dword [ebp - 0x1c]
setl dl
imul eax, edx
xor edx, edx
neg eax
cmp eax, 0x9976
mov eax, dword [ebp - 0x28]
setle dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xd940
setne al
add eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x38]
add eax, dword [ebp - 0x24]
add eax, dword [ebp - 0x30]
jne 0x1002fbec
mov eax, dword [ebp - 0x24]
mov eax, dword [ebp - 0x34]
xor ebx, ebx
neg eax
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x34]
cmp ecx, eax
setg bl
xor edx, edx
add ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
cmp eax, ebx
mov eax, dword [ebp - 0x24]
setle dl
xor ecx, ecx
cmp edx, eax
setne cl
xor ebx, ebx
inc ebx
cmp ebx, ecx
sbb eax, eax
neg eax
add eax, dword [ebp - 0x24]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x30], eax
jmp 0x1002fc76
xor eax, eax
mov dword [ebp - 0x3c], eax
jmp 0x1002fc50
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x1002fc48
push eax
call dword [sym.imp.KERNEL32.dll_LockResource]
xor eax, eax
cmp dword [ebp - 0x28], eax
jne 0x1002fc78
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xffffffea
jge 0x1002fc36
jmp 0x1002fc78
mov dword [ebp - 0x1c], eax
jmp 0x1002fc6e
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x10b0], 0x2ac45f48
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002fc5d
mov dword [ebp - 0x30], ebx
xor eax, eax
dec dword [ebp - 0x58]
or ecx, 0xffffffff
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x28], ebx
push 0xfffffffffffffff9
pop ecx
mov dword [ebp - 0x72c], ecx
mov dword [ebp - 0x728], ecx
mov dword [ebp - 0x724], ecx
mov dword [ebp - 0x720], ecx
mov dword [ebp - 0x2c], 6
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x11
jle 0x1002fd19
xor ecx, ecx
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x28]
cmp eax, 0xfff6
setne cl
sub ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
imul eax, dword [ebp - 0x18]
add ecx, 0xed4a55f1
sub eax, 0xec17
cmp eax, ecx
jle 0x1002fce2
mov eax, dword [ebp - 0x728]
mov eax, dword [ebp - 0x728]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x728]
mov dword [ebp - 0x2c], eax
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], al
je 0x1002fd0d
push 0x1bb6
push eax
call dword [sym.imp.USER32.dll_CharLowerBuffW]
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x11
push 0
pop eax
jg 0x1002fcaf
mov dword [ebp - 0x48], 0xc8cdab0b
mov dword [ebp - 0x10], 0x42c70bb7
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x4c], 0x15869b9
mov dword [ebp - 0x38], 0xb60d90c3
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], ebx
jge 0x1002fd55
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x70], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], ebx
jl 0x1002fd40
xor eax, eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], eax
jl 0x1002fe20
mov dword [ebp - 0x44], 0x8fe831e3
mov dword [ebp - 0x38], 0x6d983a5c
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x2c], ebx
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x70]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
mov edx, dword [ebp - 0x70]
mov eax, dword [ebp - 0x10]
sub edx, 0xfffa
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
mov edx, ebx
setge cl
sub ecx, dword [ebp - 0x44]
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x38], ecx
xor ecx, ecx
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x44]
mov eax, dword [ebp - 0x58]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
sub edx, eax
add edx, dword [ebp - 0x58]
add edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x70]
cmp edx, eax
mov eax, dword [ebp - 0x70]
setge cl
xor edx, edx
cmp ecx, 0x5ead4a2b
setle dl
imul edx, eax
xor eax, eax
cmp edx, dword [ebp - 0x2c]
jge 0x1002fe11
cmp dword [ebp - 0x4c], eax
je 0x1002fe11
mov eax, ebx
mov dword [ebp - 0x38], eax
dec dword [ebp - 0x10]
push 0
pop eax
jns 0x1002fd61
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 9
jge 0x1002febf
jmp 0x1002fe31
xor eax, eax
mov dword [ebp - 0x24], 0x72f548f9
mov dword [ebp - 0x1c], eax
jmp 0x1002fe4a
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xf4c], ebx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], 4
jl 0x1002fe3d
mov ecx, dword [ebp - 0x24]
xor edx, edx
mov eax, dword [ebp - 0x10]
cmp eax, ecx
mov eax, dword [ebp - 0x24]
setne dl
xor ecx, ecx
cmp edx, eax
setne cl
imul eax, ecx, 5
test eax, eax
jne 0x1002fe75
mov edx, eax
cmp dword [ebp - 0x70], eax
je 0x1002fe77
mov edx, ebx
mov eax, dword [ebp - 0x24]
xor ecx, ecx
cmp eax, edx
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x38]
setl cl
sub edx, ecx
neg edx
push 1
sbb edx, edx
xor ebx, ebx
inc edx
cmp edx, eax
mov eax, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
setl bl
sub ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
inc ecx
cmp ecx, ebx
pop ebx
setge al
mov dword [ebp - 0xf40], eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 9
jl 0x1002fe2f
mov dword [ebp - 0x48], 0xfffffff8
or eax, 0xffffffff
mov dword [ebp - 0x10], 0xfebb6748
xor edx, edx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x20], 0xcf7d1649
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x4c], 0xb46f9f11
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setne dl
xor eax, eax
sub edx, dword [ebp - 0x10]
cmp edx, esi
setle al
xor edx, edx
imul ecx, eax, 0x6f8f
mov eax, dword [ebp - 0x10]
cmp eax, ecx
setne dl
sub edx, dword [ebp - 0x10]
imul edx, dword [ebp - 0x10]
neg edx
sbb edx, edx
neg edx
mov dword [ebp - 0x20], edx
xor edx, edx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x30]
cmp ecx, eax
setle dl
xor eax, eax
cmp edx, 0xaad9
setle al
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x30]
sub eax, 0xfffffffa
neg eax
sbb eax, eax
inc eax
add eax, dword [ebp - 0x30]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x10]
jne 0x10030048
mov dword [ebp - 0x2c], 0x8a59c2d
xor eax, eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x58], 0x6e99fd40
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1002ffab
or ecx, 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xa88], ecx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1002ff99
mov eax, dword [ebp - 0x38]
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x4c], eax
jge 0x1002ffe8
mov eax, 0xffff
xor edx, edx
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0xa80]
mov eax, dword [ebp - 0x3c]
cmp ecx, eax
setl dl
xor eax, eax
cmp edx, 9
je 0x1002ffdc
cmp dword [ebp - 0x44], eax
je 0x1002ffdc
mov eax, ebx
cmp eax, dword [ebp - 0xa80]
jne 0x1002ffe8
mov ecx, ebx
jmp 0x1002ffec
xor eax, eax
mov ecx, eax
mov eax, dword [ebp - 0x20]
xor edx, edx
cmp ecx, eax
setg dl
add edx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x58]
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setl cl
xor eax, eax
cmp ecx, 0x9cc5
setl al
add eax, dword [ebp - 0x58]
cmp eax, 0xb6befc54
jae 0x10030028
xor eax, eax
cmp dword [ebp - 0x10], eax
je 0x1003002a
mov ecx, ebx
jmp 0x1003002c
xor eax, eax
mov ecx, eax
xor eax, eax
cmp ecx, 0x830f
setle al
or edx, 0xffffffff
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x20], eax
jmp 0x10030110
mov dword [ebp - 0x44], 0xcfe7
xor eax, eax
mov dword [ebp - 0x38], 0xeaa9
mov dword [ebp - 0x20], eax
jmp 0x100300c7
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x1003007d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xdc4], 0
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x10030065
xor eax, eax
mov dword [ebp - 0x44], 0x89a98e57
mov dword [ebp - 0x28], eax
jmp 0x100300be
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], esi
jge 0x100300a9
mov eax, dword [ebp - 0x3c]
mov dword [ebp + eax*4 - 0xdc4], 0x759719bd
inc dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], esi
jl 0x10030091
xor eax, eax
mov byte [ebp - 0x4d], al
cmp byte [ebp - 0x4d], 0
je 0x100300bb
push eax
call dword [sym.imp.GDI32.dll_CreateBrushIndirect]
xor eax, eax
inc dword [ebp - 0x28]
cmp dword [ebp - 0x28], 0x14
je 0x10030089
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], 0xe
jg 0x1003005d
mov eax, dword [ebp - 0x38]
xor ecx, ecx
cmp eax, 0x7d3f
setl cl
sub ecx, dword [ebp - 0x38]
neg ecx
sbb ecx, ecx
or edx, 0xffffffff
inc ecx
cmp ecx, edx
sbb eax, eax
neg eax
imul eax, eax, 0x6add
sub eax, 0x7c634d0c
cmp eax, 0xf02c
jl 0x10030106
xor eax, eax
mov ecx, eax
cmp dword [ebp - 0x28], eax
je 0x10030108
mov ecx, ebx
mov eax, dword [ebp - 0x44]
add eax, ecx
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], edx
xor eax, eax
mov dword [ebp - 0x3c], 0x24a8c6a5
mov dword [ebp - 0x38], 0xa7bc9995
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x10030143
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xad0], 0x93842573
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1003012b
xor eax, eax
mov dword [ebp - 0x3c], eax
mov ecx, 0x9f4288a1
jmp 0x10030259
mov dword [ebp - 0x9d0], ecx
mov dword [ebp - 0x9cc], ecx
mov dword [ebp - 0x9c8], ecx
mov dword [ebp - 0x9c4], ecx
mov dword [ebp - 0x30], 0xb03629aa
mov dword [ebp - 0x2c], 0xee83adeb
mov dword [ebp - 0x30], esi
cmp dword [ebp - 0x30], eax
jl 0x10030256
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], esi
jg 0x10030248
mov dword [ebp - 0x24], 0xfffb
mov dword [ebp - 0x2c], ebx
cmp dword [ebp - 0xacc], eax
jne 0x100301a6
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x30]
je 0x100301b1
dec dword [ebp - 0x30]
jns 0x10030182
mov ecx, 0x9f4288a1
dec dword [ebp - 0x3c]
cmp dword [ebp - 0x3c], 0xfffffff3
jg 0x10030150
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x48], 0x9458d81c
mov dword [ebp - 0x18], 0xa394643c
mov dword [ebp - 0x48], edx
push 0xfffffffffffffff8
pop eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
xor eax, eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], esi
jge 0x100302b3
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0xddc], edx
inc dword [ebp - 0x1c]
cmp dword [ebp - 0x1c], esi
jl 0x1003029f
mov dword [ebp - 0x18], 2
cmp dword [ebp - 0x18], eax
jl 0x10030309